Subversion Repositories HelenOS

Rev

Rev 4337 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4337 Rev 4344
Line 33... Line 33...
33
 */
33
 */
34
 
34
 
35
#ifndef KERN_I8042_H_
35
#ifndef KERN_I8042_H_
36
#define KERN_I8042_H_
36
#define KERN_I8042_H_
37
 
37
 
-
 
38
#include <ddi/irq.h>
38
#include <arch/types.h>
39
#include <arch/types.h>
39
#include <console/chardev.h>
40
#include <typedefs.h>
40
 
41
 
-
 
42
struct i8042 {
-
 
43
    ioport8_t data;
-
 
44
    uint8_t pad[3];
-
 
45
    ioport8_t status;
41
extern void i8042_init(devno_t kbd_devno, inr_t kbd_inr, devno_t mouse_devno, inr_t mouse_inr);
46
} __attribute__ ((packed));
42
extern void i8042_poll(void);
47
typedef struct i8042 i8042_t;
-
 
48
 
43
extern void i8042_grab(void);
49
typedef struct i8042_instance {
-
 
50
    devno_t devno;
-
 
51
    irq_t irq;
-
 
52
    i8042_t *i8042;
44
extern void i8042_release(void);
53
} i8042_instance_t;
-
 
54
 
45
extern char i8042_key_read(chardev_t *d);
55
extern bool i8042_init(i8042_t *, devno_t, inr_t);
46
 
56
 
47
#endif
57
#endif
48
 
58
 
49
/** @}
59
/** @}
50
 */
60
 */