Re: [PATCH v2] input: Extend matrix-keypad device tree binding

Dmitry Torokhov
2013-01-11T17:13:59Z

On Fri, Jan 11, 2013 at 10:09:19AM -0700, Stephen Warren wrote:
> On 01/10/2013 06:41 PM, Simon Glass wrote:
> > Some matrix keypad drivers can support different numbers of rows and
> > columns. Add a generic binding for these.
> >
> > Implementation note:
> >
> > In order to implement this binding in the kernel, we will need to modify
> > matrix_keypad_() to look up the number of rows and cols in
> > the keymap. Perhaps this could be done by passing 0 for these parameters?
> > Many of the parameters can already be set to NULL. Ick.
>
> Reviewed-by: Stephen Warren <swarren@nvidia.com>
>
> Note that the Tegra bindings are based on matrix-keypad.txt, and
> recently added the following properties:
>
> > - nvidia,kbc-row-pins: The KBC pins which are configured as row. This is an
> > array of pin numbers which is used as rows.
> > - nvidia,kbc-col-pins: The KBC pins which are configured as column. This is an
> > array of pin numbers which is used as column.
>
> Those both define the number of rows/columns (indirectly via the
> property lengths) *and* define which pins are used for the rows/columns.
> How will this influence/interact-with any changes you're planning to the
> core matrix keymap parsing code; would Tegra require your "new"
> keypad,num-rows/keypad,num-columns properties even though the
> information is redundant, or will the Tegra driver have some way of
> passing this information to the core?

Even if we decide to move lookup of keypad,num-rows/keypad,num-columns
into matrix-keypad code we will still allow callers to override DT data,
like we do with platform keymaps.

Thanks.

--
Dmitry