<div dir="ltr"><div><div><div><div><div><div><div><div><div>Hi Stefan.<br><br></div>I am now attempting to write to a flashrom using the layout/region approach. I need to write a region from a 4MB ROM to the beginning of an 8MB ROM.<br>
</div>The region image from the 4MB ROM is 4,128,768 bytes == 0x3f0000 long and this file is called image1.<br>I have defined the 8MB ROM layout in file called romlayout_8MB to be:<br><br></div>000000:3effff main<br></div>
3f0000:7fffff remainder<br><br></div><div>i.e I want to place the contents of file image1 in to the 8MB ROM region defined as main.<br></div><div><br></div>I invoked flashrom as follows:<br><br></div>flashrom -p buspirate_spi:dev=/dev/ttyUSB0,spispeed=250k -l romlayout_8MB -i main -w image1<br>
<br></div>The flash ROM is detected correctly, delay calculated, but then flashrom immediately returns the error:<br></div>"image size doesn't match".<br><br></div>As always, guidance/suggestions gratefully received.<br>
<div><div><div><div><div><div><div><br></div></div></div></div></div></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Feb 6, 2013 at 4:29 AM, Stefan Tauner <span dir="ltr"><<a href="mailto:stefan.tauner@student.tuwien.ac.at" target="_blank">stefan.tauner@student.tuwien.ac.at</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Tue, 5 Feb 2013 14:06:21 -0800<br>
John Gainsborough <<a href="mailto:jgindc1@gmail.com">jgindc1@gmail.com</a>> wrote:<br>
<br>
> With BusPirate (v3a, firmware 5.10) and flashrom (v0.9.5.2, little endian)<br>
> I am attempting to read a region of the flash ROM defined by a ROM layout<br>
> file as in:<br>
><br>
> flashrom -p buspirate_spi:dev=/dev/<br>
> ttyUSB0,spispeed=200k -l romlayout -i region1 -r read file<br>
><br>
> Where file romlayout contains:<br>
><br>
> 003f0000:003fffff region1<br>
><br>
> The flash ROM IC is correctly identified, and region1 is listed as being<br>
> used, however flashrom then proceeds to read all ROM memory, not just the<br>
> area defined by region1.<br>
><br>
> I have run this procedure with flash ROMs:<br>
> Eon EN25Q32 and EN25Q64. also Micronix  MX25L6445<br>
><br>
> Eventually I plan to use this procedure for writing to a defined region.<br>
><br>
> Any help/suggestions gratefully received.<br>
<br>
</div></div>Hello John,<br>
<br>
sorry for the confusion. What you see is perfectly ok and expected (at<br>
least to us, understandably not so much to the everyday user). The<br>
reason is this: the layout and image options are only taken into account<br>
for write operations(!) at the moment. I have created patches to use<br>
them for all other operations too but they were not merged yet (we<br>
really suck at merging stuff, sorry). If you can not or do not want to<br>
extract the required data from the complete image you can take a look<br>
at those patches: <a href="http://patchwork.coreboot.org/user/bundle/37/" target="_blank">http://patchwork.coreboot.org/user/bundle/37/</a><br>
They certainly won't apply to the current HEAD, but you can either use<br>
the old source or I can rebase them to the current one if you prefer it.<br>
<br>
Writing only a part should work though.<br>
<span class="HOEnZb"><font color="#888888">--<br>
Kind regards/Mit freundlichen Grüßen, Stefan Tauner<br>
</font></span></blockquote></div><br></div>