[Bug 282389] [i2c] Dell Precision 5690 touchpad unrecognized
- In reply to: bugzilla-noreply_a_freebsd.org: "[Bug 282389] [i2c] Dell Precision 5690 touchpad unrecognized"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 07 Nov 2024 04:28:50 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282389 --- Comment #8 from Austin Shafer <ashafer@badland.io> --- Created attachment 254992 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=254992&action=edit devinfo -rv Here's the devinfo -rv output. I've tried disabling the touchscreen in the bios to see if that had an effect but it did not. That's why the ELAN900C device wasn't present. > unknown pnpinfo _HID=VEN_27C6 _UID=0 _CID=PNP0C50 at handle=\_SB_.PC00.I2C3.TPD0 Here's the touchpad being unrecognized. > unknown pnpinfo vendor=0x8086 device=0x7e7b subvendor=0x1028 subdevice=0x0cc8 class=0x0c8000 at slot=21 function=3 dbsf=pci0:0:21:3 handle=\_SB_.PC00.I2C3 Interestingly here is the i2c bus that holds the touchpad also not getting recognized, which I feel silly for not noticing sooner. Here's the relevant bit of pciconf -lv: ig4iic0@pci0:0:21:0: class=0x0c8000 rev=0x20 hdr=0x00 vendor=0x8086 device=0x7e78 subvendor=0x1028 subdevice=0x0cc8 vendor = 'Intel Corporation' device = 'Meteor Lake-P Serial IO I2C Controller' class = serial bus none8@pci0:0:21:3: class=0x0c8000 rev=0x20 hdr=0x00 vendor=0x8086 device=0x7e7b subvendor=0x1028 subdevice=0x0cc8 vendor = 'Intel Corporation' device = 'Meteor Lake-P Serial IO I2C Controller' class = serial bus With the following patch my touchpad now works: diff --git a/sys/dev/ichiic/ig4_pci.c b/sys/dev/ichiic/ig4_pci.c index 138de77c35db..874d6a9abc55 100644 --- a/sys/dev/ichiic/ig4_pci.c +++ b/sys/dev/ichiic/ig4_pci.c @@ -172,6 +172,8 @@ static int ig4iic_pci_detach(device_t dev); #define PCI_CHIP_METEORLAKE_M_I2C_1 0x7e798086 #define PCI_CHIP_METEORLAKE_M_I2C_2 0x7e508086 #define PCI_CHIP_METEORLAKE_M_I2C_3 0x7e518086 +#define PCI_CHIP_METEORLAKE_M_I2C_4 0x7e7a8086 +#define PCI_CHIP_METEORLAKE_M_I2C_5 0x7e7b8086 struct ig4iic_pci_device { uint32_t devid; @@ -288,6 +290,8 @@ static struct ig4iic_pci_device ig4iic_pci_devices[] = { { PCI_CHIP_METEORLAKE_M_I2C_1, "Intel Meteor Lake-M I2C Controller-1", IG4_TIGERLAKE}, { PCI_CHIP_METEORLAKE_M_I2C_2, "Intel Meteor Lake-M I2C Controller-2", IG4_TIGERLAKE}, { PCI_CHIP_METEORLAKE_M_I2C_3, "Intel Meteor Lake-M I2C Controller-3", IG4_TIGERLAKE}, + { PCI_CHIP_METEORLAKE_M_I2C_4, "Intel Meteor Lake-M I2C Controller-4", IG4_TIGERLAKE}, + { PCI_CHIP_METEORLAKE_M_I2C_5, "Intel Meteor Lake-M I2C Controller-5", IG4_TIGERLAKE}, }; It looks like we are missing other ids in addition to this one. For example I added 0x7e7a in the above although it's not in my machine. Not sure if we want to do a broader investigation and import a bunch of ids that we are missing? -- You are receiving this mail because: You are the assignee for the bug.