RAQCOP = IPCop + Cobalt Raq, Cobalt Raq Firewall Applicance Software, Velociraptor Software Upgrade.
      Home      How To Install      Rom Flash      Download Area      Support Forum     

Flashing the Cobalt ROM on a Raq3 or Raq4 for RaqCop

RaqCop needs the 2.10.3-ext3 Rom

To load the RaqCop Distribution (IpCop and the 2.4 Kernel) on the RaQ hardware, you will need to be running the2.10.3-ext3 rom.
The following procedure assumes you have a working install of the Raq 3/4/550 OS on your appliance.

Because of the hazards and risk of failure, please don't come back if it all goes wrong. This being said if you take the following precautions you shouldn't have a problem.

  • Power the RaQ through a UPS (Uninterruptable Power Supply)
  • Run a 'Console Connection' through the serial port using a null modem cable
    (This also gives you the added visualisation of what's happening during BOOT)
  • FTP the required rom and flashtool files to the RaQ.
  • Backup the original rom file (If the new causes errors, you can reflash the old one)
  • Execute the commands from command line.
  • Using the correct version of the flashtool.

I know that there are .pkg files out there to help with the flash process. However there is nothing like the control you have running the commands and seeing any failure codes while you can still do something about it.

There is also a lot of discussion about the 'Dreaded Intel ROM' Chip. If you find your motherboard has the Intel chip, you don't have to give up. Providing you use the "correct" version of the flashtool you can successfully flash an Intel ROM.

    Info    Although flashing the 2.10.3-ext3 rom can be successful on the Intel EEPROM. I've found that trying to go back to an earlier rom (although successful to flash) causes a number of errors during boot.

There are many versions of flashtool, with these you shouldn't have problems with the AMD ROMS. However if you have a Intel ROM you must ONLY use the version from Tim Hockin's site. You can tell if you have the right one by it's size. Tim's one is approx 1.5MB others are something like 300-400kB.

I can honestly say that I have never had a failed flash using Tim's flashtool.

    Info   Download it fromhere (Local Mirror)

Before we look at the flash process, let's look at what to expect. You don't have to peel off the ROM's label to find out what ROM you have. All information is displayed via the console during Boot.

The boot with the AMD ROM:

       Sun Cobalt - Smaller, Bluer, Better
             Firmware version 2.9.34

Current date: Mar 30 19:00:20 UTC 2006
ROM build info: Fri Apr 5 00:05:20 PST 2002 galvatron.cobalt.com
System serial number: Uninitialized
System type: 3000 series system, Version 1 board
Silicon serial number: 1b000007c4e7df01
Monitor: 153712 bytes
Memory: 256 MB
CPU: 1 processor(s) detected
  CPU 0: AuthenticAMD 448MHz (4.5 x 100MHz host bus) [BSP]
Initializing flash: done
  Flash Bank 0: AMD AM29F080B 1024KB (01:d5)
  Flash Bank 1: not installed.
Mounting ROM fs: done
Initializing PCI: done

(end of snippet from file)
		

The boot with the Intel ROM:

       Cobalt Networks - 'We serve it, you surf it'
                 Firmware version 2.3.0

ROM Build info: Wed Oct 6 15:23:25 PDT 1999 freakshow.cobaltnet.com
System serial number: 3603BM0201162
Memory found: 128 MB
Initializing I2C bus: done
Scanning PCI bus: done
Initializing IDE: done
  IDE 0 master: found
        slave:  not found
  IDE 1 master: not found
        slave:  not found
Initializing SCSI: no SCSI found - failed
Initializing ethernet: failed
Initializing EEPROMs: done
  EEPROM Bank 0: Intel E28F008S5 1MB
  EEPROM Bank 1: not installed.
Mounting rom_fs: done
Initializing RTC: done

(end of snippet from file)
		

A Successful Flash: (Using Tim Hockin's flashtool on an Intel ROM)

root@new admin]# ./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

(end of snippet from file)
		

A Failed Flash: (Using the smaller flashtool on an Intel ROM)

[root@new admin]# ./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/Sharp LM28F008SCT 1MB
./flashtool: Using pthread POSIX real time scheduling.
./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..../flashtool: flashrom_flush
_buffers(): erase failed for block 1! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 2 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 2! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 3 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 3! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 4 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 4! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 5 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 5! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 6 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 6! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 7 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 7! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 8 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 8! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 9 to ROM..../flashtool: flashrom_flush
_buffers(): erase failed for block 9! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 10 to ROM..../flashtool: flashrom_flus
h_buffers(): erase failed for block 10! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 11 to ROM..../flashtool: flashrom_flus
h_buffers(): erase failed for block 11! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 12 to ROM..../flashtool: flashrom_flus
h_buffers(): erase failed for block 12! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 13 to ROM..../flashtool: flashrom_flus
h_buffers(): erase failed for block 13! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 14 to ROM..../flashtool: flashrom_flus
h_buffers(): erase failed for block 14! Bad or non-existent flash chip?
 done
./flashtool:   flushing block 15 to ROM..../flashtool: flashrom_flus
h_buffers(): erase failed for block 15! Bad or non-existent flash chip?
 done
./flashtool: flashrom_cleanup(): device error flushing buffers
[root@new admin]#

(end of snippet from file)
		

ROM Chips

Where are the ROM chips and what do they look like.

The ROM chip is located in the middle of the motherboard, just to one side.
(Click the following picture to enlarge)

mobo

To my knowledge there are 4 types of ROM's used in RaQ's

  • AMD
  • Intel
  • ST (SGS Thompson)
  • Mitsubishi

The ROM Chips come with a white sticker (Decal) on them. Once removed the chip manufacturer can clearly be seen. I've yet to see a Mitsubishi one, so I can't show a picture of it.

mobo

mobo

mobo

Flash it!

Let's bite the bullet and flash the Raq.

1) Boot the system looking at the boot process via the console.

2) FTP the required files to the system.

    Info   Download flashtool fromhere (Local Mirror)
    Info   The required ROM file for RaqCop is the cobalt-2.10.3-ext3-1M.rom
(Local Mirror cobalt-2.10.3-ext3-1M.rom)
The required ROM file for Raqcop on the Raq 550 is the cobalt-2.10.3-ext3-2M-flat.rom
(Local Mirror cobalt-2.10.3-ext3-2M-flat.rom

   3) Login and navigate to the dir with the uploaded files.
# chmod 777 flashtool

4) Backup existing ROM  (in this case an Intel one)

    Info    flashtool switches
-v = verbose, -r = read, -w = write

# ./flashtool -v -r > original.rom

[root@new admin]# ./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

5) Flash new ROM
# ./flashtool -v -w cobalt-2.10.3-ext3-1M.rom

Compare result with sections A Successful Flash: and A Failed Flash: above.

6) If successful, then reboot the system.

If you have errors, then keep trying or your system will not reboot again !!
If you can't get it to work, reflash the original rom.

This Page Last Modified: Wednesday, 08-Feb-2012 20:12:02 MST