| Olof Johansson | 62fecb7 | 2010-03-05 13:44:34 -0800 | [diff] [blame] | 1 | #ifndef _LINUX_PCA953X_H | 
|  | 2 | #define _LINUX_PCA953X_H | 
|  | 3 |  | 
|  | 4 | #include <linux/types.h> | 
|  | 5 | #include <linux/i2c.h> | 
|  | 6 |  | 
| eric miao | 9e60fdc | 2008-02-04 22:28:26 -0800 | [diff] [blame] | 7 | /* platform data for the PCA9539 16-bit I/O expander driver */ | 
|  | 8 |  | 
| Guennadi Liakhovetski | f3dc363 | 2008-02-06 01:39:03 -0800 | [diff] [blame] | 9 | struct pca953x_platform_data { | 
| eric miao | 9e60fdc | 2008-02-04 22:28:26 -0800 | [diff] [blame] | 10 | /* number of the first GPIO */ | 
|  | 11 | unsigned	gpio_base; | 
|  | 12 |  | 
|  | 13 | /* initial polarity inversion setting */ | 
|  | 14 | uint16_t	invert; | 
|  | 15 |  | 
| Marc Zyngier | 89ea8bb | 2010-03-05 13:44:36 -0800 | [diff] [blame] | 16 | /* interrupt base */ | 
|  | 17 | int		irq_base; | 
|  | 18 |  | 
| eric miao | 9e60fdc | 2008-02-04 22:28:26 -0800 | [diff] [blame] | 19 | void		*context;	/* param to setup/teardown */ | 
|  | 20 |  | 
|  | 21 | int		(*setup)(struct i2c_client *client, | 
|  | 22 | unsigned gpio, unsigned ngpio, | 
|  | 23 | void *context); | 
|  | 24 | int		(*teardown)(struct i2c_client *client, | 
|  | 25 | unsigned gpio, unsigned ngpio, | 
|  | 26 | void *context); | 
| Uwe Kleine-König | 6215499 | 2010-05-26 14:42:17 -0700 | [diff] [blame] | 27 | const char	*const *names; | 
| eric miao | 9e60fdc | 2008-02-04 22:28:26 -0800 | [diff] [blame] | 28 | }; | 
| Olof Johansson | 62fecb7 | 2010-03-05 13:44:34 -0800 | [diff] [blame] | 29 |  | 
|  | 30 | #endif /* _LINUX_PCA953X_H */ |