Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

platform/x86: touchscreen_dmi: Add quirk for y-inverted Goodix touchscreen on SUPI S10

The touchscreen on the SUPI S10 tablet reports inverted Y coordinates,
causing touch input to be mirrored vertically relative to the display.

Add a quirk to set the "touchscreen-inverted-y" boolean device-property
on the touchscreen device, so that the goodix_ts driver will fixup
the coordinates.

Reported-by: Yajat Kumar <yajatapps3@gmail.com>
Closes: https://lore.kernel.org/linux-input/20251230221639.582406-1-yajatapps3@gmail.com/
Tested-by: Yajat Kumar <yajatapps3@gmail.com>
Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
Link: https://patch.msgid.link/20260217132346.34535-1-johannes.goede@oss.qualcomm.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

authored by

Hans de Goede and committed by
Ilpo Järvinen
7d87ed70 3c99a545

+18
+18
drivers/platform/x86/touchscreen_dmi.c
··· 410 410 .properties = gdix1001_upside_down_props, 411 411 }; 412 412 413 + static const struct property_entry gdix1001_y_inverted_props[] = { 414 + PROPERTY_ENTRY_BOOL("touchscreen-inverted-y"), 415 + { } 416 + }; 417 + 418 + static const struct ts_dmi_data gdix1001_y_inverted_data = { 419 + .acpi_name = "GDIX1001", 420 + .properties = gdix1001_y_inverted_props, 421 + }; 422 + 413 423 static const struct property_entry gp_electronic_t701_props[] = { 414 424 PROPERTY_ENTRY_U32("touchscreen-size-x", 960), 415 425 PROPERTY_ENTRY_U32("touchscreen-size-y", 640), ··· 1666 1656 DMI_MATCH(DMI_SYS_VENDOR, "Globalspace Tech Pvt Ltd"), 1667 1657 DMI_MATCH(DMI_PRODUCT_NAME, "SolTIVW"), 1668 1658 DMI_MATCH(DMI_PRODUCT_SKU, "PN20170413488"), 1659 + }, 1660 + }, 1661 + { 1662 + /* SUPI S10 */ 1663 + .driver_data = (void *)&gdix1001_y_inverted_data, 1664 + .matches = { 1665 + DMI_MATCH(DMI_SYS_VENDOR, "SUPI"), 1666 + DMI_MATCH(DMI_PRODUCT_NAME, "S10"), 1669 1667 }, 1670 1668 }, 1671 1669 {