diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2019-07-04 13:15:01 +0300 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2019-07-12 09:27:56 +0000 |
commit | 98d19572b175ad44a83614cdf2c57ed0ba94a733 (patch) | |
tree | f7ccc9377ee31c6ca8d139b184ed7cdfa040e930 /src/device/oprom/yabel | |
parent | e2f39e23e8982a239f4ec063d823ad3414e1ba66 (diff) |
device/oprom: Replace uses of dev_find_slot()
The call to dev_find_slot() may return PCI devices that
are disabled or unaccessible, as PCI enumeration does
not remove nodes from all_devices linked list.
Use PCI topology search instead.
Change-Id: I00233177e5572ca79002a7d141cda1b94b966330
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34083
Reviewed-by: Mike Banon <mikebdp2@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/device/oprom/yabel')
-rw-r--r-- | src/device/oprom/yabel/interrupt.c | 4 | ||||
-rw-r--r-- | src/device/oprom/yabel/io.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/device/oprom/yabel/interrupt.c b/src/device/oprom/yabel/interrupt.c index 2bc238e75a..338156f8ed 100644 --- a/src/device/oprom/yabel/interrupt.c +++ b/src/device/oprom/yabel/interrupt.c @@ -409,8 +409,8 @@ handleInt1a(void) if ((bus == bios_device.bus) && (devfn == bios_device.devfn)) { dev = bios_device.dev; } else if (CONFIG(YABEL_PCI_ACCESS_OTHER_DEVICES)) { - dev = dev_find_slot(bus, devfn); - DEBUG_PRINTF_INTR("%s(): function: %x: dev_find_slot() returned: %s\n", + dev = pcidev_path_on_bus(bus, devfn); + DEBUG_PRINTF_INTR("%s(): function: %x: pcidev_path_on_bus() returned: %s\n", __func__, M.x86.R_AX, dev_path(dev)); } diff --git a/src/device/oprom/yabel/io.c b/src/device/oprom/yabel/io.c index 8ae91d46e0..e8c41ce24a 100644 --- a/src/device/oprom/yabel/io.c +++ b/src/device/oprom/yabel/io.c @@ -435,8 +435,8 @@ pci_cfg_read(X86EMU_pioAddr addr, u8 size) if ((bus == bios_device.bus) && (devfn == bios_device.devfn)) { dev = bios_device.dev; } else if (CONFIG(YABEL_PCI_ACCESS_OTHER_DEVICES)) { - dev = dev_find_slot(bus, devfn); - DEBUG_PRINTF_INTR("%s(): dev_find_slot() returned: %s\n", + dev = pcidev_path_on_bus(bus, devfn); + DEBUG_PRINTF_INTR("%s(): pcidev_path_on_bus() returned: %s\n", __func__, dev_path(dev)); } |