From: hunterd42@gmail.com (David Hunter)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] pxa: Remove unused MFP LPM definition
Date: Tue, 04 May 2010 15:18:34 -0700 [thread overview]
Message-ID: <4BE09D3A.3040100@gmail.com> (raw)
In-Reply-To: <s2yf17812d71004262016xb120ea1j2d0d7dd14ebd3d28@mail.gmail.com>
On 4/26/2010 8:16 PM, Eric Miao wrote:
> Instead of removing this potentially useful low power mode pin status, what
> about the following patch:
I think the name itself is confusing. All of the other MFP_LPM_
definitions state what the pin is going to do: drive high/low, pull
high/low, or float. My (strictly document-derived) understanding of
PXA27x is that you can only choose to drive or float a pin, while with
PXA3xx you can do all of the above. What would MFP_LPM_INPUT do that
MFP_LPM_FLOAT wouldn't?
> commit f5d406d50f924c82ddf469f120fa420f0499d901
> Author: Eric Miao<eric.y.miao@gmail.com>
> Date: Tue Apr 27 11:14:24 2010 +0800
>
> [ARM] pxa: allow MFP_LPM_INPUT to be explicitly specified
>
> Signed-off-by: Eric Miao<eric.y.miao@gmail.com>
>
> diff --git a/arch/arm/mach-pxa/mfp-pxa2xx.c b/arch/arm/mach-pxa/mfp-pxa2xx.c
> index e5b7921..1d1419b 100644
> --- a/arch/arm/mach-pxa/mfp-pxa2xx.c
> +++ b/arch/arm/mach-pxa/mfp-pxa2xx.c
> @@ -81,6 +81,7 @@ static int __mfp_config_gpio(unsigned gpio, unsigned long c)
> PGSR(bank)&= ~mask;
> is_out = 1;
> break;
> + case MFP_LPM_INPUT:
> case MFP_LPM_DEFAULT:
> break;
If I read this correctly, _DEFAULT will, on entry to LPM, change the pin
direction to the one implied by bit 23 (MFP_DIR_IN/MFP_DIR_OUT). For
_INPUT to live up to its name, maybe it should always float the pin,
like this:
+ case MFP_LPM_INPUT:
+ is_out = 0;
+ break;
case MFP_LPM_DEFAULT:
break;
Also, I'm not sure what effect GAFR will have (if any) in LPM. Does the
AF have to be set to GPIO to enable the PGSR/GPDR settings? Your
original patch did just that:
[http://www.spinics.net/lists/arm-kernel/msg55842.html]
> diff --git a/arch/arm/plat-pxa/mfp.c b/arch/arm/plat-pxa/mfp.c
> index be58f9f..b77e018 100644
> --- a/arch/arm/plat-pxa/mfp.c
> +++ b/arch/arm/plat-pxa/mfp.c
> @@ -110,6 +110,7 @@ static const unsigned long mfpr_lpm[] = {
> MFPR_LPM_PULL_LOW,
> MFPR_LPM_PULL_HIGH,
> MFPR_LPM_FLOAT,
> + MFPR_LPM_INPUT,
> };
>
> /* mapping of MFP_PULL_* definitions to MFPR_PULL_* register bits */
This adds a bug, which I've been trying to find the right way to fix.
It's the same case as MFPR_LPM_DEFAULT. Since MFPR_LPM_INPUT = 0,
MFPR[SLEEP_OE_N] will be cleared at LPM, and the pin will be driven low.
(Not a good idea for a "default".) Either MFPR_LPM_FLOAT, _PULL_LOW, or
_PULL_HIGH should be used instead. And only the board code knows enough
to pick the right one for each pin.
I've been working to cobble together a patch to address this in my
spare time, but don't have U-Boot running on Littleton yet. If you know
of a way to get this going -- or something other way of loading the
kernel -- I'd be grateful for the assist. The difference between blob's
idea of bad block management vs. Linux's has me avoiding blob at all costs.
-Dave
next prev parent reply other threads:[~2010-05-04 22:18 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-27 2:46 [PATCH] pxa: Remove unused MFP LPM definition David Hunter
2010-04-27 3:16 ` Eric Miao
2010-05-04 22:18 ` David Hunter [this message]
2010-05-05 0:23 ` Eric Miao
2010-05-05 0:41 ` Marek Vasut
-- strict thread matches above, loose matches on Subject: below --
2010-04-08 22:00 David Hunter
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=4BE09D3A.3040100@gmail.com \
--to=hunterd42@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).