drivers: input: pinnacle: add driver for trackpad

The initial version of an input driver for Cirque Pinnacle ASIC supports:
 * Setting sensitivity
 * Choosing between relative and absolute modes
  * Relative mode
   * Primary tap
   * Swapping X and Y
  * Absolute mode
   * Setting number of idle packets
   * Clipping coordinates outside of active range
   * Scaling coordinates
   * Inverting X and Y coordinates

Signed-off-by: Ilia Kharin <akscram@gmail.com>
This commit is contained in:
Ilia Kharin 2024-02-25 21:13:06 +01:00 committed by Fabio Baltieri
commit 828a0c04a1
9 changed files with 1078 additions and 1 deletions

View file

@ -218,6 +218,14 @@
int-gpios = <&test_gpio 0 0>;
};
pinnacle@2a {
compatible = "cirque,pinnacle";
reg = <0x2a>;
data-ready-gpios = <&test_gpio 0 0>;
data-mode = "relative";
primary-tap-enable;
swap-xy;
};
};
spi@2 {
@ -230,7 +238,8 @@
/* one entry for every devices */
cs-gpios = <&test_gpio 0 0>,
<&test_gpio 0 0>;
<&test_gpio 1 0>,
<&test_gpio 2 0>;
xpt2046@0 {
compatible = "xptek,xpt2046";
@ -258,6 +267,19 @@
force-awake;
smart-mode;
};
pinnacle@2 {
compatible = "cirque,pinnacle";
reg = <0x2>;
spi-max-frequency = <0>;
data-ready-gpios = <&test_gpio 0 0>;
data-mode = "absolute";
idle-packets-count = <20>;
clipping-enable;
scaling-enable;
invert-x;
invert-y;
};
};
};
};