aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSubrata Banik <subrata.banik@intel.com>2021-06-08 00:55:04 +0530
committerSubrata Banik <subrata.banik@intel.com>2021-06-09 10:14:14 +0000
commiteca3e6278abd37da60cd68bb3705ce1cc01d4f47 (patch)
tree03407824f41a0a477aa197401760ba2b69ebbe2d /src
parentaced1f02cf24be5a56a97b75c98c861e57e14595 (diff)
device: Add helper function is_devfn_enabled()
is_devfn_enabled() function helps to check if a device is enabled based on given device function number. This function internally called is_dev_enabled() to check device state. Change-Id: I6aeba0da05b13b70155a991f69a6abf7eb48a78c Signed-off-by: Subrata Banik <subrata.banik@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/55278 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/device/device_const.c6
-rw-r--r--src/include/device/device.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/device/device_const.c b/src/device/device_const.c
index 20afe7e445..7e7f2f1980 100644
--- a/src/device/device_const.c
+++ b/src/device/device_const.c
@@ -397,3 +397,9 @@ bool is_dev_enabled(const struct device *dev)
return false;
return dev->enabled;
}
+
+bool is_devfn_enabled(unsigned int devfn)
+{
+ const struct device *dev = pcidev_path_on_root(devfn);
+ return is_dev_enabled(dev);
+}
diff --git a/src/include/device/device.h b/src/include/device/device.h
index 623d337601..afa6a4090a 100644
--- a/src/include/device/device.h
+++ b/src/include/device/device.h
@@ -192,6 +192,7 @@ void disable_children(struct bus *bus);
bool dev_is_active_bridge(struct device *dev);
void add_more_links(struct device *dev, unsigned int total_links);
bool is_dev_enabled(const struct device *const dev);
+bool is_devfn_enabled(unsigned int devfn);
/* Option ROM helper functions */
void run_bios(struct device *dev, unsigned long addr);