acpi: Add acpigen_write_OSC_pci_domain
commitf4a12e1d39a097e17007ef11ccf784c2a42f1924
authorShuo Liu <shuo.liu@intel.com>
Thu, 21 Mar 2024 13:22:03 +0000 (21 21:22 +0800)
committerLean Sheng Tan <sheng.tan@9elements.com>
Mon, 1 Apr 2024 08:06:46 +0000 (1 08:06 +0000)
treef06ebdc31efb373d8495409e56c0e3588aaf01b8
parent96d7524ee69f07cc54ecf5527953380c8c5f5c48
acpi: Add acpigen_write_OSC_pci_domain

Add dynamic PCI domain _OSC ASL generation codes, supporting both
PCIe and CXL domains.

Dynamic SSDT generation is used to generate a list of ASL device
objects based on FSP outputs (e.g. the SoC/SKU configurations)
and _OSC is a method inside these objects (hence it would be
straightforward to be generated altogether, plus some C codes
managed boot configs could be referenced as well).

This usage is optional. It is helpful for cases where the same
code set supports multiple SKUs/SoCs (difficult to be handled by
one set of static SSDT), and the CPU performance is good enough
to run SSDT generation logics with minimal costs.

TEST=intel/archercity CRB

Tested with https://review.coreboot.org/c/coreboot/+/81377.

Change-Id: I711ce5350d718e47feb2912555108801ad7f918d
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/81375
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
src/acpi/acpigen_pci.c
src/include/acpi/acpigen_pci.h