i8042-ip22io.h (1327B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2#ifndef _I8042_IP22_H 3#define _I8042_IP22_H 4 5#include <asm/sgi/ioc.h> 6#include <asm/sgi/ip22.h> 7 8 9/* 10 * Names. 11 */ 12 13#define I8042_KBD_PHYS_DESC "hpc3ps2/serio0" 14#define I8042_AUX_PHYS_DESC "hpc3ps2/serio1" 15#define I8042_MUX_PHYS_DESC "hpc3ps2/serio%d" 16 17/* 18 * IRQs. 19 */ 20 21#define I8042_KBD_IRQ SGI_KEYBD_IRQ 22#define I8042_AUX_IRQ SGI_KEYBD_IRQ 23 24/* 25 * Register numbers. 26 */ 27 28#define I8042_COMMAND_REG ((unsigned long)&sgioc->kbdmouse.command) 29#define I8042_STATUS_REG ((unsigned long)&sgioc->kbdmouse.command) 30#define I8042_DATA_REG ((unsigned long)&sgioc->kbdmouse.data) 31 32static inline int i8042_read_data(void) 33{ 34 return sgioc->kbdmouse.data; 35} 36 37static inline int i8042_read_status(void) 38{ 39 return sgioc->kbdmouse.command; 40} 41 42static inline void i8042_write_data(int val) 43{ 44 sgioc->kbdmouse.data = val; 45} 46 47static inline void i8042_write_command(int val) 48{ 49 sgioc->kbdmouse.command = val; 50} 51 52static inline int i8042_platform_init(void) 53{ 54#if 0 55 /* XXX sgi_kh is a virtual address */ 56 if (!request_mem_region(sgi_kh, sizeof(struct hpc_keyb), "i8042")) 57 return -EBUSY; 58#endif 59 60 i8042_reset = I8042_RESET_ALWAYS; 61 62 return 0; 63} 64 65static inline void i8042_platform_exit(void) 66{ 67#if 0 68 release_mem_region(JAZZ_KEYBOARD_ADDRESS, sizeof(struct hpc_keyb)); 69#endif 70} 71 72#endif /* _I8042_IP22_H */