mb/google/dedede/var/cret: Configure I2C ports and touchpad
1. Support Elan touchpad.
2. Support JYT touchpad.
3. Follow schematic to disable I2C1 and I2C3.
BUG=b:183454249, b:180547781
BRANCH=dedede
TEST=Build the cret board.
Signed-off-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Change-Id: I8c150c3f65d0e057d5ba1b07ec1c20886f02ef6e
Reviewed-on: https://review.coreboot.org/c/coreboot/+/51726
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/mainboard/google/dedede/variants/cret/overridetree.cb b/src/mainboard/google/dedede/variants/cret/overridetree.cb
index 0521f20..96b8a28 100644
--- a/src/mainboard/google/dedede/variants/cret/overridetree.cb
+++ b/src/mainboard/google/dedede/variants/cret/overridetree.cb
@@ -9,6 +9,15 @@
register "usb3_ports[1]" = "USB3_PORT_EMPTY" # None
register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # LTE
+ register "SerialIoI2cMode" = "{
+ [PchSerialIoIndexI2C0] = PchSerialIoPci,
+ [PchSerialIoIndexI2C1] = PchSerialIoDisabled,
+ [PchSerialIoIndexI2C2] = PchSerialIoPci,
+ [PchSerialIoIndexI2C3] = PchSerialIoDisabled,
+ [PchSerialIoIndexI2C4] = PchSerialIoPci,
+ [PchSerialIoIndexI2C5] = PchSerialIoDisabled,
+ }"
+
# Intel Common SoC Config
#+-------------------+---------------------------+
#| Field | Value |
@@ -18,9 +27,9 @@
#| | for TPM communication |
#| | before memory is up |
#| I2C0 | Trackpad |
- #| I2C1 | Digitizer |
+ #| I2C1 | |
#| I2C2 | Touchscreen |
- #| I2C3 | Camera |
+ #| I2C3 | |
#| I2C4 | Audio |
#+-------------------+---------------------------+
register "common_soc_config" = "{
@@ -31,15 +40,9 @@
.i2c[0] = {
.speed = I2C_SPEED_FAST,
},
- .i2c[1] = {
- .speed = I2C_SPEED_FAST,
- },
.i2c[2] = {
.speed = I2C_SPEED_FAST,
},
- .i2c[3] = {
- .speed = I2C_SPEED_FAST,
- },
.i2c[4] = {
.speed = I2C_SPEED_FAST,
},
@@ -77,8 +80,28 @@
end
end
end # USB xHCI
- device pci 15.0 on end
- device pci 15.2 on end
+ device pci 15.0 on
+ chip drivers/i2c/generic
+ register "hid" = ""ELAN0000""
+ register "desc" = ""ELAN Touchpad""
+ register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPP_B3_IRQ)"
+ register "wake" = "GPE0_DW0_03"
+ register "probed" = "1"
+ device i2c 15 on end
+ end
+ chip drivers/i2c/hid
+ register "generic.hid" = ""GXTP7288""
+ register "generic.desc" = ""Goodix Touchpad""
+ register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_B3_IRQ)"
+ register "generic.wake" = "GPE0_DW0_03"
+ register "generic.probed" = "1"
+ register "hid_desc_reg_offset" = "0x20"
+ device i2c 2c on end
+ end
+ end #I2C 0
+ device pci 15.1 off end # I2C 1
+ device pci 15.2 on end # I2C 2
+ device pci 15.3 off end # I2C 3
device pci 1c.7 on end
device pci 19.0 on end
device pci 1f.3 on end