From b11f381740448c10908419ada0d405b05dc37dc0 Mon Sep 17 00:00:00 2001 From: Mario Scheithauer Date: Wed, 26 Jan 2022 11:49:10 +0100 Subject: [PATCH] soc/intel/appololake: Allow to configure SATA ALPM via devicetree Add a devicetree option to disable SATA Aggressive Link Power Management. ALPM is a method of saving power. The corresponding FSP-S UPD parameter is enabled by default. It may be that this feature is unwanted, for example for a real-time system. Therefore, allow to disable ALPM using the devicetree. Change-Id: Ica8920a87ebebe83f5d8cb4d6c8c0a6105e183e4 Signed-off-by: Mario Scheithauer Reviewed-on: https://review.coreboot.org/c/coreboot/+/61401 Tested-by: build bot (Jenkins) Reviewed-by: Werner Zeh Reviewed-by: Paul Menzel --- src/soc/intel/apollolake/chip.c | 4 ++++ src/soc/intel/apollolake/chip.h | 3 +++ 2 files changed, 7 insertions(+) diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c index 98844a52fd..82ec2da453 100644 --- a/src/soc/intel/apollolake/chip.c +++ b/src/soc/intel/apollolake/chip.c @@ -693,6 +693,10 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *silupd) silconfig->PavpEnable = CONFIG(PAVP); + /* SATA config */ + if (is_devfn_enabled(PCH_DEVFN_SATA)) + silconfig->SataSalpSupport = !(cfg->DisableSataSalpSupport); + mainboard_silicon_init_params(silconfig); } diff --git a/src/soc/intel/apollolake/chip.h b/src/soc/intel/apollolake/chip.h index 482b333306..f531381fac 100644 --- a/src/soc/intel/apollolake/chip.h +++ b/src/soc/intel/apollolake/chip.h @@ -190,6 +190,9 @@ struct soc_intel_apollolake_config { * 0:Enable (default), 1:Disable. */ uint8_t disable_xhci_lfps_pm; + + /* SATA Aggressive Link Power Management */ + uint8_t DisableSataSalpSupport; }; typedef struct soc_intel_apollolake_config config_t;