Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 79044490 authored by Marek Szyprowski's avatar Marek Szyprowski Committed by Ben Dooks
Browse files

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: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
parent 252b8efe
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@ obj- :=

# Core support for S5PC100 system

obj-$(CONFIG_CPU_S5PC100)	+= cpu.o
obj-$(CONFIG_CPU_S5PC100)	+= cpu.o gpiolib.o

# Helper and device support

+7 −4
Original line number Diff line number Diff line
@@ -17,11 +17,11 @@
#include <linux/gpio.h>

#include <mach/map.h>
#include <mach/regs-gpio.h>

#include <plat/gpio-core.h>
#include <plat/gpio-cfg.h>
#include <plat/gpio-cfg-helpers.h>
#include <plat/regs-gpio.h>

/* S5PC100 GPIO bank summary:
 *
@@ -61,6 +61,7 @@
 * L3	8	4Bit	None
 */

#if 0
static int s5pc1xx_gpiolib_to_irq(struct gpio_chip *chip, unsigned int offset)
{
	return S3C_IRQ_GPIO(chip->base + offset);
@@ -84,7 +85,7 @@ static int s5pc1xx_gpiolib_to_eint(struct gpio_chip *chip, unsigned int offset)
		return IRQ_EINT(24 + offset);
	return -EINVAL;
}

#endif
static struct s3c_gpio_cfg gpio_cfg = {
	.set_config	= s3c_gpio_setcfg_s3c64xx_4bit,
	.set_pull	= s3c_gpio_setpull_updown,
@@ -386,7 +387,7 @@ extern void s5pc1xx_irq_gpioint_handler(unsigned int irq, struct irq_desc *desc)

static __init void s5pc100_gpiolib_link(struct s3c_gpio_chip *chip)
{

#if 0
	/* Interrupt */
	if (chip->config == &gpio_cfg) {
		int i, irq;
@@ -402,6 +403,7 @@ static __init void s5pc100_gpiolib_link(struct s3c_gpio_chip *chip)
		}
	} else if (chip->config == &gpio_cfg_eint)
		chip->chip.to_irq = s5pc1xx_gpiolib_to_eint;
#endif
}

static __init int s5pc1xx_gpiolib_init(void)
@@ -417,9 +419,10 @@ static __init int s5pc1xx_gpiolib_init(void)

	samsung_gpiolib_add_4bit_chips(s5pc100_gpio_chips,
				       ARRAY_SIZE(s5pc100_gpio_chips));
#if 0
	/* Interrupt */
	set_irq_chained_handler(IRQ_GPIOINT, s5pc1xx_irq_gpioint_handler);

#endif
	return 0;
}
core_initcall(s5pc1xx_gpiolib_init);
+0 −1
Original line number Diff line number Diff line
@@ -35,7 +35,6 @@

#include <plat/regs-serial.h>
#include <plat/gpio-cfg.h>
#include <plat/regs-gpio.h>

#include <plat/clock.h>
#include <plat/devs.h>
+1 −2
Original line number Diff line number Diff line
@@ -13,9 +13,8 @@ obj- :=

obj-y				+= dev-uart.o
obj-y				+= cpu.o
obj-y				+= irq.o irq-gpio.o irq-eint.o
obj-y				+= irq.o
obj-y				+= clock.o
obj-y				+= gpiolib.o

# CPU support