[PATCH] mtd: cfi_cmdset_0001 - fixup for PC28F512P33TFA
Christian Riesch
christian.riesch at gmail.com
Mon Apr 7 01:41:13 PDT 2014
Hi Christoph,
--On April 04, 2014 23:17 +0200 Christoph Fritz <chf.fritz at googlemail.com>
wrote:
> On Wed, 2014-04-02 at 11:04 +0200, Christian Riesch wrote:
>>
>> After reading TN-12-06 I guess the correct order should be
>>
>> 1) 0xff
>> 2) the existing 0xd0/0x70
>> 3) wait 500us
>>
>> right? Could you send a patch of the combination you tried (and that did
>> not work) for discussion?
>
> The board is back on my desk and I did some further promising tests.
Since the board is "on your desk", I guess you did the test at room
temperature, right? Your desk is not cooled down to -40°C, right?
> Test-Patches are below in this mail. To give an overview, this is what
> my current git log looks like:
>
I am adding a few comments to the test cases below, I hope I got it right:
> $ git log --oneline -28
> 1acde12 Revert "TESTHACK 13: -PASSED-"
> 44de693 TESTHACK 13: -PASSED-
disable erase suspend
> 41203f3 Revert "TESTHACK 12: -PASSED-"
> 83c520c TESTHACK 12: -PASSED-
0xff + 1200us delay
> fedac61 Revert "TESTHACK 11: -FAILED-"
> e1f4df2 TESTHACK 11: -FAILED-
0xff + 1000us
> 03b705a Revert "TESTHACK 10: -FAILED-"
> 9810836 TESTHACK 10: -FAILED-
0xff + 900us
> 1ecddf2 Revert "TESTHACK 9: -FAILED-"
> 4dac438 TESTHACK 9: -FAILED-
0xff + 800us
> 42dd94f Revert "TESTHACK 8: -FAILED-"
> 850f605 TESTHACK 8: -FAILED-
0xff + 600us
> 6335821 Revert "TESTHACK 7: -PASSED-"
> 79c3298 TESTHACK 7: -PASSED-
0xff + 1024us
> 80000ee Revert "TESTHACK 6: -FAILED-"
> 0b0079f TESTHACK 6: -FAILED-
some other hack from patchwork
> 315b230 Revert "TESTHACK 5: -FAILED-"
> 0ee67b8 TESTHACK 5: -FAILED-
disable suspend on write
> 304f593 Revert "TESTHACK 4: -FAILED-"
> da72ff8 TESTHACK 4: -FAILED-
0xff+500us
> 9ccb30a Revert "TESTHACK 3: -FAILED-"
> ba6d200 TESTHACK 3: -FAILED-
0xff+500us
> a3b0dc6 Revert "TESTHACK 2: -FAILED-"
> e74d245 TESTHACK 2: -FAILED-
0xff+500us
> 7ec17ff Revert "TESTHACK 1: -FAILED-"
> 42e6185 TESTHACK 1: -FAILED-
0xff+500us added to suspend instead to suspend resume as requested by the
TN from Micron
> 2237c97 Revert "mtd: cfi_cmdset_0001 - fixup for PC28F512P33TFA"
>
> This NOR-flash becomes stable with delay times > 1ms, which is contrary
> to what TN-12-06 says, quote: "In all cases, the maximum delay value is
> 500μs".
At first sight I thought it was quite strange that a delay of 1000us does
not solve the problem, whereas it works fine with 1024us. But then I had a
look at the implementation of cfi_udelay(): Actually,
cfi_udelay(900)/cond_resched() becomes udelay(900), cfi_udelay(1000)
becomes msleep(1), and cfi_udelay(1024) becomes msleep(2).
> Preferably I would go with a cleaned up version of patch "TESTHACK 12",
> after some more stress testings have been passed. What do you think?
You should thoroughly test it at -40°C. This temperature required the
largest delays for the M29EW.
> I now also have a contact to Micron, so I hope they can shed some light
> on this issue.
I am looking forward to their response ;-)
Christian
More information about the linux-mtd
mailing list