diff options
author | Seunghwan Kim <sh_.kim@samsung.corp-partner.google.com> | 2024-07-04 10:55:12 +0900 |
---|---|---|
committer | Nick Vaccaro <nvaccaro@google.com> | 2024-07-22 20:02:43 +0000 |
commit | aa6865291a7ddfae4c67fcfc55ebd0c13a376807 (patch) | |
tree | 7784d6334e76a6c1813e1cd53b4ef84494625778 /src/mainboard | |
parent | 23990df9196aac90adc46527edf260e0772da4eb (diff) |
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>
Diffstat (limited to 'src/mainboard')
-rw-r--r-- | src/mainboard/google/brya/variants/xol/gpio.c | 7 | ||||
-rw-r--r-- | src/mainboard/google/brya/variants/xol/overridetree.cb | 7 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/mainboard/google/brya/variants/xol/gpio.c b/src/mainboard/google/brya/variants/xol/gpio.c index 39478a1489..9e497849c6 100644 --- a/src/mainboard/google/brya/variants/xol/gpio.c +++ b/src/mainboard/google/brya/variants/xol/gpio.c @@ -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 */ diff --git a/src/mainboard/google/brya/variants/xol/overridetree.cb b/src/mainboard/google/brya/variants/xol/overridetree.cb index d73702c4bb..5de8c73260 100644 --- a/src/mainboard/google/brya/variants/xol/overridetree.cb +++ b/src/mainboard/google/brya/variants/xol/overridetree.cb @@ -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 |