summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReka Norman <rekanorman@google.com>2022-02-07 20:22:08 +1100
committerFelix Held <felix-coreboot@felixheld.de>2022-02-11 14:11:53 +0000
commitb0947172c889623a26d849e7d732990f122f9805 (patch)
treedd359567b63fa8c21afc6863cd103885415ee6e1
parent19567d8ec26b1ac5edd395195e0640d301466be8 (diff)
mb/google/brya/var/nivviks: Implement WWAN power sequencing
Nissa is using the FM101, which has the following power sequencing requirements: Power on: assert WWAN_EN, delay 20 ms, deassert WWAN_RST_L Power off: assert WWAN_RST_L, delay 20 ms, deassert WWAN_EN Add a power resource to the USB device, and use wwan_power.asl to handle the power off sequence. BUG=b:217092522 TEST=abuild -a -x -c max -p none -t google/brya -b nivviks Signed-off-by: Reka Norman <rekanorman@google.com> Change-Id: Ibe1b863a550c6af1ac3eb98f2aaa3db15b149ada Reviewed-on: https://review.coreboot.org/c/coreboot/+/61694 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Kangheui Won <khwon@chromium.org>
-rw-r--r--src/mainboard/google/brya/Kconfig.name1
-rw-r--r--src/mainboard/google/brya/variants/nivviks/include/variant/gpio.h4
-rw-r--r--src/mainboard/google/brya/variants/nivviks/overridetree.cb5
3 files changed, 10 insertions, 0 deletions
diff --git a/src/mainboard/google/brya/Kconfig.name b/src/mainboard/google/brya/Kconfig.name
index 9ff6d4f0bc..c645b9556d 100644
--- a/src/mainboard/google/brya/Kconfig.name
+++ b/src/mainboard/google/brya/Kconfig.name
@@ -85,6 +85,7 @@ config BOARD_GOOGLE_NIVVIKS
bool "-> Nivviks"
select BOARD_GOOGLE_BASEBOARD_NISSA
select DRIVERS_INTEL_MIPI_CAMERA
+ select HAVE_WWAN_POWER_SEQUENCE
config BOARD_GOOGLE_NEREID
bool "-> Nereid"
diff --git a/src/mainboard/google/brya/variants/nivviks/include/variant/gpio.h b/src/mainboard/google/brya/variants/nivviks/include/variant/gpio.h
index c4fe342621..c96b01fc15 100644
--- a/src/mainboard/google/brya/variants/nivviks/include/variant/gpio.h
+++ b/src/mainboard/google/brya/variants/nivviks/include/variant/gpio.h
@@ -5,4 +5,8 @@
#include <baseboard/gpio.h>
+#define WWAN_FCPO GPP_D6
+#define WWAN_RST GPP_F12
+#define T2_OFF_MS 20
+
#endif
diff --git a/src/mainboard/google/brya/variants/nivviks/overridetree.cb b/src/mainboard/google/brya/variants/nivviks/overridetree.cb
index 627accf45b..194b26fa3e 100644
--- a/src/mainboard/google/brya/variants/nivviks/overridetree.cb
+++ b/src/mainboard/google/brya/variants/nivviks/overridetree.cb
@@ -281,6 +281,11 @@ chip soc/intel/alderlake
chip drivers/usb/acpi
register "desc" = ""USB2 WWAN""
register "type" = "UPC_TYPE_INTERNAL"
+ register "has_power_resource" = "1"
+ register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F12)"
+ register "reset_off_delay_ms" = "20"
+ register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
+ register "enable_delay_ms" = "20"
device ref usb2_port4 on
probe DB_USB DB_1C_LTE
end