Hi,
I'm also addressing the mailing list now, because i think the last bit is interesting to more people.
On Mon, Mar 2, 2015 at 11:48 PM, The Raven originalraven@hotmail.com wrote:
Hi again
I'd like to know how the "U2" firmware fails, and this flashrom might be better at breaking it and telling what happened: This is how to use that my flashrom branch: git clone git://github.com/urjaman/flashrom flashrom-serprog cd flashrom-serprog git checkout serprog-improvements make ./flashrom .... <same parameters here as you used before ...>
And report me what happened... then, there's a second thing i just made.
Does not compile! I got this: serprog.c: In function ‘serprog_map’: serprog.c:1128:3: error: format ‘%d’ expects argument of type ‘int’, but argument 5 has type ‘size_t’ [-Werror=format=] msg_pwarn(MSGHEADER "incompatible mapping '%s' phys_addr 0x%08X len %d, returning NULL\n", ^ cc1: all warnings being treated as errors make: *** [serprog.o] Fehler 1
Can you tell me whats wrong? Tomorrow i try it again.
Sorry, my compiler was too old and it didnt produce this warning thus i didnt notice it. I think fixed it in my branch, so you can git pull make to try again with the fix. If there are other warnings that get in the way, you can disable -Werror with make WARNERROR=no
and send me all the warnings it produced so i can fix them all. Thanks a lot for reporting this :)
I got a bit carried away reading the serprog-duino firmware code and decided to just see what it'd look like with my frser-* codebase. So, fresh out of the oven, and untested (i tested on my m644p before i converted it for the m328p): https://github.com/urjaman/frser-duino To use it: git clone git://github.com/urjaman/frser-duino cd frser-duino make && make program
(the defaults are for the u2 arduino, eg. ttyACM0 and 115200, i didnt have time to work the makefile magic that hard.)
With luck it might work, but I'm expecting failure. Report where it failed. If its something simple you can fix it too if you want to, just commit it and send me the git format-patch -1 :) If it compiled and programmed, then try the flashrom-serprog again And if that works try the stock flashrom too.
Have tried this with the "normal" flashrom and it seems to work with the "M25P10-A"!!!
Look the "short" log: Found Micron/Numonyx/ST flash chip "M25P10-A" (128 kB, SPI). === This flash part has status UNTESTED for operations: WRITE The test status of this chip may have been updated in the latest development version of flashrom. If you are running the latest development version, please email a report to flashrom@flashrom.org if any of the above operations work correctly for you with this flash chip. Please include the flashrom log file for all operations you tested (see the man page for details), and mention which mainboard or programmer you tested in the subject line. Thanks for your help! Erasing and writing flash chip... Trying erase function 0... 0x000000-0x007fff:E, 0x008000-0x00ffff:E, 0x010000-0x017fff:E, 0x018000-0x01ffff:E Erase/write done. serprog: Output drivers disabled
Done! This was never possible with the "other" serprog code!
And writing of random data: Found Micron/Numonyx/ST flash chip "M25P10-A" (128 kB, SPI). === This flash part has status UNTESTED for operations: WRITE The test status of this chip may have been updated in the latest development version of flashrom. If you are running the latest development version, please email a report to flashrom@flashrom.org if any of the above operations work correctly for you with this flash chip. Please include the flashrom log file for all operations you tested (see the man page for details), and mention which mainboard or programmer you tested in the subject line. Thanks for your help! Reading old flash chip contents... done. Erasing and writing flash chip... Trying erase function 0... 0x000000-0x007fff:W, 0x008000-0x00ffff:W, 0x010000-0x017fff:W, 0x018000-0x01ffff:W Erase/write done. Verifying flash... VERIFIED. serprog: Output drivers disabled
Also done! I think this looks really good! :-) Tomorrow i try the MX25L6445E, let's see what happens!
THX for your help and making things better! :-)
I sent this to the mailing list too because that seems like a report for M25P10-A write tested ok :)