Hi,
I am new to this list, and I have a couple of questions. I have an embedded CPU module (Kontron ETX-MGX with a Geode GX1), and I am looking into the possibility of putting linuxbios on it.
The board contains:
* a Geode GX1 CPU * CS5530A I/O companion south bridge * 64 MB RAM * AM29F040B 512 KB flash ROM with Phoenix BIOS * Compact Flash slot on IDE1 master
The flash chip is soldered on the board, so replacing the BIOS chip is no option.
My main question is:
How can I safely flash a new BIOS? I have a BIOS ROM image file, and the Phoenix Phlash utility which allows to restore and update the BIOS. I understand the flash has a boot block which is able to restore a corrupted BIOS. I don't know whether the boot block is protected from erasing and / or reprogramming. I do know that it needs a specialy wired "key" in the serial port to enable reprogramming.
My idea would be to use this utility to put linuxbios in the flash ROM. I would leave the boot block in place so that I am able to restore the original BIOS if things go wrong, or to put in a new version of linuxbios.
Does anyone have experience with this?
What would I need to do to convince Phlash to flash the linuxbios?
Do I need to make changes to linuxbios to accomodate this scheme?
Another question: How do I configure linuxbios to boot a linux kernel from the Compact Flash card? Do I need a specific "payload" program in addition to linuxbios?
Any help is greatly appreciated!
Joep Jansen
-- Frog Navigation Systems B.V. mail to: joep@frog.nl Krommewetering 21 URL: http://www.frog.nl 3543AP UTRECHT Tel: (+31) 30 2 440 550 Nederland / the Netherlands Fax: (+31) 30 2 440 700
On Mon, 19 May 2003, Joep Jansen wrote:
Does anyone have experience with this?
we have experience with similar situations. You have to convert the linuxbios romimage into a phoenix romimage. I don't think that is too hard but it does require detective work.
Have a look at the old PHLASH stuff for the l440gx.
Do I need to make changes to linuxbios to accomodate this scheme?
no
How do I configure linuxbios to boot a linux kernel from the Compact Flash card?
on thing at a time. Let's get the build working at all. This second part is easy.
ron
ron minnich wrote:
we have experience with similar situations. You have to convert the linuxbios romimage into a phoenix romimage. I don't think that is too hard but it does require detective work.
Have a look at the old PHLASH stuff for the l440gx
Thanks Ron! I had a look, but I don't understand what these strange*.bi? files are and where they come from? I guess they must be on some Intel Phlash disk. I don't have that.
I have a Phoenix Phlash disk; it contains: * phlash.exe * bios.rom * platform.bin * minidos.sys * crisdisk.bat * makeboot.exe * wincris.exe * wincris.hlp
The BIOS.ROM is a generic bios; I replaced it with the specific BIOS for my ETX Geode board. The "crisdisk.bat" command creates a standalone recovery floppy.
So I think I need to replace the Phoenix BIOS.ROM file by a linuxbios.rom and use the PHLASH program to burn that.
But I guess the PHLASH program will check somehow whether the BIOS.ROM is a genuine Phoenix BIOS ROM image, and will refuse to burn something else.
Am I correct? How can I convince the PHLASH program that it should flash LinuxBios?
Any suggestions are welcome!
Regards,
Joep
-- Frog Navigation Systems B.V. mail to: joep@frog.nl Krommewetering 21 URL: http://www.frog.nl 3543AP UTRECHT Tel: (+31) 30 2 440 550 Nederland / the Netherlands Fax: (+31) 30 2 440 700
On Tue, 20 May 2003, Joep Jansen wrote:
But I guess the PHLASH program will check somehow whether the BIOS.ROM is a genuine Phoenix BIOS ROM image, and will refuse to burn something else.
yes. You need to dump the header (usually 32 bytes) and see what it has that makes it magic. How many bytes long is BIOS.ROM
ron
Joep Jansen wrote:
How can I safely flash a new BIOS?
I have a BIOS ROM image file, and the Phoenix Phlash utility which allows to restore and update the BIOS. I understand the flash has a boot block which is able to restore a corrupted BIOS. I don't know whether the boot block is protected from erasing and / or reprogramming. I do know that it needs a specialy wired "key" in the serial port to enable reprogramming.
The AMF040B does not have any special board level access to protection of sectors. It does allow protection/unprotection of any of the 8 64k sectors present but you have to raise A9 and the other control pins up to Vid which is a minimum of 10.5 volts.
Seems doubtfull they would have some setup to do hardware protection/unprotection but if they set up some sort of protected boot block then they would have to protect the whole 64k in the address boot range. Which would make it kind of difficult to update things.
Where does a geode GX1 boot from? Is it x86 compatible?
The data sheet for the AMF040b are available on the web if you google for them. The info in there should help you figure out what (if any) sectors have be hardware locked.
Another question: How do I configure linuxbios to boot a linux kernel from the Compact Flash card? Do I need a specific "payload" program in addition to linuxbios?
When you get linuxbios loading from phoenix let me know and I'll send you my FAQ/HOWTO which should get you started this.