summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Vaccaro <nvaccaro@google.com>2018-02-01 13:36:49 -0800
committerAaron Durbin <adurbin@chromium.org>2018-02-12 20:12:06 +0000
commitc92f13533bb55753b63316f2d0c00d9ed50b6e5f (patch)
treec44be6370d6da2ff871ee93ef1a92745ea4c1669
parent7681481f6588081641acad1de4ffcfe336303945 (diff)
downloadcoreboot-c92f13533bb55753b63316f2d0c00d9ed50b6e5f.tar.xz
mainboard/google/zoombini/variants/meowth: enable touchscreen
BUG=b:69011806, b:72179988 BRANCH=master TEST=Verify touchscreen on meowth works with this change. Change-Id: Iad3f0b77a02552266435e523fdbb74b14ada101a Signed-off-by: Nick Vaccaro <nvaccaro@google.com> Reviewed-on: https://review.coreboot.org/23551 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Lijian Zhao <lijian.zhao@intel.com>
-rw-r--r--src/mainboard/google/zoombini/Kconfig1
-rw-r--r--src/mainboard/google/zoombini/variants/meowth/devicetree.cb18
-rw-r--r--src/mainboard/google/zoombini/variants/meowth/gpio.c4
3 files changed, 20 insertions, 3 deletions
diff --git a/src/mainboard/google/zoombini/Kconfig b/src/mainboard/google/zoombini/Kconfig
index 64180f3cc1..31b8cc9416 100644
--- a/src/mainboard/google/zoombini/Kconfig
+++ b/src/mainboard/google/zoombini/Kconfig
@@ -3,6 +3,7 @@ config BOARD_GOOGLE_BASEBOARD_ZOOMBINI
def_bool n
select BOARD_ROMSIZE_KB_16384
select DRIVERS_I2C_GENERIC
+ select DRIVERS_I2C_HID
select DRIVERS_SPI_ACPI
select EC_GOOGLE_CHROMEEC
select EC_GOOGLE_CHROMEEC_LPC
diff --git a/src/mainboard/google/zoombini/variants/meowth/devicetree.cb b/src/mainboard/google/zoombini/variants/meowth/devicetree.cb
index 88de8789ce..80bb1379ea 100644
--- a/src/mainboard/google/zoombini/variants/meowth/devicetree.cb
+++ b/src/mainboard/google/zoombini/variants/meowth/devicetree.cb
@@ -53,6 +53,13 @@ chip soc/intel/cannonlake
register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC2)"
register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC3)"
+ # Touchscreen Digitizer
+ register "i2c[0]" = "{
+ .speed = I2C_SPEED_FAST_PLUS,
+ .rise_time_ns = 98,
+ .fall_time_ns = 38,
+ }"
+
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
@@ -63,7 +70,16 @@ chip soc/intel/cannonlake
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
device pci 14.5 off end # SDCard
- device pci 15.0 on end # I2C #0
+ device pci 15.0 on
+ chip drivers/i2c/hid
+ register "generic.hid" = ""WCOM50C1""
+ register "generic.desc" = ""WCOM Digitizer""
+ register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C14_IRQ)"
+ register "generic.speed" = "I2C_SPEED_FAST_PLUS"
+ register "hid_desc_reg_offset" = "0x1"
+ device i2c 0a on end
+ end
+ end # I2C #0
device pci 15.1 on end # I2C #1
device pci 15.2 on end # I2C #2
device pci 15.3 on end # I2C #3
diff --git a/src/mainboard/google/zoombini/variants/meowth/gpio.c b/src/mainboard/google/zoombini/variants/meowth/gpio.c
index 19c028ed0e..21c4bbce50 100644
--- a/src/mainboard/google/zoombini/variants/meowth/gpio.c
+++ b/src/mainboard/google/zoombini/variants/meowth/gpio.c
@@ -94,13 +94,13 @@ static const struct pad_config gpio_table[] = {
NF1), /* UART_PCH_RX_DEBUG_TX */
/* UART0_TXD */ PAD_CFG_NF(GPP_C9, NONE, DEEP,
NF1), /* UART_PCH_TX_DEBUG_RX */
-/* UART0_RTS# */ PAD_CFG_GPO(GPP_C10, 0, DEEP), /* PP3300_TOUCH_EN */
+/* UART0_RTS# */ PAD_CFG_GPO(GPP_C10, 1, DEEP), /* PP3300_TOUCH_EN */
/* UART0_CTS# */ PAD_NC(GPP_C11, NONE),
/* Only P0 boards need an internal pullup */
/* UART1_RXD */ PAD_CFG_GPI_APIC(GPP_C12, UP_20K, DEEP, EDGE_SINGLE,
INVERT), /* H1_PCH_INT_ODL */
/* UART1_TXD */ PAD_NC(GPP_C13, NONE),
-/* UART1_RTS# */ PAD_CFG_GPI_SCI(GPP_C14, NONE, DEEP, EDGE_SINGLE,
+/* UART1_RTS# */ PAD_CFG_GPI_APIC(GPP_C14, NONE, DEEP, LEVEL,
NONE), /* TOUCHSCREEN_INT_ODL */
/* UART1_CTS# */ PAD_NC(GPP_C15, NONE),
/* I2C0_SDA */ PAD_CFG_NF(GPP_C16, NONE, DEEP,