diff options
author | Fabio Aiuto <fabioaiuto83@gmail.com> | 2022-09-10 14:23:38 +0200 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-09-29 16:46:41 +0000 |
commit | c5573d62b7b5179cb48144b71f91955464873e6e (patch) | |
tree | 7149cd9cfd35823189eb3906c6ceac1384d999af | |
parent | 712c70b35739c9eb75bd6e6847710f14b0940ec2 (diff) |
include/device/path.h: use functions for enabled cpu selection
Add function defs and prototypes of functions checking whether
a device is {a cpu,an enabled cpu}
TEST: compile test and qemu executed successfully with
coreinfo payload
Signed-off-by: Fabio Aiuto <fabioaiuto83@gmail.com>
Change-Id: Iabc0e59d604ae4572921518a8dad47dc3d149f81
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67502
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
-rw-r--r-- | src/device/device_util.c | 11 | ||||
-rw-r--r-- | src/include/device/device.h | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/device/device_util.c b/src/device/device_util.c index 45dbccc28d..1e13bca151 100644 --- a/src/device/device_util.c +++ b/src/device/device_util.c @@ -957,3 +957,14 @@ void log_resource(const char *type, const struct device *dev, const struct resou srcfile, line, type, dev_path(dev), res->index, res->base, resource_end(res), res->size / KiB); } + +bool is_cpu(const struct device *cpu) +{ + return cpu->path.type == DEVICE_PATH_APIC && + cpu->bus->dev->path.type == DEVICE_PATH_CPU_CLUSTER; +} + +bool is_enabled_cpu(const struct device *cpu) +{ + return is_cpu(cpu) && cpu->enabled; +} diff --git a/src/include/device/device.h b/src/include/device/device.h index cd08f1db68..a375639d82 100644 --- a/src/include/device/device.h +++ b/src/include/device/device.h @@ -207,6 +207,8 @@ 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); +bool is_cpu(const struct device *cpu); +bool is_enabled_cpu(const struct device *cpu); /* Returns whether there is a hotplug port on the path to the given device. */ extern bool dev_path_hotplug(const struct device *); |