Hi TJ,
thanks for your EN29LV800 patches. The caveat mentioned by Sean is indeed something important. Looking at the EN29LV800 datasheet, you'll find the following description: "8 Megabit (1024K x 8-bit / 512K x 16-bit) Flash Memory" This indicates a dual-mode flash, and that means you have to use different addresses for commands depending on whether you're using that chip in 8-bit or 16-bit mode. Table 5 (EN29LV800 Command Definitions) in said datasheet lists command addresses for Word mode and Byte mode. Word mode uses standard JEDEC addresses, but Byte mode uses JEDEC addresses shifted left by 1 bit. These flash chips are wired to 8 bit on x86 mainboards, so you have to pick the command addresses in Byte mode.
On 06.02.2010 10:29, Sean Nelson wrote:
On 2/5/10 8:05 PM, TJ wrote:
On Fri, 2010-02-05 at 18:59 -0800, Sean Nelson wrote:
EN29LV800 is not a JEDEC compatible chip, it uses an odd command sequence like the M29F400BT
Are EON incorrect in the datasheet then, or is there a subtle distinction between what flashrom means with JEDEC and what EON mean?
The datasheet says:
• JEDEC Standard program and erase commands • JEDEC standard DATA polling and toggle bits feature
JEDEC has a 5555/2AAA/5555 command sequence, where as EON uses a AAA/555/AAA. Our code is byte based.
m29f400bt.c is very similar to jedec.c, but it uses JEDEC addresses left shifted by 1 bit, so I think using the functions in that file should mostly work. There might be a need to rewrite the erase/write functions to be more generic (well, to look similar to those in jedec.c instead of hard-coding the eraseblock layout). A good start to copy the flash chip definition from is probably the M29F400BT entry. If you decide to modify your current patch instead, please make sure to adjust the .feature_bits and to remove the .erase line (the latter has been eliminated in latest flashrom).
I hope this explanation was helpful for you.
If possible, please provide one combined patch for the EN29LF800 against latest flashrom, and add your signoff. That makes it easier to review and apply the patch. If you believe the patch is not ready yet, just mention that in the mail and we'll wait with applying and/or do a more thorough review.
Regards, Carl-Daniel