xref: /openbmc/linux/drivers/input/mouse/alps.h (revision 7fe2f639)
1 /*
2  * ALPS touchpad PS/2 mouse driver
3  *
4  * Copyright (c) 2003 Peter Osterlund <petero2@telia.com>
5  * Copyright (c) 2005 Vojtech Pavlik <vojtech@suse.cz>
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 #ifndef _ALPS_H
13 #define _ALPS_H
14 
15 struct alps_model_info {
16         unsigned char signature[3];
17         unsigned char byte0, mask0;
18         unsigned char flags;
19 };
20 
21 struct alps_data {
22 	struct input_dev *dev2;		/* Relative device */
23 	char phys[32];			/* Phys */
24 	const struct alps_model_info *i;/* Info */
25 	int prev_fin;			/* Finger bit from previous packet */
26 	struct timer_list timer;
27 };
28 
29 #ifdef CONFIG_MOUSE_PS2_ALPS
30 int alps_detect(struct psmouse *psmouse, bool set_properties);
31 int alps_init(struct psmouse *psmouse);
32 #else
33 inline int alps_detect(struct psmouse *psmouse, bool set_properties)
34 {
35 	return -ENOSYS;
36 }
37 inline int alps_init(struct psmouse *psmouse)
38 {
39 	return -ENOSYS;
40 }
41 #endif /* CONFIG_MOUSE_PS2_ALPS */
42 
43 #endif
44