Re: [PATCH 2/2] Input: atmel_mxt_ts - Add keycodes array example

From: Nick Dyer
Date: Fri Aug 15 2014 - 12:08:38 EST


On 15/08/14 13:01, Javier Martinez Canillas wrote:
>> By passing all these keycodes the touchpad worked as expected for me and the
>> driver did the same than the Chrome OS driver that has these keycodes hardcoded
>> when is_tp is true.
>>
>>> at the protocol guide for T19.
>>
>> I don't have access to proper documentation and I wouldn't expect people to have
>> access to non-public docs in order to use a Device Tree binding.
>>
>> That's why I wanted to document an example, so using this property could be
>> easier for others and they shouldn't have to look at the driver in order to
>> figure it out (and getting it wrong as you said :) )
>>
>> So it would be great if you could provide an example on how this is supposed to
>> be used.
>
> Any comments on this? I would really appreciate if you can expand on how
> this DT property is supposed to be used so I can re-spin the atmel support
> patch for Peach boards.

The below patch improves the documentation for the gpio-property. Stephen
Warren has a good example here:
https://github.com/swarren/linux-tegra/commit/09789801

trackpad@4b {
compatible = "atmel,maxtouch";
reg = <0x4b>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_LEVEL_LOW>;
linux,gpio-keymap = <0 0 0 BTN_LEFT>;
};

This maps BTN_LEFT to the 4th bit of the T19 message. I haven't looked up
what GPIO number that corresponds to on the mXT224SL that he has, it varies
with the particular maXTouch device you have.

Hope this helps.

Signed-off-by: Nick Dyer <nick.dyer@xxxxxxxxxxx>
---
Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt
b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt
index baef432..1852906 100644
--- a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt
+++ b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt
@@ -11,10 +11,17 @@ Required properties:

Optional properties for main touchpad device:

-- linux,gpio-keymap: An array of up to 4 entries indicating the Linux
- keycode generated by each GPIO. Linux keycodes are defined in
+- linux,gpio-keymap: When enabled, the SPT_GPIOPWN_T19 object sends messages
+ on GPIO bit changes. An array of up to 8 entries can be provided
+ indicating the Linux keycode mapped to each bit of the status byte,
+ starting at the LSB. Linux keycodes are defined in
<dt-bindings/input/input.h>.

+ Note: the numbering of the GPIOs and the bit they start at varies between
+ maXTouch devices. You must either refer to the documentation, or
+ experiment to determine which bit corresponds to which input. Use
+ KEY_RESERVED for unused padding values.
+
Example:

touch@4b {
--
1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/