Erase Sector Size
Kremer, Alex
alex.kremer at intel.com
Tue Aug 21 07:37:45 EDT 2001
Hi all,
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
related.
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
code.
Since I have it mapped via dc21285 I modified maps/dc21285.c to probe using
my module
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
be a
way to try and probe all registered modules for the first one that
reports success,
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?
Kreso
-----Original Message-----
From: David Woodhouse [mailto:dwmw2 at infradead.org]
Sent: Tue, August 21, 2001 9:33 AM
To: Ashok M Padmanaban
Cc: MTD for Linux; JFFS mailing list
Subject: Re: Erase Sector Size
ashokmp at sasken.com said:
> Iam using intels 28F128 Strata flash, According to its data sheet its
> erase sector size is 128KB. But with 2.4.2 kernel + rmk2 (patch,diff)
> + mtd patch , the erase sector size is 256KB.
It's not configurable. You probably have two 16-bit devices arranged in a
pair to give a 32-bit data path - which doubles the effective erase size
because it doesn't make sense to erase one half at a time.
We just need to fix JFFS2 so it isn't so greedy.
--
dwmw2
To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo at axis.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mtd-cvs-2001-08-19-intel_bb.patch
Type: application/octet-stream
Size: 34079 bytes
Desc: not available
Url : http://lists.infradead.org/pipermail/linux-mtd/attachments/20010821/42787291/attachment.obj
More information about the linux-mtd
mailing list