On 02/20/2013 12:27 PM, Anatolij Gustschin wrote:
> On hardware with limited gpios one column select gpio can select
> two different rows when using some additional hardware logic:
> high value selects one row, low value selects another row. Add
> support for such matrix keyboards and document device tree
> bindings used to describe them.
> 
> Since half of the columns is always not selected, interrupts won't be
> generated for press events on these columns. To generate interrupts
> for not selected columns we need to periodicaly switch to these columns
> in order to catch the potential press events. This is done by additional
> work function.

> diff --git a/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt 
> b/Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt

> +- col-gpios-binary:  specify that high and low states of a column gpio
> +                     select two different rows (boards with limited gpios
> +                     could support this by additional hardware logic)

1 GPIO and 2 columns is essentially a special case with a 1->2 line decoder.

Do the binding definition and code work fine if you have e.g. 3 GPIOs,
and a 3->8 decoder in order to support 8 columns?
_______________________________________________
devicetree-discuss mailing list
[email protected]
https://lists.ozlabs.org/listinfo/devicetree-discuss

Reply via email to