| * Copyright (c) 2015 Intel Corporation. |
| * SPDX-License-Identifier: Apache-2.0 |
| * @file Header file for the PCAL9535A driver. |
| #ifndef _GPIO_PCAL9535A_H_ |
| #define _GPIO_PCAL9535A_H_ |
| /** Configuration data */ |
| struct gpio_pcal9535a_config { |
| /** The master I2C device's name */ |
| const char * const i2c_master_dev_name; |
| /** The slave address of the chip */ |
| /** Store the port 0/1 data for each register pair. */ |
| union gpio_pcal9535a_port_data { |
| /** Runtime driver data */ |
| struct gpio_pcal9535a_drv_data { |
| struct device *i2c_master; |
| * Specify polarity inversion of pin. This is used for ouput as |
| * the polarity inversion registers on chip affects inputs only. |
| union gpio_pcal9535a_port_data output; |
| union gpio_pcal9535a_port_data pol_inv; |
| union gpio_pcal9535a_port_data dir; |
| union gpio_pcal9535a_port_data pud_en; |
| union gpio_pcal9535a_port_data pud_sel; |
| #endif /* _GPIO_PCAL9535A_H_ */ |