====== Upgrading the ROM on a Cobalt RaQ4 ======
**Do not attempt this with a RaQ550, it will damage it!** ((http://www.osoffice.co.uk/romupdate.html))
**For RaQ3, please see the methods for "Flash without OS"** ((http://www.osoffice.co.uk/romupdate.html)) ((http://wiki.parvi.org/index.php/ROM_Flash_without_OS_Guide))
Installing any mordern OS onto the RaQ GenIII hardware, requires that the RaQ's BOOT ROM is upgraded to a version that supports Linux kernels newer than the Linux 2.4 series. The the StrongBolt((http://www.osoffice.co.uk/)), BlueQuartz and Cobalt-ROM((http://sourceforge.net/projects/cobalt-rom)) projects are the sources for newer BOOT-ROM's. How to update your ROM file is outlined at http://www.dincom.co.uk/bq/rom.php and at the StrogBolt OS pages (http://www.osoffice.co.uk/romupdate.html).
Basically, you need a running OS on your RaQ before you start. This is because the flashtool((http://www.dincom.co.uk/bq/centosbqfiles/mirror/flashtool/)) needs to be run on the actual hardware. If you do not have an operational original OS on disk, using the Strongbolt CDROM, or other means of net-booting __may__ get you to your goal.
If not, and you're not afraid to brick your hardware, you may take a look at http://wiki.parvi.org/index.php/ROM_Flash_without_OS_Guide.
Anyways, please do read http://www.dincom.co.uk/bq/rom.php before proceeding. The procedure used below is basically a copy of the process outlined there, but without the very useful warnings and information.
Assuming we have an operational disk- or net-booted RaQ4, the following steps are needed to upgrade the ROM.
* Boot up, and log in as root. Preferably, log in using the serial console, to be able to see the boot process later on.
* Download the appropriate ROM file:
* The RaQ4 has a 1MB ROM chip
* Using [[http://www.dincom.co.uk/bq/centosbqfiles/mirror/cobalt.rom-2.9.34.img|cobalt.rom-2.9.34.img]] is a safe ROM, but not the latest.
* Preferred ROM, but most likely to fail is [[http://www.dincom.co.uk/bq/centosbqfiles/mirror/cobalt-2.10.3-ext3-1M.rom|2.10.3-ext3-1M.rom]].
* I download my ROM files from http://www.dincom.co.uk/bq/centosbqfiles/mirror/ as the "official" locations are either down, moved or difficult to get at...
* Download [[http://www.dincom.co.uk/bq/centosbqfiles/mirror/flashtool/|flashtool]]. I have never had issues with the one at dincom.
* Make your flashtool executable:
chmod 777 flashtool
* Test that flashtool works correctly on your RaQ by backing up the old ROM. Doing so is __very__ recomended anyway, as you __may__ be able to restore it, in the event of a failed flashtool run:
./flashtool -v -r >original.rom
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: Intel E28F008S5 1MB
./flashtool: reading page 0
./flashtool: reading page 1
./flashtool: reading page 2
./flashtool: reading page 3
./flashtool: reading page 4
./flashtool: reading page 5
./flashtool: reading page 6
./flashtool: reading page 7
./flashtool: reading page 8
./flashtool: reading page 9
./flashtool: reading page 10
./flashtool: reading page 11
./flashtool: reading page 12
./flashtool: reading page 13
./flashtool: reading page 14
./flashtool: reading page 15
./flashtool: flushing buffers
* Perform the ROM upgrade:
./flashtool -v -w cobalt.rom-2.9.34.img
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: Intel E28F008S5 1MB
./flashtool: writing page 0
./flashtool: buffer page 0 does not exist - creating it
./flashtool: writing page 1
./flashtool: buffer page 1 does not exist - creating it
./flashtool: writing page 2
./flashtool: buffer page 2 does not exist - creating it
./flashtool: writing page 3
./flashtool: buffer page 3 does not exist - creating it
./flashtool: writing page 4
./flashtool: buffer page 4 does not exist - creating it
./flashtool: writing page 5
./flashtool: buffer page 5 does not exist - creating it
./flashtool: writing page 6
./flashtool: buffer page 6 does not exist - creating it
./flashtool: writing page 7
./flashtool: buffer page 7 does not exist - creating it
./flashtool: writing page 8
./flashtool: buffer page 8 does not exist - creating it
./flashtool: writing page 9
./flashtool: buffer page 9 does not exist - creating it
./flashtool: writing page 10
./flashtool: buffer page 10 does not exist - creating it
./flashtool: writing page 11
./flashtool: buffer page 11 does not exist - creating it
./flashtool: writing page 12
./flashtool: buffer page 12 does not exist - creating it
./flashtool: writing page 13
./flashtool: buffer page 13 does not exist - creating it
./flashtool: writing page 14
./flashtool: buffer page 14 does not exist - creating it
./flashtool: writing page 15
./flashtool: buffer page 15 does not exist - creating it
./flashtool: flushing buffers
./flashtool: flushing block 0 to ROM... verifying... done
./flashtool: flushing block 1 to ROM... verifying... done
./flashtool: flushing block 2 to ROM... verifying... done
./flashtool: flushing block 3 to ROM... verifying... done
./flashtool: flushing block 4 to ROM... verifying... done
./flashtool: flushing block 5 to ROM... verifying... done
./flashtool: flushing block 6 to ROM... verifying... done
./flashtool: flushing block 7 to ROM... verifying... done
./flashtool: flushing block 8 to ROM... verifying... done
./flashtool: flushing block 9 to ROM... verifying... done
./flashtool: flushing block 10 to ROM... verifying... done
./flashtool: flushing block 11 to ROM... verifying... done
./flashtool: flushing block 12 to ROM... verifying... done
./flashtool: flushing block 13 to ROM... verifying... done
./flashtool: flushing block 14 to ROM... verifying... done
./flashtool: flushing block 15 to ROM... verifying... done
You should now have an upgraded ROM installed. With the serial console attached, go ahead and reboot your RaQ, and note that the new ROM version is being used.