Hi Nicola & List,
I have the same problem as you with ifdtool & newlayout.
I tried a modified and also the original layout with same result
------------------------------
The image has changed in size. The old image is 8388608 bytes. The new image is 16777216 bytes. Copy Descriptor 0 (Flash Descriptor) (4096 bytes) from 00000000+00000000:00000fff ( 4096) to 00000000+00000000:00000fff ( 4096) Copy Descriptor 1 (BIOS) (7340032 bytes) from 00500000+00000000:00bfffff ( 7340032) to 0019b000+00365000:00bfffff ( 10899456) Segmentation fault ------------------------------
Were you able to solve the problem?
Best regards,
Elisenda
On 19/08/16 10:49, Nicola Corna wrote:
Hi everyone,
I have a Thinkpad X220t with coreboot and I'm trying to replace the 5MB ME firmware with the small (2MB) one, extracted from a Sandy Bridge Chromebook. The small ME blob works but now I want to reclaim the free space by modifying the Intel descriptor, partly following the x220 guide (https://www.coreboot.org/Board:lenovo/x220#Bigger_SPI_ROM).
If I extract the layout and modify it from
00000000:00000fff fd 00500000:007fffff bios 00003000:004fffff me 00001000:00002fff gbe 00fff000:00000fff pd 00fff000:00ffffff res1 00fff000:00ffffff res2 00fff000:00ffffff res3 00000000:00ffffff ec
to
00000000:00000fff fd 00183000:007fffff bios 00003000:00182fff me 00001000:00002fff gbe 00fff000:00000fff pd 00fff000:00ffffff res1 00fff000:00ffffff res2 00fff000:00ffffff res3 00000000:00ffffff ec
ifdtool --newlayout fails with "Region would overlap." (gdb shows me that the overlapping regions are fd and ec). If I remove the overlap exit, ifdtool segfaults with this output:
File coreboot.rom is 8388608 bytes Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. Regions would overlap. The image has changed in size. The old image is 8388608 bytes. The new image is 16777216 bytes. Copy Descriptor 0 (Flash Descriptor) (4096 bytes) from 00000000+00000000:00000fff ( 4096) to 00000000+00000000:00000fff ( 4096) Copy Descriptor 1 (BIOS) (3145728 bytes) from 00500000+00000000:007fffff ( 3145728) to 00500000+00000000:007fffff ( 3145728) Copy Descriptor 2 (Intel ME) (5230592 bytes) from 00003000+00000000:004fffff ( 5230592) to 00003000+00000000:004fffff ( 5230592) Copy Descriptor 3 (GbE) (8192 bytes) from 00001000+00000000:00002fff ( 8192) to 00001000+00000000:00002fff ( 8192) Copy Descriptor 5 (Reserved) (4096 bytes) from 00fff000+00000000:00ffffff ( 4096) to 00fff000+00000000:00ffffff ( 4096) [1] 8451 segmentation fault ../util/ifdtool/ifdtool --newlayout layout.txt coreboot.rom
If I use an unmodified layout as newlayout the result is the same (overlap + segfault). Suggestions? Thanks
Nicola Corna