1#ifndef _I8042_IP22_H 2#define _I8042_IP22_H 3 4#include <asm/sgi/ioc.h> 5#include <asm/sgi/ip22.h> 6 7/* 8 * This program is free software; you can redistribute it and/or modify it 9 * under the terms of the GNU General Public License version 2 as published by 10 * the Free Software Foundation. 11 */ 12 13/* 14 * Names. 15 */ 16 17#define I8042_KBD_PHYS_DESC "hpc3ps2/serio0" 18#define I8042_AUX_PHYS_DESC "hpc3ps2/serio1" 19#define I8042_MUX_PHYS_DESC "hpc3ps2/serio%d" 20 21/* 22 * IRQs. 23 */ 24 25#define I8042_KBD_IRQ SGI_KEYBD_IRQ 26#define I8042_AUX_IRQ SGI_KEYBD_IRQ 27 28/* 29 * Register numbers. 30 */ 31 32#define I8042_COMMAND_REG ((unsigned long)&sgioc->kbdmouse.command) 33#define I8042_STATUS_REG ((unsigned long)&sgioc->kbdmouse.command) 34#define I8042_DATA_REG ((unsigned long)&sgioc->kbdmouse.data) 35 36static inline int i8042_read_data(void) 37{ 38 return sgioc->kbdmouse.data; 39} 40 41static inline int i8042_read_status(void) 42{ 43 return sgioc->kbdmouse.command; 44} 45 46static inline void i8042_write_data(int val) 47{ 48 sgioc->kbdmouse.data = val; 49} 50 51static inline void i8042_write_command(int val) 52{ 53 sgioc->kbdmouse.command = val; 54} 55 56static inline int i8042_platform_init(void) 57{ 58#if 0 59 /* XXX sgi_kh is a virtual address */ 60 if (!request_mem_region(sgi_kh, sizeof(struct hpc_keyb), "i8042")) 61 return -EBUSY; 62#endif 63 64 i8042_reset = 1; 65 66 return 0; 67} 68 69static inline void i8042_platform_exit(void) 70{ 71#if 0 72 release_mem_region(JAZZ_KEYBOARD_ADDRESS, sizeof(struct hpc_keyb)); 73#endif 74} 75 76#endif /* _I8042_IP22_H */ 77