gpio: Build the da8xx_gpio code for the davinci644x device
The differences include the number of GPIOs and that one is not required to set the pinmux on request.
This commit is contained in:
parent
e77802c0b8
commit
c4c9c7baf1
|
@ -65,9 +65,15 @@ struct davinci_gpio_bank {
|
|||
#define davinci_gpio_bank67 ((struct davinci_gpio *)DAVINCI_GPIO_BANK67)
|
||||
#define davinci_gpio_bank8 ((struct davinci_gpio *)DAVINCI_GPIO_BANK8)
|
||||
|
||||
#if defined(CONFIG_SOC_DM644X)
|
||||
/* GPIO0 to GPIO53, omit the V3.3 volts one */
|
||||
#define MAX_NUM_GPIOS 70
|
||||
#else
|
||||
#define MAX_NUM_GPIOS 144
|
||||
#endif
|
||||
|
||||
#define gpio_status() gpio_info()
|
||||
#define GPIO_NAME_SIZE 20
|
||||
#define MAX_NUM_GPIOS 144
|
||||
#define GPIO_BANK(gp) (davinci_gpio_bank01 + ((gp) >> 5))
|
||||
#define GPIO_BIT(gp) ((gp) & 0x1F)
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@ COBJS-$(CONFIG_PCA9698) += pca9698.o
|
|||
COBJS-$(CONFIG_S5P) += s5p_gpio.o
|
||||
COBJS-$(CONFIG_TEGRA2_GPIO) += tegra2_gpio.o
|
||||
COBJS-$(CONFIG_DA8XX_GPIO) += da8xx_gpio.o
|
||||
COBJS-$(CONFIG_DM644X_GPIO) += da8xx_gpio.o
|
||||
COBJS-$(CONFIG_ALTERA_PIO) += altera_pio.o
|
||||
|
||||
COBJS := $(COBJS-y)
|
||||
|
|
|
@ -32,6 +32,7 @@ static struct gpio_registry {
|
|||
char name[GPIO_NAME_SIZE];
|
||||
} gpio_registry[MAX_NUM_GPIOS];
|
||||
|
||||
#if defined(CONFIG_SOC_DA8XX)
|
||||
#define pinmux(x) (&davinci_syscfg_regs->pinmux[x])
|
||||
|
||||
static const struct pinmux_config gpio_pinmux[] = {
|
||||
|
@ -180,6 +181,9 @@ static const struct pinmux_config gpio_pinmux[] = {
|
|||
{ pinmux(18), 8, 3 },
|
||||
{ pinmux(18), 8, 2 },
|
||||
};
|
||||
#else
|
||||
#define davinci_configure_pin_mux(a, b)
|
||||
#endif
|
||||
|
||||
int gpio_request(int gp, const char *label)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue