From 1cedc7e40f31a0874ed59a58efe95c215317c255 Mon Sep 17 00:00:00 2001 From: Haridhar Kalvala Date: Thu, 7 Jun 2018 10:52:31 +0530 Subject: soc/intel/skylake: Enable low power S0Idle capability This patch sets the ACPI FADT flag ACPI_FADT_LOW_POWER_S0 if S0ix is enabled for the platform. BUG=b:79559085 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: I0b8a86118232a66e7466d5b8116eff6087b51210 Signed-off-by: Haridhar Kalvala Signed-off-by: Rajneesh Bhardwaj Reviewed-on: https://review.coreboot.org/26940 Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh Reviewed-by: Naresh Solanki --- src/soc/intel/skylake/acpi.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/soc/intel/skylake') diff --git a/src/soc/intel/skylake/acpi.c b/src/soc/intel/skylake/acpi.c index be1200b681..cc8f43725b 100644 --- a/src/soc/intel/skylake/acpi.c +++ b/src/soc/intel/skylake/acpi.c @@ -234,6 +234,8 @@ unsigned long acpi_fill_madt(unsigned long current) void acpi_fill_fadt(acpi_fadt_t *fadt) { + const struct device *dev = SA_DEV_ROOT; + const config_t *config = dev ? dev->chip_info : NULL; const uint16_t pmbase = ACPI_BASE_ADDRESS; /* Use ACPI 3.0 revision */ @@ -282,6 +284,9 @@ void acpi_fill_fadt(acpi_fadt_t *fadt) ACPI_FADT_RESET_REGISTER | ACPI_FADT_SEALED_CASE | ACPI_FADT_S4_RTC_WAKE | ACPI_FADT_PLATFORM_CLOCK; + if (config && config->s0ix_enable) + fadt->flags |= ACPI_FADT_LOW_PWR_IDLE_S0; + fadt->reset_reg.space_id = 1; fadt->reset_reg.bit_width = 8; fadt->reset_reg.bit_offset = 0; -- cgit v1.2.3