public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCHv3] mtd: sf: Add CONFIG_SPI_N25Q256A_RESET for software-reset
Date: Sun, 10 May 2015 19:53:46 +0200	[thread overview]
Message-ID: <20150510175346.GB28291@amd> (raw)
In-Reply-To: <CAD6G_RTKOY-+oKtSSSeK7D70xesOmgszkb=yEBpdLqmy7DaaCQ@mail.gmail.com>

On Sun 2015-05-10 17:54:01, Jagan Teki wrote:
> On 10 May 2015 at 16:19, Pavel Machek <pavel@denx.de> wrote:
> > On Sun 2015-05-10 11:15:41, Pavel Machek wrote:
> > Add reset for N25Q256A SPI NOR, as U-Boot SPL 2013-socfpga (only
> > version working on that board) sets 4-byte addressing mode.
> >
> > Signed-off-by: Pavel Machek <pavel@denx.de>
> >
> > ---
> > Diff to v3: Marek insists this is Micron specific, so lets rename the
> > config option.
> >
> > diff --git a/README b/README
> > index ee65fdb..69f9e5b 100644
> > --- a/README
> > +++ b/README
> > @@ -2775,6 +2775,10 @@ CBFS (Coreboot Filesystem) support
> >                 Timeout for waiting until spi transfer completed.
> >                 default: (CONFIG_SYS_HZ/100)     /* 10 ms */
> >
> > +               CONFIG_SPI_MICRON_RESET
> > +               Reset SPI NOR flash. Needed when preloader sets it to 4-byte
> > +               mode, for example.
> > +
> >  - FPGA Support: CONFIG_FPGA
> >
> >                 Enables FPGA subsystem.
> > diff --git a/drivers/mtd/spi/sf_probe.c b/drivers/mtd/spi/sf_probe.c
> > index 201471c..6b39ce8 100644
> > --- a/drivers/mtd/spi/sf_probe.c
> > +++ b/drivers/mtd/spi/sf_probe.c
> > @@ -347,6 +348,28 @@ int spi_flash_probe_slave(struct spi_slave *spi, struct spi_flash *flash)
> >                 }
> >         }
> >
> > +#ifdef CONFIG_SPI_MICRON_RESET
> > +#define CMD_RESET_ENABLE 0x66
> > +#define CMD_RESET_MEMORY 0x99
> > +       /*
> > +        * This is needed for the SoCFPGA booting from SPI NOR flash
> > +        * e.g. (MICRON), as U-Boot SPL 2013-socfpga (only version
> > +        * working on that board) sets 4-byte addressing mode.
> > +        */
> > +       ret = spi_flash_cmd(spi, CMD_RESET_ENABLE, NULL, 0);
> > +       if (ret) {
> > +               printf("SF: Failed issue enable reset command\n");
> > +               goto err_read_id;
> > +       }
> > +
> > +       ret = spi_flash_cmd(spi, CMD_RESET_MEMORY, NULL, 0);
> > +       if (ret) {
> > +               printf("SF: Failed issue reset command\n");
> > +               goto err_read_id;
> > +       }
> > +
> > +       printf("SF: Device software reset\n");
> > +#endif
> >  #ifdef CONFIG_OF_CONTROL
> >         if (spi_flash_decode_fdt(gd->fdt_blob, flash)) {
> >                 debug("SF: FDT decode error\n");
> >
> 
> As per my early comments on this thread, I'm not happy with this approach of
> being added flash specific in generic code by simply added like this.
> 
> I encounter similar issue before and I simply reverted [1]
> http://git.denx.de/?p=u-boot.git;a=commit;h=122d805fd4bd478bb83536348291d34ae648364b
> 
> Please think in a different perceptive like adding any flags to specific vendor
> with specific part, but that also require proper tested.

Ok, could you explain how you'd like to have it solved? Should we just
call spi_flash_cmd() from socfpga-specific code?

But I'm pretty sure similar issue will be encountered on different
boards, so it would be good to have it in shared place. Do you want me
to create sf_probe_micron and move it there?

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

  parent reply	other threads:[~2015-05-10 17:53 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-01 15:13 [U-Boot] [PATCH 0/2 v3] arm: socfpga: Add Cadence QSPI support Stefan Roese
2014-10-01 15:13 ` [U-Boot] [PATCH 1/4 v3] spi: Add Cadence QSPI driver used by SoCFPGA Stefan Roese
2014-10-01 15:13 ` [U-Boot] [PATCH 2/4 v3] arm: socfpga: Add Cadence QSPI support to config header Stefan Roese
2014-10-01 15:13 ` [U-Boot] [PATCH 3/4 v3] arm: socfpga: Don't define CONFIG_SPI_FLASH_QUAD Stefan Roese
2014-10-01 15:13 ` [U-Boot] [RFC PATCH 4/4 v3] mtd: sf: Add CONFIG_SPI_N25Q256A_RESET for software-reset Stefan Roese
2014-10-01 18:25   ` Marek Vasut
2014-10-01 18:57     ` Stefan Roese
2014-10-01 19:04       ` Jagan Teki
2014-10-01 19:25         ` Stefan Roese
2014-10-01 23:07           ` Pavel Machek
2014-10-02  6:13             ` Stefan Roese
2014-10-02  2:47         ` Marek Vasut
2014-10-02  8:40           ` Pavel Machek
2014-10-02 11:23             ` Marek Vasut
2015-04-25 19:48         ` Pavel Machek
2015-04-27 16:35           ` Marek Vasut
2015-05-01  9:01             ` [U-Boot] [PATCH] " Pavel Machek
2015-05-01 14:24               ` Marek Vasut
2015-05-01 14:49                 ` Pavel Machek
2015-05-01 17:26                   ` Marek Vasut
2015-05-10  9:07                     ` Pavel Machek
2015-05-10  9:15                       ` [U-Boot] [PATCHv2] " Pavel Machek
2015-05-10  9:48                         ` Marek Vasut
2015-05-10 10:49                         ` [U-Boot] [PATCHv3] " Pavel Machek
2015-05-10 12:24                           ` Jagan Teki
2015-05-10 16:25                             ` Marek Vasut
2015-05-10 17:43                               ` Pavel Machek
2015-05-11  7:47                                 ` Marek Vasut
2015-05-10 17:53                             ` Pavel Machek [this message]
2015-05-11  7:48                               ` Marek Vasut
2015-05-11  8:05                                 ` Jagan Teki
2015-05-11  8:29                                   ` Pavel Machek
2015-05-11  8:33                                     ` Jagan Teki
2015-05-11  8:39                                       ` Pavel Machek
2015-05-11  8:44                                         ` Jagan Teki
2015-05-11  8:50                                           ` Pavel Machek
2015-05-11  9:05                                             ` Jagan Teki
2015-05-11  9:56                                               ` Pavel Machek
2015-05-11 10:03                                                 ` Jagan Teki
2015-05-15  8:47                                                   ` Pavel Machek
2015-05-15  9:36                                                     ` Marek Vasut
2015-05-15  9:55                                                       ` Pavel Machek
2015-05-10  9:48                       ` [U-Boot] [PATCH] " Marek Vasut
2015-04-25 19:44     ` [U-Boot] [RFC PATCH 4/4 v3] " Pavel Machek
2014-10-01 18:43   ` Jagan Teki
2014-10-03 20:58 ` [U-Boot] [PATCH 0/2 v3] arm: socfpga: Add Cadence QSPI support Marek Vasut

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=20150510175346.GB28291@amd \
    --to=pavel@denx.de \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox