1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 #ifndef _I8042_PPCIO_H 3 #define _I8042_PPCIO_H 4 5 6 #if defined(CONFIG_WALNUT) 7 8 #define I8042_KBD_IRQ 25 9 #define I8042_AUX_IRQ 26 10 11 #define I8042_KBD_PHYS_DESC "walnutps2/serio0" 12 #define I8042_AUX_PHYS_DESC "walnutps2/serio1" 13 #define I8042_MUX_PHYS_DESC "walnutps2/serio%d" 14 15 extern void *kb_cs; 16 extern void *kb_data; 17 18 #define I8042_COMMAND_REG (*(int *)kb_cs) 19 #define I8042_DATA_REG (*(int *)kb_data) 20 i8042_read_data(void)21static inline int i8042_read_data(void) 22 { 23 return readb(kb_data); 24 } 25 i8042_read_status(void)26static inline int i8042_read_status(void) 27 { 28 return readb(kb_cs); 29 } 30 i8042_write_data(int val)31static inline void i8042_write_data(int val) 32 { 33 writeb(val, kb_data); 34 } 35 i8042_write_command(int val)36static inline void i8042_write_command(int val) 37 { 38 writeb(val, kb_cs); 39 } 40 i8042_platform_init(void)41static inline int i8042_platform_init(void) 42 { 43 i8042_reset = I8042_RESET_ALWAYS; 44 return 0; 45 } 46 i8042_platform_exit(void)47static inline void i8042_platform_exit(void) 48 { 49 } 50 51 #else 52 53 #include "i8042-io.h" 54 55 #endif 56 57 #endif /* _I8042_PPCIO_H */ 58