diff options
author | Rob Barnes <robbarnes@google.com> | 2022-04-19 08:39:00 -0600 |
---|---|---|
committer | Karthik Ramasubramanian <kramasub@google.com> | 2022-04-21 17:01:27 +0000 |
commit | 05c9a850fd21e060efdd54b5699aaf8f3c54d2a4 (patch) | |
tree | 167cbebe7f46ed969b4a9fd33f6b563ae0c715b9 /src | |
parent | 3f7e3ad52357ada278b087331a1284b730d711a6 (diff) |
mb/google/nipperkin: Fix WLAN to GEN2 speed
Fix WLAN PCIE speed to GEN2. Dynamic switching between speeds is causing
the PSP to hang when resuming from S0ix suspend. The root cause is still
under investigation. Just disabling PSPP fixes the hang but causes poor
PLT performance.
BUG=b:228830362
BRANCH=guybrush
TEST=suspend_stress_test on AC and DC
Change-Id: I988365e51aca0d6515c5605b3032521cf59d8d30
Signed-off-by: Rob Barnes <robbarnes@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63722
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Kevin Chiu <kevin.chiu.17802@gmail.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/mainboard/google/guybrush/variants/nipperkin/variant.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/mainboard/google/guybrush/variants/nipperkin/variant.c b/src/mainboard/google/guybrush/variants/nipperkin/variant.c index b70545e733..48e768d182 100644 --- a/src/mainboard/google/guybrush/variants/nipperkin/variant.c +++ b/src/mainboard/google/guybrush/variants/nipperkin/variant.c @@ -7,7 +7,13 @@ void variant_update_dxio_descriptors(fsp_dxio_descriptor *dxio_descriptors) { dxio_descriptors[WLAN].link_aspm_L1_1 = false; dxio_descriptors[WLAN].link_aspm_L1_2 = false; - /* Disable PSPP to avoid S0ix hangs - b/228830362 */ - memset(dxio_descriptors[WLAN].port_params, 0, - sizeof(dxio_descriptors[WLAN].port_params)); + + /* Fix link speed to GEN2 - b/228830362 */ + dxio_descriptors[WLAN].link_speed_capability = GEN2; + dxio_descriptors[WLAN].port_params[0] = PP_PSPP_AC; + /* AC_DirectIndirect[11:8], AC_MaxPreferredSpeed[7:4], AC_MinPreferredSpeed[3:0] */ + dxio_descriptors[WLAN].port_params[1] = 0x122; + dxio_descriptors[WLAN].port_params[2] = PP_PSPP_DC; + /* DC_DirectIndirect[11:8], DC_MaxPreferredSpeed[7:4], DC_MinPreferredSpeed[3:0] */ + dxio_descriptors[WLAN].port_params[3] = 0x122; } |