diff options
author | Ben Dooks <ben-linux@fluff.org> | 2010-10-01 00:37:13 -0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2010-10-22 22:48:47 -0400 |
commit | 4b46fbba607ef99f1aab3b77bfc1dc25464df5a6 (patch) | |
tree | 8abce026b2f489ffe94982e73b05884d4db9cd3c /arch/arm/plat-samsung/gpio-config.c | |
parent | fe0cdec8bad919fd91cd344123906a55f3857209 (diff) |
ARM: SAMSUNG: Add GPIO configuration for a range of pins
Add s3c_gpio_cfgpin_range() to configure a range of pins to the given
value. This is useful for a number of blocks where the pins are in order
and saves multiple calls to s3c_gpio_cfgpin().
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/plat-samsung/gpio-config.c')
-rw-r--r-- | arch/arm/plat-samsung/gpio-config.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/plat-samsung/gpio-config.c b/arch/arm/plat-samsung/gpio-config.c index e3d41eaed1ff..fa180dcc41ce 100644 --- a/arch/arm/plat-samsung/gpio-config.c +++ b/arch/arm/plat-samsung/gpio-config.c | |||
@@ -41,6 +41,21 @@ int s3c_gpio_cfgpin(unsigned int pin, unsigned int config) | |||
41 | } | 41 | } |
42 | EXPORT_SYMBOL(s3c_gpio_cfgpin); | 42 | EXPORT_SYMBOL(s3c_gpio_cfgpin); |
43 | 43 | ||
44 | int s3c_gpio_cfgpin_range(unsigned int start, unsigned int nr, | ||
45 | unsigned int cfg) | ||
46 | { | ||
47 | int ret; | ||
48 | |||
49 | for (; nr > 0; nr--, start++) { | ||
50 | ret = s3c_gpio_cfgpin(start, cfg); | ||
51 | if (ret != 0) | ||
52 | return ret; | ||
53 | } | ||
54 | |||
55 | return 0; | ||
56 | } | ||
57 | EXPORT_SYMBOL_GPL(s3c_gpio_cfgpin_range); | ||
58 | |||
44 | unsigned s3c_gpio_getcfg(unsigned int pin) | 59 | unsigned s3c_gpio_getcfg(unsigned int pin) |
45 | { | 60 | { |
46 | struct s3c_gpio_chip *chip = s3c_gpiolib_getchip(pin); | 61 | struct s3c_gpio_chip *chip = s3c_gpiolib_getchip(pin); |