Re: [PATCH] Input: Add I2C attached EETI EXC3000 multi touch driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Thu, Sep 28, 2017 at 05:23:17PM +0200, Ahmet Inan wrote:
> The 3000 series have a new protocol which allows to report up to 5 points
> in a single 66 byte frame. One must always read in 66 byte frames.
> To support up to 10 points, two consecutive frames need to be read:
> The first frame says how many points until sync.
> The second frame must say zero points or both frames must be discarded.
> 
> To be able to work with the higher 400KHz I2C bus rate, one must
> successfully send a special package prior _each_ read or the controller
> will refuse to cooperate.
> 
> This is a minimal implementation based on egalax_i2c.c (which can be found
> on the internet) and egalax_ts.c but without the vendor interface and no
> power management support.
> 
> Signed-off-by: Ahmet Inan <inan@xxxxxxxxx>
> ---
>  .../bindings/input/touchscreen/exc3000.txt         |  27 ++++

Please split to separate patch.

>  drivers/input/touchscreen/Kconfig                  |  10 ++
>  drivers/input/touchscreen/Makefile                 |   1 +
>  drivers/input/touchscreen/exc3000.c                | 173 +++++++++++++++++++++
>  4 files changed, 211 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/exc3000.txt
>  create mode 100644 drivers/input/touchscreen/exc3000.c
> 
> diff --git a/Documentation/devicetree/bindings/input/touchscreen/exc3000.txt b/Documentation/devicetree/bindings/input/touchscreen/exc3000.txt
> new file mode 100644
> index 000000000000..d2a78e83e921
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/input/touchscreen/exc3000.txt
> @@ -0,0 +1,27 @@
> +* EETI EXC3000 Multiple Touch Controller
> +
> +Required properties:
> +- compatible: must be "eeti,exc3000"
> +- reg: i2c slave address
> +- interrupt-parent: the phandle for the interrupt controller
> +- interrupts: touch controller interrupt
> +- touchscreen-size-x: See touchscreen.txt
> +- touchscreen-size-y: See touchscreen.txt
> +
> +Optional properties:
> +- touchscreen-inverted-x: See touchscreen.txt
> +- touchscreen-inverted-y: See touchscreen.txt
> +- touchscreen-swapped-x-y: See touchscreen.txt
> +
> +Example:
> +
> +	exc3000@2a {

touchscreen@2a

> +		compatible = "eeti,exc3000";
> +		reg = <0x2a>;
> +		interrupt-parent = <&gpio1>;
> +		interrupts = <9 8>; // active low level-sensitive

Use the defines for flags.

> +		touchscreen-size-x = <4096>;
> +		touchscreen-size-y = <4096>;
> +		touchscreen-inverted-x;
> +		touchscreen-swapped-x-y;
> +	};
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux