C H A P T E R  9

Firmware Upgrade Procedures

This chapter explains how to upgrade the system firmware.

The firmware on the Sun Fire entry-level midrange systems system can be updated by two mechanisms:

The first method requires that the 10/100 System Controller Ethernet port is connected to a suitable network and is configured so that it can see an external FTP or HTTP server which contains the new firmware images to be downloaded.


Using the flashupdate Command

The flashupdate command requires that the 10/100 Ethernet port can access an external FTP or HTTP server.

The flashupdate command updates the flash PROMs in the System Controller and the system boards (CPU/Memory boards and I/O assembly). The source flash image is normally held on an NFS server. In the case of CPU/Memory boards you can update one board with the flash image from another.

The syntax for the flashupdate command is:

flashupdate [-y|-n] -f <url> all|systemboards|scapp|rtos|<board> . . .

flashupdate [-y|-n] -c <source_board> <destination_board> . . .

flashupdate [-y|-n] -u

where:

-y does not prompt for confirmation.

-n does not execute this command if confirmation is required.

-f specifies a URL as the source of the flash images. This option requires a network connection with the flash image held on an NFS server. Use this option to install new firmware.

<url> is the URL of the directory containing the flash images and must be of the form:

ftp://[<userid>:<password>@]<hostname>/<path>

or

http://<hostname>/<path>

all causes all boards (CPU/Memory, I/O Assembly and System Controller) to be updated. This action reboots the System Controller.

systemboards causes all CPU/Memory boards and the I/O Assembly to be updated.

scapp causes the System Controller application to be updated. This action reboots the System Controller.

rtos causes the System Controller real time operating system to be updated. This action reboots the System Controller.

<board> names a specific board to be updated (sb0, sb2, sb4 or ib6).

-c specifies a board as the source of flash images. Use this option to update replacement CPU/Memory boards.

<source_board> is a pre-existing CPU/Memory board to be used as the source of the flash image (sb0, sb2 or sb4).

<destination_board> is the CPU/Memory board to be updated (sb0, sb2 or sb4).

-u automatically updates all CPU/Memory boards with the image from the board which currently has the highest firmware revision. Use this option to update replacement CPU/Memory boards.

-h displays help for this command.

A power cycle is required in order to activate the updated OpenBoot PROM.



Note - flashupdate cannot retrieve flash images from a secure (userid/password) protected HTTP URL. A message of the form flashupdate: failed, URL does not contain required file: <file> will be returned, although the file may exist.





caution icon

Caution - Do not interrupt the flashupdate operation. If the flashupdate command is terminated abnormally, the System Controller will go into single use mode and will only be accessible from the serial port.





caution icon

Caution - Before performing a flashupdate, check the firmware revisions of all boards using the showboards -p version command.





caution icon

Caution - If the System Controller application (scapp) or real time operating system (rtos) are to be updated, you are strongly recommended to run the flashupdate command from a LOM shell running on the serial connection so that the results can be fully monitored.





caution icon

Caution - Before updating CPU/Memory boards or the I/O Assembly, ensure that all boards to be updated are powered on by using the poweron command.




procedure icon  To Upgrade a Sun Fire V1280 or Netra 1280 System Running Firmware Version 5.13.x to 5.17.0 Using the flashupdate Command

1. Upgrade the firmware on the SC:

lom>flashupdate -f <URL> scapp rtos

2. Power on all boards:

lom>poweron all

3. Upgrade the firmware on the system boards:

lom>flashupdate -f <URL> sb0 sb2 sb4 ib6

This step has brought sb2, sb4, and IB6 up to the same firmware level as board sb0.


procedure icon  To Downgrade the Firmware on a Sun Fire V1280 or Netra 1280 System From Firmware Version 5.17.0 to 5.13.x

1. Downgrade the firmware on the SC .

2. Power on all boards.

3. Downgrade the firmware on the other boards.


Using the lom -G Command

There are four image types which may need to be transferred using this method with names of the following form:

You must place these in a suitable directory, for instance /var/tmp, and issue the lom -G command with the filename of the file to be downloaded. The firmware knows from header information contained in the file which image type is being upgraded.

These images will be provided in a patch downloadable from www.sunsolve.sun.com or from your SunService representative.

The patch README file should contain full instructions for installing these new firmware images. It is very important that the instructions are followed exactly otherwise you may render your system unbootable.



caution icon

Caution - Do not interrupt the lom -G operation. If the lom -G command is terminated abnormally, the System Controller will go into single use mode and will only be accessible from the serial port.





caution icon

Caution - Before performing a lom -G, check the firmware revisions of all boards using the showboards -p version command.





caution icon

Caution - You are strongly recommended to run the lom -G command from a Solaris console running on the serial connection so that the results can be fully monitored.





caution icon

Caution - Before updating CPU/Memory boards or the I/O Assembly, ensure that all boards to be updated are powered on by using the poweron command.



Examples

Downloading the lw8pci.flash image:

CODE EXAMPLE 9-1 Downloading the lw8pci.flash Image
# lom -G lw8pci.flash
This program will replace LOM firmware with version 5.17.0
Are you sure you want to continue?
Enter 'C' and return to Continue or anything else to Terminate
C
Transferring 346 kB image to the system controller.
This may take several minutes.
...................................................
 
Validating image...
346 kB IO image transferred.
Programming /N0/IB6/FP0
Comparing image and flash
# Image and flash are different, proceeding with update.
Erasing     ...... Done
Programming ...... Done
Verifying   ...... Done
Fri Dec 12 08:20:42 commando lom: /N0/IB6/FP0 updated with version 5.17.0 12/12/2003.
Dec 12 11:20:41 commando-a lw8: /N0/IB6/FP0 updated with version 5.17.0 12/12/2003.
 
Firmware update complete.
 
You must reboot Solaris to load the new firmware.

Downloading the lw8cpu.flash image:

CODE EXAMPLE 9-2 Downloading the lw8cpu.flash Image
# lom -G lw8cpu.flash
This program will replace LOM firmware with version 5.17.0
Are you sure you want to continue?
Enter 'C' and return to Continue or anything else to Terminate
C
Transferring 906 kB image to the system controller.
This may take several minutes.
...................................................
 
Validating image...
# 906 kB CPU image transferred.
Programming /N0/SB0/FP0
Comparing image and flash
Image and flash are different, proceeding with update.
Erasing     ............... Done
Programming ............... Done
Verifying   ............... Done
Fri Dec 12 08:23:43 commando lom: /N0/SB0/FP0 updated with version 5.17.0 12/12/2003.
Dec 12 11:23:42 commando-a lw8: /N0/SB0/FP0 updated with version 5.17.0 12/12/2003.
Programming /N0/SB0/FP1
Comparing image and flash
Image and flash are different, proceeding with update.
Erasing     ............... Done
Programming ............... Done
Verifying   ............... Done
Fri Dec 12 08:24:24 commando lom: /N0/SB0/FP1 updated with version 5.17.0 12/12/2003.
Dec 12 11:24:23 commando-a lw8: /N0/SB0/FP1 updated with version 5.17.0 12/12/2003.
Programming /N0/SB2/FP0
Comparing image and flash
Image and flash are different, proceeding with update.
Erasing     ............... Done
Programming ............... Done
Verifying   ............... Done
Fri Dec 12 08:25:06 commando lom: /N0/SB2/FP0 updated with version 5.17.0 12/12/2003.
Dec 12 11:25:06 commando-a lw8: /N0/SB2/FP0 updated with version 5.17.0 12/12/2003.
Programming /N0/SB2/FP1
Comparing image and flash
Image and flash are different, proceeding with update.
Erasing     ............... Done
Programming ............... Done
Verifying   ............... Done
Fri Dec 12 08:25:48 commando lom: /N0/SB2/FP1 updated with version 5.17.0 12/12/2003.
Dec 12 11:25:48 commando-a lw8: /N0/SB2/FP1 updated with version 5.17.0 12/12/2003.
Programming /N0/SB4/FP0
Comparing image and flash
Image and flash are different, proceeding with update.
Erasing     ............... Done
Programming ............... Done
Verifying   ............... Done
Fri Dec 12 08:26:31 commando lom: /N0/SB4/FP0 updated with version 5.17.0 12/12/2003.
Dec 12 11:26:30 commando-a lw8: /N0/SB4/FP0 updated with version 5.17.0 12/12/2003.
Programming /N0/SB4/FP1
Comparing image and flash
Image and flash are different, proceeding with update.
Erasing     ............... Done
Programming ............... Done
Verifying   ............... Done
Fri Dec 12 08:27:11 commando lom: /N0/SB4/FP1 updated with version 5.17.0 12/12/2003.
Dec 12 11:27:10 commando-a lw8: /N0/SB4/FP1 updated with version 5.17.0 12/12/2003.
 
Firmware update complete.
 
You must reboot Solaris to load the new firmware.


procedure icon  To Upgrade a Sun Fire V1280 or Netra 1280 System Running Firmware Version 5.13.x to 5.17.0 Using the lom -G Command

1. Upgrade the firmware on the SC:

# lom -G sgsc.flash
# lom -G sgrtos.flash

2. Escape to lom> and reset the SC

lom>resetsc -y

3. Upgrade the firmware on the system boards:

# lom -G lw8cpu.flash
# lom -G lw8pci.flash
lom>shutdown
lom>poweron


procedure icon  To Downgrade the Firmware on a Sun Fire V1280 or Netra 1280 System From Firmware Version 5.17.0 to 5.13.x Using the lom -G Command

1. Downgrade the firmware on the SC .

2. Reset the SC.

3. Downgrade the firmware on the other boards.