diff options
Diffstat (limited to 'arch/arm/plat-s3c24xx/gpio.c')
-rw-r--r-- | arch/arm/plat-s3c24xx/gpio.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/arm/plat-s3c24xx/gpio.c b/arch/arm/plat-s3c24xx/gpio.c index 45126d3aafc6..2f3d7c089dfa 100644 --- a/arch/arm/plat-s3c24xx/gpio.c +++ b/arch/arm/plat-s3c24xx/gpio.c | |||
@@ -34,6 +34,8 @@ | |||
34 | 34 | ||
35 | #include <mach/regs-gpio.h> | 35 | #include <mach/regs-gpio.h> |
36 | 36 | ||
37 | #include <plat/gpio-core.h> | ||
38 | |||
37 | /* gpiolib wrappers until these are totally eliminated */ | 39 | /* gpiolib wrappers until these are totally eliminated */ |
38 | 40 | ||
39 | void s3c2410_gpio_pullup(unsigned int pin, unsigned int to) | 41 | void s3c2410_gpio_pullup(unsigned int pin, unsigned int to) |
@@ -68,10 +70,10 @@ EXPORT_SYMBOL(s3c2410_gpio_setpin); | |||
68 | 70 | ||
69 | unsigned int s3c2410_gpio_getpin(unsigned int pin) | 71 | unsigned int s3c2410_gpio_getpin(unsigned int pin) |
70 | { | 72 | { |
71 | void __iomem *base = S3C24XX_GPIO_BASE(pin); | 73 | struct s3c_gpio_chip *chip = s3c_gpiolib_getchip(pin); |
72 | unsigned long offs = S3C2410_GPIO_OFFSET(pin); | 74 | unsigned long offs = pin - chip->chip.base; |
73 | 75 | ||
74 | return __raw_readl(base + 0x04) & (1<< offs); | 76 | return __raw_readl(chip->base + 0x04) & (1<< offs); |
75 | } | 77 | } |
76 | 78 | ||
77 | EXPORT_SYMBOL(s3c2410_gpio_getpin); | 79 | EXPORT_SYMBOL(s3c2410_gpio_getpin); |