Kernel-4.18.0-80.el8_colibri-vf50-ts

  • Toradex Colibri VF50 Touchscreen driver

Required Properties:

  • compatible must be toradex,vf50-touchscreen
  • io-channels: adc channels being used by the Colibri VF50 module
  • xp-gpios: FET gate driver for input of X+
  • xm-gpios: FET gate driver for input of X-
  • yp-gpios: FET gate driver for input of Y+
  • ym-gpios: FET gate driver for input of Y-
  • interrupt-parent: phandle for the interrupt controller
  • interrupts: pen irq interrupt for touch detection
  • pinctrl-names: “idle”, “default”, “gpios”
  • pinctrl-0: pinctrl node for pen/touch detection state pinmux
  • pinctrl-1: pinctrl node for X/Y and pressure measurement (ADC) state pinmux
  • pinctrl-2: pinctrl node for gpios functioning as FET gate drivers
  • vf50-ts-min-pressure: pressure level at which to stop measuring X/Y values

Example:

touchctrl: vf50_touchctrl {
    compatible = "toradex,vf50-touchscreen";
    io-channels = <&adc1 0>,<&adc0 0>,
            <&adc0 1>,<&adc1 2>;
    xp-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
    xm-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>;
    yp-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
    ym-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
    interrupt-parent = <&gpio0>;
    interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
    pinctrl-names = "idle","default","gpios";
    pinctrl-0 = <&pinctrl_touchctrl_idle>;
    pinctrl-1 = <&pinctrl_touchctrl_default>;
    pinctrl-2 = <&pinctrl_touchctrl_gpios>;
    vf50-ts-min-pressure = <200>;
};