Felix Held has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/83642?usp=email )
Change subject: device: move is_domain0 and is_dev_on_domain0 to common code ......................................................................
device: move is_domain0 and is_dev_on_domain0 to common code
Move is_domain0 and is_dev_on_domain0 from the Intel Xeon SP code to the common coreboot code so that it can be used elsewhere in coreboot too, and while moving also implement it as functions instead of macros which is more in line with the rest of helper functions in that new file.
Signed-off-by: Felix Held felix-coreboot@felixheld.de Change-Id: I954251ebc82802c77bf897dfa2db54aa10bc5ac4 --- M src/device/device_util.c M src/include/device/device.h M src/soc/intel/xeon_sp/include/soc/chip_common.h 3 files changed, 12 insertions(+), 3 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/42/83642/1
diff --git a/src/device/device_util.c b/src/device/device_util.c index 6a45770..2e97ece 100644 --- a/src/device/device_util.c +++ b/src/device/device_util.c @@ -261,6 +261,16 @@ return NULL; }
+bool is_domain0(const struct device *dev) +{ + return dev && dev->path.type == DEVICE_PATH_DOMAIN && dev->path.domain.domain == 0; +} + +bool is_dev_on_domain0(const struct device *dev) +{ + return is_domain0(dev_get_domain(dev)); +} + /** * Allocate 64 more resources to the free list. * diff --git a/src/include/device/device.h b/src/include/device/device.h index 1b2e097..ac8a117 100644 --- a/src/include/device/device.h +++ b/src/include/device/device.h @@ -194,6 +194,8 @@ bool is_enabled_pci(const struct device *pci); bool is_pci_dev_on_bus(const struct device *pci, unsigned int bus); bool is_pci_bridge(const struct device *pci); +bool is_domain0(const struct device *dev); +bool is_dev_on_domain0(const struct device *dev);
/* Returns whether there is a hotplug port on the path to the given device. */ bool dev_path_hotplug(const struct device *); diff --git a/src/soc/intel/xeon_sp/include/soc/chip_common.h b/src/soc/intel/xeon_sp/include/soc/chip_common.h index c5553c0..4731bec 100644 --- a/src/soc/intel/xeon_sp/include/soc/chip_common.h +++ b/src/soc/intel/xeon_sp/include/soc/chip_common.h @@ -83,9 +83,6 @@ #define is_dev_on_ubox_domain(dev) is_ubox_domain(dev_get_domain(dev)) #define is_dev_on_cxl_domain(dev) is_cxl_domain(dev_get_domain(dev))
-#define is_domain0(dev) (dev && dev->path.type == DEVICE_PATH_DOMAIN &&\ - dev->path.domain.domain == 0) -#define is_dev_on_domain0(dev) (is_domain0(dev_get_domain(dev))) #define is_stack0(socket, stack) (socket == 0 && stack == IioStack0)
void unlock_pam_regions(void);