1 /* $Id: sunkbd.h,v 1.4 2000/02/09 11:15:54 davem Exp $ 2 * sunkbd.h: Defines needed by SUN Keyboard drivers 3 * 4 * Copyright (C) 1997 Eddie C. Dost (ecd@skynet.be) 5 */ 6 7 #ifndef _SPARC_SUNKBD_H 8 #define _SPARC_SUNKBD_H 1 9 10 #include <linux/config.h> 11 12 /* Keyboard defines for L1-A processing... */ 13 #define SUNKBD_RESET 0xff 14 #define SUNKBD_L1 0x01 15 #define SUNKBD_UP 0x80 16 #define SUNKBD_A 0x4d 17 18 struct l1a_kbd_state { 19 int kbd_id; 20 int l1_down; 21 }; 22 23 extern struct l1a_kbd_state l1a_state; 24 25 extern void keyboard_zsinit(void (*kbd_put_char)(unsigned char)); 26 extern void sunkbd_inchar(unsigned char, struct pt_regs *); 27 extern void batten_down_hatches(void); 28 29 extern void sun_kbd_bh(unsigned long); 30 extern int sun_kbd_init(void); 31 extern void sun_compute_shiftstate(void); 32 extern void sun_setledstate(struct kbd_struct *, unsigned int); 33 extern unsigned char sun_getledstate(void); 34 extern int sun_setkeycode(unsigned int, unsigned int); 35 extern int sun_getkeycode(unsigned int); 36 37 #ifdef CONFIG_PCI 38 39 extern ushort *sun_key_maps[MAX_NR_KEYMAPS]; 40 extern unsigned int sun_keymap_count; 41 42 extern char sun_func_buf[]; 43 extern char *sun_func_table[MAX_NR_FUNC]; 44 extern int sun_funcbufsize; 45 extern int sun_funcbufleft; 46 47 extern struct kbdiacr sun_accent_table[MAX_DIACR]; 48 extern unsigned int sun_accent_table_size; 49 50 #endif /* CONFIG_PCI */ 51 52 #endif /* !(_SPARC_SUNKBD_H) */ 53