From: Philippe De Muyter <phdm@macqel.be>
To: Nicolas Pitre <nico@fluxnic.net>
Cc: linux-mtd@lists.infradead.org, Artem Bityutskiy <dedekind1@gmail.com>
Subject: Re: [PATCH] mtd: Apply Numonyx Axcell P33/P30 workaround for Lock/Unlock bug.
Date: Thu, 21 Oct 2010 21:34:41 +0200 [thread overview]
Message-ID: <20101021193441.GA17855@frolo.macqel> (raw)
In-Reply-To: <alpine.LFD.2.00.1010211226120.2764@xanadu.home>
Hello Nicolas,
On Thu, Oct 21, 2010 at 12:32:02PM -0400, Nicolas Pitre wrote:
> On Thu, 21 Oct 2010, Artem Bityutskiy wrote:
>
> > On Thu, 2010-10-21 at 11:33 +0200, Philippe De Muyter wrote:
> > > On Thu, Oct 21, 2010 at 11:39:58AM +0300, Artem Bityutskiy wrote:
> > > > On Tue, 2010-10-19 at 16:24 +0200, Philippe De Muyter wrote:
> > > > > Some flash chips have a small but annoying bug, documented in
> > > > > "Numonyx Axcell P33/P30 256-Mbit Specification Update"
> > > > >
> > > > > It states :
> > > > > When customer uses [...] block unlock, the block lock status might
> > > > > be altered inadvertently. Lock status might be set to either 01h
> > > > > or 03h unexpectedly (00h as expected data), which leads to
> > > > > program/erase failure on certain blocks.
> > > > >
> > > > > A workaround is given, (summary : issue a "Read Lock Status" before
> > > > > the "Lock" or "Unlock" command) which I have applied and tested
> > > > > with success.
> > > > >
> > > > > Signed-off-by: Philippe De Muyter <phdm@macqel.be>
> > > >
> > > > Is this Numonyx-specific issue? Should there be some kind of "if
> > > > (numonyx)" statement?
> > >
> > > This is clearly a bug specific to some Numonyx flashes.
> > > My chips have Manufacturer ID: 0x89, Device ID: 0x881B, but there are
> > > other chips in the same family. The errata
> > > http://www.numonyx.com/Documents/Specification%20Updates/509003_P3X_65nm_3V_256Mbit_Discrete.pdf does not list the ManufacturerIDs/DeviceIDs of the affected
> > > chips.
> >
> > CCed Nicolas correctly.
> >
> > Anyway, if this affects only subset of chips, it make sense to make this
> > quirk conditional, because this might affect boot speed, e.g., if some
> > systems unlock all blocks on boot-up.
>
> That is probably quite unlikely to make a difference given that there is
> no result delay involved.
>
> However, does the erratum workaround imply that the status actually has
> to be read? In other words, can you simply issue CMD 90 without calling
> cfi_read_query()?
Here is the relevant excerpt of the errata :
Workaround: If the interval between 60h and its subsequent command
can be guaranteed within 20us, Option I is recommended,
otherwise Option II (involves hardware) should be selected.
Option I: The table below lists the detail command sequences:
Command
Data bus Address bus Remarks
Sequence
1 90h Block Address
Read Lock Status
2 Read Block Address + 02h
(2)(3) (1)
3 60h Block Address
(2)(3) (1) Lock/Unlock/RCR Configuration
4 D0h/01h/03h Block Address
Notes:
(1) Block Address refers to RCR configuration data only when the 60h
command sequence is used to set RCR register combined with 03h
subsequent command.
(2) For the third and fourth command sequences, the Block Address must
be the same.
(3) The interval between 60h command and its subsequent D0h/01h/2Fh/03h
commands should be less than 20us.
Philippe
--
Philippe De Muyter phdm at macqel dot be Tel +32 27029044
Macq Electronique SA rue de l'Aeronef 2 B-1140 Bruxelles Fax +32 27029077
prev parent reply other threads:[~2010-10-21 19:35 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-19 14:24 [PATCH] mtd: Apply Numonyx Axcell P33/P30 workaround for Lock/Unlock bug Philippe De Muyter
2010-10-21 8:39 ` Artem Bityutskiy
2010-10-21 9:33 ` Philippe De Muyter
2010-10-21 10:29 ` Artem Bityutskiy
2010-10-21 16:32 ` Nicolas Pitre
2010-10-21 19:34 ` Philippe De Muyter [this message]
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=20101021193441.GA17855@frolo.macqel \
--to=phdm@macqel.be \
--cc=dedekind1@gmail.com \
--cc=linux-mtd@lists.infradead.org \
--cc=nico@fluxnic.net \
/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).