diff --git a/src/devices/hypertransport.c b/src/devices/hypertransport.c index db7426767d..2126889e19 100644 --- a/src/devices/hypertransport.c +++ b/src/devices/hypertransport.c @@ -14,9 +14,9 @@ static device_t ht_scan_get_devs(device_t *old_devices) device_t first, last; first = *old_devices; last = first; - while(last && last->sibling && - (last->sibling->path.type == DEVICE_PATH_PCI) && - (last->sibling->path.u.pci.devfn > last->path.u.pci.devfn)) { + while (last && last->sibling && + (last->sibling->path.type == DEVICE_PATH_PCI) && + (last->sibling->path.u.pci.devfn > last->path.u.pci.devfn)) { last = last->sibling; } if (first) { diff --git a/src/devices/pci_device.c b/src/devices/pci_device.c index f40b4d8adf..785bf33515 100644 --- a/src/devices/pci_device.c +++ b/src/devices/pci_device.c @@ -508,6 +508,8 @@ static struct device *pci_scan_get_dev(struct device **list, { struct device *dev = 0; + printk_debug("%s, looking for devfn: %02x.%01x\n", __FUNCTION__, + devfn >> 3, devfn & 7); for (; *list; list = &(*list)->sibling) { if ((*list)->path.type != DEVICE_PATH_PCI) { printk_err("child %s not a pci device\n", @@ -523,6 +525,8 @@ static struct device *pci_scan_get_dev(struct device **list, } } + printk_debug("%s, found dev %08x\n", __FUNCTION__, dev); + /* FIXME: why are we doing this ? Isn't there some order between the * structures before ? */ if (dev) { @@ -738,11 +742,11 @@ unsigned int pci_scan_bridge(struct device *dev, unsigned int max) ((unsigned int) (bus->secondary) << 8) | ((unsigned int) (bus->subordinate) << 16)); pci_write_config32(dev, PCI_PRIMARY_BUS, buses); - + /* Now we can scan all subordinate buses i.e. the buses behind the * bridge */ max = pci_scan_bus(bus, 0x00, 0xff, max); - + /* We know the number of buses behind this bridge. Set the subordinate * bus number to its real value */ bus->subordinate = max;