move apic cluster before pci_domain in MB Config.lb
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1897 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
b5d9af4105
commit
6a2798d28b
|
@ -721,7 +721,7 @@ static unsigned int cpu_bus_scan(device_t dev, unsigned int max)
|
||||||
{
|
{
|
||||||
struct bus *cpu_bus;
|
struct bus *cpu_bus;
|
||||||
device_t dev_mc;
|
device_t dev_mc;
|
||||||
int i;
|
int i, j;
|
||||||
int enable_apic_ext_id = 0;
|
int enable_apic_ext_id = 0;
|
||||||
int bsp_apic_id = lapicid(); // bsp apicid
|
int bsp_apic_id = lapicid(); // bsp apicid
|
||||||
int apic_id_offset = bsp_apic_id;
|
int apic_id_offset = bsp_apic_id;
|
||||||
|
@ -745,11 +745,12 @@ static unsigned int cpu_bus_scan(device_t dev, unsigned int max)
|
||||||
dev = dev_find_slot(0, PCI_DEVFN(0x18 + i, 3));
|
dev = dev_find_slot(0, PCI_DEVFN(0x18 + i, 3));
|
||||||
if(!dev) {
|
if(!dev) {
|
||||||
// in case in mb Config.lb we move apic cluster before pci_domain and not set that for second CPU
|
// in case in mb Config.lb we move apic cluster before pci_domain and not set that for second CPU
|
||||||
|
for(j=0; j<4; j++) {
|
||||||
struct device dummy;
|
struct device dummy;
|
||||||
uint32_t id;
|
uint32_t id;
|
||||||
dummy.bus = dev_mc->bus;
|
dummy.bus = dev_mc->bus;
|
||||||
dummy.path.type = DEVICE_PATH_PCI;
|
dummy.path.type = DEVICE_PATH_PCI;
|
||||||
dummy.path.u.pci.devfn = PCI_DEVFN(0x18 + i, 3);
|
dummy.path.u.pci.devfn = PCI_DEVFN(0x18 + i, j);
|
||||||
id = pci_read_config32(&dummy, PCI_VENDOR_ID);
|
id = pci_read_config32(&dummy, PCI_VENDOR_ID);
|
||||||
if (id != 0xffffffff && id != 0x00000000 &&
|
if (id != 0xffffffff && id != 0x00000000 &&
|
||||||
id != 0x0000ffff && id != 0xffff0000) {
|
id != 0x0000ffff && id != 0xffff0000) {
|
||||||
|
@ -757,6 +758,7 @@ static unsigned int cpu_bus_scan(device_t dev, unsigned int max)
|
||||||
dev = alloc_dev(dev_mc->bus, &dummy.path);
|
dev = alloc_dev(dev_mc->bus, &dummy.path);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Build the cpu device path */
|
/* Build the cpu device path */
|
||||||
cpu_path.type = DEVICE_PATH_APIC;
|
cpu_path.type = DEVICE_PATH_APIC;
|
||||||
|
|
Loading…
Reference in New Issue