summaryrefslogtreecommitdiffstats
path: root/src/mainboard
diff options
context:
space:
mode:
authorShon Wang <shon.wang@quanta.corp-partner.google.com>2021-12-14 20:41:48 +0800
committerFelix Held <felix-coreboot@felixheld.de>2022-01-07 20:01:53 +0000
commit138f547c8bff06989089a8317badf43f0733acd6 (patch)
tree60509436bf5150b50b4131af5adeb99397cdaabb /src/mainboard
parentaf69af996e57b3d4bd3e588e0379b0a5361a8773 (diff)
downloadcoreboot-138f547c8bff06989089a8317badf43f0733acd6.tar.gz
coreboot-138f547c8bff06989089a8317badf43f0733acd6.tar.bz2
coreboot-138f547c8bff06989089a8317badf43f0733acd6.zip
mb/google/brya/var/vell: Swap TPM I2C with touchscreen I2C
According to the latest schematic for the next build phase, exchange I2C port for TPM/touchscreen. TPM: I2C3 -> I2C1 Touchscreen: I2C1 -> I2C3 BUG=b:210572663 TEST=FW_NAME=vell emerge-brya coreboot Change-Id: If72717a2c073f5b871c3109399f466a04a9d2484 Signed-off-by: Shon Wang <shon.wang@quanta.corp-partner.google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/60106 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nick Vaccaro <nvaccaro@google.com> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Diffstat (limited to 'src/mainboard')
-rw-r--r--src/mainboard/google/brya/Kconfig2
-rw-r--r--src/mainboard/google/brya/variants/vell/gpio.c8
-rw-r--r--src/mainboard/google/brya/variants/vell/overridetree.cb27
3 files changed, 29 insertions, 8 deletions
diff --git a/src/mainboard/google/brya/Kconfig b/src/mainboard/google/brya/Kconfig
index 0796ed088b96..4fb5b749adcc 100644
--- a/src/mainboard/google/brya/Kconfig
+++ b/src/mainboard/google/brya/Kconfig
@@ -100,7 +100,7 @@ config DRIVER_TPM_I2C_BUS
default 0x1 if BOARD_GOOGLE_FELWINTER
default 0x1 if BOARD_GOOGLE_ANAHERA
default 0x3 if BOARD_GOOGLE_ANAHERA4ES
- default 0x3 if BOARD_GOOGLE_VELL
+ default 0x1 if BOARD_GOOGLE_VELL
default 0x3 if BOARD_GOOGLE_TANIKS
default 0x0 if BOARD_GOOGLE_NIVVIKS
default 0x0 if BOARD_GOOGLE_NEREID
diff --git a/src/mainboard/google/brya/variants/vell/gpio.c b/src/mainboard/google/brya/variants/vell/gpio.c
index 7028222d96e7..9e139d3285ec 100644
--- a/src/mainboard/google/brya/variants/vell/gpio.c
+++ b/src/mainboard/google/brya/variants/vell/gpio.c
@@ -92,10 +92,10 @@ static const struct pad_config early_gpio_table[] = {
PAD_CFG_GPI_APIC(GPP_A13, NONE, PLTRST, LEVEL, INVERT),
/* B4 : PROC_GP3 ==> SSD_PERST_L */
PAD_CFG_GPO(GPP_B4, 0, DEEP),
- /* B7 : ISH_12C1_SDA ==> PCH_I2C_TPM_SDA */
- PAD_CFG_NF(GPP_B7, NONE, DEEP, NF2),
- /* B8 : ISH_12C1_SCL ==> PCH_I2C_TPM_SCL */
- PAD_CFG_NF(GPP_B8, NONE, DEEP, NF2),
+ /* H6 : I2C1_SDA ==> PCH_I2C_TPM_SDA */
+ PAD_CFG_NF(GPP_H6, NONE, DEEP, NF1),
+ /* H7 : IC1_SCL ==> PCH_I2C_TPM_SCL */
+ PAD_CFG_NF(GPP_H7, NONE, DEEP, NF1),
/*
* D1 : ISH_GP1 ==> FP_RST_ODL
* FP_RST_ODL comes out of reset as hi-z and does not have an external pull-down.
diff --git a/src/mainboard/google/brya/variants/vell/overridetree.cb b/src/mainboard/google/brya/variants/vell/overridetree.cb
index 825b305afa67..6ad37e076d70 100644
--- a/src/mainboard/google/brya/variants/vell/overridetree.cb
+++ b/src/mainboard/google/brya/variants/vell/overridetree.cb
@@ -39,13 +39,27 @@ chip soc/intel/alderlake
#+-------------------+---------------------------+
#| GSPI1 | Fingerprint MCU |
#| I2C0 | Audio |
- #| I2C1 | Touchscreen |
- #| I2C2 | |
- #| I2C3 | cr50 TPM. Early init is |
+ #| I2C1 | cr50 TPM. Early init is |
#| | required to set up a BAR |
#| | for TPM communication |
+ #| I2C2 | |
+ #| I2C3 | Touchscreen |
#| I2C5 | Trackpad |
#+-------------------+---------------------------+
+ register "common_soc_config" = "{
+ .i2c[1] = {
+ .early_init = 1,
+ .speed = I2C_SPEED_FAST,
+ .rise_time_ns = 600,
+ .fall_time_ns = 400,
+ .data_hold_time_ns = 50,
+ },
+ .i2c[3] = {
+ .rise_time_ns = 650,
+ .fall_time_ns = 400,
+ .data_hold_time_ns = 50,
+ },
+ }"
register "usb2_ports[4]" = "USB2_PORT_TYPE_C(OC3)" # USB2_C3
# I2C Port Config
@@ -183,6 +197,13 @@ chip soc/intel/alderlake
end
end #I2C0
device ref i2c1 on
+ chip drivers/i2c/tpm
+ register "hid" = ""GOOG0005""
+ register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
+ device i2c 50 on end
+ end
+ end
+ device ref i2c3 on
chip drivers/i2c/generic
register "hid" = ""ELAN0001""
register "desc" = ""ELAN Touchscreen""