Attention is currently required from: Tim Wawrzynczak, Patrick Rudolph. Subrata Banik has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/60406 )
Change subject: soc/intel/alderlake: Alder Lake choose to skip FSP Notify APIs ......................................................................
soc/intel/alderlake: Alder Lake choose to skip FSP Notify APIs
Lists of changes: - SoC selects `SOC_INTEL_COMMON_BLOCK_HECI_NOTIFY` Kconfig to skip FSP notify APIs (Ready to boot and End of Firmware) and make useof native coreboot driver to perform require heci notify prior booting to OS. - Implement SoC overrides to set D0I3 for all Heci devices.
BUG=b:211954778
Signed-off-by: Subrata Banik subratabanik@google.com Change-Id: I0198c9568de0e74053775682a44324405746389a --- M src/soc/intel/alderlake/Kconfig M src/soc/intel/alderlake/finalize.c 2 files changed, 8 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/06/60406/1
diff --git a/src/soc/intel/alderlake/Kconfig b/src/soc/intel/alderlake/Kconfig index 5419783..64691dd 100644 --- a/src/soc/intel/alderlake/Kconfig +++ b/src/soc/intel/alderlake/Kconfig @@ -74,6 +74,7 @@ select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2 select SOC_INTEL_COMMON_BLOCK_HDA + select SOC_INTEL_COMMON_BLOCK_HECI_NOTIFY select SOC_INTEL_COMMON_BLOCK_IPU select SOC_INTEL_COMMON_BLOCK_IRQ select SOC_INTEL_COMMON_BLOCK_MEMINIT diff --git a/src/soc/intel/alderlake/finalize.c b/src/soc/intel/alderlake/finalize.c index 589ea59..b888997 100644 --- a/src/soc/intel/alderlake/finalize.c +++ b/src/soc/intel/alderlake/finalize.c @@ -97,6 +97,11 @@ } }
+void soc_heci_set_d0i3(void) +{ + heci_finalize(); +} + static void soc_finalize(void *unused) { printk(BIOS_DEBUG, "Finalizing chipset.\n"); @@ -105,7 +110,8 @@ apm_control(APM_CNT_FINALIZE); tbt_finalize(); sa_finalize(); - heci_finalize(); + if (!CONFIG(SOC_INTEL_COMMON_BLOCK_HECI_NOTIFY)) + heci_finalize();
/* Indicate finalize step with post code */ post_code(POST_OS_BOOT);