diff options
author | Marek Szyprowski <m.szyprowski@samsung.com> | 2010-05-18 06:38:41 -0400 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2010-05-19 05:23:11 -0400 |
commit | 7904449021de399a03ec8a32e536d031a61def5b (patch) | |
tree | 610c804c4bd185147e5507f28de5b458121ea015 /arch | |
parent | 252b8efeba9cd1e28ade902275b27133114d2382 (diff) |
ARM: S5PC100: Move gpio support from plat-s5pc1xx to mach-s5pc100
Move gpio-lib support from plat-s5pc1xx to mach-s5pc100. Only basic gpio
functionality is now supported. Gpio interrupts are disabled temporarly
and will be added later.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-s5pc100/Makefile | 2 | ||||
-rw-r--r-- | arch/arm/mach-s5pc100/gpiolib.c (renamed from arch/arm/plat-s5pc1xx/gpiolib.c) | 11 | ||||
-rw-r--r-- | arch/arm/mach-s5pc100/include/mach/regs-gpio.h (renamed from arch/arm/plat-s5pc1xx/include/plat/regs-gpio.h) | 0 | ||||
-rw-r--r-- | arch/arm/mach-s5pc100/mach-smdkc100.c | 1 | ||||
-rw-r--r-- | arch/arm/plat-s5pc1xx/Makefile | 3 |
5 files changed, 9 insertions, 8 deletions
diff --git a/arch/arm/mach-s5pc100/Makefile b/arch/arm/mach-s5pc100/Makefile index 809ff10f768f..4199ce2b161a 100644 --- a/arch/arm/mach-s5pc100/Makefile +++ b/arch/arm/mach-s5pc100/Makefile | |||
@@ -11,7 +11,7 @@ obj- := | |||
11 | 11 | ||
12 | # Core support for S5PC100 system | 12 | # Core support for S5PC100 system |
13 | 13 | ||
14 | obj-$(CONFIG_CPU_S5PC100) += cpu.o | 14 | obj-$(CONFIG_CPU_S5PC100) += cpu.o gpiolib.o |
15 | 15 | ||
16 | # Helper and device support | 16 | # Helper and device support |
17 | 17 | ||
diff --git a/arch/arm/plat-s5pc1xx/gpiolib.c b/arch/arm/mach-s5pc100/gpiolib.c index 5a97a8f8e368..c8e8336a3a12 100644 --- a/arch/arm/plat-s5pc1xx/gpiolib.c +++ b/arch/arm/mach-s5pc100/gpiolib.c | |||
@@ -17,11 +17,11 @@ | |||
17 | #include <linux/gpio.h> | 17 | #include <linux/gpio.h> |
18 | 18 | ||
19 | #include <mach/map.h> | 19 | #include <mach/map.h> |
20 | #include <mach/regs-gpio.h> | ||
20 | 21 | ||
21 | #include <plat/gpio-core.h> | 22 | #include <plat/gpio-core.h> |
22 | #include <plat/gpio-cfg.h> | 23 | #include <plat/gpio-cfg.h> |
23 | #include <plat/gpio-cfg-helpers.h> | 24 | #include <plat/gpio-cfg-helpers.h> |
24 | #include <plat/regs-gpio.h> | ||
25 | 25 | ||
26 | /* S5PC100 GPIO bank summary: | 26 | /* S5PC100 GPIO bank summary: |
27 | * | 27 | * |
@@ -61,6 +61,7 @@ | |||
61 | * L3 8 4Bit None | 61 | * L3 8 4Bit None |
62 | */ | 62 | */ |
63 | 63 | ||
64 | #if 0 | ||
64 | static int s5pc1xx_gpiolib_to_irq(struct gpio_chip *chip, unsigned int offset) | 65 | static int s5pc1xx_gpiolib_to_irq(struct gpio_chip *chip, unsigned int offset) |
65 | { | 66 | { |
66 | return S3C_IRQ_GPIO(chip->base + offset); | 67 | return S3C_IRQ_GPIO(chip->base + offset); |
@@ -84,7 +85,7 @@ static int s5pc1xx_gpiolib_to_eint(struct gpio_chip *chip, unsigned int offset) | |||
84 | return IRQ_EINT(24 + offset); | 85 | return IRQ_EINT(24 + offset); |
85 | return -EINVAL; | 86 | return -EINVAL; |
86 | } | 87 | } |
87 | 88 | #endif | |
88 | static struct s3c_gpio_cfg gpio_cfg = { | 89 | static struct s3c_gpio_cfg gpio_cfg = { |
89 | .set_config = s3c_gpio_setcfg_s3c64xx_4bit, | 90 | .set_config = s3c_gpio_setcfg_s3c64xx_4bit, |
90 | .set_pull = s3c_gpio_setpull_updown, | 91 | .set_pull = s3c_gpio_setpull_updown, |
@@ -386,7 +387,7 @@ extern void s5pc1xx_irq_gpioint_handler(unsigned int irq, struct irq_desc *desc) | |||
386 | 387 | ||
387 | static __init void s5pc100_gpiolib_link(struct s3c_gpio_chip *chip) | 388 | static __init void s5pc100_gpiolib_link(struct s3c_gpio_chip *chip) |
388 | { | 389 | { |
389 | 390 | #if 0 | |
390 | /* Interrupt */ | 391 | /* Interrupt */ |
391 | if (chip->config == &gpio_cfg) { | 392 | if (chip->config == &gpio_cfg) { |
392 | int i, irq; | 393 | int i, irq; |
@@ -402,6 +403,7 @@ static __init void s5pc100_gpiolib_link(struct s3c_gpio_chip *chip) | |||
402 | } | 403 | } |
403 | } else if (chip->config == &gpio_cfg_eint) | 404 | } else if (chip->config == &gpio_cfg_eint) |
404 | chip->chip.to_irq = s5pc1xx_gpiolib_to_eint; | 405 | chip->chip.to_irq = s5pc1xx_gpiolib_to_eint; |
406 | #endif | ||
405 | } | 407 | } |
406 | 408 | ||
407 | static __init int s5pc1xx_gpiolib_init(void) | 409 | static __init int s5pc1xx_gpiolib_init(void) |
@@ -417,9 +419,10 @@ static __init int s5pc1xx_gpiolib_init(void) | |||
417 | 419 | ||
418 | samsung_gpiolib_add_4bit_chips(s5pc100_gpio_chips, | 420 | samsung_gpiolib_add_4bit_chips(s5pc100_gpio_chips, |
419 | ARRAY_SIZE(s5pc100_gpio_chips)); | 421 | ARRAY_SIZE(s5pc100_gpio_chips)); |
422 | #if 0 | ||
420 | /* Interrupt */ | 423 | /* Interrupt */ |
421 | set_irq_chained_handler(IRQ_GPIOINT, s5pc1xx_irq_gpioint_handler); | 424 | set_irq_chained_handler(IRQ_GPIOINT, s5pc1xx_irq_gpioint_handler); |
422 | 425 | #endif | |
423 | return 0; | 426 | return 0; |
424 | } | 427 | } |
425 | core_initcall(s5pc1xx_gpiolib_init); | 428 | core_initcall(s5pc1xx_gpiolib_init); |
diff --git a/arch/arm/plat-s5pc1xx/include/plat/regs-gpio.h b/arch/arm/mach-s5pc100/include/mach/regs-gpio.h index 43c7bc8bf784..43c7bc8bf784 100644 --- a/arch/arm/plat-s5pc1xx/include/plat/regs-gpio.h +++ b/arch/arm/mach-s5pc100/include/mach/regs-gpio.h | |||
diff --git a/arch/arm/mach-s5pc100/mach-smdkc100.c b/arch/arm/mach-s5pc100/mach-smdkc100.c index ae3c52cd0ebb..bfe67db34f04 100644 --- a/arch/arm/mach-s5pc100/mach-smdkc100.c +++ b/arch/arm/mach-s5pc100/mach-smdkc100.c | |||
@@ -35,7 +35,6 @@ | |||
35 | 35 | ||
36 | #include <plat/regs-serial.h> | 36 | #include <plat/regs-serial.h> |
37 | #include <plat/gpio-cfg.h> | 37 | #include <plat/gpio-cfg.h> |
38 | #include <plat/regs-gpio.h> | ||
39 | 38 | ||
40 | #include <plat/clock.h> | 39 | #include <plat/clock.h> |
41 | #include <plat/devs.h> | 40 | #include <plat/devs.h> |
diff --git a/arch/arm/plat-s5pc1xx/Makefile b/arch/arm/plat-s5pc1xx/Makefile index 66a8f3eb7071..540fca5b4860 100644 --- a/arch/arm/plat-s5pc1xx/Makefile +++ b/arch/arm/plat-s5pc1xx/Makefile | |||
@@ -13,9 +13,8 @@ obj- := | |||
13 | 13 | ||
14 | obj-y += dev-uart.o | 14 | obj-y += dev-uart.o |
15 | obj-y += cpu.o | 15 | obj-y += cpu.o |
16 | obj-y += irq.o irq-gpio.o irq-eint.o | 16 | obj-y += irq.o |
17 | obj-y += clock.o | 17 | obj-y += clock.o |
18 | obj-y += gpiolib.o | ||
19 | 18 | ||
20 | # CPU support | 19 | # CPU support |
21 | 20 | ||