Intel Fast Boot Block support
alex.kremer at intel.com
Thu Aug 23 11:24:17 EDT 2001
Hi all, I'm resending this one -- not sure it got through.
I have a design question for the code I'm attaching
that adds support for the old Intel's TE28F*B Fast Boot Block series.
The patch is to cvs from Aug, 19. Note that it modifies
the maps/dc21285.c code and Config.in, to which my question below is
As opposed to Intel's 28F*J Strata Flash series the
old Fast Boot Block series is not CFI compliant.
I couldn't even coerce it to work as a jedec.
The Lart (devices/lart.c) uses a chip from this series, but the data bus has
a totally crazy mapping.
So I wrote a module for this series somewhat based on the chips/amd_flash.c
Since I have it mapped via dc21285 I modified maps/dc21285.c to probe using
instead of using cfi_probe. (I also had to modify the write16, since the
code there uses,
IMO, a wrong addr. mask).
I see two problems (not counting the possible bug in dc21285_write*() code)
with what I did:
1. The dc21285.c use of cfi compliant chips is hardcoded (there should maybe
way to try and probe all registered modules for the first one that
or something like that) or should I use CONFIG_ and #ifdef
2. A minor one - the use of a certain chipset for mapping doesn't
necessarily mean that the
address and data lanes are always the same. In addition is there
some framework in plan
that captures the mapping/interleaving and bus width issues separated
for the specific chip support?
Should I maybe write a device specific modules without the maps/chips
separation, since it seems only
to complicate things?
BTW: For some reason for Intel's 28F* chips the most important is the letter
that follows the
size code, so the 28F128J means that it belongs to a Strata Flash line
which is CFI comliant,
while 28F128B belongs to the Fast Boot Block Flash line, which is
really a pre-CFI,
and the CFI code wont work.
A totally unrelated issue:
I need to edit the redboot partition table from linux.
How should I reread it? Removing and loading the modules, doesn't seem like
a nice solution,
especially since the root fs is on flash.
Should I try and add ioctl to the mtdchar/block code, so it would work like
when you use fdisk?
More information about the linux-mtd