Commit | Line | Data |
---|---|---|
62fecb70 OJ |
1 | #ifndef _LINUX_PCA953X_H |
2 | #define _LINUX_PCA953X_H | |
3 | ||
4 | #include <linux/types.h> | |
5 | #include <linux/i2c.h> | |
6 | ||
9e60fdcf | 7 | /* platform data for the PCA9539 16-bit I/O expander driver */ |
8 | ||
f3dc3630 | 9 | struct pca953x_platform_data { |
9e60fdcf | 10 | /* number of the first GPIO */ |
11 | unsigned gpio_base; | |
12 | ||
13 | /* initial polarity inversion setting */ | |
6a7b36aa | 14 | u32 invert; |
9e60fdcf | 15 | |
89ea8bbe MZ |
16 | /* interrupt base */ |
17 | int irq_base; | |
18 | ||
9e60fdcf | 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); | |
62154991 | 27 | const char *const *names; |
9e60fdcf | 28 | }; |
62fecb70 OJ |
29 | |
30 | #endif /* _LINUX_PCA953X_H */ |