missing definition of 's3c_gpio_getpull' function in 'plat-samsung'
Kukjin Kim
kgene.kim at samsung.com
Fri Oct 8 02:22:07 EDT 2010
Daein Moon wrote:
>
> Hi Ben Dooks and Kukjin,
>
Hi,
> I found an issue about s3c_gpio_getpull API.
>
> The 'plat-samsung' provides 's3c_gpio_setpull' and 's3c_gpio_getpull'
> to set and get pull-{none|up|down} of GPIO. But there is no
> 's3c_gpio_getpull' definition in 'arch/arm/plat-samsung/gpio-config.c',
> and there is only declaration in the corresponding header file.
>
> 's3c_gpio_getpull' isn't supported/used. So if providing this api, its
> definition should be inserted.
>
> Otherwise, code that is used to provide s3c_gpio_getpull including
> following code should be removed.
>
> arch/arm/plat-samsung/include/plat/gpio-cfg.h:
> extern s3c_gpio_pull_t s3c_gpio_getpull(unsigned int pin);
>
> arch/arm/mach-{s3c*|s5p*}/gpiolib.c:
> .get_pull = s3c_gpio_getpull_updown,
>
>
> What do you think about that?:
>
Hmm...
I found s3c_gpio_getpull_updown() in plat-samsung/gpio-config.c like below.
220 s3c_gpio_pull_t s3c_gpio_getpull_updown(struct s3c_gpio_chip *chip,
221 unsigned int off)
222 {
223 void __iomem *reg = chip->base + 0x08;
224 int shift = off * 2;
225 u32 pup = __raw_readl(reg);
226
227 pup >>= shift;
228 pup &= 0x3;
229 return (__force s3c_gpio_pull_t)pup;
230 }
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim at samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
More information about the linux-arm-kernel
mailing list