Commit 5fdc97b5 authored by Marek Szyprowski's avatar Marek Szyprowski Committed by Kukjin Kim

ARM: S5PV210: Add support for GPIO Interrupt

S5PV210/S5PC110 can use common S5P GPIO interrupt code.
This patch adds required defines and code to make use of it.
Signed-off-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
[kgene.kim@samsung.com: minor title fixes]
Signed-off-by: default avatarKukjin Kim <kgene.kim@samsung.com>
parent 170a4617
...@@ -150,6 +150,7 @@ static struct s3c_gpio_chip s5pv210_gpio_4bit[] = { ...@@ -150,6 +150,7 @@ static struct s3c_gpio_chip s5pv210_gpio_4bit[] = {
.label = "GPG3", .label = "GPG3",
}, },
}, { }, {
.config = &gpio_cfg_noint,
.chip = { .chip = {
.base = S5PV210_GPI(0), .base = S5PV210_GPI(0),
.ngpio = S5PV210_GPIO_I_NR, .ngpio = S5PV210_GPIO_I_NR,
...@@ -259,11 +260,14 @@ static __init int s5pv210_gpiolib_init(void) ...@@ -259,11 +260,14 @@ static __init int s5pv210_gpiolib_init(void)
{ {
struct s3c_gpio_chip *chip = s5pv210_gpio_4bit; struct s3c_gpio_chip *chip = s5pv210_gpio_4bit;
int nr_chips = ARRAY_SIZE(s5pv210_gpio_4bit); int nr_chips = ARRAY_SIZE(s5pv210_gpio_4bit);
int gpioint_group = 0;
int i = 0; int i = 0;
for (i = 0; i < nr_chips; i++, chip++) { for (i = 0; i < nr_chips; i++, chip++) {
if (chip->config == NULL) if (chip->config == NULL) {
chip->config = &gpio_cfg; chip->config = &gpio_cfg;
chip->group = gpioint_group++;
}
if (chip->base == NULL) if (chip->base == NULL)
chip->base = S5PV210_BANK_BASE(i); chip->base = S5PV210_BANK_BASE(i);
} }
......
...@@ -121,8 +121,12 @@ ...@@ -121,8 +121,12 @@
#define S5P_EINT_BASE1 (S5P_IRQ_VIC0(0)) #define S5P_EINT_BASE1 (S5P_IRQ_VIC0(0))
#define S5P_EINT_BASE2 (IRQ_VIC_END + 1) #define S5P_EINT_BASE2 (IRQ_VIC_END + 1)
/* GPIO interrupt */
#define S5P_GPIOINT_BASE (IRQ_EINT(31) + 1)
#define S5P_GPIOINT_GROUP_MAXNR 22
/* Set the default NR_IRQS */ /* Set the default NR_IRQS */
#define NR_IRQS (IRQ_EINT(31) + 1) #define NR_IRQS (IRQ_EINT(31) + S5P_GPIOINT_COUNT + 1)
/* Compatibility */ /* Compatibility */
#define IRQ_LCD_FIFO IRQ_LCD0 #define IRQ_LCD_FIFO IRQ_LCD0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment