---------- Forwarded message ---------- From: Thode, Lucas lthode@unomaha.edu Date: 2010/1/17 Subject: Flashrom report for Intel BOXDP45SG: Intel provided image is 3x size of Flash ROM! To: flashrom@flashrom.org
Link to vendor image (.BIO file): http://downloadcenter.intel.com/confirm.aspx?httpDown=http://downloadmirror....
-- (HTT-Bird@Freenode)
On Monday 18 January 2010 05:17:42 Thode, Lucas wrote:
---------- Forwarded message ---------- From: Thode, Lucas lthode@unomaha.edu Date: 2010/1/17 Subject: Flashrom report for Intel BOXDP45SG: Intel provided image is 3x size of Flash ROM! To: flashrom@flashrom.org
Link to vendor image (.BIO file): http://downloadcenter.intel.com/confirm.aspx?httpDown=http://downloadmirror .intel.com/18047/eng/SG0121.BIO&agr=&ProductID=&DwnldId=18047&strOSs=&OSFul lName=&lang=eng
-- (HTT-Bird@Freenode)
I don't know if it is helpfull, but here is Intel's DOS based iFlash tool and the same .BIO file in one zip file (2.6MB): http://downloadmirror.intel.com/18047/eng/SGP4510H.86A.0121.BI.ZIP
The .BIO file consists mostly of ffff's and 0000's: xxd SG0121.BIO | cut -d " " -f 1-9 | grep "ffff ffff ffff ffff ffff ffff ffff" | wc -l returns 582098
xxd SG0121.BIO | cut -d " " -f 1-9 | grep "0000 0000 0000 0000 0000 0000 0000" | wc -l returns 3411
Manual inspection showed that they come in huge blocks.
Hope you can use this for something.
/Anders
Am Sonntag, den 17.01.2010, 22:17 -0600 schrieb Thode, Lucas:
Link to vendor image (.BIO file): http://downloadcenter.intel.com/confirm.aspx?httpDown=http://downloadmirror....
That image contains two "firmware volumes" (kind of EFI archives) together with a description and a certificate. Each of the firmware volumes is 5.5MB in size, one seems to be for 64 Bit and one for 32 Bit. Probably these images get compressed before being put into the ROM.
To get an estimate for the compressed size (EFI doesn't use gzip, but a different algorithm), I gzipped both firmware volumes and got around 1.3 MB for each. That seems to fit nicely into a 4 MB flash chip.
Regards, Michael Karcher
On Mon, Jan 18, 2010 at 5:40 PM, Michael Karcher < flashrom@mkarcher.dialup.fu-berlin.de> wrote:
Am Sonntag, den 17.01.2010, 22:17 -0600 schrieb Thode, Lucas:
Link to vendor image (.BIO file):
http://downloadcenter.intel.com/confirm.aspx?httpDown=http://downloadmirror....
That image contains two "firmware volumes" (kind of EFI archives) together with a description and a certificate. Each of the firmware volumes is 5.5MB in size, one seems to be for 64 Bit and one for 32 Bit. Probably these images get compressed before being put into the ROM.
To get an estimate for the compressed size (EFI doesn't use gzip, but a different algorithm), I gzipped both firmware volumes and got around 1.3 MB for each. That seems to fit nicely into a 4 MB flash chip.
Now, how do I yank the 64bit firmware volume out of the .BIO file and compress it suitably? Also, where in the Flash ROM would it get written to? (man, they make this complicated :P)
-- (HTT-Bird@Freenode)
Regards, Michael Karcher
On 19.01.2010 20:16, Thode, Lucas wrote:
On Mon, Jan 18, 2010 at 5:40 PM, Michael Karcher wrote:
That image contains two "firmware volumes" (kind of EFI archives) together with a description and a certificate. Each of the firmware volumes is 5.5MB in size, one seems to be for 64 Bit and one for 32 Bit. Probably these images get compressed before being put into the ROM.
To get an estimate for the compressed size (EFI doesn't use gzip, but a different algorithm), I gzipped both firmware volumes and got around 1.3 MB for each. That seems to fit nicely into a 4 MB flash chip.
Now, how do I yank the 64bit firmware volume out of the .BIO file and compress it suitably? Also, where in the Flash ROM would it get written to? (man, they make this complicated :P)
It is also possible that parts of this are meant to be installed on the hard disk. Keep in mind that EFI will load some modules from disk. Worst example is a netbooting module which has to be laoded from disk. Kind of pointless to need a hard disk to boot from network, but that's made possible by the "advanced" EFI design...
Regards, Carl-Daniel
Am Dienstag, den 19.01.2010, 13:16 -0600 schrieb Thode, Lucas:
Now, how do I yank the 64bit firmware volume out of the .BIO file and compress it suitably?
You need to use tools for the EFI stuff. Look for insydehacks. The provided fvdump takes out the firmware volumes, but only if they are 16-byte-aligned, which they are not. I think you need to cut 8 bytes in the beginning to get the right alignment.
You probably need to compress them with the Intel Tiano compression stuff. Source code for compression and decompression functions is available in the EFI Development Kit, but that kit is not designed to build on Linux.
Also, where in the Flash ROM would it get written to? (man, they make this complicated :P)
To know that you have to analyze the current ROM contents or the update program.
Regards, Michael Karcher