On Sat, Jun 07, 2008 at 01:55:50AM +0200, Carl-Daniel Hailfinger wrote:
Hi Jens,
On 07.06.2008 00:39, Jens Kuehnel wrote:
Carl-Daniel Hailfinger schrieb:
I'd like to do that, but the patch was so mangled that I had problems reading it. It looks like you put vendor and device ID together in AMIC_A49LF040A. The vendor ID you want is probably AMIC_ID_NOPREFIX.
OK, I changed that.
Looks really good.
The only remaining question is whether the erase and write functions should be the generic JEDEC functions instead. I haven't tested that and unfortunately I did not have time to read the spec yet.
Simply running "flashrom" with the patch should tell you whether the chip detection works and it is absolutely harmless. We can postpone testing erase and write until you have confirmed chip detection.
I'm testing on an ALIX.2c3, which has the same rom chip:
# ./flashrom Calibrating delay loop... OK. No coreboot table found. Found chipset "AMD CS5536", enabling flash write... OK. Found chip "Amic Technology A49LF040A" (512 KB) at physical address 0xfff80000. === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE Please email a report to flashrom@coreboot.org if any of the above operations work correctly for you with this flash part. Please include the full output from the program, including chipset found. Thank you for your help! === No operations were specified.
-----------------------------------------------------------------------------
So that's good. But running it again flashrom no longer sees the chip!
# ./flashrom -v -r test.rom Calibrating delay loop... OK. No coreboot table found. Found chipset "AMD CS5536", enabling flash write... OK. No EEPROM/flash device found.
# ./flashrom Calibrating delay loop... OK. No coreboot table found. Found chipset "AMD CS5536", enabling flash write... OK. No EEPROM/flash device found.
-----------------------------------------------------------------------------
After a cold reboot, I can run flashrom again, and the image it reads out looks like it could be correct:
# ./flashrom -v -r test.rom Calibrating delay loop... OK. No coreboot table found. Found chipset "AMD CS5536", enabling flash write... OK. Found chip "Amic Technology A49LF040A" (512 KB) at physical address 0xfff80000. === This flash part has status UNTESTED for operations: PROBE READ ERASE WRITE Please email a report to flashrom@coreboot.org if any of the above operations work correctly for you with this flash part. Please include the full output from the program, including chipset found. Thank you for your help! === Reading Flash...done Verifying flash... VERIFIED. littleredbox:/usr/src/flashrom3# v test.rom -rw-r--r-- 1 root src 524288 2008-06-06 23:15 test.rom
-----------------------------------------------------------------------------
And then, no more:
# ./flashrom -v -r test2.rom Calibrating delay loop... OK. No coreboot table found. Found chipset "AMD CS5536", enabling flash write... OK. No EEPROM/flash device found.
Thanks, Ward.