aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShelley Chen <shchen@google.com>2021-12-21 13:17:33 -0800
committerShelley Chen <shchen@google.com>2022-01-04 19:16:38 +0000
commit8bdbe23a93008597d99472747ba3415617f8c074 (patch)
tree2d8482fae7a2f46dd0b82e53b27d3931d9207a88
parenta5b6ec05a864fb323696b68f1513d69ee2b718b2 (diff)
mb/google/herobrine: Transition BOARD_HEROBRINE to BOARD_HEROBRINE_REV0
Deprecating Herobrine Rev0 board. The next board is very different from the Rev0 board (ie: Most GPIOs have been remapped). Deprecating and reusing the GOOGLE_BOARD_HEROBRINE Kconfig for next board and reslotting the old GOOGLE_BOARD_HEROBRINE source under GOOGLE_BOARD_HEROBRINE_REV0 config. Want to keep the code around in case somebody needs it but we can remove this code in future after we recall all the Rev0 devices. Also updating the remapped GPIOs to match those of the current herobrine board. BUG=b:211644878 BRANCH=None TEST=emerge-herobrine coreboot Change-Id: I67a0b282710031b927ce9022c7c535bd8d4ca1aa Signed-off-by: Shelley Chen <shchen@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/60284 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Douglas Anderson <dianders@chromium.org>
-rw-r--r--src/mainboard/google/herobrine/Kconfig1
-rw-r--r--src/mainboard/google/herobrine/Kconfig.name4
-rw-r--r--src/mainboard/google/herobrine/board.h4
-rw-r--r--src/mainboard/google/herobrine/mainboard.c11
4 files changed, 17 insertions, 3 deletions
diff --git a/src/mainboard/google/herobrine/Kconfig b/src/mainboard/google/herobrine/Kconfig
index c4c943eaf1..5c7183f460 100644
--- a/src/mainboard/google/herobrine/Kconfig
+++ b/src/mainboard/google/herobrine/Kconfig
@@ -47,6 +47,7 @@ config MAINBOARD_VENDOR
config MAINBOARD_PART_NUMBER
default "Herobrine" if BOARD_GOOGLE_HEROBRINE
+ default "Herobrine.rev0" if BOARD_GOOGLE_HEROBRINE_REV0
default "Senor" if BOARD_GOOGLE_SENOR
default "Piglin" if BOARD_GOOGLE_PIGLIN
default "Hoglin" if BOARD_GOOGLE_HOGLIN
diff --git a/src/mainboard/google/herobrine/Kconfig.name b/src/mainboard/google/herobrine/Kconfig.name
index c0e995cb74..4eb1130e6e 100644
--- a/src/mainboard/google/herobrine/Kconfig.name
+++ b/src/mainboard/google/herobrine/Kconfig.name
@@ -6,6 +6,10 @@ config BOARD_GOOGLE_HEROBRINE
bool "-> Herobrine"
select BOARD_GOOGLE_HEROBRINE_COMMON
+config BOARD_GOOGLE_HEROBRINE_REV0
+ bool "-> Herobrine_Rev0"
+ select BOARD_GOOGLE_HEROBRINE_COMMON
+
config BOARD_GOOGLE_SENOR
bool "-> Senor"
select BOARD_GOOGLE_HEROBRINE_COMMON
diff --git a/src/mainboard/google/herobrine/board.h b/src/mainboard/google/herobrine/board.h
index 4278c11712..b604cf762e 100644
--- a/src/mainboard/google/herobrine/board.h
+++ b/src/mainboard/google/herobrine/board.h
@@ -22,9 +22,9 @@
/* Fingerprint-specific GPIOs. Only for fingerprint-enabled devices. */
#if CONFIG(HEROBRINE_HAS_FINGERPRINT)
-#define GPIO_FPMCU_BOOT0 GPIO(77)
+#define GPIO_FPMCU_BOOT0 (CONFIG(BOARD_GOOGLE_HEROBRINE_REV0) ? GPIO(77) : GPIO(68))
#define GPIO_FP_RST_L GPIO(78)
-#define GPIO_EN_FP_RAILS GPIO(42)
+#define GPIO_EN_FP_RAILS (CONFIG(BOARD_GOOGLE_HEROBRINE_REV0) ? GPIO(42) : GPIO(77))
#else
#define GPIO_FPMCU_BOOT0 dead_code_t(gpio_t)
#define GPIO_FP_RST_L dead_code_t(gpio_t)
diff --git a/src/mainboard/google/herobrine/mainboard.c b/src/mainboard/google/herobrine/mainboard.c
index fcc468ede3..a97f97ef56 100644
--- a/src/mainboard/google/herobrine/mainboard.c
+++ b/src/mainboard/google/herobrine/mainboard.c
@@ -57,7 +57,7 @@ static void mainboard_init(struct device *dev)
qupv3_se_fw_load_and_init(QUPV3_1_SE5, SE_PROTOCOL_I2C, MIXED); /* Touch I2C */
qupv3_se_fw_load_and_init(QUPV3_0_SE7, SE_PROTOCOL_UART, FIFO); /* BT UART */
- if (CONFIG(BOARD_GOOGLE_HEROBRINE)) {
+ if (CONFIG(BOARD_GOOGLE_HEROBRINE_REV0)) {
/* Audio I2C */
qupv3_se_fw_load_and_init(QUPV3_0_SE0, SE_PROTOCOL_I2C, MIXED);
/* Trackpad I2C */
@@ -73,6 +73,15 @@ static void mainboard_init(struct device *dev)
qupv3_se_fw_load_and_init(QUPV3_1_SE4, SE_PROTOCOL_SPI, MIXED);
/* Fingerprint SPI */
qupv3_se_fw_load_and_init(QUPV3_1_SE6, SE_PROTOCOL_SPI, MIXED);
+ } else {
+ /* Trackpad I2C */
+ qupv3_se_fw_load_and_init(QUPV3_0_SE0, SE_PROTOCOL_I2C, MIXED);
+ /* SAR sensor I2C */
+ qupv3_se_fw_load_and_init(QUPV3_0_SE1, SE_PROTOCOL_I2C, MIXED);
+ /* Audio I2C */
+ qupv3_se_fw_load_and_init(QUPV3_0_SE2, SE_PROTOCOL_I2C, MIXED);
+ /* Fingerprint SPI */
+ qupv3_se_fw_load_and_init(QUPV3_1_SE1, SE_PROTOCOL_SPI, MIXED);
}
/* Take FPMCU out of reset. Power was already applied