summaryrefslogtreecommitdiff
path: root/src/mainboard/google/dedede/variants/dita/gpio.c
diff options
context:
space:
mode:
authorSheng-Liang Pan <sheng-liang.pan@quanta.corp-partner.google.com>2023-12-20 15:07:40 +0800
committerFelix Held <felix-coreboot@felixheld.de>2023-12-31 18:10:02 +0000
commitd9dfd1f2fe2fe0ca57a16be3fa03435d584f7f1e (patch)
treef8b9a4f65ac23b9ce549e6f1938036210d14f804 /src/mainboard/google/dedede/variants/dita/gpio.c
parentd968b8515c584896543e6c74c173e342369a89b9 (diff)
mb/google/dedede: Create dita variant
Create the dita variant of the taranza project by copying the files to a new directory named for the variant. BUG=b:317292413 BRANCH=dedede TEST=util/abuild/abuild -p none -t google/dedede -x -a make sure the build includes GOOGLE_DITA Signed-off-by: Sheng-Liang Pan <sheng-liang.pan@quanta.corp-partner.google.com> Change-Id: I843e33f30cd356e4f12330bdfe2d53a0b3920ef3 Reviewed-on: https://review.coreboot.org/c/coreboot/+/79655 Reviewed-by: Derek Huang <derekhuang@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: David Wu <david_wu@quanta.corp-partner.google.com>
Diffstat (limited to 'src/mainboard/google/dedede/variants/dita/gpio.c')
-rw-r--r--src/mainboard/google/dedede/variants/dita/gpio.c108
1 files changed, 108 insertions, 0 deletions
diff --git a/src/mainboard/google/dedede/variants/dita/gpio.c b/src/mainboard/google/dedede/variants/dita/gpio.c
new file mode 100644
index 0000000000..2998592756
--- /dev/null
+++ b/src/mainboard/google/dedede/variants/dita/gpio.c
@@ -0,0 +1,108 @@
+/* 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 */
+ PAD_NC(GPP_A11, NONE),
+ /* A12 : USB_OC1_N */
+ PAD_CFG_NF(GPP_A12, NONE, DEEP, NF1),
+ /* A13 : USB_OC2_N */
+ PAD_CFG_NF(GPP_A13, NONE, DEEP, NF1),
+ /* A14 : USB_OC3_N */
+ PAD_CFG_NF(GPP_A14, NONE, DEEP, NF1),
+ /* A18 : USB_OC0_N */
+ PAD_CFG_NF(GPP_A18, NONE, DEEP, NF1),
+
+ /* B9 : LAN_CLKREQ_ODL */
+ PAD_CFG_NF(GPP_B9, NONE, DEEP, NF1),
+
+ /* D2 : PWM_PP3300_BUZZER */
+ PAD_CFG_GPO(GPP_D2, 1, DEEP),
+ /* D4 : LAN_PE_ISOLATE_ODL_R */
+ PAD_CFG_GPO(GPP_D4, 1, DEEP),
+ /* D5 : TOUCH_RESET_L */
+ PAD_NC(GPP_D5, NONE),
+ /* D6 : EN_PP3300_TOUCH_S0 */
+ PAD_NC(GPP_D6, NONE),
+ /* D17 : LAN_PERST_L */
+ PAD_CFG_GPO(GPP_D17, 1, PLTRST),
+ /* D19 : WWAN_WLAN_COEX1 */
+ PAD_NC(GPP_D19, NONE),
+ /* D20 : WWAN_WLAN_COEX2 */
+ PAD_NC(GPP_D20, NONE),
+
+ /* E13 : GPP_E13/DDI0_DDC_SCL */
+ PAD_CFG_NF(GPP_E13, NONE, DEEP, NF1),
+ /* E14 : GPP_E14/DDI0_DDC_SDA */
+ PAD_CFG_NF(GPP_E14, NONE, DEEP, NF1),
+ /* E15 : GPP_E15/DDI1_DDC_SCL */
+ PAD_CFG_NF(GPP_E15, NONE, DEEP, NF1),
+ /* E16 : GPP_E16/DDI1_DDC_SDA */
+ PAD_CFG_NF(GPP_E16, NONE, DEEP, NF1),
+
+ /* G0 : SD_CMD */
+ PAD_NC(GPP_G0, NONE),
+ /* G1 : SD_DATA0 */
+ PAD_NC(GPP_G1, NONE),
+ /* G2 : SD_DATA1 */
+ PAD_NC(GPP_G2, NONE),
+ /* G3 : SD_DATA2 */
+ PAD_NC(GPP_G3, NONE),
+ /* G4 : SD_DATA3 */
+ PAD_NC(GPP_G4, NONE),
+ /* G5 : SD_CD_ODL */
+ PAD_NC(GPP_G5, NONE),
+ /* G6 : SD_CLK */
+ PAD_NC(GPP_G6, NONE),
+ /* G7 : SD_SDIO_WP */
+ PAD_NC(GPP_G7, NONE),
+
+ /* H4 : AP_I2C_TS_SDA */
+ PAD_NC(GPP_H4, NONE),
+ /* H5 : AP_I2C_TS_SCL */
+ PAD_NC(GPP_H5, NONE),
+ /* H6 : AP_I2C_CAM_SDA */
+ PAD_NC(GPP_H6, NONE),
+ /* H7 : AP_I2C_CAM_SCL */
+ PAD_NC(GPP_H7, NONE),
+ /* H15 : I2S_SPK_BCLK */
+ PAD_NC(GPP_H15, NONE),
+
+ /* R6 : I2S_SPK_LRCK */
+ PAD_NC(GPP_R6, NONE),
+ /* R7 : I2S_SPK_AUDIO */
+ PAD_NC(GPP_R7, NONE),
+
+ /* S2 : DMIC1_CLK */
+ PAD_NC(GPP_S2, NONE),
+ /* S3 : DMIC1_DATA */
+ PAD_NC(GPP_S3, NONE),
+ /* S6 : DMIC0_CLK */
+ PAD_NC(GPP_S6, NONE),
+ /* S7 : DMIC0_DATA */
+ PAD_NC(GPP_S7, NONE),
+};
+
+const struct pad_config *variant_override_gpio_table(size_t *num)
+{
+ *num = ARRAY_SIZE(gpio_table);
+ return gpio_table;
+}
+
+static const gpio_t hpd_gpios[] = {
+ /* HDMI1 */
+ GPP_A17,
+ /* HDMI2 */
+ GPP_A16,
+ /* USB C0 */
+ GPP_B23,
+};
+
+const gpio_t *variant_hpd_gpios(size_t *num)
+{
+ *num = ARRAY_SIZE(hpd_gpios);
+ return hpd_gpios;
+}