OBSOLETE Patch-ID# 111179-08
Keywords: desktop standalone flash prom update
Synopsis: Obsoleted by: 111179-09 Hardware/PROM: Sun Blade 100/150 Flash PROM Update
Date: Jul/24/2003


Install Requirements: Additional instructions may be listed below                      
                      
Solaris Release: 7 8

SunOS Release: 5.7 5.8

Unbundled Product: Hardware/PROM
    NOTE: This utility is *not* OS-dependent.  The list of releases shown
          under the "Solaris Release" and "SunOS Release" sections may not 
          be complete: The absence of a valid Solaris Release or SunOS  
          Release from the lists above does not preclude the installation 
          of this patch against the hardware.


Unbundled Release: OBP_4.10.6,POST_2.0.1

Xref: 

Topic: 

Relevant Architectures: sun blade 100 and sun blade 150

BugId's fixed with this patch: 4795680 4813090 4829573 4841495 4862646 4869052 4869059
NOTE:
BugIds fixed in previous patches:
4.10.6   4694528, 4701972, 4710541, 4717392, 4717459, 4708545, 4772510, 4776410, 4709109, 4778877,
------   4794880, 4688812, 4746347, 4771895, 4775507, 4791537, 4802217, 4788793, 4802685, 4826257, 
         4818294, 4849532
4.6.9    4776410
-----
4.6.5    4503153, 4529740, 4484892, 4531864, 4528335, 4616272, 4631912, 4631921, 4633639,
-----    4635232, 4635241, 4635245, 4636885, 4640399, 4649849, 4649853, 4651171, 4660796, 
         4694528, 4523685, 4546596, 4515832, 4618495, 4621189, 4522404, 4690089, 4529777, 
         4617168, 4466040, 4621997, 4622592
4.5.9    4624001
-----
4.5.0    4166678, 4314634, 4336873, 4343467, 4345882, 4358471, 4363679, 4370093,
-----    4370138, 4377846, 4397444, 4415321, 4420272, 4421324, 4421336, 4422266,
         4423674, 4425775, 4426219, 4428849, 4433397, 4436390, 4444252, 4449306,
         4457622, 4459838, 4459839, 4459840, 4459872, 4461700, 4462367, 4462386,
         4462540, 4462561, 4463008, 4463241, 4463448, 4464115, 4464370, 4464487,
         4465103, 4465993, 4466546, 4466846, 4470219, 4470450, 4472755, 4474896, 
         4478902, 4479222, 4482151, 4485022, 4485301, 4486124, 4486529, 4486898,
         4487587, 4488190, 4493353, 4493390, 4493402, 4495573, 4495582, 4496182,
         4496209, 4497379, 4497823, 4501875, 4502170, 4503567, 4503717, 4505083,
         4505327, 4505674, 4508758, 4509290, 4511606, 4512349, 4516702, 4518482,
         4519577, 4520192, 4520712, 4520715

Changes incorporated in this version: 

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 

Obsoleted by: 

Files included with this patch: 

				802-3233-20.ps, 
				flashprom-jumper-diagram.ps, copyright
                                flash-update-Blade100-08,  
flash-update-Blade100-latest, README.111179-08,

Problem Description:

4841495 local-mac-address properties not created correctly in net devices.
4795680	iogear KVM exports a regular speed keyboard
4813090	Add OBDiag support for Broadcom BCM5221 phy chip used in Grover+ Refresh
4829573	add part numbers and temperature checking for refresh boards
4862646	USB keyboard FCode should not assume interface number
4869052	stop-N equivalent function (double tap on power button) does not work
4869059	program thermal power off threshold when warning level is reached
4694528 updating tlb entries using FORTH may result in bad tlb entries
4701972 Safari node claim-address interface needs to match FWARC/20 00/033 specification
4710541 Grover does not use common prober framework for isa.
4717392 ttya interrupts broken.
4717459 Grover isadma node needs interrupt-map-mask property.
4708545 Cannot drop to OBP after 64 L1-A to OBP and "go" cycles
4772510 Config file not included in isa.tok
4776410 need to clear su16550 UART's error bits before init
4778877 errors in code to fetch mac-address from bsc
4709109 Missing space in warning message
4794880 cpu should not have clock-divisor property.
4688812 Watchdog XIR should follow error-reset-recovery
4746347 help command doesn't work with category-name beginning with capital letter.
4771895 Configuration Power-Down Error Messages must be consistent
4775507 timeouts in pcf8584 assembler code do not work correctly.
4791537 after hitting breakpoint obp will not proceed further with 'step' or 'go'
4802217 OBP fails to recover from i2c errors
4788793 compatible properties in some nodes do not accurately reflect the hardware
4802685 Would like Power on the LED to light at power on (not later).
4826257 bit-bang i2c code does not implement timeouts correctly.
4818294 Ecpptest is not responding while running sunvts on grover+refresh system.
4849532 OBP does not boot when brk char is received at ttyA prior to input redirection
4503153 Optimize the implementation of vocabulary based config. variables
4529740 cleaner interface between reset code and forth code
4484892 Can't boot system with OBP 4.3 build_08 with USB device tree attached.
4531864 probe for temperature sensor
4528335 error-reset-sync-or-boot get broken by the changes in voc. based conf. variables
4616272 model property in root node is incorrect
4631912 update grover+ banner name to sun blade 150
4631921 grover+ cas latency should be 2
4633639 Ethernet loopback test still passes w/ no loopback connector is attached
4635232 Grover+ OBDiag Floppy Media test still passes if no floppy present
4635241 Grover+ OBDiag Firewire Loopback test still passes if no camera present
4635245 Grover+ OBDiag IDE Offboard test still passes if no IDE device attached
4636885 selftest restructuring to support the southbridge IDE controller
4640399 GRVR+: FDAMM during memory initialization with 4.6.0_06 ->
4649849 change default banner name string for Grover/Grover+
4649853 program southbridge for FANIN1 support
4651171 IDE and Floppy OBDiag tests do not go offboard when obdiag-script=bft-ext
4660796 ERI FCode incorrectly comsumes 2 items on stack.
4694528 updating tlb entries using FORTH may result in bad tlb entries
4523685  prefetch bit in pci bars not reflected in regs property
4546596 xir reset code error
4515832 gl FCodi does not implement scsi-reset-delay
4618495 Openboot slow clearing memory
4621189 lsi1010 and friends (glm fcode) uses wrong value for selection timeout
4522404 need to improve setenv/ptintenv interface for flag types of conf. vars.
4690089 OBP may clear some memory that is not on the available list
4529777 In silent mode, Elapsed time can become unclear
4617168 Remove 'version' command from menutool; 'selftest-version' from device selftests
4466040 Need to verify cases when methods are defined multiple times in obdiag
4621997 Improve obdiag menu tool to accept multiple commands on single line
4622592 first device tested fails obdiag when 'diag-script' is set to 'all'
4624001 grover DIMM reporting off by one
4166678 Initial boot from A1000 (Dilbert) connected to US2D PCI card fails
4314634 Add FCodes for CREATE-DEV-INSTANCE, DESTROY-DEV-INSTANCE, TEST-DEV
4336873 OBDiag usb test hangs system
4343467 '"log2'
4345882 create-dev-instance is broken
4358471 data-over err & no-resp err from some USB Mass storage device
4363679 Conditionals using  %xcc  fields are incorrectly dis-assembled
4370093 ".version" does not show obdiag version info.
4370138 Improvements to dis-assembler code
4377846 prom needs to support new Keyboards
4397444 glm fcode should use READ CAPACITY to find out the block size
4415321 "no-resp err" when doing reboot and power cycles
4420272 OBP contains many duplicate definitions
4421324 test-all gives two "net stack depth change" messages
4421336 issuing a test-all command from serial port hangs the system
4422266 Machine crashes if forth debug downloads a missing symbol.
4423674 Running some diag tests while using the console device hangs the system
4425775 cpu support missing from OBP
4426219 Output still displayed when "silent" included in test-args
4428849 rarp response timeout on netra t1 AC200 and sunblade 100
4433397 If no addresses are mapped thru a PCI bridge, the ranges property must be absent
4436390 test-all gives Fast Data Access MMU Miss
4444252 auto-boot attempts to boot twice when boot device fails boot-read tests
4449306 Some PCI BARs don't work
4457622 adds SLOT information in error report for PCI plug-in devices
4459838 ifdef symbols match forth tokens leading to name space pollution
4459839 remove non functional code and compile directives
4459840 misc make fixes
4459872 OBDIAG hangs running usb@c,3 test
4461700 Add test-args and diag-level current settings display to obdiag error report
4462367 all ultra1 and 2 based platforms are broken
4462386 unable to boot SB-100 from LG cdrom drive
4462540 give message when USB console keyboard is unplugged
4462561 dload devalias must be removed
4463008 Restore working Ethernet, Parallel Port, and PMU tests for Grover
4463241 Enhancement to obdiag menutool - remove printenvs cmnd, include setting in menu
4463448 potential hang when installing serial port as input device
4464115 Add grover to the SUBDIR list in the common source Makefile
4464370 diag-passes information is missing in obdiag menu HELP information
4464487 $cat zeroes the string when the length exceeds 255 characters
4465103 Network tests (rio-gem, GEM, Cassini) contain much redundant code and strings
4465993 obdiag error report leaves an extra item on the stack if errors>1 in test-args
4466546 The unix flash update utility does not append a crc32 to the grover image
4466846 Test scripts must allow path names longer than 128 characters
4470219 test/test-all/test-dev/obdiag should set "status" to "okay" if selftest passes
4470450 Fix the MAJOR and MINOR versions of obdiag binaries for each platform
4472755 Make VERSIONS command of obdiag menutool display "overall" obdiag version
4474896 menutool should not run if launched in the device tree context
4478902 Missing 'headers', 'external', and 'headerless' words.
4479222 mid-valid-cpu? and memory-warning should not be available at the ok prompt
4482151 "Need support for OBDiag powerup scripting"
4485022 selftest failures on plugin cards are not recognized/summarized by obdiag
4485301 Remove definition of (u.) from obdiag - it is fixed in Sun tokenizer
4486124 scsi diagnose command broken
4486529 chain: definitions may be lost when defined across vocabularies
4486898 4.3.0.build_07 changed the behavior of TEST command
4487587 flashprom device fails when test-args set to 'restore'
4488190 fix intermittent problems with power-off command on grover
4493353 create-dev-instance seems to be broken, doesn't create instance record correctly
4493390 add clear of acpi reg at offset 0x21 to power-off command
4493402 change mfg-mode to diag-script 
4495573 test-dev does not properly output negitive 32 bit return codes
4495582 Redundant return code displayed in menutool on failures
4496182 power-managed? property is not needed in firewire node
4496209 port power-off fixes to patch gate for grover
4497379 Unaligned trap while loading onboard drivers
4497823 trap-level words to save and restore globals use more than their alloted memory
4501875 the glm irq lines should be open drain
4502170 glm FCode parity control bits not controlled
4503567 Add a field to obdiag error report to print the physical location
4503717 glm fcode does not time out properly
4505083 Some drivers contain selftests that do nothing: return zero.
4505327 inline-structs with constant value of zero cause stack underflows.
4505674 Internal loopbacks should not depend on loopback test-arg
4508758 Implement SHOW-FRU-LOCATION command on 4.next
4509290 use chip-off in glm FCode
4511606 OBP need to issue a message if diag-scrip is set to none
4512349 An SB100 while booting from the net always causes "transmit late collisions"
4516702 usb hub standard max packet is 8, not 64
4518482 ERI FCode unnecessarily prints out carriage return during boot net.
4519577 usb fcode has a potential memory leak in the hub fcode
4520192 usb keyboard package should be closed in reverse order
4520712 RARP replies which dont include ar$spa must be handled correctly
4520715 TFTP retry count not correctly checked
4449306: P2:S3 Some PCI BARs don't work

Patch Installation Instructions:
===============================
 
 
Intro
-----
 
    This README is intended for users who wish to upgrade the firmware
    in their Sun Blade 100 system Flash PROM.
 
Summary of the Patch Installation Process:
------------------------------------------
 
The installation shall comprise of the following steps
 
1)  Determine the system's current Flash PROM firmware revision.
 
2)  Compare the current Flash PROM firmware revision with the available or 
    latest Flash PROM firmware revisions.
 
3)  If the current Flash PROM firmware revision is lower than the latest
    available firmware revision in this patch, then proceed to the next step. 
    If NOT, STOP: DO NOT CONTINUE.
 
4)  Prepare the system for the Flash PROM update
 
5)  Running the Flash PROM Utility
 
6)  Verifying successful Flash PROM Update
 
7)  Restoring the system
 
8)  Resume operations
 
 
Patch Installation instructions (in detail):
============================================
 
The required steps are explained in greater detail below.
 
1)  Determine the System's Current Firmware Revisions
    -------------------------------------------------
 
    While the OS is running the following command may be used to
    determine the current system firmware revisions;
 
        /usr/sbin/prtconf -V
        or
	/usr/platform/sun4u/sbin/prtdiag -v | grep OBP
 
    The firmware revisions may also be determined from the PROM monitor's
    "ok" prompt with the following command;
 
	.version
 
2)  Compare the current Flash PROM firmware revision with the available or 
    latest Flash PROM firmware revisions.
 
    Compare the output of the OBP line in the "prtdiag -v" or "prtconf -V"
    output. Find the revision number and compare with the revision on the
    entries below that of the "flash-update-Blade100-latest" line
 
      Available Firmware Revisions
      ----------------------------
 
-latest flash-update-Blade100-latest
	OBP:  4.10.6 created 2003/06/06 12:30
	POST: 2.0.1 2001/08/23 05:13
 
-08 	flash-update-Blade100-latest
	OBP:  4.10.3 created 2003/05/02 20:24
	POST: 2.0.1 2001/08/23 05:13
 
3)  Is the UPGRADE NECESSARY?
 
    If the current Flash PROM revision matches the version numbers given under
    the flash-update-Blade100-latest line, then STOP Here. This UPGRADE IS NOT
    NECESSARY.
 
    If the current Flash PROM firmware revision is lower than the latest
    firmware revision in this patch, then proceed to the next step.
 
4) Preparing the System
   ---------------------
 
  a) As root, copy the latest "flash-update" files from the directory
     containing the patch to the root directory as follows:
 
     # cp flash*latest  /
     # chmod 755 /flash-update*
 
     In order to boot the binary, it must be located within the root
     partition.  If it is not already located within the root partition
     then move it to /.  If the binary is already located elsewhere 
     within the root partition then note the exact filepath so that the
     binary can be booted later.
 
  b) As root, exit the OS such that the system returns to the PROM's "ok"
     prompt: 
 
     # halt
 
       ok
 
  c) Power off the system.
 
** CAUTION **  Do not attempt to access any part of the system hardware
               with the system power still on!
 
  d) Remove the system top cover.  (If you are unsure how to do this then
     consult your system "Installation Guide" or "Service Manual".)
     Note: consult the enclosed flashprom-jumper-diagram.ps
 
  e) Set JP2 to write enable at 2+3. Default is write protect at 1+2
 
     Jumper JP2 provides a write enable/disable mechanism for the
     Flash PROM.  JP2 normally connects pins 1+2, which causes the
     Flash PROM to be write protected.  To enable patch installation,
     write enable the Flash PROM by MOVING the JP2 jumper from pins 1+2 
     to pins 2+3.
 
     **IMPORTANT NOTE**: If this jumper is NOT set to WRITE ENABLE, the 
     Flash update will fail.
 
     (If you have any difficulties consult the flashprom-jumper-diagram.ps
      file).
 
  f) Replace the system top cover.
 
 
5)  Running the Flash Update Utility
    --------------------------------
 
  a) Power on the system
 
     Wait for the PROM's banner to appear, and then
 
  b) Use the Stop-A keys (or Break key, if running from a serial line) to
     abort the auto-boot sequence.
 
     ** NOTE **  If the flash update completes normally then the values
     contained within the system's Non-Volatile RAM (NVRAM) configuration
     variables will be retained.  However, if the update process is some-
     how interrupted then it is possible that any non-default values
     contained in NVRAM will be lost.  For this reason it is recommended
     that you note down on paper the contents of any NVRAM configuration
     variable which has been customized so that they may be manually
     restored at a later time, if necessary.  (Use the PROM's "printenv"
     command to list the variables and their values.)
 
  c) The system should now display the PROM monitor's "ok" prompt.
     Now boot the Flash update utility as given below:
 
     CAUTION: Do not boot/run revisions lower than the latest unless you
	      are absolutely sure that that is what you want to do!
 
     ok boot disk /flash-update-Blade100-latest
 
     NOTE: If your system's boot device is not "disk" then you will
           have to specify the appropriate devalias (e.g. disk2).
           If the binary is located in a location other than / then
           provide the entire filepath after the boot device.
 
     Answer the questions as prompted by the utility. 
 
 
+++++++++++++++++++++ example Flash update follows ++++++++++++++++++++++++
++++++++ Note that this is an example only.  Much of the information ++++++
++++++++ which is displayed by your system will be different from    ++++++
++++++++ what is shown below.                                        ++++++
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
 
Standalone Flash PROM Update Utility, Rev. 2.6
                        Ultra(tm) 1
                        Ultra(tm) 2
                        Ultra(tm) 5/10
                        Ultra(tm) 30
                        Ultra(tm) 60 / E220R
                        Ultra(tm) 80 / E420R
                        Ultra(tm) Enterprise(tm) 250
                        Ultra(tm) Enterprise(tm) 450
			Sun Blade(tm) 100
			Sun Blade(tm) 150
 
 
This utility allows you to interactively update the firmware
revisions in specific system Flash PROM components.
 
Type h for help, q to quit, Return or Enter to continue:
 
Every precaution should be taken to prevent the loss of system
power during the Flash PROM programming process!
 
Type h for help, q to quit, Return or Enter to continue:
 
 
       Firmware Release(s)                Firmware Release(s)
 Currently Existing in the System      Available for Installation  /  Install?
---------------------------------- -------------------------------------------
OBP 3.1.2 1996/03/28 17:08         OBP 3.1.5 1996/08/27 16:13           no
POST 3.1.4 1996/04/09 03:23        POST 3.1.5 1996/06/28 11:54          no
 
Type sa if you wish to select all available firmware releases for
installation.  Type h for help, quit to exit, or cont to continue: sa
 
 
 
       Firmware Release(s)                Firmware Release(s)
 Currently Existing in the System      Available for Installation  /  Install?
---------------------------------- -------------------------------------------
OBP 3.1.2 1996/03/28 17:08         OBP 3.1.5 1996/08/27 16:13           YES
POST 3.1.4 1996/04/09 03:23        POST 3.1.5 1996/06/28 11:54          YES
 
Type sa if you wish to select all available firmware releases for
installation.  Type h for help, quit to exit, or cont to continue: cont
 
 
The Flash programming process is about to begin.
 
Type h for help, q to quit, Return or Enter to continue:
 
Erasing the top half of the Flash PROM.
Programming OBP into the top half of the Flash PROM.
Verifying OBP in the top half of the Flash PROM.
 
Erasing the bottom half of the Flash PROM.
Programming OBP into the bottom half of Flash PROM.
Verifying OBP in the bottom half of the Flash PROM.
 
Erasing the top half of the Flash PROM.
Programming POST into the top half of Flash PROM.
Verifying POST in the top half of the Flash PROM.
 
Programming was successful.
 
Resetting ...
 
 
+++++++++++++++++++++ example Flash update ends ++++++++++++++++++++++++++
 
  Once the PROM's banner reappears then use the Stop-A keys (or Break
  key, if running from a serial line) to abort the auto-boot sequence
  if the system begins to boot.
 
6)  Verifying successful Flash PROM Update
 
    Verify from the results of the .version command that the OBP
    version matches the OBP version given above under the
    flash-update-Blade100-latest entry in Step 2.
 
7)  Restoring the system
 
    The system should be restored to the original set-up as follows:
 
    a) Turn the power to the system off.
    b) Remove the top cover and move jumper JP2 to pins 1+2.
    c) Replace the top cover.
 
    If any problems should be encountered during the firmware upgrade
    then consult the "Sun Flash PROM Guide for Workstations and Workgroup
    Servers - Standalone Version".
 
8)  Resume operations
 
    a) Turn on the system power and allow the system to boot the
       operating system.
 
    b) Once the system has rebooted you may wish to remove the Flash Update
       binaries and documents since they will no longer be needed.
 
       # rm /flash-update*
 
    c) Remember to remove the files from their original location if
       they were not extracted directly into the root directory.

Special Install Instructions:
----------------------------- 
 
**************************************************************************
**************************************************************************
**WARNING:****WARNING:****WARNING:****WARNING:****WARNING:****WARNING:**
 
*  PLEASE READ THE INSTRUCTIONS CAREFULLY AND ENTIRELY.  PLEASE FOLLOW THE
   INSTRUCTIONS EXACTLY AS THEY ARE STATED.
 
*  FAILURE TO FOLLOW INSTRUCTIONS COULD EITHER RESULT IN A DEFECTIVE BOARD OR
   UNSUCCESSFUL FLASH PROM UPDATE.
 
*  THIS IS NOT A STANDARD PATCH in that it does not use the installpatch
   and backoutpatch scripts.
 
*  THIS PATCH CANNOT BE INSTALLED ON AN ONLINE OPERATING SYSTEM BECAUSE
   THE INSTALL INSTRUCTIONS REQUIRES THAT THE SYSTEM BE BROUGHT DOWN.
   BE SURE TO SCHEDULE DOWN TIME TO INSTALL THIS PATCH.
 
*  INSTALLATION OF THIS PATCH REQUIRES A HARDWARE JUMPER CHANGE. IF YOU ARE
   UNSURE ON HOW TO OPEN THE SYSTEM BOX, PLEASE ENSURE THAT A QUALIFIED 
   PERSON, WITH THE STATIC WRIST STRAP KIT NEEDED TO SERVICE ELECTRONIC
   EQUIPMENT, IS AVAILABLE TO COMPLETE THIS ACTIVITY. FAILURE TO USE STATIC
   PROTECTION KIT OR IMPROPER HANDLING COULD RESULT IN THE DAMAGE OF THE 
   SYSTEM BOARD.
 
*  PLEASE REVIEW NOT ONLY THIS README BUT ALSO ADDITIONAL DOCUMENTATION
   GIVEN.
   The file "802-3233-xx.ps" where xx stands for the latest numeric
   revision is a PostScript copy of the "Sun Flash PROM Guide for Workstations
   and Workgroup Servers - Standalone Version".
 
   Note, however, that The Flash PROM Guide was originally written for
   a user who is running the Flash PROM update utility from a bootable
   CDROM, and thus it will not contain the proper boot commands for
   installation of this patch.  Also note that the instructions in
   the document for installing packages are not valid for this patch.
 
   Reference the flashprom-jumper-diagram.ps file, which provides;
 
   (i) A board-level diagram that gives the approximate location of the
       hardware jumpers (that will need to be changed).
 
   (ii) Emergency instructions in the unlikely event that the Flash
        update should fail.
 
**WARNING:****WARNING:****WARNING:****WARNING:****WARNING:****WARNING:**
**************************************************************************
**************************************************************************

README -- Last modified date:  Tuesday, June 15, 2004

