mb/google/brya/var/xol: Change touchpad I2C interrupt type to GPIO_INT

If user continues to use the touchpad for over 3 minutes on Xol, the
pointer movement is stuttering.

Touchpad I2C transaction should appear during the interrupt signal level
is low, but we could see some more I2C transaction after the interrupt
signal(GPP_F14) went to high.

We found experimentally that changing the interrupt type to GPIO_INT
from APIC_IRQ improved this issue. We are still investigating, would
like to apply this change first for Xol's dogfooding.

BUG=b:350609957
BRANCH=brya
TEST=built and verified there's no stuttering issue on touchpad movement

Change-Id: Ie1b59355a694e5a42367a20e03f6c5f93225e79c
Signed-off-by: Seunghwan Kim <sh_.kim@samsung.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83346
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: YH Lin <yueherngl@google.com>
This commit is contained in:
Seunghwan Kim 2024-07-04 10:55:12 +09:00 committed by Nick Vaccaro
parent 23990df919
commit aa6865291a
2 changed files with 12 additions and 2 deletions

View File

@ -119,6 +119,13 @@ static const struct pad_config gpio_overrides[] = {
PAD_NC(GPP_F12, NONE),
/* F13 : GSXDOUT ==> NC */
PAD_NC(GPP_F13, NONE),
/* F14 : GSXDIN ==> TCHPAD_INT_ODL */
/*
* FIXME: Change back the interrupt type to IRQxAPIC if possible after investigating
* the reason why Xol shows touchpad stuttering issue with IRQxAPIC
* configuration but not GPI_INT.
*/
PAD_CFG_GPI_INT(GPP_F14, NONE, PWROK, LEVEL),
/* F15 : GSXSRESET# ==> PU 100K 3.3V */
PAD_CFG_GPI(GPP_F15, NONE, DEEP),
/* F16 : GSXCLK ==> NC */

View File

@ -343,8 +343,11 @@ chip soc/intel/alderlake
chip drivers/i2c/hid
register "generic.hid" = ""ZNT0000""
register "generic.desc" = ""Zinitix Touchpad""
register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
register "generic.wake" = "GPE0_DW2_14"
# FIXME: Change back the interrupt type to IRQxAPIC if possible
# after investigating the reason why Xol shows touchpad
# stuttering issue with IRQxAPIC configuration but not
# GPI_INT.
register "generic.irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPP_F14)"
register "generic.detect" = "1"
register "hid_desc_reg_offset" = "0xE"
device i2c 40 on end