Karthik Ramasubramanian has submitted this change. ( https://review.coreboot.org/c/coreboot/+/63722 )
Change subject: mb/google/nipperkin: Fix WLAN to GEN2 speed ......................................................................
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 --- M src/mainboard/google/guybrush/variants/nipperkin/variant.c 1 file changed, 9 insertions(+), 3 deletions(-)
Approvals: build bot (Jenkins): Verified Kevin Chiu: Looks good to me, approved Raul Rangel: Looks good to me, approved Karthik Ramasubramanian: Looks good to me, approved
diff --git a/src/mainboard/google/guybrush/variants/nipperkin/variant.c b/src/mainboard/google/guybrush/variants/nipperkin/variant.c index b70545e..48e768d 100644 --- a/src/mainboard/google/guybrush/variants/nipperkin/variant.c +++ b/src/mainboard/google/guybrush/variants/nipperkin/variant.c @@ -7,7 +7,13 @@ { 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; }