From: anarsoul@gmail.com (Vasily Khoruzhick)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks
Date: Tue, 30 Nov 2010 22:05:24 +0200 [thread overview]
Message-ID: <201011302205.24839.anarsoul@gmail.com> (raw)
In-Reply-To: <4CF55785.5090403@metafoo.de>
On Tuesday 30 November 2010 21:59:01 Lars-Peter Clausen wrote:
> On 11/30/2010 08:46 PM, Vasily Khoruzhick wrote:
> > Currently the {set,get}_pull callbacks of the s3c24xx_gpiocfg_default
> > structure are initalized via s3c_gpio_{get,set}pull_1up. This results in
> > a linker error when only CONFIG_CPU_S3C2442 is selected:
> >
> > arch/arm/plat-s3c24xx/built-in.o:(.data+0x13f4): undefined reference to
> > `s3c_gpio_getpull_1up'
> > arch/arm/plat-s3c24xx/built-in.o:(.data+0x13f8): undefined reference to
> > `s3c_gpio_setpull_1up'
> >
> > The s3c2442 has pulldowns instead of pullups compared to the s3c2440.
> > The method of controlling them is the same though.
> > So this patch modifies the existing s3c_gpio_{get,set}pull_1up helper
> > functions to take an additional parameter deciding whether the pin has a
> > pullup or pulldown. The s3c_gpio_{get,set}pull_1{down,up} functions then
> > wrap that functions passing either S3C_GPIO_PULL_UP or
> > S3C_GPIO_PULL_DOWN.
> >
> > Furthermore this patch sets up the s3c24xx_gpiocfg_default.{get,set}_pull
> > fields in the s3c244{0,2}_map_io function to the new pulldown helper
> > functions.
> >
> > Based on patch from "Lars-Peter Clausen" <lars@metafoo.de>
> >
> > Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
> > ---
> > v2: adapt patch for 2.6.37-rc1
> > v3: restore default pull callbacks, add default pull callbacks for
> > s3c2442 v4: remove default pull callbacks, set them in per-soc map_io
> > function instead.
> >
> > arch/arm/mach-s3c2440/Kconfig | 1 +
> > arch/arm/mach-s3c2440/s3c2440.c | 11 ++++-
> > arch/arm/mach-s3c2440/s3c2442.c | 14 ++++++
> > arch/arm/plat-s3c24xx/cpu.c | 8 ++--
> > arch/arm/plat-s3c24xx/gpiolib.c | 2 -
> > arch/arm/plat-s3c24xx/include/plat/s3c244x.h | 7 +++-
> > arch/arm/plat-samsung/gpio-config.c | 45
> > ++++++++++++++++---- .../plat-samsung/include/plat/gpio-cfg-helpers.h
> > | 11 +++++ 8 files changed, 80 insertions(+), 19 deletions(-)
> >
> > ...
> >
> > +static int s3c_gpio_setpull_1(struct s3c_gpio_chip *chip,
> > + unsigned int off, s3c_gpio_pull_t pull,
> > + s3c_gpio_pull_t updown)
> >
> > {
> >
> > void __iomem *reg = chip->base + 0x08;
> > u32 pup = __raw_readl(reg);
> >
> > - pup = __raw_readl(reg);
> > -
> > - if (pup == S3C_GPIO_PULL_UP)
> > + if (pup == updown)
>
> This should be pull == updown, otherwise looks fine to me
You're right. Btw, can you test this patch on your s3c24xx-machine?
> > pup &= ~(1 << off);
> >
> > else if (pup == S3C_GPIO_PULL_NONE)
> >
> > pup |= (1 << off);
> >
> > @@ -300,17 +299,45 @@ int s3c_gpio_setpull_1up(struct s3c_gpio_chip
> > *chip,
> >
> > return 0;
> >
> > }
>
> - Lars
Regards
Vasily
next prev parent reply other threads:[~2010-11-30 20:05 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-20 22:00 [PATCH] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Lars-Peter Clausen
2010-09-20 22:00 ` [PATCH] ARM: s3c24xx: Set ARCH_NR_GPIOS according to the selected SoC types Lars-Peter Clausen
2010-09-20 23:41 ` [PATCH] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Ben Dooks
2010-09-21 5:28 ` Abdoulaye Walsimou GAYE
2010-11-06 7:54 ` [PATCH v2] " Vasily Khoruzhick
2010-11-06 16:09 ` Abdoulaye Walsimou GAYE
2010-11-08 9:08 ` Vasily Khoruzhick
2010-11-08 20:26 ` [PATCH v3] " Vasily Khoruzhick
2010-11-08 21:41 ` Abdoulaye Walsimou GAYE
2010-11-29 9:56 ` Vasily Khoruzhick
2010-11-29 10:15 ` Kukjin Kim
2010-11-29 10:26 ` [PATCH RESEND " Vasily Khoruzhick
2010-11-30 6:18 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set, get}_pull callbacks Kukjin Kim
2010-11-30 11:53 ` Lars-Peter Clausen
2010-11-30 12:01 ` Vasily Khoruzhick
2010-11-30 13:12 ` Lars-Peter Clausen
2010-11-30 14:33 ` Vasily Khoruzhick
2010-11-30 14:53 ` Lars-Peter Clausen
2010-11-30 15:01 ` Vasily Khoruzhick
2010-11-30 19:46 ` [PATCH v4] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-11-30 19:59 ` [PATCH v4] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks Lars-Peter Clausen
2010-11-30 20:05 ` Vasily Khoruzhick [this message]
2010-11-30 20:12 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-12-01 0:22 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks Ben Dooks
2010-12-03 9:40 ` Kukjin Kim
2010-12-01 7:26 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Kukjin Kim
2010-12-01 10:17 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks Vasily Khoruzhick
2010-12-01 12:05 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Kukjin Kim
2010-12-01 12:16 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks Vasily Khoruzhick
2010-12-01 5:28 ` [PATCH v4] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Kukjin Kim
2010-12-01 6:19 ` [PATCH v4] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks Vasily Khoruzhick
2010-12-01 6:29 ` [PATCH v6] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-12-01 5:19 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set, get}_pull callbacks Kukjin Kim
2010-11-29 10:28 ` [PATCH v3] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Vasily Khoruzhick
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201011302205.24839.anarsoul@gmail.com \
--to=anarsoul@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).