summaryrefslogtreecommitdiff
path: root/src/mainboard/google/dedede
diff options
context:
space:
mode:
authorTeddy Shih <teddyshih@ami.corp-partner.google.com>2021-12-20 14:36:32 +0800
committerFelix Held <felix-coreboot@felixheld.de>2022-01-12 16:19:02 +0000
commit2853f0fd63dff2fb7e7eb03ccb5a73d3ff04255c (patch)
treef37b1287389aa4175b8afdce369640b6ff22d7c4 /src/mainboard/google/dedede
parent787ee8b9eaddf189e6cb98aa86ebebf62149fb4b (diff)
mb/google/dedede/var/beadrix: Configure GPIO settings
Override GPIO pad configurations based on the beadrix's schematic. BUG=b:204882915 BRANCH=None TEST=Built test coreboot image Signed-off-by: Teddy Shih <teddyshih@ami.corp-partner.google.com> Change-Id: I53fc8088ff8ebb2790ac8cd68186cf9de908b414 Reviewed-on: https://review.coreboot.org/c/coreboot/+/60245 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Diffstat (limited to 'src/mainboard/google/dedede')
-rw-r--r--src/mainboard/google/dedede/variants/beadrix/Makefile.inc2
-rw-r--r--src/mainboard/google/dedede/variants/beadrix/gpio.c67
2 files changed, 69 insertions, 0 deletions
diff --git a/src/mainboard/google/dedede/variants/beadrix/Makefile.inc b/src/mainboard/google/dedede/variants/beadrix/Makefile.inc
index 566f5cc767..e835c698be 100644
--- a/src/mainboard/google/dedede/variants/beadrix/Makefile.inc
+++ b/src/mainboard/google/dedede/variants/beadrix/Makefile.inc
@@ -1,3 +1,5 @@
## SPDX-License-Identifier: GPL-2.0-or-later
romstage-y += memory.c
+
+ramstage-y += gpio.c
diff --git a/src/mainboard/google/dedede/variants/beadrix/gpio.c b/src/mainboard/google/dedede/variants/beadrix/gpio.c
new file mode 100644
index 0000000000..602864959c
--- /dev/null
+++ b/src/mainboard/google/dedede/variants/beadrix/gpio.c
@@ -0,0 +1,67 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include <baseboard/gpio.h>
+#include <baseboard/variants.h>
+
+/* Pad configuration in ramstage */
+static const struct pad_config gpio_table[] = {
+ /* A11 : TOUCH_RPT_EN ==> NC */
+ PAD_NC(GPP_A11, NONE),
+
+ /* C18 : AP_I2C_EMR_SDA ==> NC */
+ PAD_NC(GPP_C18, NONE),
+ /* C19 : AP_I2C_EMR_SCL ==> NC */
+ PAD_NC(GPP_C19, NONE),
+ /* C22 : UART2_RTS_N ==> NC */
+ PAD_NC(GPP_C22, NONE),
+
+ /* D12 : WCAM_RST_L ==> NC */
+ PAD_NC(GPP_D12, NONE),
+ /* D13 : EN_PP2800_CAMERA ==> NC */
+ PAD_NC(GPP_D13, NONE),
+ /* D14 : EN_PP1200_CAMERA ==> NC */
+ PAD_NC(GPP_D14, NONE),
+ /* D15 : UCAM_RST_L ==> NC */
+ PAD_NC(GPP_D15, NONE),
+ /* D19 : WWAN_WLAN_COEX1 ==> TP */
+ PAD_NC(GPP_D19, NONE),
+ /* D20 : WWAN_WLAN_COEX2 ==> TP */
+ PAD_NC(GPP_D20, NONE),
+ /* D21 : WWAN_WLAN_COEX3 ==> TP */
+ PAD_NC(GPP_D21, NONE),
+
+ /* E1 : EMR_RESET_L ==> NC */
+ PAD_NC(GPP_E1, NONE),
+ /* E2 : CLK_24M_WCAM ==> NC */
+ PAD_NC(GPP_E2, NONE),
+ /* E5 : AP_SUB_IO_2 ==> TP */
+ PAD_NC(GPP_E5, NONE),
+ /* E10 : GPP_E10/SML_DATA0 ==> NC */
+ PAD_NC(GPP_E10, NONE),
+
+ /* G0 : SD_CMD ==> NC */
+ PAD_NC(GPP_G0, NONE),
+ /* G1 : SD_DATA0 ==> NC */
+ PAD_NC(GPP_G1, NONE),
+ /* G2 : SD_DATA1 ==> NC */
+ PAD_NC(GPP_G2, NONE),
+ /* G3 : SD_DATA2 ==> NC */
+ PAD_NC(GPP_G3, NONE),
+ /* G4 : SD_DATA3 ==> NC */
+ PAD_NC(GPP_G4, NONE),
+ /* G5 : SD_CD_ODL ==> NC */
+ PAD_NC(GPP_G5, NONE),
+ /* G6 : SD_CLK ==> NC */
+ PAD_NC(GPP_G6, NONE),
+ /* G7 : SD_SDIO_WP ==> NC */
+ PAD_NC(GPP_G7, NONE),
+
+ /* H1 : EN_PP3300_SD_U ==> NC */
+ PAD_NC(GPP_H1, NONE),
+};
+
+const struct pad_config *variant_override_gpio_table(size_t *num)
+{
+ *num = ARRAY_SIZE(gpio_table);
+ return gpio_table;
+}