soc/intel/cannonlake: Enable low power S0 Idle capability

This patch sets the ACPI FADT flag ACPI_FADT_LOW_POWER_S0
if S0ix is enabled for the platform. This also sets the
FSPUPD to indicate the status of S0ix on the platform.

TEST= Boot to OS and check the ACPI_FADT_LOW_PWR_IDLE_S0 flag
      is set in FACP table - FADT.Flags[21] bit.

Change-Id: I6214ebb61f25ef8b704e60c8474808493c92e6f6
Signed-off-by: Vaibhav Shankar <vaibhav.shankar@intel.com>
Reviewed-on: https://review.coreboot.org/25292
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Vaibhav Shankar 2018-03-19 18:56:38 -07:00 committed by Patrick Georgi
parent 8330866067
commit 2da6ec40bb
2 changed files with 6 additions and 0 deletions

View File

@ -187,6 +187,9 @@ void soc_fill_fadt(acpi_fadt_t *fadt)
fadt->x_pm_tmr_blk.resv = 0; fadt->x_pm_tmr_blk.resv = 0;
fadt->x_pm_tmr_blk.addrl = pmbase + PM1_TMR; fadt->x_pm_tmr_blk.addrl = pmbase + PM1_TMR;
fadt->x_pm_tmr_blk.addrh = 0x0; fadt->x_pm_tmr_blk.addrh = 0x0;
if(config->s0ix_enable)
fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0;
} }
uint32_t soc_read_sci_irq_select(void) uint32_t soc_read_sci_irq_select(void)
{ {

View File

@ -228,6 +228,9 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
params->PchHdaAudioLinkSndw3 = config->PchHdaAudioLinkSndw3; params->PchHdaAudioLinkSndw3 = config->PchHdaAudioLinkSndw3;
params->PchHdaAudioLinkSndw4 = config->PchHdaAudioLinkSndw4; params->PchHdaAudioLinkSndw4 = config->PchHdaAudioLinkSndw4;
/* S0ix */
params->PchPmSlpS0Enable = config->s0ix_enable;
/* USB */ /* USB */
for (i = 0; i < ARRAY_SIZE(config->usb2_ports); i++) { for (i = 0; i < ARRAY_SIZE(config->usb2_ports); i++) {
params->PortUsb20Enable[i] = params->PortUsb20Enable[i] =