lkml.org 
[lkml]   [2011]   [Jan]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3] input: tegra-kbc - Add tegra keyboard driver
    Hi Rakesh,

    On Fri, Jan 07, 2011 at 09:45:07AM -0800, riyer@nvidia.com wrote:
    > +
    > +struct tegra_kbc {
    > + void __iomem *mmio;
    > + struct input_dev *idev;
    > + int irq;
    > + unsigned int wake_enable_rows;
    > + unsigned int wake_enable_cols;
    > + spinlock_t lock;
    > + unsigned int repoll_time;
    > + unsigned long cp_dly_jiffies;
    > + int fifo[KBC_MAX_KPENT];
    > + const struct tegra_kbc_platform_data *pdata;
    > + int *plain_keycode;
    > + int *fn_keycode;

    There should not be separate keycodes for FN and normal kys - FN is just
    a modifier, like SHIFT or CTRL or ALT are and shoudl be handled in upper
    layers.

    Also you should wire up keycode/keycodemax/keycodesize in input_dev
    structuire so that keymap can be retrieved via EVIOCGKEYCODE and
    modified via EVIOGSKEYCODE. Also, because keymap is modifiable, the
    original keymap should be copied in per-device structure, leaving
    original intact. It (the original) also should be marked as const.

    Since this papears to be a matrix keypad consider using definitions from
    linux/input/matrix_keypad.h

    Thank you.

    --
    Dmitry


    \
     
     \ /
      Last update: 2011-01-10 23:19    [W:0.024 / U:92.176 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site