[coreboot] ifdtool change layout and density simultaneously
Trammell Hudson
hudson at trmm.net
Sat Apr 14 14:43:25 CEST 2018
I just noticed that ifdtool doesn't work correctly if the layout and
density are changed simultaneously:
% ./coreboot-4.6/util/ifdtool/ifdtool -n /tmp/layout.txt -D 16 /tmp/test.rom
File /tmp/test.rom is 8388608 bytes
The image has changed in size.
The old image is 8388608 bytes.
The new image is 16777216 bytes.
Copy Descriptor 0 (Flash Descriptor) (65536 bytes)
from 00000000+00000000:0000ffff ( 65536)
to 00000000+00000000:0000ffff ( 65536)
Copy Descriptor 1 (BIOS) (4128768 bytes)
from 00400000+00000000:007effff ( 4128768)
to 00410000+00800000:00ffffff ( 12517376)
Copy Descriptor 2 (Intel ME) (4128768 bytes)
from 00010000+00000000:003fffff ( 4128768)
to 00010000+00000000:003fffff ( 4128768)
Copy Descriptor 4 (Platform Data) (65536 bytes)
from 007f0000+00000000:007fffff ( 65536)
to 00400000+00000000:0040ffff ( 65536)
Writing new image to /tmp/test.rom.new
Setting chip density to 16MB
Writing new image to /tmp/test.rom.new
The resulting file has only the density change; the layout changes have
been discarded. Instead it is necessary to run two commands:
% ./coreboot-4.6/util/ifdtool/ifdtool -n /tmp/layout.txt /tmp/test.rom
File /tmp/test.rom is 8388608 bytes
The image has changed in size.
The old image is 8388608 bytes.
The new image is 16777216 bytes.
Copy Descriptor 0 (Flash Descriptor) (65536 bytes)
from 00000000+00000000:0000ffff ( 65536)
to 00000000+00000000:0000ffff ( 65536)
Copy Descriptor 1 (BIOS) (4128768 bytes)
from 00400000+00000000:007effff ( 4128768)
to 00410000+00800000:00ffffff ( 12517376)
Copy Descriptor 2 (Intel ME) (4128768 bytes)
from 00010000+00000000:003fffff ( 4128768)
to 00010000+00000000:003fffff ( 4128768)
Copy Descriptor 4 (Platform Data) (65536 bytes)
from 007f0000+00000000:007fffff ( 65536)
to 00400000+00000000:0040ffff ( 65536)
Writing new image to /tmp/test.rom.new
% ./coreboot-4.6/util/ifdtool/ifdtool -D 16 /tmp/test.rom.new
File /tmp/test.rom.new is 16777216 bytes
Setting chip density to 16MB
Writing new image to /tmp/test.rom.new.new
--
Trammell
More information about the coreboot
mailing list