diff --git a/src/device/pci_device.c b/src/device/pci_device.c index 7786043a6c..5765529f86 100644 --- a/src/device/pci_device.c +++ b/src/device/pci_device.c @@ -630,11 +630,6 @@ void pci_dev_enable_resources(struct device *dev) pci_write_config16(dev, PCI_COMMAND, command); } -void __noreturn pcidev_die(void) -{ - die("PCI: dev is NULL!\n"); -} - void pci_bus_enable_resources(struct device *dev) { u16 ctrl; diff --git a/src/device/pci_ops.c b/src/device/pci_ops.c index 96133155be..6f42978e82 100644 --- a/src/device/pci_ops.c +++ b/src/device/pci_ops.c @@ -14,6 +14,7 @@ #define __SIMPLE_DEVICE__ #include +#include #include #include #include @@ -85,3 +86,8 @@ u16 pci_s_find_capability(pci_devfn_t dev, u16 cap) { return pci_s_find_next_capability(dev, cap, 0); } + +void __noreturn pcidev_die(void) +{ + die("PCI: dev is NULL!\n"); +} diff --git a/src/include/device/pci_ops.h b/src/include/device/pci_ops.h index 9a9c575e3c..5cc803c737 100644 --- a/src/include/device/pci_ops.h +++ b/src/include/device/pci_ops.h @@ -23,22 +23,7 @@ #include #include -#ifdef __SIMPLE_DEVICE__ - -/* Avoid name collisions as different stages have different signature - * for these functions. The _s_ stands for simple, fundamental IO or - * MMIO variant. - */ -#define pci_read_config8 pci_s_read_config8 -#define pci_read_config16 pci_s_read_config16 -#define pci_read_config32 pci_s_read_config32 -#define pci_write_config8 pci_s_write_config8 -#define pci_write_config16 pci_s_write_config16 -#define pci_write_config32 pci_s_write_config32 -#else - -#include - +#ifndef __ROMCC__ void __noreturn pcidev_die(void); static __always_inline pci_devfn_t pcidev_bdf(const struct device *dev) @@ -52,6 +37,21 @@ static __always_inline pci_devfn_t pcidev_assert(const struct device *dev) pcidev_die(); return pcidev_bdf(dev); } +#endif + +#ifdef __SIMPLE_DEVICE__ + +/* Avoid name collisions as different stages have different signature + * for these functions. The _s_ stands for simple, fundamental IO or + * MMIO variant. + */ +#define pci_read_config8 pci_s_read_config8 +#define pci_read_config16 pci_s_read_config16 +#define pci_read_config32 pci_s_read_config32 +#define pci_write_config8 pci_s_write_config8 +#define pci_write_config16 pci_s_write_config16 +#define pci_write_config32 pci_s_write_config32 +#else static __always_inline u8 pci_read_config8(const struct device *dev, u16 reg)