From: Dirk Behme <dirk.behme@de.bosch.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] mx6: mx6qsabrelite/nitrogen6x: Fix use of gpio number in SF chip select
Date: Thu, 30 May 2013 12:50:10 +0200 [thread overview]
Message-ID: <51A72EE2.2040400@de.bosch.com> (raw)
In-Reply-To: <1369908169-11310-1-git-send-email-andrew_gabbasov@mentor.com>
On 30.05.2013 12:02, Andrew Gabbasov wrote:
> The number of gpio signal is packed inside CONFIG_SF_DEFAULT_CS macro
> (shifted and or'ed with chip select), so it's incorrect to pass
> that macro directly as an argument to gpio_direction_output() call.
> The gpio number should be extracted (shifted back) before that.
>
> Signed-off-by: Andrew Gabbasov <andrew_gabbasov@mentor.com>
> ---
> board/boundary/nitrogen6x/nitrogen6x.c | 2 +-
> board/freescale/mx6qsabrelite/mx6qsabrelite.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c
> index cc071d6..b588ac2 100644
> --- a/board/boundary/nitrogen6x/nitrogen6x.c
> +++ b/board/boundary/nitrogen6x/nitrogen6x.c
> @@ -342,7 +342,7 @@ iomux_v3_cfg_t const ecspi1_pads[] = {
>
> void setup_spi(void)
> {
> - gpio_direction_output(CONFIG_SF_DEFAULT_CS, 1);
> + gpio_direction_output(CONFIG_SF_DEFAULT_CS >> 8, 1);
> imx_iomux_v3_setup_multiple_pads(ecspi1_pads,
> ARRAY_SIZE(ecspi1_pads));
> }
> diff --git a/board/freescale/mx6qsabrelite/mx6qsabrelite.c b/board/freescale/mx6qsabrelite/mx6qsabrelite.c
> index 9f9cac8..8b71e03 100644
> --- a/board/freescale/mx6qsabrelite/mx6qsabrelite.c
> +++ b/board/freescale/mx6qsabrelite/mx6qsabrelite.c
> @@ -312,7 +312,7 @@ iomux_v3_cfg_t const ecspi1_pads[] = {
>
> void setup_spi(void)
> {
> - gpio_direction_output(CONFIG_SF_DEFAULT_CS, 1);
> + gpio_direction_output(CONFIG_SF_DEFAULT_CS >> 8, 1);
> imx_iomux_v3_setup_multiple_pads(ecspi1_pads,
> ARRAY_SIZE(ecspi1_pads));
> }
To my understanding, above change is correct, but not complete ;)
The question is "why has it worked with the wrong setting and nobody
ever noticed that its wrong?"
To my understanding the answer is "because the SPI driver does it
correctly":
http://git.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=blob;f=drivers/spi/mxc_spi.c;h=5bed858787f610a9c9a46bb2214665a51d60a9e9;hb=refs/heads/master#l376
So IMHO the gpio_direction_output() above can be removed completely.
Best regards
Dirk
next prev parent reply other threads:[~2013-05-30 10:50 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-30 10:02 [U-Boot] [PATCH] mx6: mx6qsabrelite/nitrogen6x: Fix use of gpio number in SF chip select Andrew Gabbasov
2013-05-30 10:50 ` Dirk Behme [this message]
2013-05-30 11:32 ` Gabbasov, Andrew
2013-05-30 11:50 ` Dirk Behme
2013-05-30 14:36 ` Gabbasov, Andrew
2013-05-30 14:50 ` Gabbasov, Andrew
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=51A72EE2.2040400@de.bosch.com \
--to=dirk.behme@de.bosch.com \
--cc=u-boot@lists.denx.de \
/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.