Fixup Intel flash that powers up locked
rgadams at cox.net
Tue Apr 26 16:54:38 EDT 2005
On Wed, 2005-04-13 at 09:59 -0400, linux-mtd-
request at lists.infradead.org
> Message: 2
> Date: Tue, 12 Apr 2005 18:03:15 -0700
> From: Todd Poynor <tpoynor at mvista.com>
> Subject: Fixup Intel flash that powers up locked
> Any comments on whether this is or is not the way to go appreciated.
What I have done when I have encountered this Intel "feature" of their
version "K" of their stataFlash devices is to unlock all sectors in the
boot code. This is done before the kernel even loads, so the kernel
doesn't even know it's not using the "J" version of the part (the device
the driver was written for). The boot code reads the device ID register
and if it's not a "J" version it unlocks all the sectors. I had to do
this anyhow in the boot code since my boot code needs to write to FLASH.
There are several reasons I feel this is a better approach to address
the Intel "feature" the most important reason is the KISS philosophy.
Why add all the complexity to the kernel when it can be done simply in
the boot code and the kernel doesn't even know (or need to know) the
joys of these version differences of the FLASH chip on the board. It
just needs to now that it can talk to either the "J" or "K" version with
the same code. If you don't do the boot code and have a problem with
this dependency on non kernel code, you can always add it to head.s,
headxxxx.s, or some board specific code that runs before the file system
(or any write to FLASH) is used.
NOTE:: Intel is obsoleting the "J" part and selling the "K" part as a
direct replacement. So if you have a product in production that uses the
Intel StrataFLASH device you may want to address this "feature" before
you get the call that production has stopped (accompanied by more help
from management they you can imagine).
rick at thePTRgroup.com
More information about the linux-mtd