quoted
quoted
quoted
quoted
+ /* Enable Keyscan module and enable */
+ davinci_ks_write(davinci_ks, DAVINCI_KEYSCAN_AUTODET |
DAVINCI_KEYSCAN_KEYEN,
quoted
quoted
quoted
+ DAVINCI_KEYSCAN_KEYCTRL);
We seem to be hardcoded to the 4x4 matrix type here.
Some DM365 boards could use 5x3 matrix.
Thanks,
Sekhar
[MA] I will add a platform option for matrix type to choose 4x4 or 5x3
matrix.
quoted
What do think about this?
Sounds good. I am not sure if any other piece of code
needs to change though.
The strobe and interval have to change. Afcourse that change comes into the picture only when the mode is changed from 4x4 to 5x3.
I can see that there are options given for this in board specific code.
quoted
Thanks,
Sekhar
Thanks,
Sandeep
struct davinci_ks_platform_data {
unsigned short *keymap;
u32 keymapsize;
u32 rep:1;
u32 strobe;
u32 interval;
+ u32 matrix_type;
};
I will add something like this, so from the board specific code you can define strobe, interval and matrix type.
Thanks,
Miguel Aguilar
On Fri, Sep 25, 2009 at 08:45:31AM -0600, Miguel Aguilar wrote:
quoted
quoted
quoted
quoted
quoted
+ /* Enable Keyscan module and enable */
+ davinci_ks_write(davinci_ks, DAVINCI_KEYSCAN_AUTODET |
DAVINCI_KEYSCAN_KEYEN,
quoted
quoted
quoted
+ DAVINCI_KEYSCAN_KEYCTRL);
We seem to be hardcoded to the 4x4 matrix type here.
Some DM365 boards could use 5x3 matrix.
Thanks,
Sekhar
[MA] I will add a platform option for matrix type to choose 4x4 or 5x3
matrix.
quoted
What do think about this?
Sounds good. I am not sure if any other piece of code
needs to change though.
The strobe and interval have to change. Afcourse that change comes into the picture only when the mode is changed from 4x4 to 5x3.
I can see that there are options given for this in board specific code.
quoted
Thanks,
Sekhar
Thanks,
Sandeep
struct davinci_ks_platform_data {
unsigned short *keymap;
u32 keymapsize;
u32 rep:1;
u32 strobe;
u32 interval;
+ u32 matrix_type;
};
I will add something like this, so from the board specific code you can
define strobe, interval and matrix type.
Make it enum at least. BTW, is it possible to add u8 rows, cols instead
and be able to handle more matrix variations?
--
Dmitry
On Fri, Sep 25, 2009 at 08:45:31AM -0600, Miguel Aguilar wrote:
quoted
quoted
quoted
quoted
quoted
quoted
+ /* Enable Keyscan module and enable */
+ davinci_ks_write(davinci_ks, DAVINCI_KEYSCAN_AUTODET |
DAVINCI_KEYSCAN_KEYEN,
quoted
quoted
quoted
+ DAVINCI_KEYSCAN_KEYCTRL);
We seem to be hardcoded to the 4x4 matrix type here.
Some DM365 boards could use 5x3 matrix.
Thanks,
Sekhar
[MA] I will add a platform option for matrix type to choose 4x4 or
5x3
quoted
quoted
quoted
matrix.
quoted
What do think about this?
Sounds good. I am not sure if any other piece of code
needs to change though.
The strobe and interval have to change. Afcourse that change comes
into the picture only when the mode is changed from 4x4 to 5x3.
quoted
quoted
I can see that there are options given for this in board specific code.
quoted
Thanks,
Sekhar
Thanks,
Sandeep
struct davinci_ks_platform_data {
unsigned short *keymap;
u32 keymapsize;
u32 rep:1;
u32 strobe;
u32 interval;
+ u32 matrix_type;
};
I will add something like this, so from the board specific code you can
define strobe, interval and matrix type.
Make it enum at least. BTW, is it possible to add u8 rows, cols instead
and be able to handle more matrix variations?
The IP can handle only 4x4 or 5x3.
--
Dmitry
quoted
quoted
quoted
quoted
quoted
+ /* Enable Keyscan module and enable */
+ davinci_ks_write(davinci_ks, DAVINCI_KEYSCAN_AUTODET |
DAVINCI_KEYSCAN_KEYEN,
quoted
quoted
quoted
+ DAVINCI_KEYSCAN_KEYCTRL);
We seem to be hardcoded to the 4x4 matrix type here.
Some DM365 boards could use 5x3 matrix.
Thanks,
Sekhar
[MA] I will add a platform option for matrix type to choose 4x4 or 5x3
matrix.
quoted
What do think about this?
Sounds good. I am not sure if any other piece of code
needs to change though.
The strobe and interval have to change. Afcourse that change comes into
the picture only when the mode is changed from 4x4 to 5x3.
quoted
I can see that there are options given for this in board specific code.
quoted
Thanks,
Sekhar
Thanks,
Sandeep
struct davinci_ks_platform_data {
unsigned short *keymap;
u32 keymapsize;
u32 rep:1;
Don't think you need u32
u32 strobe;
Strobe can be maximum 8 bits.
u32 interval;
Interval can be maximum 8 bits.
+ u32 matrix_type;
};
I will add something like this, so from the board specific code you can
define
strobe, interval and matrix type.
Thanks,
Miguel Aguilar