Felix Held has submitted this change. ( 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 Reviewed-on: https://review.coreboot.org/c/coreboot/+/83642 Reviewed-by: Angel Pons th3fanbus@gmail.com Reviewed-by: Shuo Liu shuo.liu@intel.com Reviewed-by: Paul Menzel paulepanter@mailbox.org Tested-by: build bot (Jenkins) no-reply@coreboot.org --- 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(-)
Approvals: Shuo Liu: Looks good to me, but someone else must approve Angel Pons: Looks good to me, approved Paul Menzel: Looks good to me, but someone else must approve build bot (Jenkins): Verified
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);