[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AANLkTi=J2fGOC-RQsPB1SD4GcQ2Df2ZO_a=2mxneHbUa@mail.gmail.com>
Date: Thu, 11 Nov 2010 02:33:45 +0800
From: Eric Miao <eric.y.miao@...il.com>
To: Trilok Soni <tsoni@...eaurora.org>
Cc: linux-kernel@...r.kernel.org, linux-input@...r.kernel.org,
rtc-linux@...glegroups.com, linux-arm-msm@...r.kernel.org,
Dmitry Torokhov <dmitry.torokhov@...il.com>
Subject: Re: [RFC v1 PATCH 1/6] matrix_keypad: Increase the max limit of rows
and columns
On Wed, Nov 10, 2010 at 8:47 PM, Trilok Soni <tsoni@...eaurora.org> wrote:
> Some keyboard controller have support for more than
> 16 columns and rows.
>
> Cc: Dmitry Torokhov <dmitry.torokhov@...il.com>
> Cc: Eric Miao <eric.y.miao@...il.com>
> Signed-off-by: Trilok Soni <tsoni@...eaurora.org>
> ---
> include/linux/input/matrix_keypad.h | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/include/linux/input/matrix_keypad.h b/include/linux/input/matrix_keypad.h
> index 80352ad..d80845e 100644
> --- a/include/linux/input/matrix_keypad.h
> +++ b/include/linux/input/matrix_keypad.h
> @@ -4,11 +4,11 @@
> #include <linux/types.h>
> #include <linux/input.h>
>
> -#define MATRIX_MAX_ROWS 16
> -#define MATRIX_MAX_COLS 16
> +#define MATRIX_MAX_ROWS 18
> +#define MATRIX_MAX_COLS 18
>
> -#define KEY(row, col, val) ((((row) & (MATRIX_MAX_ROWS - 1)) << 24) |\
> - (((col) & (MATRIX_MAX_COLS - 1)) << 16) |\
> +#define KEY(row, col, val) ((((row) % (MATRIX_MAX_ROWS)) << 24) |\
> + (((col) % (MATRIX_MAX_COLS)) << 16) |\
> (val & 0xffff))
>
Or maybe we can solve this completely by introducing something like:
struct matrix_keycode {
int row;
int col;
int value;
}
And make changes to KEY() macro and other places. You may also want to
eliminate the hardcoded MATRIX_MAX_* in matrix_keypad.c.
> #define KEY_ROW(k) (((k) >> 24) & 0xff)
> --
> 1.7.0.2
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists