| /* |
| * Copyright (c) 2021 Microchip Technology Inc. |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /** @file |
| * @brief Microchip XEC MCU family I2C port support. |
| * |
| */ |
| |
| #ifndef _MICROCHIP_MEC_SOC_I2C_H_ |
| #define _MICROCHIP_MEC_SOC_I2C_H_ |
| |
| /* 144-pin package I2C port masks */ |
| #if defined(CONFIG_SOC_MEC172X_NSZ) |
| #define MEC_I2C_PORT_MASK 0xFEFFU |
| #elif defined(CONFIG_SOC_MEC1501_HSZ) |
| #define MEC_I2C_PORT_MASK 0xFEFFU |
| #endif |
| |
| #define MCHP_I2C_PORT_0 0 |
| #define MCHP_I2C_PORT_1 1 |
| #define MCHP_I2C_PORT_2 2 |
| #define MCHP_I2C_PORT_3 3 |
| #define MCHP_I2C_PORT_4 4 |
| #define MCHP_I2C_PORT_5 5 |
| #define MCHP_I2C_PORT_6 6 |
| #define MCHP_I2C_PORT_7 7 |
| #define MCHP_I2C_PORT_8 8 |
| #define MCHP_I2C_PORT_9 9 |
| #define MCHP_I2C_PORT_10 10 |
| #define MCHP_I2C_PORT_11 11 |
| #define MCHP_I2C_PORT_12 12 |
| #define MCHP_I2C_PORT_13 13 |
| #define MCHP_I2C_PORT_14 14 |
| #define MCHP_I2C_PORT_15 15 |
| #define MCHP_I2C_PORT_MAX 16 |
| |
| /* |
| * Read pin states of specified I2C port. |
| * We GPIO control register always active RO pad input bit. |
| * lines b[0]=SCL pin state at pad, b[1]=SDA pin state at pad |
| * Returns 0 success or -EINVAL if port is not support or lines is NULL. |
| */ |
| #define SOC_I2C_SCL_POS 0 |
| #define SOC_I2C_SDA_POS 1 |
| |
| int soc_i2c_port_lines_get(uint8_t port, uint32_t *lines); |
| |
| #endif /* _MICROCHIP_MEC_SOC_I2C_H_ */ |