Hello,
I recently picked up a Riverdi RGB display similar to the Toradex 7” capacitive touch hardware. I am in the midst of creating interface hardware and device tree overlays for this screen, but I came across an issue with the touch driver.
The ILI2132 is used on this device to interface the touchscreen to the module. It appears there are two interfaces available–I2C and USB.
The I2C driver is available from the linux-toradex repo and would be preferable in my application. That being said, I’m using a Colibri iMX8QXP, which only has one I2C port on the SODIMM connection. There is another I2C line which interfaces with the onboard touch controller, but I am unsure if I can use those for this application as there are other devices on the same line. I suppose as long as there is no interference in the addresses, I should be able to just disable the other devices on the same line within the device tree and add my own. There are two onboard I2C lines which go to MIPI DSI/CSI (See page 24) that are available on the SODIMM connector.
In addition to I2C, the screen has a USB interface. Riverdi claims this should be universally workable, but I plugged it in and got the following message:
[ 1411.503382] usb 2-1.2: new low-speed USB device number 4 using xhci-hcd
[ 1411.591407] usb 2-1.2: device no response, device descriptor read/64, error -32
[ 1411.783426] usb 2-1.2: device no response, device descriptor read/64, error -32
[ 1411.975373] usb 2-1.2: new low-speed USB device number 5 using xhci-hcd
[ 1412.063395] usb 2-1.2: device no response, device descriptor read/64, error -32
[ 1412.255389] usb 2-1.2: device no response, device descriptor read/64, error -32
[ 1412.367610] usb 2-1-port2: attempt power cycle
[ 1412.975372] usb 2-1.2: new low-speed USB device number 6 using xhci-hcd
[ 1412.982595] usb 2-1.2: Device not responding to setup address.
[ 1413.195973] usb 2-1.2: Device not responding to setup address.
[ 1413.407361] usb 2-1.2: device not accepting address 6, error -71
[ 1413.491391] usb 2-1.2: new low-speed USB device number 7 using xhci-hcd
[ 1413.498486] usb 2-1.2: Device not responding to setup address.
[ 1413.711781] usb 2-1.2: Device not responding to setup address.
[ 1413.923380] usb 2-1.2: device not accepting address 7, error -71
[ 1413.929721] usb 2-1-port2: unable to enumerate USB device
It looks like whatever USB driver it needs is not present in my current linux build.
My questions are as follows:
- Is there a way to mux the I2C pins which go to the existing I2C0 hardware to interface with my new device?
- Is there a USB driver available somewhere for a touch controller like this, or will I have to make one if I want to use it?
Thank you!