summaryrefslogtreecommitdiffstats
path: root/drivers/char/pc110pad.h
blob: d0ea0b0d3321c02dd3df72b6c603237b4fa24027 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef _PC110PAD_H
#define _PC110PAD_H

#include <linux/ioctl.h>

enum pc110pad_mode {
	PC110PAD_RAW,		/* bytes as they come out of the hardware */
	PC110PAD_RARE,		/* debounced up/down and absolute x,y */
	PC110PAD_DEBUG,		/* up/down, debounced, transitions, button */
	PC110PAD_PS2,		/* ps2 relative (default) */ 
};


struct pc110pad_params {
	enum pc110pad_mode mode;
	int	bounce_interval;
	int	tap_interval;
	int	irq;
	int	io;
};

#define MS *HZ/1000

/* Appears as device major=10 (MISC), minor=PC110_PAD */

#define PC110PAD_IOCTL_TYPE		0x9a

#define PC110PADIOCGETP _IOR(PC110PAD_IOCTL_TYPE, 0, struct pc110pad_params)
#define PC110PADIOCSETP _IOW(PC110PAD_IOCTL_TYPE, 1, struct pc110pad_params)
 
#endif /* _PC110PAD_H */