home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / asm-sh64 / keyboard.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  2.1 KB  |  75 lines

  1. /*
  2.  *  linux/include/asm-shmedia/keyboard.h
  3.  *
  4.  * Copied from i386 version:
  5.  *    Created 3 Nov 1996 by Geert Uytterhoeven
  6.  */
  7.  
  8. /*
  9.  *  This file contains the i386 architecture specific keyboard definitions
  10.  */
  11.  
  12. #ifndef __ASM_SH64_KEYBOARD_H
  13. #define __ASM_SH64_KEYBOARD_H
  14.  
  15. #ifdef __KERNEL__
  16.  
  17. #include <linux/kernel.h>
  18. #include <linux/ioport.h>
  19. #include <asm/io.h>
  20.  
  21. #ifdef CONFIG_SH_CAYMAN
  22. #define KEYBOARD_IRQ            (START_EXT_IRQS + 2) /* SMSC SuperIO IRQ 1 */
  23. #endif
  24. #define DISABLE_KBD_DURING_INTERRUPTS    0
  25.  
  26. extern int pckbd_setkeycode(unsigned int scancode, unsigned int keycode);
  27. extern int pckbd_getkeycode(unsigned int scancode);
  28. extern int pckbd_translate(unsigned char scancode, unsigned char *keycode,
  29.                char raw_mode);
  30. extern char pckbd_unexpected_up(unsigned char keycode);
  31. extern void pckbd_leds(unsigned char leds);
  32. extern void pckbd_init_hw(void);
  33. extern unsigned char pckbd_sysrq_xlate[128];
  34.  
  35. #define kbd_setkeycode        pckbd_setkeycode
  36. #define kbd_getkeycode        pckbd_getkeycode
  37. #define kbd_translate        pckbd_translate
  38. #define kbd_unexpected_up    pckbd_unexpected_up
  39. #define kbd_leds        pckbd_leds
  40. #define kbd_init_hw        pckbd_init_hw
  41. #define kbd_sysrq_xlate        pckbd_sysrq_xlate
  42.  
  43. #define SYSRQ_KEY 0x54
  44.  
  45. /* resource allocation */
  46. #define kbd_request_region()
  47. #define kbd_request_irq(handler) request_irq(KEYBOARD_IRQ, handler, 0, \
  48.                                              "keyboard", NULL)
  49.  
  50. /* How to access the keyboard macros on this platform.  */
  51. #define kbd_read_input() inb(KBD_DATA_REG)
  52. #define kbd_read_status() inb(KBD_STATUS_REG)
  53. #define kbd_write_output(val) outb(val, KBD_DATA_REG)
  54. #define kbd_write_command(val) outb(val, KBD_CNTL_REG)
  55.  
  56. /* Some stoneage hardware needs delays after some operations.  */
  57. #define kbd_pause() do { } while(0)
  58.  
  59. /*
  60.  * Machine specific bits for the PS/2 driver
  61.  */
  62.  
  63. #ifdef CONFIG_SH_CAYMAN
  64. #define AUX_IRQ (START_EXT_IRQS + 6) /* SMSC SuperIO IRQ12 */
  65. #endif
  66.  
  67. #define aux_request_irq(hand, dev_id)                    \
  68.     request_irq(AUX_IRQ, hand, SA_SHIRQ, "PS2 Mouse", dev_id)
  69.  
  70. #define aux_free_irq(dev_id) free_irq(AUX_IRQ, dev_id)
  71.  
  72. #endif /* __KERNEL__ */
  73. #endif /* __ASM_SH64_KEYBOARD_H */
  74.  
  75.