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