Patch-ID# 104881-09
Keywords: desktop standalone flash prom update security
Synopsis: Hardware/PROM: Ultra 1 (non E) Standalone Flash PROM Update
Date: May/27/2004


Install Requirements: Additional instructions may be listed below                      
                      
Solaris Release: 2.5 2.5.1 2.6 7 8 9

SunOS Release: 5.5 5.5.1 5.6 5.7 5.8 5.9

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_3.35.0,POST_3.10.6

Xref: 

Topic: 

Relevant Architectures: sun4u
                 NOTE:  there are 2 binaries included in this patch, for two platforms
			flash-update-Ultra1-Model140-latest for Ultra 1 Model 140
			flash-update-Ultra1-Model170-latest for Ultra 1 Model 170

BugId's fixed with this patch: 1196888 1196894 1205113 1209912 1214856 1218110 1219424 1219550 1219781 1220685 1221158 1221163 1221618 1222894 1224980 1230619 1232074 1232486 1235702 1240664 1240665 1244597 1246093 1252098 1253032 1257925 4011853 4018294 4023467 4024106 4028057 4041025 4076224 4088491 4091949 4119827 4123985 4176300 4203447 4310258 4325933 4338343 4360883 4407855 4407869 4483753 4945380

Changes incorporated in this version: 5023498

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: 

				copyright, 802-3233-20.ps
				flash-update-Ultra1-Model170-latest, 
README.104881-09, flash-update-Ultra1-Model140-latest,

Problem Description:

BugId 5023498: loadultra.fth contains compares using a hardcoded manufacturer id of 17
 
BugId 4945380: Latest OBP 3.25.0 on Ultra 1 is unable to handle new MAC-Addresses
 
BugId 4483753: RARP replies which dont include ar$spa must be handled correctly
 
BugId 4407869: probe-scsi and probe-scsi-all need to recognize device_type-scsi*
 
BugId 4360883: DHCP IP address validation code must be more robust
 
BugId 4123985: erroneous divide by zero bug in OBP
 
BugId 4325933: Branch on register intructions are broken in assem.fth
 
BugId 4338343: fb8: "Memory Address not Aligned" error in fb8-insert-lines
 
BugId 4176300: Draw logo doesn't clip, returns negative number for line# to draw at.
 
BugId 4203447: setting nvram variables when config-valid? is false leaves parameters on stack
 
Bugid 4407855: Code that validates idprom contents incorrectly expects 0x80 at offset 1
 
Bugid 4310258: Add support for DHCP.
 
Bugid 4091949: Flashprom updates for Sun4u systems may cause NVRAM contents to change.
 
Bugid 1240664: Retained memory that crosses a 32Mb boundary gets corrupted by PROM sizing memory.
 
Bugid 1240665: Two machine resets without a prom_retain cause retained memory to be cleared.
 
Bugid 1235702: FCode32 versions of >>A and RSHIFT may give incorrect results.
 
Bugid 1222894: Fusion OBP is missing the "dl" serial download command.
 
Bugid 1232486: SUNW,retain does not seem to be able to re-retain a retained page.
 
Bugid 1230619: popc not disassembled by obp.
 
Bugid 1232074: q to quit long listing sometimes doesn't work.
 
Bugid 1205113: "dev /SUNW,UltraSPARC@0,0" fails.
 
Bugid 1218110: canon client interface strips options strings.
 
Bugid 1209912: ^C deletes the line in nvramrc.
 
Bugid 1221158: OBP does not output POST failures to display device.
 
Bugid 1219781: <L1-A> on "boot disk" followed by "boot disk"  results in soft hang.
 
Bugid 1220685: L1/A after banner hangs with "The selected input device has no read routine".
 
Bugid 1219550: Need to put some delay in the power-off command for sun4u platforms.
 
Bugid 1214856: Missing sym, sym>value words.
 
Bugid 1196894: Missing user interface words.
 
Bugid 1196888: Missing properties.
 
Bugid 1221618: boot -r on SPARCstation 11 (neutron) gives cpu0 and trap error.
 
Bugid 1221163: boot panic: bop_alloc failed.
 
Bugid 1219424: reboot will cause a hard hang with cgthree as console.
 
Bugid 1224980: obp crash with 'physical address in use'.
 
Bugid 1253032: Soft reset at the ok prompt may fail.
 
Bugid 1252098: Booting from floppy disk now works.
 
Bugid 4011853: Adds reads after stores to flush e$ line.
 
Bugid 1257925: In FCode32 "within" was aliased to "l-between" rather than "l-within".
 
Bugid 1246093: OBP word ".exception" incorrectly decodes description for "Spill" in "Other" traps.
 
4119827: Add prom keymap support for Eastern European countries: Hungary, Poland, Czech, Russian, Greek, Turkey, Latvia, Lithuania.
 
Bugid 4076224: Can't boot through net when connected to a Synoptics 28115 100Mb hub.
 
Bugid 4088491: Console escape sequence panics sun4u systems.
 
Bugid 1244597: L1/A after banner hangs with "The selected input device has no read routine".
 
Bugid 4023467: Sending brk/L1-A during boot with kadb will get "Mem Addr not Aligned" error.
 
Bugid 4024106: kadb :c often causes panics.
 
Bugid 4028057: sbus-probe-list has no options for on-board devices.
 
Bugid 4018294: client-tte-handler not called for large addresses.
 
Bugid 4041025: Single-stepping over some sethi instructions is broken.

Patch Installation Instructions:
===============================
 
 
Intro
-----
 
    This README is intended for users who wish to upgrade the firmware
    in their Ultra 1 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-Ultra1-Modelxxx-latest" line
 
      Available Firmware Revisions
      ----------------------------
 
-09/140 Model 140: flash-update-Ultra1-Model140-latest
         Sun Ultra 1 SBus 3.35 Version 0 created 2004/04/19 12:15
         Sun Ultra Enterprise 1 SBus POST 3.10.6 10/18/1996 10:19 AM 
 
-09/170 Model 170: flash-update-Ultra1-Model170-latest
         Sun Ultra 1 SBus 3.35 Version 0 created 2004/04/19 12:16
         Sun Ultra Enterprise 1 SBus POST 3.10.6 10/18/1996 10:19 AM 
 
 
3)  Is the UPGRADE NECESSARY?
 
    If the current Flash PROM revision matches the version numbers given under
    the flash-update-Ultra1-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 "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.
     Check that you have security-mode = none in the PROM setup.
     This is necessary because it is possible the upgrade process
     will corrupt the PROM password.
 
       ok printenv
 
     If you do, set the security mode to none
 
       ok setenv security-mode none
 
  d) Power off the system.
 
  ** CAUTION **  Do not attempt to access any part of the system hardware
                  with the system power still on!
 
  e) Remove the system top cover.  (If you unsure how to do this then
     consult your system "Installation Guide" or "Service Manual".)
 
  f) Set J2003 to write enable at 2+3. Default is write protect at 1+2
 
     Locate jumper J2003.  NOTE that a plug-in card may be installed in
     the system which covers J2003 - if this is the case then you will
     have to remove the plug-in card in order to access J2003.
 
     Jumper J2003 provides a write enable/disable mechanism for the
     Flash PROM.  J2003 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 J2003 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 difficulty locating J2003 then consult Figure 1-1 in the 
     "Sun Flash PROM Guide for Workstations and Workgroup Servers -
     Standalone Version").
 
     If a plug-in card was removed to access J2003 in the step above
     then reinstall the card now.
 
  g) 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 interrrupted 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-Ultra1-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.4
                        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
 
 
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 ...
 
 
Restoring previous NVRAM environment settings...
 
<If any NVRAM configuration variables have custom values installed then
 you will see a list of the variables/values which are being restored.>
#power-cycles =       10
auto-boot? =          false
security-#badlogins =  0
OK
Resetting ...
 
 
+++++++++++++++++++++ example Flash update ends ++++++++++++++++++++++++++
 
  Note that the section "Restoring previous NVRAM environment settings..."
  up to the "Resetting ..." line will only be displayed on serial port A.
  If you are running from the keyboard/console devices then you will not
  see those lines displayed.
 
  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-Ultra1-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 J2003 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.
 
 
9)  Restoring PROM security mode settings
 
    If you wish to turn on security-mode=command or security-mode=full
    in the PROM, ensure you set the password first. For example:
 
      ok  setenv password
 
      ok  setenv security-mode command
 
    Failing to set the password before the security-mode can leave you
    locked out of the system.

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", which  provides the following;
 
   (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.
 
   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.
 
**WARNING:****WARNING:****WARNING:****WARNING:****WARNING:****WARNING:**
**************************************************************************
**************************************************************************

README -- Last modified date:  Thursday, May 27, 2004

