summaryrefslogtreecommitdiffstats
path: root/src/soc/intel/xeon_sp/skx/acpi.c
diff options
context:
space:
mode:
authorAngel Pons <th3fanbus@gmail.com>2020-07-13 00:02:34 +0200
committerAngel Pons <th3fanbus@gmail.com>2020-07-20 13:22:03 +0000
commita208c6ce732a58c44bb2bf105d5e664f0887d5fe (patch)
tree95ba30c5c45ac8a2bdfabc7e570b58f9dd19f72d /src/soc/intel/xeon_sp/skx/acpi.c
parent4b1b0efedaa3d2288a953c233b9eba74ef74f121 (diff)
downloadcoreboot-a208c6ce732a58c44bb2bf105d5e664f0887d5fe.tar.gz
coreboot-a208c6ce732a58c44bb2bf105d5e664f0887d5fe.tar.bz2
coreboot-a208c6ce732a58c44bb2bf105d5e664f0887d5fe.zip
src: Never overwrite `fadt->flags`
Instead, just flip the desired bits using bitwise operations. As this is initially zero, the resulting value is the same. This allows flags to be set from anywhere regardless of execution order. Tested on Asus P8Z77-V LX2 with Linux 5.7.6 and Windows 10 at the end of the patch train, both operating systems are able to boot successfully. Change-Id: Icfd580a20524936cd0adac574331b09fb2aea925 Signed-off-by: Angel Pons <th3fanbus@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/43387 Reviewed-by: Nico Huber <nico.h@gmx.de> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/intel/xeon_sp/skx/acpi.c')
-rw-r--r--src/soc/intel/xeon_sp/skx/acpi.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/soc/intel/xeon_sp/skx/acpi.c b/src/soc/intel/xeon_sp/skx/acpi.c
index cdc89d093916..13bddfc3bb00 100644
--- a/src/soc/intel/xeon_sp/skx/acpi.c
+++ b/src/soc/intel/xeon_sp/skx/acpi.c
@@ -263,10 +263,10 @@ void acpi_fill_fadt(acpi_fadt_t *fadt)
fadt->century = 0x00;
fadt->iapc_boot_arch = ACPI_FADT_LEGACY_DEVICES | ACPI_FADT_8042;
- fadt->flags = ACPI_FADT_WBINVD | ACPI_FADT_C1_SUPPORTED |
- ACPI_FADT_C2_MP_SUPPORTED | ACPI_FADT_SLEEP_BUTTON |
- ACPI_FADT_RESET_REGISTER | ACPI_FADT_SLEEP_TYPE |
- ACPI_FADT_S4_RTC_WAKE | ACPI_FADT_PLATFORM_CLOCK;
+ fadt->flags |= ACPI_FADT_WBINVD | ACPI_FADT_C1_SUPPORTED |
+ ACPI_FADT_C2_MP_SUPPORTED | ACPI_FADT_SLEEP_BUTTON |
+ ACPI_FADT_RESET_REGISTER | ACPI_FADT_SLEEP_TYPE |
+ ACPI_FADT_S4_RTC_WAKE | ACPI_FADT_PLATFORM_CLOCK;
/* Reset Register */
fadt->reset_reg.space_id = ACPI_ADDRESS_SPACE_IO;