#
# Install.info
# Copyright 2001 Sun Microsystems, Inc.  All rights reserved.

Firmware Upgrade Procedure
--------------------------

Connect to the system controller console (serial port) to monitor the system
during flashupdate.

This procedure assumes that the firmware update is available on a ftp or
http server.

	1. Determine the current version of ScApp and RTOS on the system.
	   Use the `showsc` command from the platform shell
	   schostname:SC> showsc
		ScApp version:  <ScApp version>
		RTOS version:   <RTOS version>

	2. Determine what needs to be upgraded.
	   - If the RTOS version of the patch firmware is different from what
	     is currently installed, then RTOS and ScApp need to be upgraded.
	   - Otherwise, only the ScApp needs to be upgraded.

	3. Upgrade the firmware using the flashupdate command.
	   Choose the one appropiate flashupdate command based on protocol 
	   being used and the need to upgrade RTOS.

   *** WARNING: Do not power down the system, or reset the system, while  ***
   ***          performing the following flashupdate commands.            ***

	HTTP:
		If ScApp and RTOS both need to be upgraded:
		flashupdate -f http://server/<path> all rtos
 
		If only ScApp needs to be upgraded:
		flashupdate -f http://server/<path> all

	FTP:
		If ScApp and RTOS both need to be upgraded:
		flashupdate -f ftp://server/<path> all rtos
          
		If only ScApp needs to be upgraded:
		flashupdate -f ftp://server/<path> all

	* The above commands will reboot the system controller and upgrade the
	  firmware.

	4. Reboot all domains that were active during the upgrade.


Serial Port Access During System Controller Boot
------------------------------------------------

When the System Controller boots, there are two key sequences (CONTROL-A and
CONTROL-X) which have special capabilities when entered at the serial port.  
If entered, the CONTROL-X key sequence will perform a hard reboot of the
System Controller.  The CONTROL-A key sequence will create a RTOS shell.  

The RTOS shell prompt is:  ->.  Boot time messages will still be displayed in
the shell window.  The RTOS shell can be terminated by typing the command
"exitShell" at the -> prompt.  After the RTOS shell has been terminated, normal
system operation will continue.  

The special capabilities of these key sequences are disabled 30 seconds after
the Sun copyright message is printed.  Once the capability is disabled,
CONTROL-A will operate as a normal command line editing key, CONTROL-X will
have no effect.

Note: The security of the System Controller could be compromised by unauthorized
access to the RTOS shell.


Recovering A Lost Platform Administrators Password
--------------------------------------------------

If the platform administrator's password is lost, the following procedure
can be used to clear the password.

	1. Reboot the System Controller.
	2. During the first 30 seconds (before the CONTROL-A key is disabled),
	   enter CONTROL-A. This will give you the RTOS prompt.
	3. Make a note of the current boot flags settings. This will be used to 
	   restore the boot flags to the original value.
	   	-> getBootFlags()
		value = 48 = 0xC = '0'
	   	* Save the 0x number for #8 below.
	4. Change the boot flags to disable autoboot.
		-> setBootFlags (0x10)
	5. Reboot the System Controller, once reset it will stop at the ->
	   prompt. Use the CONTROL-X sequence.
	6. Enter the following commands at the -> prompt.
		
kernelTimeSlice 5
javaConfig
javaClassPathSet "/sc/flash/lib/scapp.jar:/sc/flash/lib/jdmkrt.jar"
javaLoadLibraryPathSet "/sc/flash"
java "-Djava.compiler=NONE -Dline.separator=\r\n sun.serengeti.cli.Password"

	The System controller will output the following messages:
	
		Clearing SC Platform password...
	        Done. Reboot System Controller.
	        
	 7. Wait until the previous messages have been displayed.
	 8. At the -> prompt, restore the bootflags to the original value using
	    the setBootFlags() command.
		-> setBootFlags (0xC)
	   * Use the value returned from #3 above.
	 9. Reboot the System Controller using the CONTROL-X key.

Once rebooted, the platform administrator's password will be cleared.


FRU Upgrade Procedure
---------------------
When a System Controller, CPU board or I/O board is replaced the firmware needs 
to be checked.

1. The firmware of all boards can be checked with:

schostname:SC> showboards -p proms

	Proms
	-----
	/SSC0/javaosflash: 
		ScApp  5.11.4  03/14/2001 16:01
		Info   5.11.4  03/14/2001 16:01

	/IB6/bbcGroup0/sysbdflash: 
		POST   5.11.4  03/13/2001 16:49
		OBP    5.11.4  03/13/2001 16:49
		Info   5.11.4  03/13/2001 16:49
        
	/SB0/bbcGroup0/sysbdflash: 
		POST   5.11.4  03/13/2001 16:49
		OBP    5.11.4  03/13/2001 16:49
		Info   5.11.4  03/13/2001 16:49

	/SB0/bbcGroup1/sysbdflash: 
		POST   5.11.4  03/13/2001 16:49
		OBP    5.11.4  03/13/2001 16:49
		Info   5.11.4  03/13/2001 16:49

	/partition0/domain0/IB6/bbcGroup0/sysbdflash: 
		iPOST  5.11.4  03/13/2001 16:49
		Info   5.11.4  03/13/2001 16:50

	/partition0/domain0/SB0/bbcGroup0/sysbdflash: 
		POST   5.11.4  03/13/2001 16:49
		OBP    5.11.4  03/13/2001 16:49
		Info   5.11.4  03/13/2001 16:49

	/partition0/domain0/SB0/bbcGroup1/sysbdflash: 
		POST   5.11.4  03/13/2001 16:49
		OBP    5.11.4  03/13/2001 16:49
		Info   5.11.4  03/13/2001 16:49

schostname:SC> 

If the board you replaced is different then you will need to upgrade it.

2. The board needs to be powered on.

If you have a board of the same type you can use that board as the source 
otherwise you will have to upgrade from a URL.

flashupdate -c <source board> <replacement board>
flashupdate -f <URL> <replacement board>

