summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWisley Chen <wisley.chen@quanta.corp-partner.google.com>2021-12-29 07:52:21 +0600
committerFelix Held <felix-coreboot@felixheld.de>2022-01-07 15:28:19 +0000
commit060e89f347a4799edcf51bbd2147d39e2f601d19 (patch)
treec440a1486fe20102ee4c7b94fc91e421de0c817b
parent2dcc7224a0ca78c9f276a5367233776ba6860d18 (diff)
downloadcoreboot-060e89f347a4799edcf51bbd2147d39e2f601d19.tar.gz
coreboot-060e89f347a4799edcf51bbd2147d39e2f601d19.tar.bz2
coreboot-060e89f347a4799edcf51bbd2147d39e2f601d19.zip
mb/google/brya/anahera: Swap TPM I2C with touchscreen I2C
According to the latest schematic, exchange I2C port for TPM/touchscreen. TPM: I2C3 -> I2C1 Touchscreen: I2C1 -> I2C3 BUG=b:212465011 TEST=FW_NAME=anahera emerge-brya coreboot Change-Id: I1bb1857b4c5b06ca4ad660bf73e0c4df9c376a58 Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/60432 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
-rw-r--r--src/mainboard/google/brya/Kconfig2
-rw-r--r--src/mainboard/google/brya/variants/anahera/gpio.c8
-rw-r--r--src/mainboard/google/brya/variants/anahera/overridetree.cb36
3 files changed, 21 insertions, 25 deletions
diff --git a/src/mainboard/google/brya/Kconfig b/src/mainboard/google/brya/Kconfig
index 9d80ec3c22ef..0796ed088b96 100644
--- a/src/mainboard/google/brya/Kconfig
+++ b/src/mainboard/google/brya/Kconfig
@@ -98,7 +98,7 @@ config DRIVER_TPM_I2C_BUS
default 0x1 if BOARD_GOOGLE_TAEKO
default 0x3 if BOARD_GOOGLE_TAEKO4ES
default 0x1 if BOARD_GOOGLE_FELWINTER
- default 0x3 if BOARD_GOOGLE_ANAHERA
+ default 0x1 if BOARD_GOOGLE_ANAHERA
default 0x3 if BOARD_GOOGLE_ANAHERA4ES
default 0x3 if BOARD_GOOGLE_VELL
default 0x3 if BOARD_GOOGLE_TANIKS
diff --git a/src/mainboard/google/brya/variants/anahera/gpio.c b/src/mainboard/google/brya/variants/anahera/gpio.c
index 40dd56fd377f..1d15a08e42f6 100644
--- a/src/mainboard/google/brya/variants/anahera/gpio.c
+++ b/src/mainboard/google/brya/variants/anahera/gpio.c
@@ -105,10 +105,10 @@ static const struct pad_config early_gpio_table[] = {
PAD_CFG_GPO(GPP_A12, 1, DEEP),
/* A13 : PMC_I2C_SCL ==> GSC_PCH_INT_ODL */
PAD_CFG_GPI_APIC(GPP_A13, NONE, PLTRST, LEVEL, INVERT),
- /* 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 : ISH_12C1_SDA ==> PCH_I2C_TPM_SDA */
+ PAD_CFG_NF(GPP_H6, NONE, DEEP, NF1),
+ /* H7 : ISH_12C1_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/anahera/overridetree.cb b/src/mainboard/google/brya/variants/anahera/overridetree.cb
index 616224d09eab..2af55204268f 100644
--- a/src/mainboard/google/brya/variants/anahera/overridetree.cb
+++ b/src/mainboard/google/brya/variants/anahera/overridetree.cb
@@ -40,29 +40,25 @@ 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 |
+ #| I2C3 | Touchscreen |
#| I2C5 | Trackpad |
#+-------------------+---------------------------+
register "common_soc_config" = "{
- .i2c[0] = {
- .speed = I2C_SPEED_FAST,
- },
.i2c[1] = {
- .speed = I2C_SPEED_FAST,
- },
- .i2c[2] = {
- .speed = I2C_SPEED_FAST,
- },
- .i2c[3] = {
.early_init = 1,
.speed = I2C_SPEED_FAST,
+ .rise_time_ns = 600,
+ .fall_time_ns = 400,
+ .data_hold_time_ns = 50,
},
- .i2c[5] = {
+ .i2c[3] = {
.speed = I2C_SPEED_FAST,
+ .rise_time_ns = 650,
+ .fall_time_ns = 400,
+ .data_hold_time_ns = 50,
},
}"
register "usb2_ports[1]" = "USB2_PORT_MID(OC_SKIP)" # Type-A MLB Port
@@ -202,6 +198,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""
@@ -238,13 +241,6 @@ chip soc/intel/alderlake
device i2c 40 on end
end
end
- device ref i2c3 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 i2c5 on
chip drivers/i2c/generic
register "hid" = ""ELAN0000""