1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 3 #ifndef _MPC83XX_GPIO_H_ 4 #define _MPC83XX_GPIO_H_ 5 6 /* 7 * The MCP83xx's 1-2 GPIO controllers each with 32 bits. 8 */ 9 #if defined(CONFIG_ARCH_MPC8313) || defined(CONFIG_ARCH_MPC8308) 10 #define MPC83XX_GPIO_CTRLRS 1 11 #elif defined(CONFIG_ARCH_MPC834X) || defined(CONFIG_ARCH_MPC837X) || \ 12 defined(CONFIG_ARCH_MPC8309) 13 #define MPC83XX_GPIO_CTRLRS 2 14 #else 15 #define MPC83XX_GPIO_CTRLRS 0 16 #endif 17 18 #define MAX_NUM_GPIOS (32 * MPC83XX_GPIO_CTRLRS) 19 20 struct mpc8xxx_gpio_plat { 21 ulong addr; 22 unsigned long size; 23 uint ngpios; 24 }; 25 26 #ifndef DM_GPIO 27 void mpc83xx_gpio_init_f(void); 28 void mpc83xx_gpio_init_r(void); 29 #endif /* DM_GPIO */ 30 31 #endif /* MPC83XX_GPIO_H_ */ 32