diff --git a/src/pciinit.c b/src/pciinit.c index 597c8ea..676e35e 100644 --- a/src/pciinit.c +++ b/src/pciinit.c @@ -45,7 +45,7 @@ static struct pci_bus { } *busses; static int busses_count; -static void pci_bios_init_device_in_bus(int bus); +static void pci_bios_init_device_all(void); static void pci_bios_check_device_in_bus(int bus); static void pci_bios_init_bus_bases(struct pci_bus *bus); static void pci_bios_map_device_in_bus(int bus); @@ -254,15 +254,10 @@ static void pci_bios_init_device(struct pci_device *pci) pci_init_device(pci_device_tbl, pci, NULL); } -static void pci_bios_init_device_in_bus(int bus) +static void pci_bios_init_device_all(void) { struct pci_device *pci; foreachpci(pci) { - u8 pci_bus = pci_bdf_to_bus(pci->bdf); - if (pci_bus < bus) - continue; - if (pci_bus > bus) - break; pci_bios_init_device(pci); } } @@ -605,7 +600,7 @@ pci_setup(void) pci_bios_init_bus_bases(&busses[0]); pci_bios_map_device_in_bus(0 /* host bus */); - pci_bios_init_device_in_bus(0 /* host bus */); + pci_bios_init_device_all(); struct pci_device *pci; foreachpci(pci) {