Attention is currently required from: Jincheng Li.
Hello Jincheng Li,
I'd like you to do a code review. Please visit
https://review.coreboot.org/c/coreboot/+/81373?usp=email
to review the following change.
Change subject: acpi: Add soc_pci_domain_fill_ssdt ......................................................................
acpi: Add soc_pci_domain_fill_ssdt
soc_pci_domain_fill_ssdt does SoC layer domain SSDT generation, e.g. device object creation and some SoC specific methods.
SoC specific generation is placed ahead of generic content generation, so that the device object could be created before being referenced in the generic contents.
A default null weak implementation is provided. For platforms with static domain SoC SSDT generation, just use the default weak implementation. For platforms with dyanmic domain SoC SSDT generation, the default method should be overridden.
Change-Id: I893eb64c776e78f46737072b475acde5e32a796a Signed-off-by: Shuo Liu shuo.liu@intel.com Signed-off-by: Jincheng Li jincheng.li@intel.com --- M src/acpi/acpigen_pci_root_resource_producer.c M src/include/acpi/acpigen_pci.h 2 files changed, 7 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/73/81373/1
diff --git a/src/acpi/acpigen_pci_root_resource_producer.c b/src/acpi/acpigen_pci_root_resource_producer.c index 78e1a89..5746f9d 100644 --- a/src/acpi/acpigen_pci_root_resource_producer.c +++ b/src/acpi/acpigen_pci_root_resource_producer.c @@ -46,6 +46,10 @@
void pci_domain_fill_ssdt(const struct device *domain) { + /* SoC specific settings, device object creation could be placed here */ + soc_pci_domain_fill_ssdt(domain); + + /* Generic settings */ const char *acpi_scope = acpi_device_path(domain); printk(BIOS_DEBUG, "%s ACPI scope: '%s'\n", __func__, acpi_scope); acpigen_write_scope(acpi_device_path(domain)); @@ -104,3 +108,5 @@ /* Scope */ acpigen_pop_len(); } + +__weak void soc_pci_domain_fill_ssdt(const struct device *domain) {}; diff --git a/src/include/acpi/acpigen_pci.h b/src/include/acpi/acpigen_pci.h index 69216ec..78945bc 100644 --- a/src/include/acpi/acpigen_pci.h +++ b/src/include/acpi/acpigen_pci.h @@ -15,5 +15,6 @@ const char *source_path, unsigned int index);
void pci_domain_fill_ssdt(const struct device *domain); +void soc_pci_domain_fill_ssdt(const struct device *domain);
#endif /* ACPIGEN_PCI_H */