summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSeunghwan Kim <sh_.kim@samsung.corp-partner.google.com>2024-07-04 10:55:12 +0900
committerNick Vaccaro <nvaccaro@google.com>2024-07-22 20:02:43 +0000
commitaa6865291a7ddfae4c67fcfc55ebd0c13a376807 (patch)
tree7784d6334e76a6c1813e1cd53b4ef84494625778 /src
parent23990df9196aac90adc46527edf260e0772da4eb (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')
-rw-r--r--src/mainboard/google/brya/variants/xol/gpio.c7
-rw-r--r--src/mainboard/google/brya/variants/xol/overridetree.cb7
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