MTD, 2.2.18 and DT28F320 write problemms

Michal Schulz mschulz at
Tue Apr 9 12:15:30 EDT 2002

Hello Folks!

I have managed to compile MTD taken directly from cvs with 2.2.18
kernel. There were some problemms with both mtd and jffs. I have linked
them together with kernel.

JFFS works fine, the system (386EX with 2.5MB of RAM and 4MB Physycally
mapped flash) boots properly, but I have problemms with writting to the
FLash. Every time I try to do it i get:

SR.4 or SR.5 bits set in buffer write (status 98). Clearing.

and nothing more happes. Please note, that flash is properly
detected. Anyone has noticed similar behaviour? Anyone knows how can I 
write to my flash?

Here is some output with debug level 3:

physmap flash device: 400000 at 3400000
Number of erase regions: 1
Primary Vendor Command Set: 0001 (Intel/Sharp Extended)
Primary Algorithm Table at 0031
Alternative Vendor Command Set: 0000 (None)
No Alternate Algorithm Table
Vcc Minimum: 3.0 V
Vcc Maximum: 5.5 V
Vpp Minimum: 3.0 V
Vpp Maximum: 5.5 V
Typical byte/word write timeout: 16 ľs
Maximum byte/word write timeout: 256 ľs
Typical full buffer write timeout: 64 ľs
Maximum full buffer write timeout: 1024 ľs
Typical block erase timeout: 512 ľs
Maximum block erase timeout: 8192 ľs
Typical chip erase timeout: 32768 ľs
Maximum chip erase timeout: 524288 ľs
Device size: 0x400000 bytes (4 MiB)
Flash Device Interface description: 0x0002
  - supports x8 and x16 via BYTE# with asynchronous interface
Max. bytes in buffer write: 0x20
Number of Erase Block Regions: 1
  Erase Region #0: BlockSize 0x10000 bytes, 64 blocks
  Feature/Command Support: 000F
     - Chip Erase:         supported
     - Suspend Erase:      supported
     - Suspend Program:    supported
     - Legacy Lock/Unlock: supported
     - Queued Erase:       unsupported
     - Instant block lock: unsupported
     - Protection Bits:    unsupported
     - Page-mode read:     unsupported
     - Synchronous read:   unsupported
  Supported functions after Suspend: 01
     - Program after Erase Suspend: supported
  Block Status Register Mask: 0003
     - Lock Bit Active:      yes
     - Valid Bit Active:     yes
  Vcc Logic Supply Optimum Program/Erase Voltage: 0.0 V
  Vpp Programming Supply Optimum Program/Erase Voltage: 0.0 V
Using buffer write method
mtd: Giving out device 0 to Physically mapped flash

With best regards,

Michal Schulz

More information about the linux-mtd mailing list