<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Patch-ID# 105375-15
Keywords: luxadm sf socal FCIO_DIAG_XRAM SCSI PLOGI l_forcelip_al
Synopsis: SunOS 5.6: sf &amp; socal driver patch
Date: Aug/11/99

Solaris Release: 2.6

SunOS Release: 5.6

Unbundled Product: 

Unbundled Release: 

Topic: SunOS 5.6: sf &amp; socal driver patch

   NOTE 1:  SENA stands for Sun Enterprise Network Array.
   NOTE 2:  Please see notice below for instructions related to the 
	    A5X00 product.

BugId's fixed with this patch: 4015886 4025409 4030734 4031041 4036472 4036749 4047301 4050519 4051284 4054687 4054760 4055040 4055228 4056709 4057005 4058805 4058810 4059228 4060193 4060307 4060560 4062000 4063084 4063493 4063496 4063497 4063499 4063742 4064114 4064166 4064279 4064482 4064549 4065043 4065321 4065385 4065417 4065420 4065940 4066322 4066415 4066713 4067130 4067384 4067387 4068175 4068954 4069476 4069480 4069883 4070007 4070592 4071327 4071488 4071594 4073562 4073760 4075971 4076393 4076803 4078020 4078980 4080541 4080808 4080854 4081122 4081476 4083412 4083546 4083799 4085407 4085409 4085991 4086742 4087136 4088087 4088433 4095654 4097503 4099594 4100296 4100443 4100605 4101561 4103990 4104809 4106624 4106779 4108240 4109787 4110058 4110306 4112951 4115628 4116879 4118183 4119615 4121257 4121455 4121615 

BugId's fixed with this patch: 4122222 4126345 4126347 4127968 4135264 4138400 4138453 4139161 4144915 4145080 4157938 4163232 4166309 4167039 4168974 4170833 4171180 4173215 4173432 4175643 4178514 4178550 4179070 4179119 4179506 4180833 4181098 4183049 4188044 4190846 4199373 4204363 4208731 4209342 4209393 4212185 4224244 

Changes incorporated in this version: 4199373

Relevant Architectures: sparc

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:

/kernel/drv/socal
/platform/sun4d/kernel/drv/sf
/platform/sun4u/kernel/drv/sf
/usr/lib/firmware/fc_s/fcal_s_fcode
/usr/lib/locale/C/LC_MESSAGES/ibfirmware
/usr/sbin/luxadm

/platform/sun4u1/kernel/drv/sf

Problem Description:

4199373 hardware failures do not allow loop to hard hang and use dmp

(from 105375-14)

4209393 "Display Disabled ? ..." shown on FPM when download IB 1.0I
4180833 System booting was very slow or hung at the 2nd booting host with long wave

(from 105375-13)

4224244  Add code for multi-lun handling
4204363 Photon HA reset results in "fw date code:&lt;not available&gt;" being printed
4112951 soc/socal: LP64 drivers neeed to cleanup id32_alloc() code - 2.7 only
4209342 Offline Timeout --&gt; requeue of command fails (long wave)

(from 105375-12)

This revision produced to address the release of an incomplete version of
rev -11 instead of the full patch.

(from 105375-11)

4208731 A5x00 22 disks + metaset -t + luxadm display = Panic !
4212185 luxadm queries return very slowly

(from 105375-10)

4106779 E3500 should have utility to get status on internal FCAL drives
4138453 luxadm: Printing of enclosure abnormal condition will not work
4167039 luxadm power_off enclosure does not work with no logical path device
4085991 Incorrect error msg when doing inquiry to a powered off drive
4168974 power_off cmd will take place on busy devices under volume manager.
4095654 luxadm display wrong enclosure when WWN=0
4171180 luxadm reports status of backplane element incorrectly when bypassed.
4175643 Implement bypass, enable &amp; sysdump subcommands in luxadm
4179070 Device Type:Disk device displayed for device in enclosure.
4178514 luxadm -e bypass doesn't give a usage error message
4179506 luxadm -e bypass backplane not showing correct status
4181098 Segmentation Fault (core dumped) when try to remove drive with WWN0s
4121257 luxadm: power_off subcommand with -F option is giving Usage errors.
4116879 luxadm doesn't check return from devctl_acquire correctly
4135264 luxadm disp on /dev/es/ses# sees disks it shouldn't!!!
4139161 luxadm remove -F does not work on reserved and unreserved paths
4115628 luxadm fcal does not see the FC100/S cards.
4138400 luxadm: drive with reservation is shown with "SCSI Error"
4190846 IB goes into failed state while running load-stress tests on 22-drive Cheetah dr
4173432 sf: sfioctl does not free devctl_iocdata on success
4178550 "fc packet status = 34" messages at every lip
4157938 panic on 251 OS with intermixing 14/22 drive photons, no-27, dual host testing
4170833 Since upgrading I/B firm to 1.07, installing patch 105375-09 and disk firm to 13
4163232 lip on one loop causes SCSI transport failed/rejected on other loop [S2.5.1]
4173215 misreported Lost Frame messages
4188044 io hang with lips on the heavy io loop
4166309 SF - removing one drive from an E3500 hangs system
4183049 Unused FCAL port is reported as OFFLINE timeout
4179119 STORtools: System panic while running Installation Verification

(from 105375-09)

4083412 socal, sf: needs to support DETACH/SUSPEND/RESUME
4106624 luxadm prints "Error: SCSI Error - Sense Byte: busy" when devices report busy.
4108240 ifp not getting response from PHOTON (from ABTS after LIP)
4110058 data corruption with data stored on photons
4119615 sf: assertion failed: prev_state != SF_STATE_IDLE
4121455 i/o hung on 2 photon disks
4121615 panic while dual host testing with ultraII
4122222 dd command was aborted with another system booted
4126345 sf: issues unnecessary logouts when host adapter al_pa changes
4126347 sf: can cause retry and ultimate failure of recovered commands
4127968 sf: sf state marked incorrectly, sf_reset&amp;sf_abort pass incorrect timeouts
4144915 I/O 's can hang for a dual ported FC drive in error recovery cases
4145080 IB f/w does not work with 11 slot backplanes.

(from 105375-08)

4118183 DMP failover not working with Solaris 2.6

(from 105375-07)

4097503 initialization of loop fails to creat links with 2 racks using 2 HA's.
4101561 luxadm insert_device fails to insert a new disk during disk replacement
4086742 kernel panic due to bad token from soc+ microcode
4104809 BAD TRAP occurred in module "ses" due to an illegal access to a user address
4070007 one or more SENA racks fails to come online in multi-rack configuration
4078020 sf: WWN for the Host Adapter in the loop map is zero.
4087136 host drivers can't complete login to any devices on loop.
4088433 Fibre Channel online/offline during booting
4015886 ssd: add support for hotplug event callbacks
4100296 no response from SOC+ to rdls els request
4100605 sf driver could return with out releasing target mutex
4080541 luxadm: l_forcelip_all does not understand multiple loops
4109787 luxadm: luxadm does not remove links when removing multi-hosted disks
4108240 ifp not getting response from SENA (from ABTS after LIP)
4088087 parallel downloads not supported on SENA's in a luoop
4085407 FPM: Wrong ICON used in one of the FPM backplane screens
4085409 FPM: It takes 2 times to online both backplanes in FPM screens
4099594 A5000 : Replacing interface board causes restarting SENA
4067387 fcode doesn't recover from the lip while booting from a SENA disk
4081476 PRLI ACC payload returned by SENA is incorrect
4073562 ibfirmware: Reset to IB fails

(from 105375-06)

4103990 luxadm remove_device should provide an option to open a device in non EXCL mode.

(from 105375-05)

4064114 in multipath configuration, seagate disk reservation is not consistent
4065321 power_off subcommand offlines reserved disk or busy disks
4065940 luxadm -e dump_map does not accept the socal node as a parameter
4070592 luxadm should report an error when host tries to release someone's rsrvd. disks
4110306 luxadm: typo and error displaying reserved status found in code test/review

(from 105375-04)

4100443 2nd instance of RUN dd test gets timeouts on E3000+ internal drives

(from 105375-03)

4071594 SENA: error recovery problems triggered by SCSI parity error
4073760 panic in sf caused by Data Fault
4078980 Patch 2 binaries and veritas (I/O hang)
4083546 Symon 1.5 panics on E4K with onboard soc+ and SENA.
4075971 Bad Trap PANIC when utilizing SENA under heavy I/O load with DR/AP
4076393 sf: panic when swapping out SENA's on idle system
4083799 heavy I/O and running lbf test caused panic on E10000.
4065417 enatest FATAL: "Could not communicate with the enclosure
4065420 socaltest FATAL: "Failed ioctl FCIO_DIAG_XRAM"
4076803 SENA drivers should report target numbers consistently
4080854 socal: facility to verify token returned (debug mode)
4047301 luxadm: Remove need for led_on subcommand for SENA by updating remove subcommand
4066415 luxadm: remove_device offlines the SENA disks while doing I/O to the disks.
4069883 luxadm: luxadm reports open failed when IB is on multiple loops.
4071327 luxadm: remove_device fails to offline all the disks in an enclosure
4066322 if remove_dev subcmd. fails then it should restore the device's original state
4068175 can't power on the disks from one host if they are powered off from another host
4064482 ibfirmware: The Rqst Insert bit  in the device element does not stay set.
4067384 assertion failure due to soc+ microcode returning incorrect loop map.
4080808 firmware: PLOGI payload isn't being sent fully.
4081122 sf: els packets can be freed twice
4066713 drive hang doing dual port write 
4071488 remove_device: cannot remove the enclosure in dual-host configuration
4073562 ibfirmware: Reset to IB fails. [IB 1.03]

(from 105375-02)

4071594 SENA: error recovery problems triggered by SCSI parity error
4073760 panic in sf caused by Data Fault
4078980 Patch 2 binaries and veritas (I/O hang)
4083546 Symon 1.5 panics on E4K with onboard soc+ and SENA.
4075971 Bad Trap PANIC when utilizing SENA under heavy I/O load with DR/AP
4076393 sf: panic when swapping out SENA on idle system
4083799 heavy I/O and running lbf test caused panic on E10000.
4065417 enatest FATAL: "Could not communicate with the enclosure
4065420 socaltest FATAL: "Failed ioctl FCIO_DIAG_XRAM"
4076803 SENA drivers should report target numbers consistently
4080854 socal: facility to verify token returned (debug mode)
4047301 luxadm: Remove need for led_on subcommand for SENA by updating remove subcommand
4066415 luxadm: remove_device offlines the SENA disks while doing I/O to the disks.
4069883 luxadm: luxadm reports open failed when IB is on multiple loops.
4071327 luxadm: remove_device fails to offline all the disks in an enclosure
4066322 if remove_dev subcmd. fails then it should restore the device's original state
4068175 can't power on the disks from one host if they are powered off from another host
4064482 ibfirmware: The Rqst Insert bit  in the device element does not stay set.
4067384 assertion failure due to soc+ microcode returning incorrect loop map.
4080808 firmware: PLOGI payload isn't being sent fully.

(from 105375-01)

4036749 Data Access Error during boot due to device not coming online
4064279 disks: luxadm display subcmd. doesn't print the multiple paths to SENA disks
4057005 display -r output format should be aligned properly
4063493 ibfirmware: no way to determine rev level for ibfirmware image
4031041 insert_device (hotplug feature) command is not adding a new device to the sys.
4064549 kernel panics while booting from a SENA disk
4055228 loop hangs while doing heavy IOs to all four SENA's in a single loop.
4058805 luxadm hot-plug: Need to tell the IB to do drive_off after stopping the drives.
4063499 luxadm display commands do not show box ID
4051284 luxadm: User can't use WWN as path to device if multiple boxes have same name.
4025409 luxadm, ssaadm: Problem parsing path when in /devices/... directory
4030734 luxadm is not evaluating the command line argument properly for the probe subcom
4036472 luxadm restricts possible box names.
4064166 luxadm, ssaadm: fcal_s_download/fc_s_download dumps core on sun4d
4065385 luxadm fcal_s_download breaks with SSA HA in system.
4067130 luxadm fc_s_download -f fcal_s_fcode can blitz SSA HA's
4068954 luxadm: fc_s_download subcommand fails when -F option is used
4065043 multiple paths to an enclosure prints different temperature info
4060193 FPM doesn't print the Loop Type properly in split loop configuration
4050519 FPM:setup: naming the SENA does not go into a confirm screen to save changes
4054687 FPM : warning sign(!) is not displayed when Interconnect assembly has bad image.
4055040 FPM: do not display Temperature status on the Back plane screen
4054760 FPM: can not clear using back-space key on Name screen
4056709 fcode: Can't boot from a SENA disk in a dual host scenario.
4058810 firmware: Reset to the SENA causes the firmware to halt.
4063497 SENA error recovery takes too long due to OFFLINE/ONLINE sequence
4060307 In split loop config. ses driver is not creating the /dev/es/ entries properly
4060560 sf driver hba event notification handling incorrect - needs to use scsa
4062000 sf driver send ABTS too soon for target reset; seen in luxadm download -sf
4063084 socal: system will hang if polled commands timeout
4063496 socal: not using WWN from fcode dev tree property
4069480 socal: provide a fcal_transport function to dump soc xram
4069476 panic: freeing a free packet on E6000 and 6 rack configuration
4059228 remove_device subcommand removes the reserved disks from a different host
4063742 remove_device displays incorrect warning message (could not blink Yellow LED)
4066415 remove_device offlines the SENA disks while doing I/O to the disks.

*******************************************************************
*******************************************************************
IMPORTANT NOTICE FOR A5X00 PRODUCT:

  !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! 
  !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! 
  !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! 

  Failure to read and follow the "Special Install Instructions"
  BEFORE attempting to install this patch could result in disabled
  A5X00 Interface Boards. In some cases, boards disabled by not
  following the "Special Install Instructions" may have to be
  replaced.

  Make sure you read the "Special Install Instructions" section 
  in this README file BEFORE installing this patch.

  If a firmware upgrade failure has already occurred, see the
  section at the end of the Special Install Instructions titled 
  "What to do in case of IB firmware upgrade failure".

  !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! 
  !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! 
  !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! 

The A5X00 IB firmware may have to be downloaded to the IBs after
installing this patch.

The FC100/S Host Adapter fcode may have to be downloaded into the
FC100/S Host Adapter after installing this patch.

The following patches (or newer versions)  need to be installed 
together and in the following order:

103346-xx - Only required for Sun Enterprise I/O boards with onboard FCAL.
105356-09
105357-04
105375-15 - This patch!
107280-02 - PCI systems only..
106129-07 - A5X00 only

Do not reboot the system until all of these patches have been installed.

*******************************************************************
*******************************************************************


Patch Installation Instructions: 
-------------------------------- 
Refer to the Install.info file within the patch for instructions on
using the generic 'installpatch' and 'backoutpatch' scripts provided
with each patch.  Any other special or non-generic installation
instructions should be described below.


Special Install Instructions: 
----------------------------- 
Note - Upgrading IBs with firmware revision level 1.01 requires extra
steps to complete the upgrade safely.  There are two ways that the
upgrade may be performed:

  A. Interface Boards (IB) with firmware revision 1.01 must be upgraded
     to revision 1.03 BEFORE being upgraded to revision 1.09.  
     IB firmware revision level 1.03 is available in patch 105375-04,
     which may be available from your service representative.

  B. IBs on A5X00s with firmware revision 1.01 must be upgraded one
     at a time, which involves temporarily removing one IB while the
     other is upgraded.

Later on in the patch install instructions you will be asked to choose
one of these methods. Note that method A is preferred and requires that
patch 105375-04 be available if it is not already installed on the system.

The following patches need to be installed together and in the
following order:

103346-xx - Only required for Sun Enterprise I/O boards with onboard FCAL.
105356-09
105357-04
105375-15 - This patch!
107280-02 - PCI systems only..
106129-07 - A5X00 only

Do not reboot the system until all of these patches have been installed.

See FINI0382-x

Before installing this patch on the system, you must check the Interface
Board (IB) firmware level for all A5X00s on the system:

1.  Enter the following command to see what the firmware revision is
    for each A5X00 on your system:

    # /usr/sbin/luxadm display &lt;enclosure&gt;

    where enclosure is the name of the A5X00.  For more information,
    see the luxadm.1m man page.

    Look at the output for a line similar to the following to find
    the firmware level:

    Revision:1.09   Box ID:0   Node WWN:5080020000000398   Enclosure Name:macs0

    The firmware level is referred to as the Revision number.  For 
    the example above, the firmware level is 1.09.

2.  Based on the firmware levels for all A5X00s on the system, decide
    what to do next:

    - If all A5X00s on the system have firmware revision 1.03 or higher, 
      go to step 13.

3.  Due to IB firmware revision level incompatibilities between
    revisions 1.01 and 1.09, upgrading between these revisions requires
    additional steps.

    There are two methods to accomplish this upgrade:

    Method A
    --------

       If you have not already done so, you can install patch 105375-04, 
       which contains IB firmware revision 1.03, upgrade all A5X00s to IB
       firmware revision level 1.03, and then continue with the installation
       of this patch and subsequent upgrade to IB firmware revision 1.09.

    -or-

    Method B
    --------

       You can temporarily remove IB A on all A5X00s during the firmware 
       upgrade.

       Note - If you have already installed this patch, 105375-15, 
              on the system, you MUST follow method B above, or you may remove
              this patch (105375-15) and select method A.

   Patch 105375-04 may be available from your local Service representative.

4.  Select method A or B above. 

    Method A is the preferred approach. Method B should only be used
    if it is not possible to get patch 105375-04.

    If you select method A, make sure you have patch 105375-04 on hand 
    before continuing and go to step 5.

    If you select method B, go to step 6.

5.  Install patch 105375-04 on the system.  Follow the "Special Install 
    Instructions" in the patch README file to upgrade all A5X00s on 
    the system to IB firmware revision 1.03.

    Ignore the instructions to upgrade fcode.

    Go to step 13.

6.  This step applies only to A5X00s that have IB firmware revision 1.01
    or lower. It is not necessary to perform this step on A5X00s that
    have IB firmware revision 1.03 or higher.

    Temporarily remove IB A on all A5X00s with IB firmware revision 1.01
    or lower.

    If there is only one cable connected to the A5X00, through IB A,
    connect the cable to IB B.

7.  Install this patch (105375-15) on the system.

8.  Download the firmware to all A5X00(s) on the system.

    Note -  If the boot device is a part of a A5X00, the host MUST be 
            rebooted from another boot device other than a A5X00 as
            firmware cannot be downloaded while booted from a A5X00.

            Note that you will need access to the luxadm utility and 
            the A5X00 firmware file to do the download.
 
    a)  Stop all I/O activity on the A5X00.
 
    b)  Unmount any filesystems residing on the A5X00 disks.
 
    c)  Stop all Sun Enterprise Volume Manager (SEVM) volumes (if any)
        running on the A5X00.
 
    d)  Put the system in single user mode using the init command:
 
        # /etc/init s
 
        NOTE - The following step must be completed for each A5X00 to
        download the firmware safely:
 
    e)  Use the luxadm download command to download the new firmware to
        each A5X00 on the system.  Download the firmware to only one 
        A5X00 at a time:
 
        # /usr/sbin/luxadm download -s  -f &lt;firmware_file&gt; &lt;enclosure&gt;
 
        where enclosure is the name of the A5X00(s) and firmware_file is
        the firmware image for the A5X00, which is usually located in
        /usr/lib/locale/C/LC_MESSAGES/ibfirmware. For more information, 
        see the luxadm.1m man page.
 
    CAUTION: This operation may take a few minutes to complete.  Do NOT
             interrupt the operation before it is finished or the system
             may not be able to communicate with the A5X00.
 
             Note that the luxadm command may complete BEFORE the firmware
             update completes on the A5X00.  Verify that the A5X00 has
             completed by checking the  firmware level for all Interface
             Boards on your A5X00(s) through the Front Panel Module (FPM).

9.  After you verify that all A5X00s have IB firmware revision 1.09, power
    off all A5X00s on which you removed IB A, from step 6 above.

10. Re-install IB A on these A5X00(s) and temporarily remove IB B
    on these A5X00s. Re-cable the A5X00 if necessary.

11. Turn on power to these A5X00s and wait until the FPM says the A5X00 is OK.

12. Re-install IB B on these A5X00s.  Wait until the A5X00 re-initializes.
    Verify the IB firmware level for all Interface Boards on your A5X00(s)
    through the FPM.

    Go to step 18.

13. Install this patch (105375-15) on the system.

    After installing the patch, check to see if you have to upgrade the
    firmware for the A5X00 and/or the fcode for the FC100/S Host Adapter.
 
14. Enter the following command to see what the firmware level is
    for each A5X00 on your system:

    # /usr/sbin/luxadm display &lt;enclosure&gt;

    where enclosure is the name of the A5X00.  For more information,
    see the luxadm.1m man page.

    Look at the output for a line similar to the following to find
    the firmware level:

    Revision:1.09   Box ID:0   Node WWN:5080020000000398   Enclosure Name:macs0

    The firmware level is referred to as the Revision number.  For 
    the example above, the firmware level is 1.09.

15. Determine if you need to upgrade the firmware.

    If the firmware level reported by the luxadm command (Step 1)
    is 1.09 or higher for ALL A5X00s on the system then you do not 
    have to upgrade your firmware as it is already at the proper level.
    Go to step 18.

16. Download the firmware to your A5X00, if necessary.
    If the boot device is a part of a A5X00, the host MUST be rebooted  
    from another boot device other than a A5X00 as firmware cannot be 
    downloaded while booted from a A5X00.  Note that you will need 
    access to the luxadm utility and the A5X00 firmware file to do 
    the download.
 
    a)  Stop all I/O activity on the A5X00.

    b)  Unmount any filesystems residing on the A5X00 disks.
 
    c)  Stop all Sun Enterprise Volume Manager (SEVM) volumes (if any)
        running on the A5X00. 

    d)  Put the system in single user mode using the init command:

    # /etc/init s

    NOTE - The following step must be completed for each A5X00 to download 
           the firmware safely:

    e)  Use the luxadm download command to download the new firmware to
        each A5X00 on the system. Download the firmware to only one A5X00
        at a time:

    # /usr/sbin/luxadm download -s  -f &lt;firmware_file&gt; &lt;enclosure&gt; 

    where enclosure is the name of the A5X00(s) and firmware_file is
    the firmware image for the A5X00, which is usually located in
    /usr/lib/locale/C/LC_MESSAGES/ibfirmware. For more information, 
    see the luxadm.1m man page.
 
    CAUTION: This operation may take a few minutes to complete.  Do NOT
             interrupt the operation before it is finished or the system
             may not be able to communicate with the A5X00.

             Note that the luxadm command may complete BEFORE the firmware
             update completes on the A5X00.  Verify that the A5X00 has
             completed by checking the  firmware level for all Interface
             Boards on your A5X00(s) through the FPM.
 
17. The firmware download is now complete. 

18. Use the luxadm fcal_s_download command to check the fcode level of
    all of the FC100/S Host Adapters on the system:
       
    # /usr/sbin/luxadm fcal_s_download
         
    Found Path to 2 FC100/S Cards
    Device: /devices/sbus@f,0/SUNW,socal@0,0
    Detected FC100/S Version: @(#) FCode 1.11 97/12/07
    Device: /devices/sbus@2,0/SUNW,socal@2,0
    Detected FC100/S Version: @(#) FCode 1.11 97/12/07
    Complete

    The fcode level is reported for each FC100/S. For the example above, 
    the firmware level is 1.11 for both FC100/S Host Adapters found.
                  
    NOTE:  The fcal_s_download command DOES NOT check the SOC+ on Sun Enterprise 
           I/O Boards.  Patch 103346-11 (or newer) should be applied on systems
           with onboard SOC+ ports.

19. Determine if you need to upgrade the fcode.

    If the fcode level for ALL of the FC100/S Host Adapters is
    1.11 or higher then you do not have to upgrade your fcode as
    it is already at the proper level.

    Go to step 22.

20. If you are in the single user mode (from step 8 or 16 above), go to step 21,
    otherwise:

    a)  Stop all I/O activity on the A5X00.
   
    b)  Unmount any filesystems residing on the A5X00 disks.

    c)  Stop all Sun Enterprise Volume Manager (SEVM) volumes (if any)
        running on the A5X00.

    d)  Put the system in single user mode using the init command:

    # /etc/init s

21. Use the luxadm fcal_s_download command to download the new fcode to
    all FC100/S Host Adapters on the system:

    # /usr/sbin/luxadm fcal_s_download -f &lt;fcode-file&gt;

    where fcode-file is the path to the FC100/S Host Adapter fcode
    image file. This is usually /usr/lib/firmware/fc_s/fcal_s_fcode.

    This command is interactive and expects user confirmation
    before downloading the fcode to each Host Adapter.
    For more information, see the luxadm.1m man page.

22.  You have now completed the upgrade process.

What to do in case of IB firmware upgrade failure
-------------------------------------------------

An upgrade failure could happen under the following circumstances:

-  Attempting to upgrade from IB firmware revision 1.01 to 1.09
   without following the steps outlined above.

-  Interrupting the luxadm download command before it has time
   to complete.

-  Interrupting the re-initialization of the A5X00 after the completion
   of the "luxadm download" command, say because of power failure to
   the A5X00.

-  On very rare occasions, upgrading from IB firmware revision 1.03
   to revision 1.09.

Such a  failure may manifest itself in one of several ways:

-  The A5X00 is non-responsive to probing as with the "luxadm probe" command.

-  The disks in the A5X00 become unavailable to the system.

-  The A5X00 goes offline and does not come back online after more than 
   5 minutes during the upgrade process.

-  The FPM on the A5X00 exhibits a flashing warning sign - a triangle with
   an exclamation point inside - and the failure is traced down to one or
   both of the IBs.

-  The FPM is blank, scrambled or otherwise unreadable and is not responsive
   to queries.

If such a failure is encountered, it may be possible to recover by following
this procedure:

R1. If it is possible to use the FPM, determine if either of the IBs has a
    valid copy of IB firmware.  See the A5X00 service manual for instructions
    on how to determine IB firmware revision level from the FPM.

    If both IBs on the A5X00 have valid, matching revisions of firmware, then
    the problem may be in the cable, Host Adapter, or GBICs.

R2. If only one of the IBs has a valid firmware revision, power off the 
    A5X00 and remove the IB that is invalid. 
  
    If neither of the IBs have a valid revision of firmware or the A5X00 is
    unresponsive, go to step R6.

R3. Put the IB with a valid revision in slot B and power on the A5X00.

    Wait until the A5X00 initializes and verify that the IB in slot B has
    a valid firmware revision.

    Note - It may be possible that the revision will be different after
           this operation is complete.

R4. Power off the A5X00 and remove the IB in slot B.  Insert the other IB
    into slot A.  Power on the A5X00.

    Wait until the A5X00 initializes and verify that the IB in slot A now has
    the same firmware revision as the other IB.

    If the A5X00 does not initialize, go to step R6.

R5. Insert the other IB in slot B.

    -  If both IBs now have IB firmware revision 1.09, then IB firmware 
       upgrade for this A5X00 is complete.  Continue with the upgrade 
       process above.

    -  If both IBs now have firmware revision 1.03 or 1.01, follow the 
       instructions above to upgrade the IBs to revision 1.09.

R6. If it is not possible to use the FPM, power-cycle the A5X00, and wait 
    until it initializes.  

    If initialization does not complete and the A5X00 does not complete 
    POST, remove one of the IBs and power cycle again.

    If initialization still does not complete, swap the IBs and power cycle
    again.

    If initialization still does not complete it is necessary to replace 
    the IB board(s). 

    Contact your local service representative to replace the IB boards.
</pre></body></html>