1/* $Id: keyboard.h,v 1.1.1.1 2008/10/15 03:27:26 james26_jang Exp $ 2 * linux/include/asm-sparc/keyboard.h 3 * 4 * sparc64 Created Aug 29 1997 by Eddie C. Dost (ecd@skynet.be) 5 */ 6 7/* 8 * This file contains the Ultra/PCI architecture specific keyboard definitions 9 */ 10 11#ifndef _SPARC_KEYBOARD_H 12#define _SPARC_KEYBOARD_H 1 13 14#ifdef __KERNEL__ 15 16#include <linux/config.h> 17#include <linux/ioport.h> 18#include <linux/kd.h> 19#include <asm/io.h> 20 21#define KEYBOARD_IRQ 13 22#define DISABLE_KBD_DURING_INTERRUPTS 0 23 24extern int pcikbd_setkeycode(unsigned int scancode, unsigned int keycode); 25extern int pcikbd_getkeycode(unsigned int scancode); 26extern int pcikbd_translate(unsigned char scancode, unsigned char *keycode, 27 char raw_mode); 28extern char pcikbd_unexpected_up(unsigned char keycode); 29extern void pcikbd_leds(unsigned char leds); 30extern void pcikbd_init_hw(void); 31extern unsigned char pcikbd_sysrq_xlate[128]; 32 33#define kbd_setkeycode pcikbd_setkeycode 34#define kbd_getkeycode pcikbd_getkeycode 35#define kbd_translate pcikbd_translate 36#define kbd_unexpected_up pcikbd_unexpected_up 37#define kbd_leds pcikbd_leds 38#define kbd_init_hw pcikbd_init_hw 39#define kbd_sysrq_xlate pcikbd_sysrq_xlate 40#define kbd_init pcikbd_init 41 42#define compute_shiftstate pci_compute_shiftstate 43#define getkeycode pci_getkeycode 44#define setkeycode pci_setkeycode 45#define getledstate pci_getledstate 46#define setledstate pci_setledstate 47#define register_leds pci_register_leds 48 49/* #define SYSRQ_KEY 0x54 */ /* sparc64 */ 50#define SYSRQ_KEY 0x63 /* sparc */ 51 52/* resource allocation */ 53#define kbd_request_region() request_region(0x60, 16, "keyboard") 54#define kbd_request_irq(handler) request_irq(KEYBOARD_IRQ, handler, 0, \ 55 "keyboard", NULL) 56 57/* How to access the keyboard macros on this platform. */ 58#define kbd_read_input() inb(KBD_DATA_REG) 59#define kbd_read_status() inb(KBD_STATUS_REG) 60#define kbd_write_output(val) outb(val, KBD_DATA_REG) 61#define kbd_write_command(val) outb(val, KBD_CNTL_REG) 62 63/* Some stoneage hardware needs delays after some operations. */ 64#define kbd_pause() do { } while(0) 65 66/* 67 * Machine specific bits for the PS/2 driver 68 */ 69 70#define AUX_IRQ 12 71 72#define aux_request_irq(hand, dev_id) \ 73 request_irq(AUX_IRQ, hand, SA_SHIRQ, "PS/2 Mouse", dev_id) 74 75#define aux_free_irq(dev_id) free_irq(AUX_IRQ, dev_id) 76 77#endif /* __KERNEL__ */ 78 79#endif /* !(_SPARC_KEYBOARD_H) */ 80