OBSOLETE Patch-ID# 105223-05
Keywords: SSA timeout HDD pln ssafirmware D_HOTPLUG cb_ops E10000
Synopsis: Obsoleted by: 105181-25 SunOS 5.6: pln/soc drivers & ssafirmware patch
Date: Sep/18/1998

Solaris Release: 2.6

SunOS Release: 5.6

Unbundled Product: 

Unbundled Release: 

Xref: 

Topic: SunOS 5.6: pln/soc drivers & ssafirmware patch
	NOTE:	Refer to Special Install Instructions section for 
                IMPORTANT specific information on this patch.


Relevant Architectures: sparc

BugId's fixed with this patch: 1261305 4005293 4013307 4022233 4040095 4059100 4060752 4063760 4072048 4072841 4077919 4083139 4083146 4083171 4084482 4084583 4084938 4085266 4094710 4097096 4097284 4097849 4099658 4099749 4113228 4118419 4133135

Changes incorporated in this version: 4133135

Patches accumulated and obsoleted by this patch: 

Patches which conflict with this patch: 

Patches required with this patch: 

Obsoleted by: 105181-25

Files included with this patch: 

/kernel/drv/pln
/kernel/drv/soc
/usr/include/sys/scsi/targets/pln_ctlr.h
/usr/include/sys/socvar.h
/usr/lib/firmware/ssa/ssafirmware

Problem Description:

4133135 pln_ctlr_ioctl panics system when an USCSI command is issued from kernel space
(from 105223-04)
4118419 E10000 panic during DR operations in pln driver detach logic
(from 105223-03)
4113228 Sunfire-DR never suspended pln, ssd
(from 105223-02)
4013307 soc waits to long for unused channel on boot up
4072048 pci_pci driver needs to free soft state during detach.
4072841 isp: panic during attach
4083139 sysiosbus: A need to support DETACH command
4083146 esp/isp/pln: Add device control support
4083171 add D_HOTPLUG flag and cb_ops to drivers
4084482 sysiosbus: needs to dynamically map address space
4084583 sunfire related drivers need to support DETACH
4084938 sunfire-dr, disk board, not supported
4085266 unmap_pbm_regs is called too early in detach causing panic in pci.c.
4094710 sysctrl driver is printing out unnecessary messages in DEBUG mode
4097096 dr hotplug: dma does not support attach/detach
4097284 ssd, st fail to attach when doing config
4097849 sysiosbus reinstalls interrupts during a resume.
4099658 sbus driver doesn''t release all mutexes before return in sbus_remove_intrspec
4099749 sunfire-dr, lebuffer detach failed
(from 105223-01)
4077919 Disk reservation causes sibling host to receive ssd_synchronize_cache failed
4022233 SPARCstorage ARRAY suddenly slow down.
4059100 Quantum 4.2 Gbyte does not spin up at power on, ssa1xx hangs
4040095 SPARCstorage Array controller rejects uscsi Log Sense/Select commands
4063760 4.2GB (VK45J05)and 2.1 GB (VK22J05) Quantum disc don''t spin up after warm swa
4060752 ssa firmware needs awareness of HDD-download - TUR-timeout/reset can cripple HDD
4005293 System Panics with data fault from vol_release_ilock
1261305 SSA drivers retry 20 times (26mins) when I/O times out - entire mirror hangs

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:
----------------------------- 
After installing the patch, here is how one goes about
upgrading the firmware:
1.  Enter the following command to see what the firmware level is
    for each SPARCstorage Array on your system:
	# /usr/sbin/ssaadm display controller
        where controller is either the logical controller name
        (given as cX) or the physical path of the controller
        (given as
        /devices/../../SUNW,soc@3,0/SUNW,plnaxxxxxx,xxxxxxxx:ctlr).
        For more information, see the ssaadm.1m man page.
2.  Look at the output for a line similar to the following to find
    the firmware level:
	Firmware Rev: 3.xx
3.  Determine if you need to upgrade the firmware.
        If the firmware level produced from the ssaadm command (Step 2)
        is lower than 3.12 then you must upgrade your firmware. Go to Step 4.        
	If the firmware level produced from the ssaadm command (Step 2)
        is 3.12 or higher then you do not have to read any
        further in these instructions, since your firmware is
        already at the proper level.
4.  If the firmware level produced from the ssaadm command is lower
    than 2.4 you MUST complete the following steps for those SPARCstorage
    Arrays that contain firmware revision lower than 2.4. If the
    firmware is 2.4 or higher you don''t need to do step 4 so go to step 5.
	a) Enable the SSA fastwrite capability:
		#  /usr/sbin/ssaadm fast_write -se <controller>
	b) Disable the SSA fastwrite capability:
		#  /usr/sbin/ssaadm fast_write -sd <controller>
        where controller is either the logical controller name
        (given as cX) or the physical path of the controller
        (given as
        /devices/../../SUNW,soc@3,0/SUNW,plnaxxxxxx,xxxxxxxx:ctlr).
	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 SPARCstorage Array.
5. Download the SPARCstorage Array firmware to your SPARCstorage Array.
   If the host is booted off a SSA, the host MUST be rebooted for this
   operation. If the host is being rebooted only the steps ''e'' and ''f'' below
   need to be executed.
   The following steps must be completed on each SSA to download the firmware
   safely:
	a) Stop all I/O activity on the SPARCstorage Array.
	b) Perform a sync_data to the SSA:
		#  /usr/sbin/ssaadm sync_cache  <controller>
	c) Unmount any filesystems residing on the SSA disks.
	d) Stop all Veritas Volume manager (VxVA) volumes and/or Solstice Disk Suite
   	   (SDS) metadevices (if any) running on the SSA. Also insure that ownership
   	   of any SDS diskset metadevices have been released since an implicit I/O
   	   stream exists while ownership of a diskset is maintained. Please refer
   	   to the metaset(1M) manpage for details on taking/releasing ownership
           of disksets.
	e) Execute the ssaadm download command to download the new firmware:
        	#  /usr/sbin/ssaadm download -f /usr/lib/firmware/ssa/ssafirmware <controller>
       	    where controller is either the logical controller name
            (given as cX) or the physical path of the controller
            (given as
            /devices/../../SUNW,soc@3,0/SUNW,plnaxxxxxx,xxxxxxxx:ctlr).
	    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 SPARCstorage Array.
	f) The SSA(s) will now needs to be reset for the changes to take effect. 
           If the host is booted off an SSA then the host MUST be shutdown at
	   this point.
           Reset your SSA(s) by pushing the SYS OK button in the back of the unit(s).
           This causes the SPARCstorage Array to reboot using the new revision
           of firmware.
           If your host boots off an SSA it can now be booted up again.
	g) Restart the Veritas Volume manager (VxVA) and/or SDS metadevices and
           reclaim ownership of any SDS diskset metadevices that were relinquished.
 	h) Remount the filesystems that reside on the SSA disks.
6. The firmware download is now complete. I/O activity on the SPARCstorage
   Array can be restarted.
7. Reboot the system after patch installation.

README -- Last modified date:  Thursday, February 8, 2001
