diff options
author | Magnus Damm <magnus.damm@gmail.com> | 2008-03-04 15:23:45 -0800 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2008-04-18 09:50:00 -0700 |
commit | 795e6bf33561ff03e253a6a756d5eb663b4a56bd (patch) | |
tree | 59e4c5ad82e0df7d20c04cd40028de197d0adb58 /include/asm-sh | |
parent | 253ba4e79edc695b2925bd2ef34de06ff4d4070c (diff) |
sh: SuperH KEYSC platform driver
Add a platform driver for the SuperH KEYSC block. The driver expects to get
mode, timing information and keypad layout from the board code as platform
data. The board code is resonsible for pin configuration.
Both sh7343 and sh7722 should be supported, but only the sh7722 processor has
been tested so far. SH_KEYSC_MODE_3 is yet to be tested.
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh')
-rw-r--r-- | include/asm-sh/sh_keysc.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/asm-sh/sh_keysc.h b/include/asm-sh/sh_keysc.h new file mode 100644 index 00000000000..b5a4dd5a972 --- /dev/null +++ b/include/asm-sh/sh_keysc.h @@ -0,0 +1,13 @@ +#ifndef __ASM_KEYSC_H__ +#define __ASM_KEYSC_H__ + +#define SH_KEYSC_MAXKEYS 30 + +struct sh_keysc_info { + enum { SH_KEYSC_MODE_1, SH_KEYSC_MODE_2, SH_KEYSC_MODE_3 } mode; + int scan_timing; /* 0 -> 7, see KYCR1, SCN[2:0] */ + int delay; + int keycodes[SH_KEYSC_MAXKEYS]; +}; + +#endif /* __ASM_KEYSC_H__ */ |