diff options
| author | Tomas Novotny <tomas@novotny.cz> | 2013-02-01 06:46:00 +0000 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2013-02-18 13:48:03 -0500 | 
| commit | b9f56698c7e9bf7ac773b5346c4f6886e214b69b (patch) | |
| tree | b69aa9d4071b27dfaa86c838db9dd95f6c938a9a /drivers/gpio/da8xx_gpio.c | |
| parent | 78ed94c8bc743b0a52060388fc9a1439606b71ac (diff) | |
| download | olio-uboot-2014.01-b9f56698c7e9bf7ac773b5346c4f6886e214b69b.tar.xz olio-uboot-2014.01-b9f56698c7e9bf7ac773b5346c4f6886e214b69b.zip | |
da8xx: Add the missing pinmux for da830 to the gpio driver
The pinmux was generated from linux/arch/arm/mach-davinci/da830.c as of
kernel version 3.7.5. If the driver is used for the da850, then SoC
variant must be specified by CONFIG_SOC_DA850.
Signed-off-by: Tomas Novotny <tomas@novotny.cz>
Cc: Tom Rini <trini@ti.com>
Diffstat (limited to 'drivers/gpio/da8xx_gpio.c')
| -rw-r--r-- | drivers/gpio/da8xx_gpio.c | 133 | 
1 files changed, 133 insertions, 0 deletions
| diff --git a/drivers/gpio/da8xx_gpio.c b/drivers/gpio/da8xx_gpio.c index 84d2b77d9..271b8d93f 100644 --- a/drivers/gpio/da8xx_gpio.c +++ b/drivers/gpio/da8xx_gpio.c @@ -33,6 +33,138 @@ static struct gpio_registry {  #define pinmux(x)       (&davinci_syscfg_regs->pinmux[x]) +#if defined(CONFIG_SOC_DA8XX) && !defined(CONFIG_SOC_DA850) +static const struct pinmux_config gpio_pinmux[] = { +	{ pinmux(13), 8, 6 },	/* GP0[0] */ +	{ pinmux(13), 8, 7 }, +	{ pinmux(14), 8, 0 }, +	{ pinmux(14), 8, 1 }, +	{ pinmux(14), 8, 2 }, +	{ pinmux(14), 8, 3 }, +	{ pinmux(14), 8, 4 }, +	{ pinmux(14), 8, 5 }, +	{ pinmux(14), 8, 6 }, +	{ pinmux(14), 8, 7 }, +	{ pinmux(15), 8, 0 }, +	{ pinmux(15), 8, 1 }, +	{ pinmux(15), 8, 2 }, +	{ pinmux(15), 8, 3 }, +	{ pinmux(15), 8, 4 }, +	{ pinmux(15), 8, 5 }, +	{ pinmux(15), 8, 6 },	/* GP1[0] */ +	{ pinmux(15), 8, 7 }, +	{ pinmux(16), 8, 0 }, +	{ pinmux(16), 8, 1 }, +	{ pinmux(16), 8, 2 }, +	{ pinmux(16), 8, 3 }, +	{ pinmux(16), 8, 4 }, +	{ pinmux(16), 8, 5 }, +	{ pinmux(16), 8, 6 }, +	{ pinmux(16), 8, 7 }, +	{ pinmux(17), 8, 0 }, +	{ pinmux(17), 8, 1 }, +	{ pinmux(17), 8, 2 }, +	{ pinmux(17), 8, 3 }, +	{ pinmux(17), 8, 4 }, +	{ pinmux(17), 8, 5 }, +	{ pinmux(17), 8, 6 },	/* GP2[0] */ +	{ pinmux(17), 8, 7 }, +	{ pinmux(18), 8, 0 }, +	{ pinmux(18), 8, 1 }, +	{ pinmux(18), 8, 2 }, +	{ pinmux(18), 8, 3 }, +	{ pinmux(18), 8, 4 }, +	{ pinmux(18), 8, 5 }, +	{ pinmux(18), 8, 6 }, +	{ pinmux(18), 8, 7 }, +	{ pinmux(19), 8, 0 }, +	{ pinmux(9), 8, 2 }, +	{ pinmux(9), 8, 3 }, +	{ pinmux(9), 8, 4 }, +	{ pinmux(9), 8, 5 }, +	{ pinmux(9), 8, 6 }, +	{ pinmux(10), 8, 1 },	/* GP3[0] */ +	{ pinmux(10), 8, 2 }, +	{ pinmux(10), 8, 3 }, +	{ pinmux(10), 8, 4 }, +	{ pinmux(10), 8, 5 }, +	{ pinmux(10), 8, 6 }, +	{ pinmux(10), 8, 7 }, +	{ pinmux(11), 8, 0 }, +	{ pinmux(11), 8, 1 }, +	{ pinmux(11), 8, 2 }, +	{ pinmux(11), 8, 3 }, +	{ pinmux(11), 8, 4 }, +	{ pinmux(9), 8, 7 }, +	{ pinmux(2), 8, 6 }, +	{ pinmux(11), 8, 5 }, +	{ pinmux(11), 8, 6 }, +	{ pinmux(12), 8, 4 },	/* GP4[0] */ +	{ pinmux(12), 8, 5 }, +	{ pinmux(12), 8, 6 }, +	{ pinmux(12), 8, 7 }, +	{ pinmux(13), 8, 0 }, +	{ pinmux(13), 8, 1 }, +	{ pinmux(13), 8, 2 }, +	{ pinmux(13), 8, 3 }, +	{ pinmux(13), 8, 4 }, +	{ pinmux(13), 8, 5 }, +	{ pinmux(11), 8, 7 }, +	{ pinmux(12), 8, 0 }, +	{ pinmux(12), 8, 1 }, +	{ pinmux(12), 8, 2 }, +	{ pinmux(12), 8, 3 }, +	{ pinmux(9), 8, 1 }, +	{ pinmux(7), 8, 3 },	/* GP5[0] */ +	{ pinmux(7), 8, 4 }, +	{ pinmux(7), 8, 5 }, +	{ pinmux(7), 8, 6 }, +	{ pinmux(7), 8, 7 }, +	{ pinmux(8), 8, 0 }, +	{ pinmux(8), 8, 1 }, +	{ pinmux(8), 8, 2 }, +	{ pinmux(8), 8, 3 }, +	{ pinmux(8), 8, 4 }, +	{ pinmux(8), 8, 5 }, +	{ pinmux(8), 8, 6 }, +	{ pinmux(8), 8, 7 }, +	{ pinmux(9), 8, 0 }, +	{ pinmux(7), 8, 1 }, +	{ pinmux(7), 8, 2 }, +	{ pinmux(5), 8, 1 },	/* GP6[0] */ +	{ pinmux(5), 8, 2 }, +	{ pinmux(5), 8, 3 }, +	{ pinmux(5), 8, 4 }, +	{ pinmux(5), 8, 5 }, +	{ pinmux(5), 8, 6 }, +	{ pinmux(5), 8, 7 }, +	{ pinmux(6), 8, 0 }, +	{ pinmux(6), 8, 1 }, +	{ pinmux(6), 8, 2 }, +	{ pinmux(6), 8, 3 }, +	{ pinmux(6), 8, 4 }, +	{ pinmux(6), 8, 5 }, +	{ pinmux(6), 8, 6 }, +	{ pinmux(6), 8, 7 }, +	{ pinmux(7), 8, 0 }, +	{ pinmux(1), 8, 0 },	/* GP7[0] */ +	{ pinmux(1), 8, 1 }, +	{ pinmux(1), 8, 2 }, +	{ pinmux(1), 8, 3 }, +	{ pinmux(1), 8, 4 }, +	{ pinmux(1), 8, 5 }, +	{ pinmux(1), 8, 6 }, +	{ pinmux(1), 8, 7 }, +	{ pinmux(2), 8, 0 }, +	{ pinmux(2), 8, 1 }, +	{ pinmux(2), 8, 2 }, +	{ pinmux(2), 8, 3 }, +	{ pinmux(2), 8, 4 }, +	{ pinmux(2), 8, 5 }, +	{ pinmux(0), 1, 0 }, +	{ pinmux(0), 1, 1 }, +}; +#else  static const struct pinmux_config gpio_pinmux[] = {  	{ pinmux(1), 8, 7 },	/* GP0[0] */  	{ pinmux(1), 8, 6 }, @@ -179,6 +311,7 @@ static const struct pinmux_config gpio_pinmux[] = {  	{ pinmux(18), 8, 3 },  	{ pinmux(18), 8, 2 },  }; +#endif  int gpio_request(unsigned gpio, const char *label)  { |