blob: 13fd7108eb2836ad5eb7625fab88c1d2dbf425de [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _I8042_JAZZ_H
2#define _I8042_JAZZ_H
3
4#include <asm/jazz.h>
5
6/*
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License version 2 as published by
9 * the Free Software Foundation.
10 */
11
12/*
13 * Names.
14 */
15
16#define I8042_KBD_PHYS_DESC "R4030/serio0"
17#define I8042_AUX_PHYS_DESC "R4030/serio1"
18#define I8042_MUX_PHYS_DESC "R4030/serio%d"
19
20/*
21 * IRQs.
22 */
23
24#define I8042_KBD_IRQ JAZZ_KEYBOARD_IRQ
25#define I8042_AUX_IRQ JAZZ_MOUSE_IRQ
26
27#define I8042_COMMAND_REG ((unsigned long)&jazz_kh->command)
28#define I8042_STATUS_REG ((unsigned long)&jazz_kh->command)
29#define I8042_DATA_REG ((unsigned long)&jazz_kh->data)
30
31static inline int i8042_read_data(void)
32{
33 return jazz_kh->data;
34}
35
36static inline int i8042_read_status(void)
37{
38 return jazz_kh->command;
39}
40
41static inline void i8042_write_data(int val)
42{
43 jazz_kh->data = val;
44}
45
46static inline void i8042_write_command(int val)
47{
48 jazz_kh->command = val;
49}
50
51static inline int i8042_platform_init(void)
52{
53#if 0
54 /* XXX JAZZ_KEYBOARD_ADDRESS is a virtual address */
55 if (!request_mem_region(JAZZ_KEYBOARD_ADDRESS, 2, "i8042"))
Dmitry Torokhov8d5987a2005-09-04 01:41:38 -050056 return -EBUSY;
Linus Torvalds1da177e2005-04-16 15:20:36 -070057#endif
58
59 return 0;
60}
61
62static inline void i8042_platform_exit(void)
63{
64#if 0
65 release_mem_region(JAZZ_KEYBOARD_ADDRESS, 2);
66#endif
67}
68
69#endif /* _I8042_JAZZ_H */