mb/google/nipperkin: Disable PSPP for WLAN
Disable PSPP parameters for WLAN card on Nipperkin. This feature
is causing S0ix resume hangs.
BUG=b:227296841,b:228830362
BRANCH=guybrush
TEST=Suspend stress test passes on Nipperkin
Signed-off-by: Rob Barnes <robbarnes@google.com>
Change-Id: I38f05b92ace4aba61163194a6a638915882b8871
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63593
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/mainboard/google/guybrush/variants/nipperkin/variant.c b/src/mainboard/google/guybrush/variants/nipperkin/variant.c
index 204ec61..9ffb2d5 100644
--- a/src/mainboard/google/guybrush/variants/nipperkin/variant.c
+++ b/src/mainboard/google/guybrush/variants/nipperkin/variant.c
@@ -4,6 +4,7 @@
#include <boardid.h>
#include <device/device.h>
#include <soc/gpio.h>
+#include <string.h>
void variant_update_dxio_descriptors(fsp_dxio_descriptor *dxio_descriptors)
{
@@ -12,6 +13,9 @@
if (board_version >= 3) {
dxio_descriptors[WLAN].link_aspm_L1_1 = true;
dxio_descriptors[WLAN].link_aspm_L1_2 = true;
+ /* Disable PSPP to avoid S0ix hangs - b/228830362 */
+ memset(dxio_descriptors[WLAN].port_params, 0,
+ sizeof(dxio_descriptors[WLAN].port_params));
} else {
dxio_descriptors[WLAN].link_aspm_L1_1 = false;
dxio_descriptors[WLAN].link_aspm_L1_2 = false;