2018-05-06 21:58:06 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0+ */
|
2011-11-11 21:55:37 +00:00
|
|
|
|
|
|
|
#ifndef _MPC83XX_GPIO_H_
|
|
|
|
#define _MPC83XX_GPIO_H_
|
|
|
|
|
|
|
|
/*
|
|
|
|
* The MCP83xx's 1-2 GPIO controllers each with 32 bits.
|
|
|
|
*/
|
2019-01-21 08:17:25 +00:00
|
|
|
#if defined(CONFIG_ARCH_MPC8313) || defined(CONFIG_ARCH_MPC8308) || \
|
|
|
|
defined(CONFIG_ARCH_MPC8315)
|
2011-11-11 21:55:37 +00:00
|
|
|
#define MPC83XX_GPIO_CTRLRS 1
|
2019-01-21 08:17:29 +00:00
|
|
|
#elif defined(CONFIG_ARCH_MPC834X) || defined(CONFIG_ARCH_MPC837X)
|
2011-11-11 21:55:37 +00:00
|
|
|
#define MPC83XX_GPIO_CTRLRS 2
|
|
|
|
#else
|
|
|
|
#define MPC83XX_GPIO_CTRLRS 0
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define MAX_NUM_GPIOS (32 * MPC83XX_GPIO_CTRLRS)
|
|
|
|
|
2019-01-21 08:18:08 +00:00
|
|
|
struct mpc8xxx_gpio_plat {
|
|
|
|
ulong addr;
|
|
|
|
unsigned long size;
|
|
|
|
uint ngpios;
|
|
|
|
};
|
|
|
|
|
|
|
|
#ifndef DM_GPIO
|
2011-11-11 21:55:37 +00:00
|
|
|
void mpc83xx_gpio_init_f(void);
|
|
|
|
void mpc83xx_gpio_init_r(void);
|
2019-01-21 08:18:08 +00:00
|
|
|
#endif /* DM_GPIO */
|
2011-11-11 21:55:37 +00:00
|
|
|
|
|
|
|
#endif /* MPC83XX_GPIO_H_ */
|