On 28/01/13 06:59, Olivier Langlois wrote:
Among other things, now that I realized that the bios contains EC code for which no public doc exists, it seems improbable that coreboot ever 'officially' support my hardware as the only way to support it would be to extract the EC code from a vendor BIOS and copy it.
Indeed. But this is a flashrom mailing list; getting flashrom working and doing a coreboot port are two very different issues.
There is no way you can come up with original code without doc or maybe I am not creative enough to see ways.
I have a copy of my vendor BIOS. The file is exactly 2MB so this boosts my confidence level that the flash chip that I saw is the good one.
Good.
I'll study it a little bit to see if I can extract some insights. How about analyzing the vendor flash utility? Can that be useful?
The flash utility will probably be little use. The code to actually access the flash device is probably in the main firmware image.
I was considering getting myself an external programmer. paraflash sounds really cool but unfortunately not very useful with SPI.
From my research for now, my best option seems to be a Bus pirate. It seems like the most versatile choice. On top of being a programmer, you can apparently use it for sniffing and program flash without unsoldering the chip.
Should that be enough or should I consider to mod my board by installing a SOIC-8 socket on my board?
Your choice as to how you want to connect to the device. You may find the socket useful but it is probably not essential.
One last question. Where could I get some info about usual BIOS file format and disassembly tools?
The tool that I have used to decrypt the bios file creates a dump of the BIOS consisting of 20-25 small bin files having a UUID as name. Is this a pure invention of the tool that I have used or UUIDs are really commonly used to delimitate the different BIOS sections?
It is not a BIOS at all but in fact UEFI firmware. UEFI uses UUIDs for various purposes including identifying different drivers etc.
I am using objdump as dissembler. I saw a reference to IDAPRo on flashrom.org. Is there other alternative? For having done some disassembly reading 10-15 years ago, one feature that I really liked from the tool that I did use is that it was replacing/annotating instructions with an address with the string value if the address was pointing on a string.
It was also replacing function address with a symbol name when possible. Those 2 small features made a huge difference in the readability of the output for inexperienced eyes....
IDA is really good. You can probably still find the last version that was free to use on the 'net.
Andrew