pca953x.h 691 B

12345678910111213141516171819202122232425262728293031
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef _LINUX_PCA953X_H
  3. #define _LINUX_PCA953X_H
  4. #include <linux/types.h>
  5. #include <linux/i2c.h>
  6. /* platform data for the PCA9539 16-bit I/O expander driver */
  7. struct pca953x_platform_data {
  8. /* number of the first GPIO */
  9. unsigned gpio_base;
  10. /* initial polarity inversion setting */
  11. u32 invert;
  12. /* interrupt base */
  13. int irq_base;
  14. void *context; /* param to setup/teardown */
  15. int (*setup)(struct i2c_client *client,
  16. unsigned gpio, unsigned ngpio,
  17. void *context);
  18. void (*teardown)(struct i2c_client *client,
  19. unsigned gpio, unsigned ngpio,
  20. void *context);
  21. const char *const *names;
  22. };
  23. #endif /* _LINUX_PCA953X_H */