在 2013年4月2日 星期二 20:40:39,Stefan Tauner 写道: > On Wed, 03 Apr 2013 00:11:11 +0800 > > Chi Zhang <[email protected]> wrote: > > The programmer is my newly built serprog with STM32 MCU. Please refer to > > https://github.com/dword1511/serprog-stm32vcp . > > Nice stuff :) What was the motivation for that project? > Should we add it to http://flashrom.org/Serprog ?
At first I built a serprog with ATMEGA8L. But that one was slow and requires a UART to USB bridge and so some extra wirings. As I remember there was a STM32 USB virtual COM port example, I decided to build a serprog without a physical UART and aim at high speed. You can put it on the wiki page if you like, I will be very proud of it :) > > > These flash chips are first bought to test the programmer rather than > > flashrom itself :) The programmer has been verified by me with a > > commercial CH341A-based programmer, and a few bricks as well :) > > > > Some performance information about flashrom with these chips can be found > > at: https://github.com/dword1511/serprog-stm32vcp/blob/master/PERFORMANCE > > (btw, SST25VF040B is really slow at writing! Is it supposed to be this > > slow?) > I think the problem is the AAI write mode. It requires a lot of tiny > communication steps and this is were serprog, CDC and USB are really bad > at... (long round trip times). > I see. Thanks. > > The pasted logs are organized in probe-write-read-erase sequences. > > > > AT25F512A: http://paste.flashrom.org/view.php?id=1569 > > Added to my tested_stuff branch. > > > AT26DF161A: http://paste.flashrom.org/view.php?id=1570 > > That one needs some further analysis: > "Some block protection in effect, disabling... Block protection could > not be disabled!" > Saw that too. But interestingly write and erase still work. Maybe because nWP is pulled high? $ flashrom -p serprog:dev=/dev/ttyACM0:4000000,spispeed=36000000 -E ...... $ flashrom -p serprog:dev=/dev/ttyACM0:4000000,spispeed=36000000 -r tmp ...... $ hd tmp 00000000 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| * 00200000 $ flashrom -p serprog:dev=/dev/ttyACM0:4000000,spispeed=36000000 -w rand2mb.bin ...... $ flashrom -p serprog:dev=/dev/ttyACM0:4000000,spispeed=36000000 -r tmp ...... $ md5sum rand2mb.bin tmp 31db08a08c250f8848e361271a8d8b4d rand2mb.bin 31db08a08c250f8848e361271a8d8b4d tmp $ flashrom -p serprog:dev=/dev/ttyACM0:4000000,spispeed=36000000 -E ...... $ flashrom -p serprog:dev=/dev/ttyACM0:4000000,spispeed=36000000 -r tmp ...... $ hd tmp 00000000 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| * 00200000 > > EN25F05: http://paste.flashrom.org/view.php?id=1571 > > Added to my tested_stuff branch. > > > MX25L12845E(mistaken as 'MX25L12805(D)'): > > http://paste.flashrom.org/view.php?id=1572 > > Macronix really likes to share IDs... we need to look at the 45 series > more closely. > > > Pm25LV010A: http://paste.flashrom.org/view.php?id=1573 > > Added to my "Refine PMC Pm25LV series" patch. > http://patchwork.coreboot.org/patch/3926/ > > You probably want to take a look at this patch too as it adds support > for the Pm25LD512C you have in your performance file: > http://patchwork.coreboot.org/patch/3925/ Will test. > > > SST25VF040B: http://paste.flashrom.org/view.php?id=1574 > > SST25VF040B with REMS: http://paste.flashrom.org/view.php?id=1575 > > M25P05-A: http://paste.flashrom.org/view.php?id=1576 > > All added to my tested_stuff branch. > > Also, there exists a patch set that adds support for the AT45DB161D, > but we have not decided if we want to go with that implementation. > See http://patchwork.coreboot.org/patch/3873/ etc. AT45 have different pinout with 25 series. I will have to add some wirings. > > The two sanyo chips are completely unsupported yet I think... I found them on my hard disk PCB. No plan for testing them though. They are still in use. > > Thanks a lot for your effort! _______________________________________________ flashrom mailing list [email protected] http://www.flashrom.org/mailman/listinfo/flashrom
