mb/google/ocelot/var/ocicat: Update Touchscreen settings

- Update Touchscreen settings
- Modify GPP_F16 to output pin
- Modify GPP_F18 to INT pin

BUG=b:466246282
TEST=Flash and boot on DUT, touchscreen works normally

Change-Id: I6d9ba83993321e59a677d1341fd4255084e68215
Signed-off-by: chou.pierce <chou.pierce@inventec.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90439
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
chou.pierce 2025-12-10 10:58:31 +08:00 committed by Matt DeVillier
commit 4f78a40f53
2 changed files with 33 additions and 8 deletions

View file

@ -254,11 +254,11 @@ static const struct pad_config gpio_table[] = {
/* GPP_F15: NC */
PAD_NC(GPP_F15, NONE),
/* GPP_F16: TCHSCR_RST_ODL */
PAD_CFG_NF(GPP_F16, NONE, DEEP, NF3),
PAD_CFG_GPO(GPP_F16, 1, DEEP),
/* GPP_F17: NC */
PAD_NC(GPP_F17, NONE),
/* GPP_F18: TCHSCR_INT_ODL */
PAD_CFG_NF(GPP_F18, NONE, DEEP, NF3),
PAD_CFG_GPI_APIC(GPP_F18, NONE, PLTRST, LEVEL, INVERT),
/* GPP_F19: NC */
PAD_NC(GPP_F19, NONE),
/* GPP_F20: CSE_EARLY_SW */

View file

@ -9,6 +9,11 @@ fw_config
option STORAGE_TYPE_NVME_GEN4 1
option STORAGE_UFS 2
end
field TOUCHSCREEN 17 18
option TOUCHSCREEN_UNKNOWN 0
option TOUCH_ELAN_TOP 1
option TOUCH_ELAN_DBTS 2
end
end
chip soc/intel/pantherlake
@ -416,22 +421,42 @@ chip soc/intel/pantherlake
end # I2C4
device ref i2c5 on
chip drivers/i2c/hid
register "generic.hid" = ""ELAN9004""
register "generic.hid" = ""ELAN2513""
register "generic.desc" = ""ELAN Touchscreen""
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_F18_IRQ)"
register "generic.detect" = "1"
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F16)"
register "generic.reset_delay_ms" = "150"
register "generic.reset_delay_ms" = "20"
register "generic.reset_off_delay_ms" = "2"
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_F08)"
register "generic.enable_delay_ms" = "6"
register "generic.enable_off_delay_ms" = "1"
register "generic.stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D19)"
register "generic.stop_delay_ms" = "280"
register "generic.stop_off_delay_ms" = "2"
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_F08)"
register "generic.enable_delay_ms" = "1"
register "generic.has_power_resource" = "1"
register "generic.use_gpio_for_status" = "true"
register "hid_desc_reg_offset" = "0x01"
device i2c 0x10 on end
device i2c 10 on
probe TOUCHSCREEN TOUCH_ELAN_TOP
end
end
chip drivers/i2c/hid
register "generic.hid" = ""ELAN2513""
register "generic.desc" = ""ELAN Touchscreen""
register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_F18_IRQ)"
register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F16)"
register "generic.reset_delay_ms" = "20"
register "generic.reset_off_delay_ms" = "2"
register "generic.stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D19)"
register "generic.stop_delay_ms" = "280"
register "generic.stop_off_delay_ms" = "2"
register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_F08)"
register "generic.enable_delay_ms" = "1"
register "generic.has_power_resource" = "1"
register "hid_desc_reg_offset" = "0x01"
device i2c 15 on
probe TOUCHSCREEN TOUCH_ELAN_DBTS
end
end
end # I2C5