From: Lars-Peter Clausen <lars@metafoo.de>
To: Vasily Khoruzhick <anarsoul@gmail.com>
Cc: Kukjin Kim <kgene.kim@samsung.com>,
'Ben Dooks' <ben-linux@fluff.org>,
'Russell King' <linux@arm.linux.org.uk>,
linux-samsung-soc@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
'Abdoulaye Walsimou GAYE' <awg@embtoolkit.org>
Subject: Re: [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set,get}_pull callbacks
Date: Tue, 30 Nov 2010 15:53:09 +0100 [thread overview]
Message-ID: <4CF50FD5.1090705@metafoo.de> (raw)
In-Reply-To: <201011301633.05545.anarsoul@gmail.com>
On 11/30/2010 03:33 PM, Vasily Khoruzhick wrote:
> On Tuesday 30 November 2010 15:12:37 Lars-Peter Clausen wrote:
>
>> Hi
>>
>> While this might work for setting the pullup, what to you want to return in
>> get_pull?
>
> Some custom value like S3C_GPIO_PULL_ENABLED?
Well, or we could use a custom setter and getter functions for configuring the
pull-ups/downs.
>
>> The reason why s3c24xx_gpiocfg_default needs to have {get,set}_pull set at
>> compile time is that the board init code is called before the cpu init
>> code. Which is in my opinion a bit odd and should be fixed instead.
>
> That's because cpu init code is arch_initcall. Kernel calls mdesc-
>> init_machine before any arch_initcall function, not sure if it can be fixed
> without massive rework of existing code.
Both the cpu init code and the machine init code are run at arch_initcall.
>
>> If it is not fixed for whatever reason we could fallback to using some sort
>> of "cpu_is_s3c2442() ? S3C_GPIO_PULL_UP : S3C_GPIO_PULL_DOWN"
>
> AFAIK, Ben does not like runtime CPUtype checks
>
I prefer it over broken code. And you would only need it until the cpu init functions
have been run.
You would add a wrapper like:
s3c24xx_set_pull(...)
{
if (cpu_is_s3c2442())
s3c_gpio_setpull_1down(...)
else
s3c_gpio_setpull_1up(...)
}
And then set s3c24xx_gpiocfg_default.{set,get}_pull to those at compile time. And
once the cpu init code runs replace them with either s3c_gpio_setpull_1down or
s3c_gpio_setpull_1up depending on the cpu.
- Lars
WARNING: multiple messages have this Message-ID (diff)
From: lars@metafoo.de (Lars-Peter Clausen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set, get}_pull callbacks
Date: Tue, 30 Nov 2010 15:53:09 +0100 [thread overview]
Message-ID: <4CF50FD5.1090705@metafoo.de> (raw)
In-Reply-To: <201011301633.05545.anarsoul@gmail.com>
On 11/30/2010 03:33 PM, Vasily Khoruzhick wrote:
> On Tuesday 30 November 2010 15:12:37 Lars-Peter Clausen wrote:
>
>> Hi
>>
>> While this might work for setting the pullup, what to you want to return in
>> get_pull?
>
> Some custom value like S3C_GPIO_PULL_ENABLED?
Well, or we could use a custom setter and getter functions for configuring the
pull-ups/downs.
>
>> The reason why s3c24xx_gpiocfg_default needs to have {get,set}_pull set at
>> compile time is that the board init code is called before the cpu init
>> code. Which is in my opinion a bit odd and should be fixed instead.
>
> That's because cpu init code is arch_initcall. Kernel calls mdesc-
>> init_machine before any arch_initcall function, not sure if it can be fixed
> without massive rework of existing code.
Both the cpu init code and the machine init code are run at arch_initcall.
>
>> If it is not fixed for whatever reason we could fallback to using some sort
>> of "cpu_is_s3c2442() ? S3C_GPIO_PULL_UP : S3C_GPIO_PULL_DOWN"
>
> AFAIK, Ben does not like runtime CPUtype checks
>
I prefer it over broken code. And you would only need it until the cpu init functions
have been run.
You would add a wrapper like:
s3c24xx_set_pull(...)
{
if (cpu_is_s3c2442())
s3c_gpio_setpull_1down(...)
else
s3c_gpio_setpull_1up(...)
}
And then set s3c24xx_gpiocfg_default.{set,get}_pull to those at compile time. And
once the cpu init code runs replace them with either s3c_gpio_setpull_1down or
s3c_gpio_setpull_1up depending on the cpu.
- Lars
next prev parent reply other threads:[~2010-11-30 14:53 UTC|newest]
Thread overview: 65+ 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 ` 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 22:00 ` Lars-Peter Clausen
2010-09-20 23:41 ` [PATCH] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Ben Dooks
2010-09-20 23:41 ` Ben Dooks
2010-09-21 5:28 ` Abdoulaye Walsimou GAYE
2010-09-21 5:28 ` Abdoulaye Walsimou GAYE
2010-11-06 7:54 ` [PATCH v2] " Vasily Khoruzhick
2010-11-06 7:54 ` Vasily Khoruzhick
2010-11-06 16:09 ` Abdoulaye Walsimou GAYE
2010-11-08 9:08 ` Vasily Khoruzhick
2010-11-08 9:08 ` Vasily Khoruzhick
2010-11-08 20:26 ` [PATCH v3] " Vasily Khoruzhick
2010-11-08 20:26 ` Vasily Khoruzhick
2010-11-08 21:41 ` Abdoulaye Walsimou GAYE
2010-11-08 21:41 ` Abdoulaye Walsimou GAYE
2010-11-29 9:56 ` Vasily Khoruzhick
2010-11-29 9:56 ` Vasily Khoruzhick
2010-11-29 10:15 ` Kukjin Kim
2010-11-29 10:15 ` Kukjin Kim
2010-11-29 10:26 ` [PATCH RESEND " Vasily Khoruzhick
2010-11-29 10:26 ` Vasily Khoruzhick
2010-11-30 6:18 ` Kukjin Kim
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 11:53 ` Lars-Peter Clausen
2010-11-30 12:01 ` Vasily Khoruzhick
2010-11-30 12:01 ` Vasily Khoruzhick
2010-11-30 13:12 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Lars-Peter Clausen
2010-11-30 13:12 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set, get}_pull callbacks Lars-Peter Clausen
2010-11-30 14:33 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-11-30 14:33 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set, get}_pull callbacks Vasily Khoruzhick
2010-11-30 14:53 ` Lars-Peter Clausen [this message]
2010-11-30 14:53 ` Lars-Peter Clausen
2010-11-30 15:01 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-11-30 15:01 ` [PATCH RESEND v3] ARM: s3c2442: Setup gpio {set, get}_pull callbacks 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 ` Lars-Peter Clausen
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 ` [PATCH v4] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-11-30 20:05 ` [PATCH v4] ARM: s3c244x: Fix mess with gpio {set, get}_pull callbacks Vasily Khoruzhick
2010-11-30 20:12 ` [PATCH v5] ARM: s3c244x: Fix mess with gpio {set,get}_pull callbacks Vasily Khoruzhick
2010-11-30 20:12 ` 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 7:26 ` Kukjin Kim
2010-12-01 10:17 ` Vasily Khoruzhick
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:05 ` Kukjin Kim
2010-12-01 12:16 ` Vasily Khoruzhick
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 5:28 ` Kukjin Kim
2010-12-01 6:19 ` Vasily Khoruzhick
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 6:29 ` Vasily Khoruzhick
2010-11-30 19:46 ` [PATCH v4] " Vasily Khoruzhick
2010-12-01 5:19 ` [PATCH RESEND v3] ARM: s3c2442: Setup " Kukjin Kim
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
2010-11-29 10:28 ` 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=4CF50FD5.1090705@metafoo.de \
--to=lars@metafoo.de \
--cc=anarsoul@gmail.com \
--cc=awg@embtoolkit.org \
--cc=ben-linux@fluff.org \
--cc=kgene.kim@samsung.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.