aboutsummaryrefslogtreecommitdiffstats
path: root/pcidev.c
diff options
context:
space:
mode:
authorThomas Heijligen <thomas.heijligen@secunet.com>2023-03-14 10:45:27 +0100
committerThomas Heijligen <src@posteo.de>2023-03-20 14:36:27 +0000
commite1cdbdbbfb98a28fe7198ae6cd3e571269a04403 (patch)
treee1f7b7510ffaa2abec5c5d6b13fcb8272ecf592f /pcidev.c
parent0c774d6b6a075f37f21ca9c3506141cb0d4ae34b (diff)
downloadflashrom-e1cdbdbbfb98a28fe7198ae6cd3e571269a04403.tar.gz
flashrom-e1cdbdbbfb98a28fe7198ae6cd3e571269a04403.tar.bz2
flashrom-e1cdbdbbfb98a28fe7198ae6cd3e571269a04403.zip
Revert "pcidev: remove pcidev_getdevfn() function"
As Edward pointed out correctly this function does more than abstracting the different versions of `pci_get_dev()`. It also hide the usage of the global `struct pci_access pacc` from the caller. This reverts commit 0e8902f1ff2b927bb91a5e89e4fde3d8d71f6692. Change-Id: I0cd2f54cb6a6e35dc353476e0f5e502cbbd06cba Signed-off-by: Thomas Heijligen <thomas.heijligen@secunet.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/73730 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Edward O'Callaghan <quasisec@chromium.org> Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Diffstat (limited to 'pcidev.c')
-rw-r--r--pcidev.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/pcidev.c b/pcidev.c
index 68da3278..696510ed 100644
--- a/pcidev.c
+++ b/pcidev.c
@@ -190,6 +190,14 @@ struct pci_dev *pcidev_find(uint16_t vendor, uint16_t device)
return pcidev_scandev(&filter, NULL);
}
+struct pci_dev *pcidev_getdevfn(struct pci_dev *dev, const int func)
+{
+ struct pci_dev *const new = pci_get_dev(pacc, dev->domain, dev->bus, dev->dev, func);
+ if (new)
+ pci_fill_info(new, PCI_FILL_IDENT);
+ return new;
+}
+
struct pci_dev *pcidev_find_vendorclass(uint16_t vendor, uint16_t devclass)
{
struct pci_dev *temp = NULL;