This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / include / asm-arm / arch-l7200 / keyboard.h
1 /*
2  *  linux/include/asm-arm/arch-l7200/keyboard.h
3  *
4  *  Keyboard driver definitions for LinkUp Systems L7200 architecture
5  *
6  *  Copyright (C) 2000 Scott A McConnell (samcconn@cotw.com)
7  *                     Steve Hill (sjhill@cotw.com)
8  *
9  *  This file is subject to the terms and conditions of the GNU General Public
10  *  License. See the file COPYING in the main directory of this archive for
11  *  more details.
12  *
13  * Changelog:
14  *   07-18-2000 SAM     Created file
15  *   07-28-2000 SJH     Complete rewrite
16  */
17
18 #include <asm/irq.h>
19
20 #error This needs fixing --rmk
21
22 /*
23  * Layout of L7200 keyboard registers
24  */
25 struct KBD_Port {       
26         unsigned int KBDR;
27         unsigned int KBDMR;
28         unsigned int KBSBSR;
29         unsigned int Reserved;
30         unsigned int KBKSR;
31 };
32
33 #define KBD_BASE        IO_BASE_2 + 0x4000
34 #define l7200kbd_hwregs ((volatile struct KBD_Port *) (KBD_BASE))
35
36 extern void l7200kbd_init_hw(void);
37 extern int l7200kbd_translate(unsigned char scancode, unsigned char *keycode,
38                               char raw_mode);
39
40 #define kbd_setkeycode(sc,kc)           (-EINVAL)
41 #define kbd_getkeycode(sc)              (-EINVAL)
42
43 #define kbd_translate(sc, kcp, rm)      ({ *(kcp) = (sc); 1; })
44 #define kbd_unexpected_up(kc)           (0200)
45 #define kbd_leds(leds)                  do {} while (0)
46 #define kbd_init_hw()                   l7200kbd_init_hw()
47 #define kbd_sysrq_xlate                 ((unsigned char *)NULL)
48 #define kbd_disable_irq()               disable_irq(IRQ_GCTC2)
49 #define kbd_enable_irq()                enable_irq(IRQ_GCTC2)
50
51 #define SYSRQ_KEY       13