11da177e4SLinus Torvalds /* 21da177e4SLinus Torvalds * ALPS touchpad PS/2 mouse driver 31da177e4SLinus Torvalds * 41da177e4SLinus Torvalds * Copyright (c) 2003 Peter Osterlund <petero2@telia.com> 51da177e4SLinus Torvalds * Copyright (c) 2005 Vojtech Pavlik <vojtech@suse.cz> 61da177e4SLinus Torvalds * 71da177e4SLinus Torvalds * This program is free software; you can redistribute it and/or modify it 81da177e4SLinus Torvalds * under the terms of the GNU General Public License version 2 as published by 91da177e4SLinus Torvalds * the Free Software Foundation. 101da177e4SLinus Torvalds */ 111da177e4SLinus Torvalds 121da177e4SLinus Torvalds #ifndef _ALPS_H 131da177e4SLinus Torvalds #define _ALPS_H 141da177e4SLinus Torvalds 151da177e4SLinus Torvalds struct alps_model_info { 161da177e4SLinus Torvalds unsigned char signature[3]; 171da177e4SLinus Torvalds unsigned char byte0, mask0; 181da177e4SLinus Torvalds unsigned char flags; 191da177e4SLinus Torvalds }; 201da177e4SLinus Torvalds 211da177e4SLinus Torvalds struct alps_data { 222e5b636bSDmitry Torokhov struct input_dev *dev2; /* Relative device */ 231da177e4SLinus Torvalds char phys[32]; /* Phys */ 24e38de678SHelge Deller const struct alps_model_info *i;/* Info */ 251da177e4SLinus Torvalds int prev_fin; /* Finger bit from previous packet */ 261da177e4SLinus Torvalds }; 271da177e4SLinus Torvalds 2855e3d922SAndres Salomon #ifdef CONFIG_MOUSE_PS2_ALPS 29*b7802c5cSDmitry Torokhov int alps_detect(struct psmouse *psmouse, bool set_properties); 3055e3d922SAndres Salomon int alps_init(struct psmouse *psmouse); 3155e3d922SAndres Salomon #else 32*b7802c5cSDmitry Torokhov inline int alps_detect(struct psmouse *psmouse, bool set_properties) 3355e3d922SAndres Salomon { 3455e3d922SAndres Salomon return -ENOSYS; 3555e3d922SAndres Salomon } 3655e3d922SAndres Salomon inline int alps_init(struct psmouse *psmouse) 3755e3d922SAndres Salomon { 3855e3d922SAndres Salomon return -ENOSYS; 3955e3d922SAndres Salomon } 4055e3d922SAndres Salomon #endif /* CONFIG_MOUSE_PS2_ALPS */ 4155e3d922SAndres Salomon 421da177e4SLinus Torvalds #endif 43