* "Read-only file system" error while writing @ 2002-07-30 21:27 Stephen Hui 2002-07-30 22:25 ` David Woodhouse 2002-07-31 15:35 ` Stuart Menefy 0 siblings, 2 replies; 15+ messages in thread From: Stephen Hui @ 2002-07-30 21:27 UTC (permalink / raw) To: linux-mtd Hi, I have a set of STMicro flash chips (M28W320CT) that use the Intel Extended CFI command set (0001), and I'm using kernel 2.4.2. I can partition the chips, lock and unlock the chips, erase the chips and read from (dd) the chips perfectly fine. When I write to the chips using either cat, dd, stdout redirection, or cp, the CFI driver complains of attempting to write to a "Read-only file system", even after unlocking all blocks in the partition and erasing the partition. I can mount /dev/mtdblock*, but mount complains and I still can't put anything into the mounted partition. do_write_buffer() in cfi_cmdset_0001.c is returning the error (EROFS). All I want to do is put a JFFS2 image onto the partition and be able to erase and update the image later. I've scoured the list archive back about a year, but haven't found anything like the problem I'm experiencing. Would it be worth my while to backport cfi_cmdset_0001.c from a later kernel rev (2.4.18 or 2.4.17), besides to get the bug fix in do_write_buffer() (the one posted to this list a little while ago)? I diff'ed the 2.4.2 cfi_cmdset_0001.c with a 2.4.18 and didn't see any really major differences between the two. Or could the bug in do_write_buffer() have something to do with this? Thanks in advance, Stephen. -- "Find out what you've been missing while you've been rebooting Windows NT." -- Infoworld on Linux http://www.ao.com/~regan/penguins/tux.html ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-30 21:27 "Read-only file system" error while writing Stephen Hui @ 2002-07-30 22:25 ` David Woodhouse 2002-07-31 11:53 ` Jörn Engel 2003-05-21 11:33 ` Gordon J Milne 2002-07-31 15:35 ` Stuart Menefy 1 sibling, 2 replies; 15+ messages in thread From: David Woodhouse @ 2002-07-30 22:25 UTC (permalink / raw) To: Stephen Hui; +Cc: linux-mtd gromit1463@mailworks.org said: > When I write to the chips using either cat, dd, stdout redirection, or > cp, the CFI driver complains of attempting to write to a "Read-only > file system", even after unlocking all blocks in the partition and > erasing the partition. I can mount /dev/mtdblock*, but mount > complains and I still can't put anything into the mounted partition. > do_write_buffer() in cfi_cmdset_0001.c is returning the error (EROFS). The only case in which do_write_buffer() should return -EROFS is if the status bit is set which means that the block in question was locked. Try using the MEMUNLOCK ioctl to unlock it? -- dwmw2 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-30 22:25 ` David Woodhouse @ 2002-07-31 11:53 ` Jörn Engel 2003-05-21 11:33 ` Gordon J Milne 1 sibling, 0 replies; 15+ messages in thread From: Jörn Engel @ 2002-07-31 11:53 UTC (permalink / raw) To: David Woodhouse; +Cc: linux-mtd, Stephen Hui On Tue, 30 July 2002 23:25:26 +0100, David Woodhouse wrote: > gromit1463@mailworks.org said: > > When I write to the chips using either cat, dd, stdout redirection, or > > cp, the CFI driver complains of attempting to write to a "Read-only > > file system", even after unlocking all blocks in the partition and > > erasing the partition. I can mount /dev/mtdblock*, but mount > > complains and I still can't put anything into the mounted partition. > > do_write_buffer() in cfi_cmdset_0001.c is returning the error (EROFS). > > The only case in which do_write_buffer() should return -EROFS is if the > status bit is set which means that the block in question was locked. Try > using the MEMUNLOCK ioctl to unlock it? We have had a similar problem with the ECC chips. When doing two writes to the same page, the second write causes an error, leaving the status word with 0x90. The word is not cleared until an explicit clear status register command (0x50) is given. The command set 0001 doesn't know about all this and behaves quite strange. From user space, the _third_ write to flash causes an error condition. The second already failed, but this is unnoticed. At first glance, your chips doesn't appear to have ecc though. Can you please verify, Stephen? Jörn -- You can't tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is. -- Rob Pike ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-30 22:25 ` David Woodhouse 2002-07-31 11:53 ` Jörn Engel @ 2003-05-21 11:33 ` Gordon J Milne 2003-05-21 14:18 ` Thayne Harbaugh 2003-05-22 21:57 ` Gordon J Milne 1 sibling, 2 replies; 15+ messages in thread From: Gordon J Milne @ 2003-05-21 11:33 UTC (permalink / raw) To: linux-mtd Hi David Woodhouse wrote: > gromit1463@mailworks.org said: > >>When I write to the chips using either cat, dd, stdout redirection, or >>cp, the CFI driver complains of attempting to write to a "Read-only >>file system", even after unlocking all blocks in the partition and >>erasing the partition. I can mount /dev/mtdblock*, but mount >>complains and I still can't put anything into the mounted partition. >>do_write_buffer() in cfi_cmdset_0001.c is returning the error (EROFS). > > The only case in which do_write_buffer() should return -EROFS is if the > status bit is set which means that the block in question was locked. Try > using the MEMUNLOCK ioctl to unlock it? I am having exactly the same problem with the same ST part (M28W320CB). I am running uClinux (based on Linux 2.4.20). I modified the do_write_buffer() code to print out the status value that was read back. The value is 0xffff. It seems a bit strange to me that ALL the bist should be 1s. I have tried using "unlock" to unlock the device (/dev/mtd3) but I get the same result. The device (1f:03) is the root device and it has been remounted rw. I verified this by checking /proc/mounts - everything was rw, as expected. My system successfully boots and I can execute commands. It is just the filesystem writes that are not working for me. Any further ideas? Gordon ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2003-05-21 11:33 ` Gordon J Milne @ 2003-05-21 14:18 ` Thayne Harbaugh 2003-05-22 21:57 ` Gordon J Milne 1 sibling, 0 replies; 15+ messages in thread From: Thayne Harbaugh @ 2003-05-21 14:18 UTC (permalink / raw) To: Gordon J Milne; +Cc: linux-mtd [-- Attachment #1: Type: text/plain, Size: 644 bytes --] On Wed, 2003-05-21 at 05:33, Gordon J Milne wrote: > The device (1f:03) is the root device and it has been remounted rw. I > verified this by checking /proc/mounts - everything was rw, as expected. My > system successfully boots and I can execute commands. It is just the > filesystem writes that are not working for me. This is the symptom if you have the incorrect unlock addresses for an LPC flash chip: everything is readable, but nothing can be erased or written. The ST M28W320CB is a CFI part and so I can't guarantee that it's the same thing, but it may be a similar problem. -- Thayne Harbaugh Linux Networx [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 232 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2003-05-21 11:33 ` Gordon J Milne 2003-05-21 14:18 ` Thayne Harbaugh @ 2003-05-22 21:57 ` Gordon J Milne 1 sibling, 0 replies; 15+ messages in thread From: Gordon J Milne @ 2003-05-22 21:57 UTC (permalink / raw) To: linux-mtd > I am having exactly the same problem with the same ST part (M28W320CB). > I am running uClinux (based on Linux 2.4.20). I modified the > do_write_buffer() code to print out the status value that was read back. > The value is 0xffff. It seems a bit strange to me that ALL the bist > should be 1s. > > I have tried using "unlock" to unlock the device (/dev/mtd3) but I get > the same result. > > The device (1f:03) is the root device and it has been remounted rw. I > verified this by checking /proc/mounts - everything was rw, as expected. > My system successfully boots and I can execute commands. It is just the > filesystem writes that are not working for me. I received an e-mail from Guillaume Gourat who pointed out to me that this problem has already been discussed in August 2002 and a patch was listed in the e-mail message. See http://lists.infradead.org/pipermail/linux-mtd/2002-August/005579.html I grabbed the CVS head code for MTD around January 2003 so this patch has clearly not made it into the mainstream source yet. The patch works but is slightly unsightly. Basically it over-rides some of the information coming back from the CFI query. Is this sort of patching of cfp_chip_setup() common? If so, we need a standardised way of implementing these patches - probably a table-driven one. If not, then point patches like this are probably the best way to proceed on a case by case basis. Thanks for listening. Gordon ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-30 21:27 "Read-only file system" error while writing Stephen Hui 2002-07-30 22:25 ` David Woodhouse @ 2002-07-31 15:35 ` Stuart Menefy 2002-07-31 20:24 ` Stephen Hui 2002-08-01 10:35 ` David Woodhouse 1 sibling, 2 replies; 15+ messages in thread From: Stuart Menefy @ 2002-07-31 15:35 UTC (permalink / raw) To: gromit1463; +Cc: linux-mtd Stephen On Tue, 30 Jul 2002 16:27:23 -0500 gromit1463@mailworks.org wrote: > I have a set of STMicro flash chips (M28W320CT) that use the Intel > Extended CFI command set (0001), and I'm using kernel 2.4.2. I can > partition the chips, lock and unlock the chips, erase the chips and read > from (dd) the chips perfectly fine. I had problems getting these devices to work as well, and ended up deciding there were a couple of bugs which had to be worked around. One is a problem in the state machine which handles unlocking returns to read mode when it should stay in command mode, and the other is a simple error in the CFI data, which gets the size of the device wrong! The attached changes work for me. Unfortuntaly my cfi_cmdset_0001.c is pretty heavily modified, so the patch may not apply cleanly. The two changes are for do_lock_onblock() and do_unlock_oneblock(). Note that I was using the bottom bank version, so if you find you also need the work around for the CFI data being wrong, you will probably have to adjust the device ID being checked for. Hope this helps Stuart diff -ru --exclude=CVS mtd.orig/drivers/mtd/chips/cfi_cmdset_0001.c mtd/drivers/mtd/chips/cfi_cmdset_0001.c --- mtd.orig/drivers/mtd/chips/cfi_cmdset_0001.c Tue Nov 27 14:55:12 2001 +++ mtd/drivers/mtd/chips/cfi_cmdset_0001.c Mon Dec 10 17:46:05 2001 @@ -1400,6 +1479,10 @@ ENABLE_VPP(map); cfi_write(map, CMD(0x60), adr); cfi_write(map, CMD(0x01), adr); + +// SIM: I've added this for the ST chip which reverts to read mode. Ahhh +cfi_write(map, CMD(0x70), adr); + chip->state = FL_LOCKING; spin_unlock_bh(chip->mutex); @@ -1550,7 +1621,10 @@ cfi_write(map, CMD(0x60), adr); cfi_write(map, CMD(0xD0), adr); chip->state = FL_UNLOCKING; - + +// SIM: I've added this for the ST chip which reverts to read mode. Ahhh +cfi_write(map, CMD(0x70), adr); + spin_unlock_bh(chip->mutex); schedule_timeout(HZ); spin_lock_bh(chip->mutex); diff -ru --exclude=CVS mtd.orig/drivers/mtd/chips/cfi_probe.c mtd/drivers/mtd/chips/cfi_probe.c --- mtd.orig/drivers/mtd/chips/cfi_probe.c Tue Oct 2 16:05:12 2001 +++ mtd/drivers/mtd/chips/cfi_probe.c Mon Dec 10 17:51:24 2001 @@ -147,6 +145,22 @@ ((unsigned char *)cfi->cfiq)[i] = cfi_read_query(map,base + (0x10 + i)*ofs_factor); } + /* The STMicroelectronics M28W320CB device reports incorrect CFI data. + * Check here and fix up if necessary. + */ +#define VENDOR_STMICROELECTRONICS 0x0020 +#define DEVICE_M28W320CB 0xbb + { + unsigned int vendor, id; + vendor = cfi_read_query(map,base + 0*ofs_factor); + id = cfi_read_query(map,base + 1*ofs_factor); +printk("Vendor %08x id %08x\n", vendor, id); + if ((vendor == VENDOR_STMICROELECTRONICS) && (id == DEVICE_M28W320CB)) { + printk("Detected STM M28W320CB, applying CFI fixups\n"); + ((unsigned char*)cfi->cfiq)[0x31 - 0x10] = 0x3e; + } + } + /* Do any necessary byteswapping */ cfi->cfiq->P_ID = le16_to_cpu(cfi->cfiq->P_ID); -- Stuart Menefy stuart.menefy@st.com STMicroelectronics Ltd ST Intranet: mo.bri.st.com Bristol, UK Rest of the World: www.linuxsh.st.com ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-31 15:35 ` Stuart Menefy @ 2002-07-31 20:24 ` Stephen Hui 2002-08-01 10:31 ` David Woodhouse 2002-08-01 10:35 ` David Woodhouse 1 sibling, 1 reply; 15+ messages in thread From: Stephen Hui @ 2002-07-31 20:24 UTC (permalink / raw) To: linux-mtd; +Cc: stuart.menefy Thanks, Stuart. I applied the patches, but still no go. I did notice that after applying the patches, a slightly new behaviour appears: when I echo "1" > /dev/mtd0 and then dd if=/dev/mtd0 of=partition.dat bs=1k count=1 I see that the partition contains a "1\n", then the rest of the bits are erased as they should be. I know that in this case the do_write_word() function is called based on the mess of printk()s I've sprinkled into the source. When I do these: cp rootimg.jffs2 /dev/mtd0 cat rootimg.jffs2 > /dev/mtd0 dd if=rootimg.jffs2 of=/dev/mtd0 bs=4k they all call do_write_buffer(). I was looking at the specsheet for my STMicro chips, and I didn't see any mention of Write-to-Buffer (command 0xE0) which is in the Intel command set, and issued by do_write_buffer(). Is this command supported on the STMicro chips? Could non-support contribute to my problem? Thanks again, Stephen. :o) On Wed, 2002-07-31 at 10:35, Stuart Menefy wrote: > Stephen > > On Tue, 30 Jul 2002 16:27:23 -0500 > gromit1463@mailworks.org wrote: > > I have a set of STMicro flash chips (M28W320CT) that use the Intel > > Extended CFI command set (0001), and I'm using kernel 2.4.2. I can > > partition the chips, lock and unlock the chips, erase the chips and read > > from (dd) the chips perfectly fine. > > I had problems getting these devices to work as well, and ended up deciding > there were a couple of bugs which had to be worked around. One is a problem > in the state machine which handles unlocking returns to read mode when > it should stay in command mode, and the other is a simple error in the CFI > data, which gets the size of the device wrong! > > The attached changes work for me. Unfortuntaly my cfi_cmdset_0001.c is > pretty heavily modified, so the patch may not apply cleanly. The two > changes are for do_lock_onblock() and do_unlock_oneblock(). > > Note that I was using the bottom bank version, so if you find you also > need the work around for the CFI data being wrong, you will probably have > to adjust the device ID being checked for. > > Hope this helps > > Stuart > -- "Find out what you've been missing while you've been rebooting Windows NT." -- Infoworld on Linux http://www.ao.com/~regan/penguins/tux.html ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-31 20:24 ` Stephen Hui @ 2002-08-01 10:31 ` David Woodhouse 2002-08-01 18:05 ` Stuart Menefy 0 siblings, 1 reply; 15+ messages in thread From: David Woodhouse @ 2002-08-01 10:31 UTC (permalink / raw) To: Stephen Hui; +Cc: linux-mtd, stuart.menefy gromit1463@mailworks.org said: > they all call do_write_buffer(). I was looking at the specsheet for > my STMicro chips, and I didn't see any mention of Write-to-Buffer > (command 0xE0) which is in the Intel command set, and issued by > do_write_buffer(). Is this command supported on the STMicro chips? > Could non-support contribute to my problem? We should be checking the CFI table for buffer-write support and not trying to use it if it's not present. Can you check the datasheet for the chip agrees with the built-in CFI table? -- dwmw2 ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-08-01 10:31 ` David Woodhouse @ 2002-08-01 18:05 ` Stuart Menefy 2002-08-01 18:26 ` Stuart Menefy 0 siblings, 1 reply; 15+ messages in thread From: Stuart Menefy @ 2002-08-01 18:05 UTC (permalink / raw) To: linux-mtd On Thu, 1 Aug 2002 11:31:40 +0100 dwmw2@infradead.org wrote: > gromit1463@mailworks.org said: > > they all call do_write_buffer(). I was looking at the specsheet for > > my STMicro chips, and I didn't see any mention of Write-to-Buffer > > (command 0xE0) which is in the Intel command set, and issued by > > do_write_buffer(). Is this command supported on the STMicro chips? > > Could non-support contribute to my problem? > > We should be checking the CFI table for buffer-write support and not trying > to use it if it's not present. Can you check the datasheet for the chip > agrees with the built-in CFI table? Yes, the CFI data for this field is right (ie the device does not support Block writes). So I don't think this should be the problem. Stuart -- Stuart Menefy stuart.menefy@st.com STMicroelectronics Ltd ST Intranet: mo.bri.st.com Bristol, UK Rest of the World: www.linuxsh.st.com ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-08-01 18:05 ` Stuart Menefy @ 2002-08-01 18:26 ` Stuart Menefy 2002-08-01 19:45 ` Stephen Hui 0 siblings, 1 reply; 15+ messages in thread From: Stuart Menefy @ 2002-08-01 18:26 UTC (permalink / raw) To: linux-mtd On Thu, 1 Aug 2002 19:05:00 +0100 stuart.menefy@st.com wrote: > On Thu, 1 Aug 2002 11:31:40 +0100 > dwmw2@infradead.org wrote: > > gromit1463@mailworks.org said: > > > they all call do_write_buffer(). I was looking at the specsheet for > > > my STMicro chips, and I didn't see any mention of Write-to-Buffer > > > (command 0xE0) which is in the Intel command set, and issued by > > > do_write_buffer(). Is this command supported on the STMicro chips? > > > Could non-support contribute to my problem? > > > > We should be checking the CFI table for buffer-write support and not trying > > to use it if it's not present. Can you check the datasheet for the chip > > agrees with the built-in CFI table? > > Yes, the CFI data for this field is right (ie the device does not support > Block writes). So I don't think this should be the problem. Sorry, I should have read the email more closely before replying. For the M28W320CB which I'm using, the CFI data is correct, in that it reports that the device does not support Block writes. Stephen is using the M28W320CT, which will have different CFI data, so maybe it is reporting that it is supported? The datasheet is no use in this respect, in its listing of the CFI data it gives times for buffer-writes, which the device does not support! Try building cfi_probe.c with DEBUG_CFI set, and post what it reports. Stuart -- Stuart Menefy stuart.menefy@st.com STMicroelectronics Ltd ST Intranet: mo.bri.st.com Bristol, UK Rest of the World: www.linuxsh.st.com ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-08-01 18:26 ` Stuart Menefy @ 2002-08-01 19:45 ` Stephen Hui 2002-08-01 22:37 ` Stuart Menefy 0 siblings, 1 reply; 15+ messages in thread From: Stephen Hui @ 2002-08-01 19:45 UTC (permalink / raw) To: linux-mtd Number of erase regions: 2 Vendor 00000020 id 000000ba Primary Vendor Command Set: 0003 (Intel/Sharp Standard) Primary Algorithm Table at 0035 Alternative Vendor Command Set: 0000 (None) No Alternate Algorithm Table Vcc Minimum: 2.7 V Vcc Maximum: 3.6 V Vpp Minimum: b.4 V Vpp Maximum: c.6 V Typical byte/word write timeout: 16 s Maximum byte/word write timeout: 512 s Typical full buffer write timeout: 16 s Maximum full buffer write timeout: 512 s Typical block erase timeout: 1024 s Maximum block erase timeout: 8192 s Chip erase not supported Device size: 0x400000 bytes (4 Mb) Flash Device Interface description: 0x0001 x16-only asynchronous interface Max. bytes in buffer write: 0x4 Number of Erase Block Regions: 2 Erase Region #0: BlockSize 0x10000 bytes, 63 blocks Erase Region #1: BlockSize 0x2000 bytes, 8 blocks I have 8 chips total, 4MB each. On Thu, 2002-08-01 at 13:26, Stuart Menefy wrote: > Try building cfi_probe.c with DEBUG_CFI set, and post what it reports. -- "Find out what you've been missing while you've been rebooting Windows NT." -- Infoworld on Linux http://www.ao.com/~regan/penguins/tux.html ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-08-01 19:45 ` Stephen Hui @ 2002-08-01 22:37 ` Stuart Menefy 2002-08-02 14:46 ` Stephen Hui 0 siblings, 1 reply; 15+ messages in thread From: Stuart Menefy @ 2002-08-01 22:37 UTC (permalink / raw) To: gromit1463; +Cc: linux-mtd Stephen This is slightly different from what I see with the bottom version of the device: Number of erase regions: 2 Vendor 00000020 id 000000bb Detected STM M28W320CB, applying CFI fixups Primary Vendor Command Set: 0003 (Intel/Sharp Standard) Primary Algorithm Table at 0035 Alternative Vendor Command Set: 0000 (None) No Alternate Algorithm Table Vcc Minimum: 2.7 V Vcc Maximum: 3.6 V Vpp Minimum: 11.4 V Vpp Maximum: 12.6 V Typical byte/word write timeout: 16 µs Maximum byte/word write timeout: 256 µs Full buffer write not supported Typical block erase timeout: 1024 µs Maximum block erase timeout: 8192 µs Chip erase not supported Device size: 0x400000 bytes (4 MiB) Flash Device Interface description: 0x0001 - x16-only asynchronous interface Max. bytes in buffer write: 0x1 Number of Erase Block Regions: 2 Erase Region #0: BlockSize 0x2000 bytes, 8 blocks Erase Region #1: BlockSize 0x10000 bytes, 63 blocks In particular the buffer write is detected as not supported. Try this variant of the patch I'm using: diff -u -r1.66 cfi_probe.c --- cfi_probe.c 2 Oct 2001 15:05:12 -0000 1.66 +++ cfi_probe.c 1 Aug 2002 22:31:11 -0000 @@ -147,6 +145,28 @@ ((unsigned char *)cfi->cfiq)[i] = cfi_read_query(map,base + (0x10 + i)*ofs_factor); } + /* The STMicroelectronics M28W320C[BT] devices report incorrect CFI data. + * Check here and fix up if necessary. + */ +#define VENDOR_STMICROELECTRONICS 0x0020 +#define DEVICE_M28W320CT 0xba +#define DEVICE_M28W320CB 0xbb + { + unsigned int vendor, id; + vendor = cfi_read_query(map,base + 0*ofs_factor); + id = cfi_read_query(map,base + 1*ofs_factor); +printk("Vendor %08x id %08x\n", vendor, id); + if ((vendor == VENDOR_STMICROELECTRONICS) && (id == DEVICE_M28W320CT)) { + printk("Detected STM M28W320CT, applying CFI fixups\n"); + ((unsigned char*)cfi->cfiq)[0x20 - 0x10] = 0x0; + ((unsigned char*)cfi->cfiq)[0x24 - 0x10] = 0x0; + } + if ((vendor == VENDOR_STMICROELECTRONICS) && (id == DEVICE_M28W320CB)) { + printk("Detected STM M28W320CB, applying CFI fixups\n"); + ((unsigned char*)cfi->cfiq)[0x31 - 0x10] = 0x3e; + } + } + /* Do any necessary byteswapping */ cfi->cfiq->P_ID = le16_to_cpu(cfi->cfiq->P_ID); This is not intended as a permanent fix, just to see if it fixes the problem. Stuart On Thu, 1 Aug 2002 14:45:45 -0500 gromit1463@mailworks.org wrote: > Number of erase regions: 2 > Vendor 00000020 id 000000ba > Primary Vendor Command Set: 0003 (Intel/Sharp Standard) > Primary Algorithm Table at 0035 > Alternative Vendor Command Set: 0000 (None) > No Alternate Algorithm Table > Vcc Minimum: 2.7 V > Vcc Maximum: 3.6 V > Vpp Minimum: b.4 V > Vpp Maximum: c.6 V > Typical byte/word write timeout: 16 s > Maximum byte/word write timeout: 512 s > Typical full buffer write timeout: 16 s > Maximum full buffer write timeout: 512 s > Typical block erase timeout: 1024 s > Maximum block erase timeout: 8192 s > Chip erase not supported > Device size: 0x400000 bytes (4 Mb) > Flash Device Interface description: 0x0001 > x16-only asynchronous interface > Max. bytes in buffer write: 0x4 > Number of Erase Block Regions: 2 > Erase Region #0: BlockSize 0x10000 bytes, 63 blocks > Erase Region #1: BlockSize 0x2000 bytes, 8 blocks > > > > I have 8 chips total, 4MB each. > > > On Thu, 2002-08-01 at 13:26, Stuart Menefy wrote: > > Try building cfi_probe.c with DEBUG_CFI set, and post what it reports. > > > -- > "Find out what you've been missing while you've been > rebooting Windows NT." -- Infoworld on Linux > > http://www.ao.com/~regan/penguins/tux.html > > > ______________________________________________________ > Linux MTD discussion mailing list > http://lists.infradead.org/mailman/listinfo/linux-mtd/ -- Stuart Menefy stuart.menefy@st.com STMicroelectronics Ltd ST Intranet: mo.bri.st.com Bristol, UK Rest of the World: www.linuxsh.st.com ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-08-01 22:37 ` Stuart Menefy @ 2002-08-02 14:46 ` Stephen Hui 0 siblings, 0 replies; 15+ messages in thread From: Stephen Hui @ 2002-08-02 14:46 UTC (permalink / raw) To: linux-mtd Looks like it worked, Stuart. It's calling do_write_word() instead of do_write_buffer(). Stephen. On Thu, 2002-08-01 at 17:37, Stuart Menefy wrote: > > This is not intended as a permanent fix, just to see if it fixes the problem. > > Stuart > -- "Find out what you've been missing while you've been rebooting Windows NT." -- Infoworld on Linux http://www.ao.com/~regan/penguins/tux.html ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "Read-only file system" error while writing 2002-07-31 15:35 ` Stuart Menefy 2002-07-31 20:24 ` Stephen Hui @ 2002-08-01 10:35 ` David Woodhouse 1 sibling, 0 replies; 15+ messages in thread From: David Woodhouse @ 2002-08-01 10:35 UTC (permalink / raw) To: Stuart Menefy; +Cc: gromit1463, linux-mtd stuart.menefy@st.com said: > +// SIM: I've added this for the ST chip which reverts to read mode. Ahhh > +cfi_write(map, CMD(0x70), adr); I think that one's relatively harmless -- we can just stick that in unconditionally. > + /* The STMicroelectronics M28W320CB device reports incorrect CFI data. > + * Check here and fix up if necessary. Ug. I think we need to add a generic way to do this kind of thing -- look up mfr and device ID in a table with certain fixups, and we can do the AMD_BOOTLOC_BUG this way too. -- dwmw2 ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2003-05-22 21:57 UTC | newest] Thread overview: 15+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2002-07-30 21:27 "Read-only file system" error while writing Stephen Hui 2002-07-30 22:25 ` David Woodhouse 2002-07-31 11:53 ` Jörn Engel 2003-05-21 11:33 ` Gordon J Milne 2003-05-21 14:18 ` Thayne Harbaugh 2003-05-22 21:57 ` Gordon J Milne 2002-07-31 15:35 ` Stuart Menefy 2002-07-31 20:24 ` Stephen Hui 2002-08-01 10:31 ` David Woodhouse 2002-08-01 18:05 ` Stuart Menefy 2002-08-01 18:26 ` Stuart Menefy 2002-08-01 19:45 ` Stephen Hui 2002-08-01 22:37 ` Stuart Menefy 2002-08-02 14:46 ` Stephen Hui 2002-08-01 10:35 ` David Woodhouse
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox