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 devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html