Skip to content

Commit

Permalink
[ARM] pxa: introduce GPIO_CHIP() macro to clean up the definitions
Browse files Browse the repository at this point in the history
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
eric miao authored and Russell King committed Apr 19, 2008
1 parent dfa1067 commit 0e037bb
Showing 1 changed file with 18 additions and 48 deletions.
66 changes: 18 additions & 48 deletions arch/arm/mach-pxa/gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -129,56 +129,26 @@ static void pxa_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
__raw_writel(mask, pxa->regbase + GPCR_OFFSET);
}

#define GPIO_CHIP(_n) \
[_n] = { \
.regbase = GPIO##_n##_BASE, \
.chip = { \
.label = "gpio-" #_n, \
.direction_input = pxa_gpio_direction_input, \
.direction_output = pxa_gpio_direction_output, \
.get = pxa_gpio_get, \
.set = pxa_gpio_set, \
.base = (_n) * 32, \
.ngpio = 32, \
}, \
}

static struct pxa_gpio_chip pxa_gpio_chip[] = {
[0] = {
.regbase = GPIO0_BASE,
.chip = {
.label = "gpio-0",
.direction_input = pxa_gpio_direction_input,
.direction_output = pxa_gpio_direction_output,
.get = pxa_gpio_get,
.set = pxa_gpio_set,
.base = 0,
.ngpio = 32,
},
},
[1] = {
.regbase = GPIO1_BASE,
.chip = {
.label = "gpio-1",
.direction_input = pxa_gpio_direction_input,
.direction_output = pxa_gpio_direction_output,
.get = pxa_gpio_get,
.set = pxa_gpio_set,
.base = 32,
.ngpio = 32,
},
},
[2] = {
.regbase = GPIO2_BASE,
.chip = {
.label = "gpio-2",
.direction_input = pxa_gpio_direction_input,
.direction_output = pxa_gpio_direction_output,
.get = pxa_gpio_get,
.set = pxa_gpio_set,
.base = 64,
.ngpio = 32, /* 21 for PXA25x */
},
},
GPIO_CHIP(0),
GPIO_CHIP(1),
GPIO_CHIP(2),
#if defined(CONFIG_PXA27x) || defined(CONFIG_PXA3xx)
[3] = {
.regbase = GPIO3_BASE,
.chip = {
.label = "gpio-3",
.direction_input = pxa_gpio_direction_input,
.direction_output = pxa_gpio_direction_output,
.get = pxa_gpio_get,
.set = pxa_gpio_set,
.base = 96,
.ngpio = 32,
},
},
GPIO_CHIP(3),
#endif
};

Expand Down

0 comments on commit 0e037bb

Please sign in to comment.