lkml.org 
[lkml]   [2010]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [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@codeaurora.org> wrote:
    > Some keyboard controller have support for more than
    > 16 columns and rows.
    >
    > Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    > Cc: Eric Miao <eric.y.miao@gmail.com>
    > Signed-off-by: Trilok Soni <tsoni@codeaurora.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@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-11-10 19:37    [W:0.031 / U:1.540 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site