Touch screen
The i.MX6 CPU does not have a dedicated touch screen interface. Most LCD displays now have embedded touch screen controllers that can be interfaced through I2C or SPI buses.
The ConnectCore 6 SBC supports external capacitive touch controller for Fusion 7" and Fusion 10.1" LVDS LCD displays, connected through port I2C3.
The ConnectCore 6 SBC LVDS interface connects an external touch controller to the I2C3 bus. Digi Embedded Yocto supports Touch Revolution's Fusion 10.1" LVDS LCD display that can be ordered from Digi's sales representatives. Support for other displays and touch controllers will need BSP customizations.
Kernel configuration
You can manage the Fusion touch driver support through the kernel configuration option:
- Fusion touchscreen panel support (CONFIG_TOUCHSCREEN_FUSION_7_10)
This option is enabled as built-in on the default ConnectCore 6 SBC kernel configuration file.
Platform driver mapping
The Fusion touch screen driver is located at:
File | Description |
---|---|
drivers/input/touchscreen/fusion.c |
Fusion touch screen driver |
Device tree bindings and customization
The Fusion touch screen interface is connected to ConnectCore 6 SBC via port I2C3 at address 0x10.The interrupt line is routed:
- to GPIO7_11 on the i.MX6 CPU for LVDS0
- to GPIO3_23 on the i.MX6 CPU for LVDS1
Definition of the Fusion touch screen controller
ConnectCore 6 SBC
&i2c3 { [...] fusion@10 { compatible = "touchrev,fusion-touch"; reg = <0x10>; /* Interrupt for LVDS0 */ interrupt-parent = <&gpio7>; interrupts = <11 1>; /* Interrupt for LVDS1 */ //interrupt-parent = <&gpio3>; //interrupts = <23 1>; status = "okay"; }; [...] };