Patch-ID# 114285-08
Keywords: 6120 raid storage firmware loopcard eprom interconnect
Synopsis: 6120 3.0.7: System Firmware Update
Date: Oct/21/2003


Install Requirements: None                      
                      
Solaris Release: 9

SunOS Release: 5.9

Unbundled Product: StorEdge 6120/6020 Array Firmware

Unbundled Release: 3.0.7

Xref: 

Topic: 

Relevant Architectures: sparc
  	NOTE: 
	This patch release is for the 6120 Array only and not the
	T3 or T3B Array.  If you have a T3 or T3B Array, and are
	looking to update with the latest patch release, please 
	download patch 109115-14 (or later) and 112276-08 (or later) 
	respectively.

BugId's fixed with this patch: 4930674

Changes incorporated in this version: 4930674

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: 

  6120.sh                # 6120 File Upload Utility
  lpc14_6.29.bin         # Unit Interconnect Card Firmware
  patchtoc               # 6120.sh: Files to Upload To Target 6120 
  t4l1_307.bin           # Controller firmware level 1
  t4l2_307.bin           # Controller firmware level 2
  t4l3_307.bin           # Controller firmware level 3
files.tar              # 6120 System Files Tar Image

Problem Description:

---------------------------------------------------
 (3.0.7 Firmware)
---------------------------------------------------
4930674 Parity error detection is NOT enabled in 6120 controller firmware
 
---------------------------------------------------
 (3.0.6 Firmware)
---------------------------------------------------
4899514 6120: Drives marked offline when systems are powered up in 2x4 and 2x6
 
4904506 6120: Remove auto START1 pulse
 
4896121 Patchpro fail to upgrade array loopcards.
 
4893625 6120: lpc version in device tree not correct upon lpc 
crash/hotplug/reboot
 
4888955 T4: Handle noise on PCU_SWITCH_L signal
 
4869416 T4: Require controller fw changes to fully comply with
Watchdog timer spec
 
4869877 after `.boot -c` sysPsSafe is false
 
4866314 T4/T3B Adding/removing group/group member can cause data access
exception
 
4856598 T4/3.1: Cache mode is not in "writebehind" mode after cache and
mirror are set t
 
4840853 T4: with u1-altmaster,u4-master, disable u4 the failover to u1
as Master failed
 
4860874 T4: FATAL_NOT_0(scbP->prev) - xf_util.c line 1002, scbP->next 
=> 49192036 != 0
 
4862486 bss corruption during level 3 initialization
 
4862692 Issue of command 'help sim_diag' from telnet session causes 
controller reset.
 
4852979 - set passwd at L2 does not take new password
 
4807242 T4:2x4 & 2x6 Master console appears hung for long time
 
4840176 Vol mode doesn't switch to writebehind
 
4809921 T4: checksum error on boot during s/w upgrade
 
4847470 T3B/T4: Level 1 boot code update not allowed currently
 
4849599 T3B/3.1 code: Amber LED of standby drive is "on" after 
a recon process
 
4841247 loop card led remained green - u1ctr lit blue
 
4853849 dot_ver: need to accommodate null string build_seq
 
4848294 vol verify fix cmd could lead to data corruption
 
4835423 M26/M28:2x4/2x6 u1/u3/u4: ri_util.c line 187, Assert
 
4840462 batteries failing recharge after 7 hours
 
4820786 T4: a failed battery status should not change to normal.
 
4835912 the next battery refresh should be recalculated after 
changing the date
 
4830120 T4: With all PCUs charging, cache mode is in writebehind.
 
4824264 T4: vol mode changes to writethrough during refresh for a few minutes
 
4803190 battery warranty message expired message should have reminders
 
4810026 controller disables PCU during battery test
 
4812943 M22: `refresh -s` may show a warranty date of Jan 1 24:00:00 GMT 1972
 
4812975 RTEC error in scheduler
 
4839530 do not perform warranty check for failed batteries
 
4843240 In a T4 2x2 with 1 PCU Switched Off & disabled cache stays writebehind
 
4816039 isPcuHealthy() should use the device tree and not poll
 
4818964 T4 SIS - green LED is in wrong state for the "BUSY" state
 
4829795 improve battery health check failure analysis
 
4833554 T4: when battery is charging, if PS is off, refresh -s does not 
show off status
 
4843240 In a T4 2x2 with 1 PCU Switched Off & disabled cache stays writebehind
 
4840182 battery status incorrrect for disabled loopcards
 
4850367 T4 typo - Battery health checks are diabled.
 
*4816821 a real AC power fail does not terminate "refresh -c" (partial fix)
 
4811051 T4: current syslog size can not hold ISP2300's ISP dump
 
4829192 savecore live RAM upload not working
 
4657035 T3B/T4: attempting to GET token attachVolId with NO volumes
on Partrp - U1 d
 
4776244 HTTP token 'volVerifyRate' retunr 'null' value.
 
4776249 HTTP token 'volInitRate' returns 'null' value.
 
4834689 sysProps and volGroupIndex token can get out of synch
 
4827957 T4 fruPowerBatSerialNo token not getting populated
 
4831459 T4: can not enable a disabled ctlr, while u1l1 is out
 
4797625 Psos Debugger Broken
 
4739642 T4: need cleanup in lpc_slp.c/que_cls.c
 
4828600 `refresh -c` fails after 15 seconds
 
4829502 change battery recharge timeout to 7 hours
 
4828593 health check runs during boot when it's not supposed to
 
4828587 impossibly high battery temperature seen during health check
 
4816380 T4: task info in syslog error message is corrupted
 
4819191 Typo "Fillsystem is full" should be "Filesystem is full"
 
4818658 M25: host accessing one incorrect volume that belongs to 
different initiator group
 
4820919 T4: lun permission field 'WWN Perm' displayed incorrectly.
 
4820941 T4: no warning message when number of group names added 
is exceeded.
 
4827709 M24: fru stat & vol stat give invalid information 
during lengthy "vol recon"
 
4824477 M24: Conflicting Use of Green/Amber/Blue LEDs lead to 
incorrect component pulls
 
4661583 The 'lun wwn rm' command does not always work properly with 
a telnet session
 
4831575 T4: sim_diag cli returns wrong error message for 
external loopback testing.
 
4832811 Modify POST to detect 2.5 SAT teststand and update brdinfo struct
 
4773917 the fix for cache hit/miss counters.
 
4757036 before spliting loop, look at present state of the 
two backend loop first.
 
4823761 turning on NTP service on the T4 works only for the first time
 
4827533 turn on amber LED on POST failure
 
4798293 T3B: ntp client degrades host i/o performance
 
4834680 Controller SAT code should be enclosed with #ifdef PURPLE4
 
4815952 Need token interface for drives FC statistical counters and 
drives on loop
 
4827533 turn on amber LED on POST error
 
4784375 "T3B/T4: the sysLastRestart time in sysprop is changing
 
4818842 sys list does not display correct T4 sys memsize
 
4827186 Enhanced t3unzip usability features
 
4830142 T4 2x6: PGR Preempt_and_Abort command fail after controller failover.
 
4835550 T4: Output of PGR .debugpgr command show duplicate reservation.
 
4836924 dot ver cmd to include extra version info
 
4828729 ECHO on frontend controller port does not work on 2.5 controllers.
 
4830558 ECHO command needs to be able to do multiple iterations

Patch Installation Instructions:
-------------------------------- 
 This patch includes a firmware uploading utility (6120.sh) that 
 simplifies transferring the contents of this patch to a StorEdge
 6120 system.   This script is intended for use on Solaris host 
 systems only.  To manually install the contents of this patch
 see the pertinent section below.
 
 *** Warning *** Warning *** Warning *** Warning *** Warning ***
 BEFORE attempting to load firmware on a StorEdge 6120 system, be sure to
 stop all IO activity from all attached host systems.  This procedure
 requires a 6120 system reboot so all necessary host preparations
 needed to sustain this procedure should be made before starting.
 It is recommended all 6120 volumes be unmounted on Solaris before 
 proceeding with this patch installation.
 
 Note: To verify the current firmware version running on a target
       6120 system, use the 'ver' command at the 6120 command line
       as follows:
 
         array00:/:<3>ver
 
	6120 Release 3.0.5 Thu Apr 17 14:39:37 PDT 2003 (10.4.32.97)
        Copyright (C) 1997-2003 Sun Microsystems, Inc.
        All Rights Reserved.
 
  To update the 6120 system with the entire contents of this patch follow
  the steps below after quiescing IOs from the host: 
 
 1. System Preparation
    Once the patch has been downloaded to a Solaris host, change
   directories to the patch directory and run the following command:
 
	  # pkgadd -d . SUNWc6120
 
  The resultant files will be located in the following directory:
  /var/sadm/swimages/114285-08
 
 2. Verify the 6120 system to be upgraded is reachable on the network:
 
         $ ping array00
           array00 is alive
 
 3. Verify the 6120 system working correctly. The 6120.sh script supports
 empty password, so there is no required to have password in 6120 system.
 
 
        $ telnet array00
        Trying 129.150.47.115...
        Connected to array00.
        Escape character is '^]'.
 
 
	Unauthorized access is prohibited.
 
 
        Login: root
        Password:
 
	6120 Release 3.0.5 Thu Apr 17 14:39:37 PDT 2003 (10.4.32.97)
        Copyright (C) 1997-2003 Sun Microsystems, Inc.
        All Rights Reserved.
 
        array00:/:<1>
 
 4. Transfer patch contents to 6120 system.
 
    Note: There is limited space available in the 6120's reserved system 
          area.  Therefore, it is important to be sure there is 
          adequate space on the 6120 before proceeding with the 
          procedure to ftp firmware images to the unit.  It is
          not necessary to keep old images of controller firmware, 
          unit interconnect card firmware, or eprom binaries 
          on the 6120 once those images have been loaded per the
          instructions provided in this readme.
 
    The recommended way to install the contents of this patch on 
    6120 systems is to use the included 6120.sh script from a Solaris
    host that has network access to the target 6120 system being 
    upgraded.  This utility will transfer the required files in this patch 
    to the target system depositing the files in the correct directories.  
    If a Solaris host isn't available, the contents of this patch 
    can be manually uploaded to the target 6120 system using the following
    method.  
 
      Manual File Installation
      ------------------------
 
      -> Extract the contents of the 'files.tar' image to a 
         temporary working directory:
 
      -> Manually ftp the following files contained in this patch  
         to the corresponding directory on the 6120 system:
 
             Patch Source Location        6120 Destination 
             -------------------------    ------------------------
              ./lpc14_6.29.bin             /lpc14_6.29.bin
              ./t4l3_307.bin               /t4l3_307.bin 
	      ./t4l2_307.bin               /t4l2_307.bin
 
           (From temporary Working Directory)
              ./etc/bat.conf               /etc/bat.conf
              ./web/*.htm                  /web
              ./web/snmp/t300.mib          /web/snmp/t300.mib
	      ./etc/zoneinfo		   /etc/zoneinfo
 
    Automated File Installation
    ---------------------------
    Note: The '6120.sh' installs all controller and system files but 
          does not overwrite /etc/hosts and /etc/syslog.conf files 
          on the target 6120 system as these files are typically
          customized per local operating environment requirements.  
          One exception to this is the battery refresh scheduler
          file on the 6120 (/etc/bat.conf).  The 6120.sh script
          will make a backup copy of this file on the 6120 (to 
          /etc/bat_old.conf) before copying over the new 
          /etc/bat.conf file.  Factory default versions of these 
          files do exist in the accompanying files.tar image in 
          this patch should they be required however.
 
    To start the installation script, first verify the target 6120 
    system can be reached through the local network (use ping to verify 
    the target 6120 system is reachable).  Once this has been confirmed,
    the installation script can be started as follows:
 
       ./6120.sh
 
    (Note: Be sure the 6120.sh script is executable.) 
 
    The 6120.sh utility will prompt for information as follows:
 
      Please Enter Hostname or IP Address Of 6120 To Be Ugpraded: 
 
       -> Enter Hostname or IP address of the target 6120
          system.
 
    Please Enter Patch Location Pathname [.]: 
 
       -> Enter path to where the files.tar image exists.  Typically
          the default current working directory is sufficient 
          (hitting enter will accept the current working directory).
 
    Please Enter Your Home Directory Path [/home/joe_user]:
 
       ->  The home directory of the user ID used when launching the 
           6120.sh script (this is used by ftp to automatically load the patch
           file contents to the 6120).
 
    Enter ftp user
 
       ->  Enter the default 6120 root login
 
    Enter ftp password
 
       ->  Enter the root password for the 6120
 
    At this point, the automatic ftp login/upload process should
    begin.  
 
 5. Boot the 6120 controller boot code.
 
    From the 6120 command line, type the following to install the
    level 2 and 3 firmware code:
 
       :/:<7>ep download t4l3_307.bin
       :/:<7>ep download t4l2_307.bin
 
   NOTE: You DO NOT need to upgrade level 1 firmware. 
 
   (Caution: be sure all IOs have been quiesced and no host IO activity
             is scheduled to start until the upgrade procedure has completed)
 
 6. Verify system boot mode set to auto:
    From the 6120 command line, type the following:
 
       :/:<9>set bootmode auto
 
 7. Reset the 6120 System as follows:
 
       :/:<10>reset 
       Reset the system, are you sure? [N]: y
 
 8. Once the system has booted successfully, log into the system and 
    verify the boot code is properly loaded using the 'ver' command
    as outlined earlier.	
 
 9. Load new Unit Interconnect Card Firmware:
    Using 'lpc version' on the 6120, if the loop card firmware is 
    running downrev firmware, upgrade all loop cards in the partner 
    group as follows from the 6120 command line:
 
        :/:<1>lpc version
	               LOOP A          LOOP B
	Enclosure  1   6.27            6.27           
	Enclosure  2   6.27            6.27
 
        :/:<2>lpc download u1l1 lpc14_6.29.bin
 
    Repeat the above steps for all units in the partner group (ie u2l1 
    and u2l2).
 
        :/:<3>lpc download u1l2 lpc14_6.29.bin 
        :/:<4>lpc download u2l1 lpc14_6.29.bin
        :/:<5>lpc download u2l2 lpc14_6.29.bin
 
 
      Note: It is possible to string 6120 commands together using the 
            semicolon command.  This allows a single command line session
            to launch several commands without waiting for each command
            to complete.  To upgrade both loop cards one controller
            for example, one could type the following:
 
            :/:<2>lpc download u1l1 lpc14_6.29.bin; lpc download u1l2 lpc14_6.29.bin
 
    Reboot the loopcards for the upgrade to take effect:
 
	    :/:<6>lpc reboot u1l1
 
    Repeat the above for the other loopcards 
 
    From the command line, verify the correct unit interconnect card 
    versions are loaded as follows:
 
        :/:<6>lpc version
	               LOOP A          LOOP B
	Enclosure  1   6.29            6.29
	Enclosure  2   6.29            6.29
 
10. type "port list" and verify ports
 
      :/:<1>port list
 
	port   targetid   addr_type   status   host   wwn
	u1p1      1        hard       online   sun    20030020f204462e
	u2p1      2        hard       online   sun    20030020f2044627
 
11. Verify volumes are visible and mounted.
 
    From the command line, enter the following:
 
      :/:<2>vol list
	volume            capacity raid data       standby
	v0              219.197 GB    1 u1d01-13     u1d14
 
12. Setting Time Zone:
 
    From the command line, enter the following:
 
       :/:<3>set timezone UTC
 
13. Congratulations, the upgraded 6120 is ready to use again.

Special Install Instructions:
-------------------------------------------
If you plan to run several automated file installation scripts (6120.sh)
the same time on one host to update many 6120 systems, you must enter
different "Home Directory Path" since 6120.sh script will use $HOME/.netrc
for ftp. Please make sure that you have full permission in those
directories.

README -- Last modified date:  Tuesday, October 21, 2003

