OBSOLETE Patch-ID# 113723-05
Keywords: storedge 3510 se3510 se3000 raid storage firmware ses pld
Synopsis: Obsoleted by: 113723-06 SE3510 327: StorEdge 3510 array controller firmware upgrade
Date: Aug/18/2003


Install Requirements: None                      
                      
Solaris Release: 8 9

SunOS Release: 5.8 5.9

Unbundled Product: StorEdge 3510 Array Controller Firmware

Unbundled Release: 1.0

Xref: 

Topic: 

Relevant Architectures: sparc

BugId's fixed with this patch: 4784958 4787696 4805923 4808697 4810830 4825913 4826287 4832000 4832464 4833731 4838275 4849102 4849745 4859259 4862475 4865012 4881132 4889104 4892830

Changes incorporated in this version: 4859259 4865012 4881132 4892830

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: 

        README.113723-05
        fc2u_sun_1000.s3r       # SE3510 Enclosure SES Firmware rev 1000
        patchinfo
        pld1r10.s3r             # SE3510 Enclosure PLD Firmware rev 1000
SUN327P-3510.bin        # SE3510 Array Controller Firmware rev 327P

Problem Description:

This patch contains all three types of firmware updates for the StorEdge
3510 array controller subsystem: firmware for the array controller
itself; firmware for the SES processor; and firmware for a programmable
logic device (PLD) that routes Fibre Channel data within the enclosure.
 
You do not need to install this patch if you have all of the following
firmware revision levels:
 
	 Controller firmware: 327P
	 SES firmware:	      1000
	 PLD firmware:	      1000 (or A100 if you're not running Sun Cluster)
 
If you have an earlier revision of the controller firmware, or SES
firmware A100, or PLD firmware A100 in a Sun Cluster environment, you
will need to install this patch.
 
If you're not sure how to tell what firmware you currently have
installed, follow the instructions in the Patch Installation
Instructions section below.
 
RAID firmware 327P addresses the following issues:
 
4859259 telnet connection drops
4865012 Filtered LUN maps persist after Logical Drive is reassigned to other
4881132 Fix incorrect disk status when rebuilding after RAID 1 multiple drive failures
4892830 Cntrl F/W does not Retry if Hard Drive issues timeout (62F error)
 
(from 113723-04)
 
RAID firmware 327N addresses the following issue in version 327M:
 
4862475 heavy i/o load can cause unnecessary controller failover
 
(from 113723-03)
 
RAID firmware 327M addresses the following issues in version 327K:
 
4889104 se3510 LD initialization phase takes too long (8-16 hours, no io load)
4784958 <Return> key is too sensitive to select at 3.27B FW
4805923 LUNs are inaccessible after Host resets
4808697 out of band sccli interface unavailable after extended operation.
4810830 Spelling error in tty view and edit configuration parameters menu
4832000 scsi 2 reboot test tc_mhiocstatus failure
4832464 Loss of access to LUNs after node reboots
4833731 Rebooting a host impacts channel availability
4849102 scsi2 tc_mhiocstatus reboot failure with LUN filtering enabled
4849745 Deassert a failed secondary controller causes data corruption in
        point to point
 
PLD firmware version 1000 addresses the following issues:
 
4833731 Rebooting a host impacts channel availability
4838275 Direct connect arrays failing scsi 3 reboot tests
 
(from 113723-02)
 
RAID firmware 327K addresses the following issue in version 327I:
 
4825913 point-to-point only mode will check in as loop if more than 1 id
        is assigned
4805923 LUNs are inaccessible after Host resets
4787696 controller failed persistent reservation tests
 
(from 113723-01)
 
4826287 Copy and Replace function must not be permitted while a 
        logical drive rebuild operation is in progress on the same
        logical drive.

Patch Installation Instructions:
--------------------------------
 
This patch contains firmware which is installed on the StorEdge 3510 array 
controller, rather than using installpatch or patchadd.
 
The prerequisites for installing the new firmware are:
 
 * The "sccli" CLI utility included in the SUNWsccli package, which may
   be installed from the Sun StorEdge Professional Storage Manager CD or
   downloaded as part of the StorEdge 3000 Family Software from the Sun
   Download Center.
 
 * An Ethernet connection (or two Ethernet connections for
   dual-controller configurations) is required for out-of-band RAID
   controller firmware upgrades and all PLD upgrades.  Ethernet
   connections are also used for SES firmware upgrades when using
   versions of sccli older than 1.2.6.
 
   In order to use the Ethernet connection(s), the controller must also
   have an IP address assigned.
 
 * A Fibre Channel connection to the array is required for SES firmware
   downloads using sccli 1.2.6.  It may also be used for RAID controller
   firmware upgrades if an Ethernet connection is not available.
 
Unpack the patch into any convenient directory (for example, /var/tmp),
and refer to the Special Install Instructions below.

Special Install Instructions:
----------------------------- 
 
*** Warning *** Warning *** Warning *** Warning *** Warning ***
 
Each of the firmware upgrade procedures below will prevent the StorEdge
3510 array from servicing normal I/O requests for several minutes if the
controller is currently running 327I or 327J firmware, even in redundant
controller configurations that support live firmware upgrades.  To avoid
any possibility of application failures or filesystem corruption, it is
necessary to ensure that no host I/O is permitted while the upgrade is
taking place.  For this reason, all StorEdge 3510 logical disks should
be unmounted, from any Solaris hosts connected to the array, for the
duration of the install procedure.  For example, filesystems mounted
from the StorEdge 3510 should be unmounted, and databases accessing raw
devices on the array should be shut down.
 
*** Warning *** Warning *** Warning *** Warning *** Warning ***
 
If the array controller is power-cycled at the wrong time during
programming of the PLD firmware, the array controller may be rendered
inoperable and require replacement.
 
This procedure upgrades three different firmware files for three
different hardware components: the RAID controller, which processes I/O
requests; the SCSI Enclosure Services (SES) processor, which handles
enclosure management functions; and a Programmable Logic Device (PLD)
which is responsible for routing of Fibre Channel traffic within the
subsystem.
 
RAID Firmware Upgrade:
----------------------
 
 1. Change your working directory to the directory in which the patch
    was unpacked and confirm that the SUN327P-3510.bin file is present
    using the "ls" command.
 
 2. Invoke sccli, using the appropriate syntax for the type of
    connection used to manage the array:
 
    If the array is attached to a Fibre Channel HBA installed in the
    local host host, simply type the sccli command:
 
        sccli
 
    If more than one array is connected to local Fibre Channel HBAs,
    sccli will display a list from which the appropriate device may be
    selected.
 
    If the array has an IP address configured, it may be managed
    remotely using a network (or "out-of-band") connection.  To specify
    this mode, type:
 
        sccli -w <password> <hostname>
 
    where <password> is the password assigned to the controller, and
    <hostname> is the hostname or IP address of the array.  Use single
    quote characters to quote the password if it contains any characters
    that are interpreted specially by the shell.  If no controller
    password is set, the -w option and password argument should be omitted.
 
    Verify whether you have sccli version 1.2.2 or 1.2.6 using sccli's
    "version" subcommand.
 
 3. Verify that the current controller firmware is earlier than 327P by
    typing the following command at the "sccli>" prompt:
 
        show inquiry
 
    If the firmware version reported is 327P or higher, the RAID
    controller firmware does not need to be upgraded; proceed to step 8.
    If it is reported as "3510 327I vX.XX" or 327<x> which is less than
    327P, it must be upgraded using the following instructions (steps 4
    to 7).
 
 4. If the firmware version reported is 327K or higher and the array
    contains two controllers, it is capable of performing a live
    firmware upgrade.  Otherwise, proceed to step 5 for non-live upgrade
    instructions after ensuring that all I/O activity has been halted as
    described above.
 
    To perform a live upgrade of redundant controllers, at the "sccli>"
    prompt, type the command:
 
        download controller-firmware SUN327P-3510.bin
 
    The sccli command will display messages indicating that it is
    downloading the firmware, programming the controller's flash memory,
    and "engaging" the new firmware.  Wait until the "sccli>" prompt
    appears again, or 3-4 minutes, before proceeding with step 7.
 
 5. To upgrade firmware on an array containing just a single controller,
    or containing 327I firmware, make sure that no hosts are currently
    accessing the array by halting applications which store data on the
    array, and unmounting filesystems mounted from the array.
 
 6. At the "sccli>" prompt, type the command:
 
        download controller-firmware -r SUN327P-3510.bin
 
    The sccli command will display messages indicating that it is
    downloading the firmware, programming the controller's flash memory,
    and resetting the controller.  Wait until the "sccli>" prompt
    appears again, or 3-4 minutes, before proceeding.
 
 7. Verify that the firmware upgrade succeeded by examining the firmware
    revision again.  Type "quit" at the sccli prompt and then run
    sccli again (repeat step 2) to ensure that the old firmware revision
    will not be displayed.  At the "sccli>" prompt, type
 
         show inquiry
 
    and verify that the firmware revision is now reported as "327P".
 
SES Firmware Upgrade:
---------------------
 
 8. If the version of the sccli command is less than 1.2.6, it is
    necessary to perform the SES upgrade procedure using a network
    (out-of-band) connection to the array rather than using a Fibre
    Channel (inband) connection.  If you did not invoke sccli by
    specifying a hostname or IP address in step 2, do so now.
 
    If using sccli 1.2.6 or later, the SES download operation should not
    be done using a network connection.  Invoke sccli with no command
    line arguments to select a Fibre Channel connection to the array.
 
 9. Verify the SES firmware by issuing the sccli "show ses" subcommand:
 
        sccli> sho ses
        Ch  Id  Chassis  Vendor  Product ID        Rev   PLD   WWPN
        -----------------------------------------------------------------------
         2  12  000187   SUN     StorEdge 3510F A  A100  A000  204000C0FF000187
         3  12  000187   SUN     StorEdge 3510F A  A100  A000  204000C0FF000187
 
    Examine the SES firmware revision codes displayed in the "Rev"
    column.  If all of the lines contain a revision code of 1000 in the
    Rev field, then no SES firmware update is necessary and you should
    proceed to step 13.
 
10. Since the SSCS agent may interfere with download of SES code, it is
    necessary to stop any SSCS agent that may be running on a host
    connected to the array controller.  To stop the SSCS agent, issue
    the shell command "/etc/init.d/ssagent stop" as root on any system
    where the SUNWscsa package is installed.  If the SSCS agent is
    running on a Microsoft Windows system connected to the array, use
    the "Services" application (Start->Run->"services.msc") to stop the
    SSCS Agent service.
 
11. At the "sccli>" prompt, type the following command:
 
       download ses-firmware fc2u_sun_1000.s3r
 
    The entire procedure, including shutting down the controller,
    downloading firmware into all of the SES devices in parallel, and
    resetting the controller to restore normal operation, normally takes
    up to seven minutes.
 
    After the SES firmware is downloaded, the controller must be reset
    in order to restore normal operation.  When performing this
    procedure out-of-band, occasionally sccli may lose
    communication with the controller and produce the folllowing
    messages:
 
        sccli: Resetting controller...failed
        sccli: Please manually reset controller!
        sccli: download enclosure firmware: error: sm_err_fw_download_failed
        sccli: controller is not responding: se3000://nnn.nnn.nnn.nnn:58632
 
    If these messages occur, use the telnet command to connect to the
    controller and use the System Functions/Reset Controller menu item
    to manually reset the controller.  Wait at least a minute for the
    controller to finish booting before proceeding.
 
12. Run the sccli subcommand "show ses" again to verify that all SES devices
    have been upgraded to version 1000, as indicated by the "Rev" column.
 
PLD Firmware Upgrade:
---------------------
 
13. Performing a PLD firmware upgrade incorrectly could result in the
    array controller FRU being renederred unusable.  Carefully consider
    the following issues before proceeding:
 
    Upgrading the PLD firmware in the chassis is required for Sun
    Cluster support.  If Sun Cluster support is NOT required, skip to
    step 19.
 
    sccli version 1.2.6 or higher is required to upgrade the PLD
    firmware.  If an earlier version of sccli is installed, you must
    upgrade it to 1.2.6 or higher before proceeding.  If do not have
    sccli 1.2.6, skip to step 19 and repeat this procedure after
    installing sccli 1.2.6.
 
    Upgrading the PLD firmware causes the host's Fibre Channel HBAs to
    be disconnected from the array temporarily, which could prevent
    sccli from completing the procedure properly if sccli is not used
    out-of-band.  sccli must be invoked with the hostname or IP address
    assigned to the array, so that a network connection is used to
    communicate with the array controller (see Step 2).
 
    The PLD firmware upgrade cannot be completed without power-cycling
    the array at the end of the procedure.  Do not proceed if it is not
    possible to power cycle the array at this time.
 
14. Verify the PLD firmware revision by issuing the sccli "show ses"
    subcommand:
 
        sccli> sho ses
        Ch  Id  Chassis  Vendor  Product ID        Rev   PLD   WWPN
        -----------------------------------------------------------------------
         2  12  000187   SUN     StorEdge 3510F A  1000  A000  204000C0FF000187
         3  12  000187   SUN     StorEdge 3510F A  1000  A000  204000C0FF000187
 
    Examine the PLD firmware revision codes displayed in the "PLD"
    column.  If all of the lines contain a revision code of 1000 in the
    PLD field, then no PLD firmware update is necessary and you should
    proceed to step 19.
 
15. Make sure that all host I/O activity has been stopped.  The array
    will be unable to process host I/O activity for up to 10 minutes.
 
16. Type the following command at the "sccli>" prompt:
 
         download pld-firmware pld1r10.s3r
 
    sccli will indicating that it is shutting down the controller,
    sending the PLD firmware data, programming the flash memory, and
    finally it will report that the download has completed
    successfully.  It will then attempt to reset the controller,
    producing the following messages:
 
        sccli: Resetting controller...failed
        sccli: Please manually reset controller!
        sccli: Please wait 3 to 5 minutes until PLD flashing completes
        sccli: download enclosure firmware: error: sm_err_fw_download_failed
 
    DO NOT POWER CYCLE THE ARRAY YET.  Note the time and wait 5 minutes
    for the PLD flash programming operation to complete.
 
17. After waiting at least 5 minutes after seeing the message "Please
    wait 3 to 5 minutes until PLD flashing completes", turn off power to
    the array, wait 10 seconds, and then turn power back on.  Be sure to
    turn off, or unplug, BOTH power supplies, as removing power from one
    power supply does not cause the array to lose power.  Allow up to 3
    minutes for the controller to restart fully.
 
18. Restart sccli and run the "show ses" command again to verify that
    the PLD firmware revision displayed in the PLD column is 1000 for
    all SES devices show.
 
After Upgrading:
----------------
 
19. If the SSCS agent was stopped in step 10, restart it with the
    command "/etc/init.d/ssagent start" if it is installed on Solaris,
    or using the "Services" utility (Start->Run->"services.msc") if it
    is installed on Microsoft Windows.

README -- Last modified date:  Tuesday, December 2, 2003

