On Wed, Jan 12, 2022 at 07:59:27PM +0000, Taylor R Campbell wrote: > Can you say more about the platform this is on? How do you discover > the touchscreen device -- via what kind of firmware or bus/device > enumeration? If this is acpi, can you share acpidump -dt? Do you > have documentation for the hardware you can share?
This is a One Netbook A1. An amd64 platform with ACPI. According to this post, the touchscreen is powered by a Goodix GXTP7386 https://handheld.computer/?page_id=1131 That device is in ACPI DSDT (see below). Taking insights from linux/drivers/input/touchscreen/goodix.c I match it using static const struct device_compatible_entry compat_data[] = { { .compat = "GDIX1001" }, { .compat = "GDIX1002" }, DEVICE_COMPAT_EOL }; Oddly, that brings me two devices, GXTP7386 and BOSC0200. Here is acpidrump -dt: https://ftp.espci.fr/shadow/manu/acpidump Here is GXTP7386 from DSDT: Device (TPL1) { Name (HID2, One) Name (_HID, "GXTP7386") // _HID: Hardware ID Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID Name (_S0W, Zero) // _S0W: S0 Device Wake State Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method { If ((Arg0 == HIDG)) { Return (HIDD (Arg0, Arg1, Arg2, Arg3, HID2)) } Return (Buffer (One) { 0x00 // . }) } Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (RBUF, ResourceTemplate () { I2cSerialBusV2 (0x005D, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C2", 0x00, ResourceConsumer, , Exclusive, ) GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x007F } }) Return (RBUF) /* \_SB_.PCI0.I2C2.TPL1._CRS.RBUF */ } } -- Emmanuel Dreyfus m...@netbsd.org