summaryrefslogtreecommitdiff
path: root/src/mainboard/google/gru/board.h
diff options
context:
space:
mode:
authorJulius Werner <jwerner@chromium.org>2017-07-14 14:30:29 -0700
committerJulius Werner <jwerner@chromium.org>2017-07-19 18:15:15 +0000
commit6486e7819ccf4acf923d934d4293861f394cc065 (patch)
tree5b90d178a021829b9e268b9229b5e9e843668b32 /src/mainboard/google/gru/board.h
parent4ed8b305539f661895d9fa950bb32fc653e37f47 (diff)
downloadcoreboot-6486e7819ccf4acf923d934d4293861f394cc065.tar.xz
google/gru: Add support for Scarlet rev1
This patch adds the necessary changes to support Scarlet revision 1. Since the differences to revision 0 are so deep, we have decided not to continue support for it in the same image. Therefore, this patch will break Scarlet rev0. All the deviations from other Gru boards are currently guarded by CONFIG_BOARD_GOOGLE_SCARLET. This should be changed later if we introduce more variants based on the newer Scarlet board design. Change-Id: I7a7cc11d9387ac1d856663326e35cfa5371e0af2 Signed-off-by: Julius Werner <jwerner@chromium.org> Reviewed-on: https://review.coreboot.org/20587 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: David Schneider <dnschneid@chromium.org>
Diffstat (limited to 'src/mainboard/google/gru/board.h')
-rw-r--r--src/mainboard/google/gru/board.h26
1 files changed, 22 insertions, 4 deletions
diff --git a/src/mainboard/google/gru/board.h b/src/mainboard/google/gru/board.h
index 8acbe34c92..f240dcf0ab 100644
--- a/src/mainboard/google/gru/board.h
+++ b/src/mainboard/google/gru/board.h
@@ -17,18 +17,36 @@
#ifndef __COREBOOT_SRC_MAINBOARD_GOOGLE_GRU_BOARD_H
#define __COREBOOT_SRC_MAINBOARD_GOOGLE_GRU_BOARD_H
+#include <assert.h>
#include <gpio.h>
+#define GPIO_POWEROFF GPIO(1, A, 6)
+#define GPIO_RESET GPIO(0, B, 3)
+#define GPIO_SDMMC_PWR GPIO(4, D, 5)
+
+#if IS_ENABLED(CONFIG_BOARD_GOOGLE_SCARLET)
+#define GPIO_BACKLIGHT GPIO(4, C, 5)
+#define GPIO_EC_IN_RW GPIO(0, A, 1)
+#define GPIO_EC_IRQ GPIO(1, C, 2)
+#define GPIO_P15V_EN dead_code_t(gpio_t, "PP1500 doesn't exist on Scarlet")
+#define GPIO_P18V_AUDIO_PWREN dead_code_t(gpio_t, "doesn't exist on Scarlet")
+#define GPIO_P30V_EN dead_code_t(gpio_t, "PP3000 doesn't exist on Scarlet")
+#define GPIO_TP_RST_L dead_code_t(gpio_t, "don't need TP_RST_L on Scarlet")
+#define GPIO_TPM_IRQ GPIO(1, C, 1)
+#define GPIO_WLAN_RST_L dead_code_t(gpio_t, "no WLAN reset on Scarlet in FW")
+#define GPIO_WP GPIO(0, B, 5)
+#else
#define GPIO_BACKLIGHT GPIO(1, C, 1)
#define GPIO_EC_IN_RW GPIO(3, B, 0)
#define GPIO_EC_IRQ GPIO(0, A, 1)
-#define GPIO_POWEROFF GPIO(1, A, 6)
-#define GPIO_RESET GPIO(0, B, 3)
-#define GPIO_WP GPIO(1, C, 2)
#define GPIO_P15V_EN GPIO(0, B, 2)
+#define GPIO_P18V_AUDIO_PWREN GPIO(0, A, 2)
#define GPIO_P30V_EN GPIO(0, B, 4)
-#define GPIO_P18V_AUDIO_PWREN GPIO(0, A, 2)
+#define GPIO_TP_RST_L GPIO(3, B, 4) /* may also be an I2C pull-up enable */
#define GPIO_TPM_IRQ GPIO(0, A, 5)
+#define GPIO_WLAN_RST_L GPIO(1, B, 3)
+#define GPIO_WP GPIO(1, C, 2)
+#endif
void setup_chromeos_gpios(void);