The cfwdl utility provided by ptx/SPDRIVERS is a common firmware downloader used to download firmware to Fibre Channel Host Adapters, disk drives, and SCSI devices like tape drives, libraries, and FC Bridges. cfwdl can automatically download the correct firmware files to multiple devices during a system upgrade or it can download a specifically designated firmware file to a specific device. The cfwdl utility also can be used to list the devices that need firmware upgrades and to audit devices that run cfwdl-compatible firmware.
Before you can download firmware, both the cfwdl-compatible firmware and ptx/SPDRIVERS should have been installed on your system. If not, follow the software installation procedures described earlier in these release notes.
The cfwdl utility obtains downloadable firmware files from the cfwdl-Compatible Firmware Bundle. For specific firmware and version information, refer to the cfwdl-Compatible Firmware Bundle Release Notes. The cfwdl utility cannot be used to download firmware that is not included in this firmware bundle. For example, cfwdl does not download firmware for FC Switches, Symmetrix® storage subsystems from EMC®, or HDSTM disk arrays from Hitachi Data Systems.
The cfwdl utility replaces the ffutil, dltutil, and fwdl utilities previously provided by ptx/SPDRIVERS. The cfwdl utility also replaces the fcdl utility previously provided by DYNIX/ptx.
ATTENTION Before you download firmware to any device, ensure that you will be able to complete the entire download process. If the firmware download process is interrupted, for example, because of power loss, the device may become unrepairable. If this happens, the device will have to be replaced.
The cfwdl utility is installed in /usr/service/bin, which is a directory not generally in the path of the root user. Either add /usr/service/bin to the path for the root user or use the full pathname to the cfwdl utility when you invoke it.
The cfwdl utility does not always look for firmware in /usr/ssw/fw. Instead, the location that it looks depends on which options are specified with cfwdl. To ensure the firmware files are always found, you should change directories to /usr/ssw/fw before invoking cfwdl. For more information, refer to "How cfwdl Finds Downloadable Firmware Files" later in this chapter.
The most common syntax options to cfwdl are as follows:
The firmware file specified by the -f option must be compatible with the type of device specified by the -d option. Otherwise, cfwdl will issue an error message and will not perform the download operation.
Refer to the cfwdl(1) man page for information about other less common options.
The cfwdl utility looks for downloadable firmware files as follows:
When run with the -f filename option, cfwdl looks in the directory from which cfwdl was executed unless a full pathname is provided with the filename.
When run with the -p directory option, cfwdl looks in the directory specified by the -p option.
When run without the -f or -p options, cfwdl looks in /usr/ssw/fw.
To enable cfwdl to find firmware files regardless of the syntax options you use, you should always take one or more of the following actions:
Change directories to /usr/ssw/fw before invoking cfwdl.
Include the full pathname with the firmware file name when you use the -f option. For example, -f /usr/ssw/fw/esq25.sqfw.
Use the -p option to designate the directory that contains the firmware files. For example, -p /usr/ssw/fw/archive.
Before you download firmware, you should determine the devices that need firmware upgrades with the cfwdl -u command. This command examines each device on the host that uses cfwdl-compatible firmware and reports whether the device needs to be updated. The following sample illustrates this kind of output:
# /usr/service/bin/cfwdl -u
Device sd0 has new firmware file /usr/ssw/fw/ibm_pbay_09_5454.sqfw firmware vers ion is 5454 Device sd1 needs to be updated: Old Firmware 2626 New firmware 5454 Firmware file /usr/ssw/fw/ibm_pbay_09_5454.sqfw Device tl0 has new firmware file /usr/ssw/fw/DLT7K_STK_V95.sqfw firmware version is 245F Device mw0 has new firmware file /usr/ssw/fw/stkL700_V18101.sqfw firmware versio n is 0181
The messages like Device <device> has new firmware file... indicate the device is running the latest firmware and the firmware version the device is using. No action is required for the devices listed in these messages.
To generate a list of the devices that need firmware upgrades, use the cfwdl -u command and the grep -v command with the string "has new firmware." The grep -v syntax excludes the messages that indicate a device does not need a firmware upgrade. The following sample illustrates this syntax and the resulting output:
# /usr/service/bin/cfwdl -u | grep -v "has new firmware"
Device sd1 needs to be updated: Old Firmware 2626 New firmware 5454 Firmware file /usr/ssw/fw/ibm_pbay_09_5454.sqfw Device tl0 needs to be updated: Old Firmware 2255 New firmware 245F Firmware file /usr/ssw/fw/DLT7K_STK_V95.sqfw Device fcbr0 needs to be updated: Old Firmware v152 New firmware v153 Firmware fi le /usr/ssw/fw/fcbr_153.sqfw Device ff0 needs to be updated: Old Firmware 2.33:1.10:2.22:2.22:2.22 New firmwa re 2.41:1.10:2.23:2.23:2.23 Firmware file /usr/ssw/fw/fc_ff_223.sqfw
The cfwdl utility can download firmware simultaneously to multiple devices. However, if the /usr/ssw/fw directory contains multiple current versions of firmware for any device, the download to that device will fail with the following error message:
cfwdl:More than one downloadable file were found for device
To download firmware in this scenario, you have to specify the device with -d device_name and the firmware version that you wish to download with -f filename in the cfwdl command syntax. (It is recommended to use only one -f and -d option pair per cfwdl command line.)
You can avoid these error messages altogether by completing the following steps before downloading firmware with cfwdl:
Examine the output from cfwdl -u and compare the versions of firmware required by the devices on your host with those installed in the /usr/ssw/fw directory. You will find descriptions and the filenames of all the cfwdl-compatible firmware versions listed in the cfwdl-Compatible Firmware Bundle Release Notes.
If the /usr/ssw/fw directory contains multiple versions of firmware for the same device, move all versions of firmware that are not needed to another directory. For example, you could create /usr/ssw/fw/archive and move the unneeded firmware files to that location.
For information about the best firmware combinations that should be used with FC Host Adapters and FC Bridges on DYNIX/ptx V4.5.1 hosts, refer to the DYNIX/ptx V4.5.x Fibre Channel Software Release Notes.
Most likely you will not need to download these older versions of firmware. However, if you do need to download the firmware from the alternate directory, you can do so by using the -p option to designate the alternate directory.
ATTENTION Before you download firmware to any device, ensure that you will be able to complete the entire download process. If the firmware download process is interrupted, for example, because of power loss, the device may become unrepairable. If this happens, the device will have to be replaced.
If the system is at single-user mode, you can use cfwdl to automatically upgrade all devices that use cfwdl-compatible firmware to the latest firmware revision levels. The following procedure assumes that the OS and VCS have already been upgraded as appropriate for DYNIX/ptx V4.5.1.
ATTENTION This procedure can be used in single-node systems with single- or dual-fabric resource domains to upgrade all devices that contain cfwdl-compatible firmware. This procedure can also be used for clustered nodes in a non-rolling upgrade manner where all nodes are brought to the single-user level together and treated as single nodes.
To upgrade FC firmware of clustered nodes in a rolling manner, where one node at a time is upgraded while the overall cluster remains available for use, see the special procedures in the NUMA-Q Clusters Rolling Upgrade to OS V4.5.1 Release Notes.
Complete the following steps to download firmware to all devices on the host:
Use cfwdl -u to determine the devices that need firmware upgrades. For more information, refer to "Determine the Devices that Need Firmware Upgrades" earlier in this chapter.
Move older versions of firmware for each device type to an alternate directory. For more information, refer to "Determine if Multiple Versions of Firmware Are Available for the Same Device" earlier in this chapter.
For any tape drives whose firmware will be upgraded, ensure that all media is ejected. The download operation fails for tape drives that contain a tape. If the tape drive is configured in a backup application (like SAMS:Alexandria), then use the backup application to eject the media. If the tape drive is not configured in a backup application, use the mc move command.
If any tape drives that you plan to upgrade are located in ACSLS-connected libraries, you must use the ACSLS server to offline the library before you attempt to download firmware to those drives. For example:
ACSSA> vary LSM 0,0 offline
Ensure that the system is in single-user mode. You cannot download firmware to FC Host Adapters and FC Bridges in multi-user mode.
If you want to download firmware to disk drives, tape drives, or libraries while the host is in multi-user mode, you can do so by following the procedures in the sections "Disk Drive Firmware Download Procedures" and "DLT Tape Drive and STK Library Firmware Download Procedures" later in this chapter.
Instruct cfwdl to automatically download firmware to all eligible devices with the following command:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -D
The -D option must be used to deconfigure all devices below an FC Host Adapter or an FC Bridge before starting the downloading process to that device.
Run the following command to determine if any devices still require firmware upgrades:
# /usr/service/bin/cfwdl -u | grep -v "has new firmware"
If this command generates no output, then all devices have been successfully upgraded and you can continue with step 9. Otherwise, continue with step 8.
For each device that still requires a firmware upgrade, complete these steps:
Refer to the cfwdl -u output to determine the required firmware version and the file that contains this firmware.
Use the cfwdl command with the -f and -d options to download the required firmware to each device. In some cases, you might need to use the -x option to force a firmware download to occur. For example:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -m -x -d sd447 -f ibm_boot_36_0270.sqfw
For any directly-connected libraries and internal tape drives whose firmware was updated, use the mc command to clear the influx conditions on the tape drives. For example:
# mc -f /dev/mch/mw0 display
More information on influx conditions is provided in the section "Clear the Influx Condition for STK Libraries" later in this chapter.
If any tape drives that you upgraded are located in ACSLS-connected libraries, use the ACSLS server to online the library after the firmware download has completed. For example:
ACSSA> vary LSM 0,0 online
Reboot the system. During the reboot, all the FC Host Adapters and FC Bridges and their children will be reconfigured automatically to the naming database. The reboot also will enable the operating system's device status utilities such as infodev and diskid to reflect the results of the firmware downloads.
If you are performing a system upgrade to DYNIX/ptx V4.5.1 and associated layered products, return to the appropriate installation checklist.
The remaining procedures in this chapter describe how to download firmware to specific types of devices and how to use cfwdl -a to audit devices.
ATTENTION Before you download firmware to any device, ensure that you will be able to complete the entire download process. If the firmware download process is interrupted, for example, because of power loss, the device may become unrepairable. If this happens, the device will have to be replaced.
This section contains the following procedures:
ATTENTION These procedures can be used in single-node systems with single- or dual-fabric resource domains to upgrade FC Host Adapters and FC Bridges. They can also be used for clustered nodes in a non-rolling upgrade manner where all nodes are brought to the single-user level together and treated as single nodes.
To upgrade FC firmware of clustered nodes in a rolling manner, where one node at a time is upgraded while the overall cluster remains available for use, see the special procedures in the NUMA-Q Clusters Rolling Upgrade to OS V4.5.1 Release Notes.
ATTENTION The system must be at the single-user level before running the cfwdl command.
Use this procedure to upgrade all FC devices, except the FC Switches, when a system is receiving an OS upgrade. This will automatically include all FC Host Adapters and FC Bridges connected to the host.
Warn all users and bring the system down to the single-user level.
Use the showcfg command to determine if all of the FC Host Adapters in the system are of one type or if some are LP7000E SuperFlys and LP6000 FireFlys.
For LP7000E SuperFly FC-Host Adapters, issue this downloading command from the root account.
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -x -D -f fc_sf_223.sqfw
The -D option must be used to deconfigure all devices below an FC Host Adapter or an FC Bridge before starting the downloading process to that device.
The cfwdl utility will report its activities as it completes them until all of the devices compatible with the specified file have been checked and updated as necessary.
For all LP6000 FireFly FC-Host Adapters, repeat the cfwdl -l command, except specify the file for LP6000s, fc_ff_223.sqfw
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -x -D -f fc_ff_223.sqfw
For FC Bridges, repeat the cfwdl -l command, but specify the filename for the specific version of FC Bridge firmware with the -f argument name. For example:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -x -D -f fcbr_153.sqfw
Reboot the system to multiuser. During the reboot, all the FC Host Adapters and FC Bridges and their children will be reconfigured automatically to the naming database.
Use this procedure to upgrade a single device, for instance, following service to replace a faulty FC Host Adapter or FC Bridge.
Determine the configuration name (ffx or fcbrx) of the faulty device before replacing it.
Warn all users and bring the system down to the single-user level.
Physically replace the faulty device using a non-OLR servicing procedure. For information, refer to the Fibre Channel Subsystem Installation Guide, which is a service manual.
From the root account, issue the cfdwl command to download firmware to a specific FC Host Adapter or FC Bridge. For example, to download firmware to the fcbr0 bridge, enter the following command:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -x -D -d fcbr0 -f fcbr_253.sqfw
The -D option must be used to deconfigure all devices below an FC Host Adapter or an FC Bridge before starting the downloading process to that device.
The filename specified with the -f option must be compatible with the device type specified by -d and device_name. Otherwise, cfwdl will issue an error message and will not perform the download operation.
The cfwdl utility will report its actions and completion.
Reboot the system to multiuser. During the reboot, the new FC Host Adapter or FC Bridge and all children will be reconfigured automatically to the naming database.
ATTENTION Before you download firmware to any device, ensure that you will be able to complete the entire download process. If the firmware download process is interrupted, for example, because of power loss, the device may become unrepairable. If this happens, the device will have to be replaced.
The procedure for downloading firmware to a specific disk drive is determined by the type of disk drive to which you are downloading the firmware. Refer to the following procedures as your situation warrants:
The cfwdl utility does not download firmware to EMC or HDS storage subsystems. In these cases, refer to the vendor-specific documentation that was supplied with the storage subsystem.
Downloading firmware to a disk used as the boot disk requires the use of ptx/SVM. Because firmware cannot be downloaded to mounted devices, and the boot device cannot be unmounted while the system is in operation, the root and swap partitions of the drive whose firmware is to be flashed must be mirrored with ptx/SVM to a second drive. Refer to the ptx/SVM Administration Guide chapter entitled "Creating and Removing SVM Objects." Once that mirroring is done, the procedure is as follows:
Remove the disk from ptx/SVM control so you can flash its firmware. Refer to the DYNIX/ptx V4.5 System Recovery and Troubleshooting Guide, go to Chapter 15, "ptx/SVM Troubleshooting," and complete steps 1 through 6 of the OLR procedure "Replacing Failing Disks: Remove/Add Disk Group."
If you do not know what version of firmware is on the drive, audit the device as follows:
# /usr/service/bin/cfwdl -u -d device_name
cfwdl will report both the firmware version now on the target drive and the current version, to which it should be updated.
Run cfwdl with the following arguments to download the latest firmware to the drive while the system remains in multi-user mode (-m option). In this example, the drive sd447 is a 36-GB, 7200-rpm drive from IBM.
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -m -d sd447 -f ibm_boot_36_0270.sqfw
cfwdl: Started downloading Firmware to sd447
Waiting for device to become ready after download
..
cfwdl: please wait, performing final sanity checks on sd447
cfwdl: New FW has been installed on sd447
Device: sd447, Vendor: IBM, Product Id: DRHS36V Revision: 0270
Download was successful on device sd447
The firmware download is now complete. Use the cfwdl -a command to verify the firmware version running on the device. The following example performs an audit of device sd447:
# /usr/service/bin/cfwdl -a -d sd447
Device name is sd447
Firmware Revision is 0270
Vendor is IBM
Product is DRHS36V
In order for the results of the download to be known to the operating system's device-status utilities such as infodev and diskid, you must use devctl to deconfigure and then reconfigure the device.
ATTENTION If the device contains a volume table of contents (created by devbuild), you must destroy the VTOC with devdestroy before running devctl -d.
# devctl -d sd501
devctl: deconfiguring sd501 from fabric2
# devctl -c fabric2
devctl: Found sd501
Reestablish the disk in ptx/SVM. Refer to the DYNIX/ptx V4.5 System Recovery and Troubleshooting Guide, go to Chapter 15, "ptx/SVM Troubleshooting," and complete steps 11 through 16 of the OLR procedure "Replacing Failing Disks: Remove/Add Disk Group."
If you have already been operating a CLARiiON DAE unit on a NUMA-Q system, the NUMA-Q system will already be configured to support FC arbitrated loop, which is required to download drive firmware to a CLARiiON DAE unit on a NUMA-Q system. If the NUMA-Q system is not configured to support FC arbitrated loop, become the root user and then run the command bp /unix ff_topology 2. You must then reboot the system to put the command into effect.
ATTENTION The effect of the bp /unix ff_topology 2 will be negated if the kernel is recompiled, thereby restoring default settings. In order to keep the system configured for FC arbitrated loop, edit the file /usr/conf/uts/io/ff/ff_space.c. Change the parameter ff_topology = FC_TOPOLOGY_FABRIC to ff_topology = FC_TOPOLOGY_AL.
If your system is already configured to support FC arbitrated loop, download the desired drive firmware by performing the following procedure:
Become root user.
Determine the device names of all the drives in the DAE by using the command dumpconf -a | grep sd. The output from this command will display the names of all sd devices on the host.
List the current value of the fabric_timeout_max parameter with the following command:
# bp -s /unix /dev/kmem fabric_timeout_max
Later in this procedure after the firmware downloading is finished, you will must reset fabric_timeout_max to the value that it had before the firmware download.
After making a note of the current value for the fabric_timeout_max parameter, change that value to 1000, as follows:
# bp -s /unix /dev/kmem fabric_timeout_max 1000
You do not need to reboot in order to put this command into effect.
Stop any I/O to the drives whose firmware is being downloaded.
For a drive under ptx/SVM control, this is done by removing the target drive from ptx/SVM control. Ordinarily, ptx/SVM will have already excluded a faulty drive. Refer to the ptx/SVM Administration Guide.
If the drive was not under ptx/SVM control, you can stop I/O by unmounting all filesystems mounted on the drive.
Remove any VTOCs that are built on the disks to which you plan to download firmware. Do so by issuing the devdestroy command for each disk. If you are using a cluster, issue the command from each cluster node. In the following example, the drive is sd501.
# devdestroy /dev/rdsk/sd501
Stop ptx/SESMON if it is running. Rather than using the kill command, employ the following script, which prevents possible mistyping of the process ID and also frees up memory after the sesmon daemon is stopped:
# sh /etc/init.d/sesmon stop
Instruct cfwdl to find all devices on the FC fabric that need their firmware updated. In the following example, the fabric name is fabric2.
Here is a sample of the command line and resultant output for a single DAE unit with five drives of mixed sizes and firmware versions on fabric2:
# /usr/service/bin/cfwdl -u -s fabric2
Device sd500 has new firmware file /usr/ssw/fw/esq25.sqfw firmware version is sq25 Device sd501 needs to be updated: Old Firmware 351B New firmware SQ25 Firmware file /usr/ssw/fw/esq25 Device sd502 needs to be updated: Old Firmware 351B New firmware SQ25 Firmware file /usr/ssw/fw/esq25 Device sd503 needs to be updated: Old Firmware 351B New firmware SQ25 Firmware file /usr/ssw/fw/esq25 Device sd504 has new firmware file /usr/ssw/fw/nsq25.sqfw firmware version is SQ25
Note that using the -s option and the fabric name displays all the devices connected to that fibre except for the FC Host Adapter itself and any FC Switch that may be connected. This output informs you that all devices on fabric2 except sd501,sd502, and sd503 are already running the latest firmware versions.
Begin the firmware download.
ATTENTION Do not perform this procedure in multi-user mode unless you can be absolutely certain that no one has reconfigured the device to allow I/O to it. Data corruption can result if I/O is occurring on a device while its firmware is being updated.
Never perform the procedure in multi-user mode if the target drive is connected to a clustered host.
The following example illustrates the cfwdl syntax to download the esq25 firmware file to the sd501 device:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -m -d sd501 -f esq25.sqfw
cfwdl: Started downloading Firmware to sd501
Waiting for device to become ready after download
..
cfwdl: please wait, performing final sanity checks on sd501
cfwdl: New FW has been installed on sd501
Device: sd501, Vendor: SEAGATE, Product Id: ST118273, Revision: SQ25
Download was successful on device sd501
capacity 17356 Mbytes
Use the cfwdl -a command to verify the new firmware version running on the device. The following example performs an audit of device sd501:
# /usr/service/bin/cfwdl -a -d sd501
Device name is sd501
Firmware Revision is SQ25
Vendor is SEAGATE
Product is ST118273 CLAR18
In order for the results of the download to be known to the operating system's device-status utilities such as infodev and diskid, you must use devctl to deconfigure and then reconfigure the device.
# devctl -d sd501
devctl: deconfiguring sd501 from fabric2
# devctl -c fabric2
devctl: Found sd501
Use the infodev command to confirm that the drive reports the current drive firmware version:
# infodev -a sd501
Vendor ID : SEAGATE Product ID : ST118273 CLAR18 Revision Level : SQ25 Device Class : disk Capacity (in blocks) : 33898475 Block Size : 512 Fibre Channel Address : 0xcc FCP LUN : 00:00:00:00:00:00:00:00 Located on : fabric2
If the disk previously had a VTOC, reattach it its VTOC with the devbuild command.
Restore I/O to the device.
Restore the fabric_timeout_max parameter to the value that it had before the firmware download. In the following example, that value is assumed to have been 45.
# bp -s /unitx/dev/kmem fabric_timeout_max 45
Restart ptx/SESMON.
# sh /etc/init.d/sesmon start
Installation of the disk-drive firmware is now complete.
Download the desired drive firmware to non-boot disks in a Pbay by performing the following procedure:
Become root user.
Use dumpconf -a | grep sd to locate the scsibus to which the Pbay is attached.
Determine if any of the disks are used as boot disks. Do not perform the following procedure on any disk used as a boot disk. Instead, refer to "Download Drive Firmware to a Boot Disk" earlier in this chapter.
Stop any I/O to each drive whose firmware is being downloaded.
For a drive under ptx/SVM control, this is done by removing the target drive from ptx/SVM control. Ordinarily, ptx/SVM will have already excluded a faulty drive. Refer to the ptx/SVM Administration Guide.
If the drive was not under ptx/SVM control, you can stop I/O by unmounting all filesystems mounted on the drive.
Remove any VTOCs that are built on the disks to which you plan to download firmware. Do so by issuing the devdestroy command for each disk. If you are using a cluster, issue the command from each cluster node. In the following example, the drive is sd1.
# devdestroy /dev/rdsk/sd1
Instruct cfwdl to find all devices on the SCSI bus to which the Pbay is attached that need their firmware updated.
Here is a sample of the command line and resultant output for a single Pbay unit with four drives of mixed sizes and firmware versions on scsibus0. This example assumes that sd0 is a boot disk in the Pbay and has already had its firmware updated.
# /usr/service/bin/cfwdl -u -s scsibus0
Device sd0 has new firmware file /usr/ssw/fw/ibm_pbay_09_5454.sqfw firmware version is 5454 Device sd1 needs to be updated: Old Firmware 2626 New firmware 5454 Firmware file /usr /ssw/fw/ibm_pbay_09_5454.sqfw Device sd2 needs to be updated: Old Firmware 2626 New firmware 5454 Firmware file /usr /ssw/fw/ibm_pbay_09_5454.sqfw Device sd3 needs to be updated: Old Firmware 2626 New firmware 5454 Firmware file /usr /ssw/fw/ibm_pbay_09_5454.sqfw
Using the -s option and the SCSI bus name displays all the devices connected to that SCSI bus. This output informs you that sd0 is running the latest firmware version and that all other devices on scsibus0 require firmware upgrades.
Begin the firmware download as appropriate.
ATTENTION Do not perform this procedure in multi-user mode unless you can be absolutely certain that no one has reconfigured the device to allow I/O to it. Data corruption can result if I/O is occurring on a device while its firmware is being updated.
Never perform the procedure in multi-user mode when the target drive is connected to a clustered host.
Pbay contains a boot disk.. In this scenario, you must use the -d and -f options to specifically designate the disks that require upgrading. The following example illustrates the cfwdl syntax to download the ibm_pbay_09_5454 firmware file to the sd1, sd2, and sd3 devices.
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -m -d sd1 -f ibm_pbay_09_5454.sqfw
# /usr/service/bin/cfwdl -l -m -d sd2 -f ibm_pbay_09_5454.sqfw
# /usr/service/bin/cfwdl -l -m -d sd3 -f ibm_pbay_09_5454.sqfw
The following output illustrates the messages returned by cfwdl during the firmware download to sd1:
cfwdl: Started downloading Firmware to sd1
Waiting for device to become ready after download
..
cfwdl: please wait, performing final sanity checks on sd1
cfwdl: New FW has been installed on sd1
Device: sd1, Vendor: IBM OEM, Product Id: DCHS09X, Revision: 5454
Download was successful on device sd1
capacity 91115 Mbytes
Pbay does not contain a boot disk. In this scenario you can use a command similar to the following to perform the firmware download to all disks in the Pbay. This command assumes the Pbay is located on scsibus8:
ATTENTION Do not use this command when the Pbay contains a boot disk.
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -l -m -s scsibus8
The download is now complete. Use the cfwdl -a command to verify the firmware version running on the device. The following example performs an audit of device sd1:
# /usr/service/bin/cfwdl -a -d sd1
Device name is sd1
Firmware Revision is 5454
Vendor is IBM OEM
Product is DCHS09X
In order for the results of the download to be known to the operating system's device-status utilities such as infodev and diskid, you must use devctl to deconfigure and then reconfigure the device.
# devctl -d sd1
devctl: deconfiguring sd1 from scsibus0
# devctl -c scsibus0
devctl: Found sd1
Use the infodev command to confirm that the drive reports the current drive firmware version:
# infodev -a sd1
Vendor ID : IBM OEM Product ID : DCHS09X Revision Level : 5454 Device Class : disk Capacity (in blocks) : 17796077 Block Size : 512 Target SCSI ID : 0 Target SCSI LUN : 0 Located on : scsibus1
If the disk previously had a VTOC, reattach it its VTOC with the devbuild command.
Restore I/O to the device.
Installation of the disk-drive firmware is now complete.
ATTENTION Before you download firmware to any device, ensure that you will be able to complete the entire download process. If the firmware download process is interrupted, for example, because of power loss, the device may become unrepairable. If this happens, the device will have to be replaced.
The cfwdl utility can download firmware to tape drives in directly-connected or ACSLS-connected STK libraries and to tape drives in Hewlett Packard DLT libraries. However, the cfwdl utility can only download library firmware to directly-connected STK libraries. For information about downloading firmware to ACSLS-connected STK libraries or HP DLT libraries, refer to the vendor-specific documentation that you received with the library.
Complete the following procedure to download firmware to DLT tape drives and libraries:
Eject all media from the tape drives that you plan to upgrade. If a tape drive contains a tape when you attempt to download firmware to the tape drive, the download operation will fail. If the tape drive is configured in a backup application (like SAMS:Alexandria), then use the backup application to eject the media. If the tape drive is not configured in a backup application, use the mc move command.
For each tape drive and library that you plan to upgrade, deconfigure or deactivate it from backup applications (like SAMS:Alexandria or NetBackup) before downloading firmware. Doing so prevents the backup application from attempting to use the device and enables you to download the firmware while the host remains in multi-user mode.
If any tape drives that you plan to upgrade are located in ACSLS-connected libraries, you must use the ACSLS server to offline the library before you attempt to download firmware. For example:
ACSSA> vary LSM 0,0 offline
Instruct cfwdl to determine which tl and ml devices require firmware downloads. For example, the following command examines each of the tl devices and reports information about the currently loaded firmware:
# /usr/service/bin/cfwdl -u -t tl
Device tl0 needs to be updated: Old Firmware 2255 New firmware 245FFirmware file /usr/ssw/fw/DLT7K_STK_V95.sqfw Device tl1 needs to be updated: Old Firmware 2255 New firmware 245F Firmware file /usr/ssw/fw/DLT7K_STK_V95.sqfw Device tl2 needs to be updated: Old Firmware 2255 New firmware 245F Firmware file /usr/ssw/fw/DLT7K_STK_V95.sqfw
Examine the cfwdl output to determine the firmware files that are required by each tape drive. If different firmware files are required for the tl or mw devices on your system, these filenames will need to be specified with the -f option in the cfwdl command in a later step.
Download the firmware to the tape drives and, if applicable, the library in the following order:
ATTENTION When you download firmware to a library, the tape drives of that library are left in an influx condition. This is not a problem unless you need to download firmware to the tape drives. In that scenario, you will not be able to use cfwdl to download the firmware. (An influx condition on an internal tape drive causes cfwdl to fail.) Before you can complete the firmware downloads to the tape drives, you must clear the influx condition. For more information, refer to "Clear the Influx Condition for STK Libraries" later in these chapter.
First download firmware to the tape drives located in the STK library.
Once the firmware for all tape drives has been upgraded as necessary, download firmware to the STK library robotics (for directly-connected libraries).
For example, if you want to upgrade the firmware on the tape drives tl0, tl1, tl2, and tl3 and the STK library mw0, enter the following commands in the order shown:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -m -l -d tl0 -f tl1 -d tl2 -d tl3
# /usr/service/bin/cfwdl -m -l -d mw0
The -m option causes the firmware to be downloaded even though the system is in multiuser mode. This command assumes that all the tl devices require the same firmware file. If this is not the case, then you must enter the cfwdl command once for each device and use the -d and -f options to the command. For example:
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -m -l -d tl0 -f DLT7K_STK_V95.sqfw
After cfwdl successfully downloads firmware to DLT tape drives and STK libraries, cfwdl then takes approximately 5-7 minutes to actually report that the download of firmware succeeded.
For any directly-connected libraries and internal tape drives whose firmware was updated, use the mc command to clear the influx conditions on the tape drives. For example:
# mc -f /dev/mch/mw0 display
Use the cfwdl -a command to verify the firmware version running on the devices. The following example performs an audit of device tl1:
# /usr/service/bin/cfwdl -a -d tl1
Device name is tl1
Firmware Revision is 245F
Vendor is QUANTUM
Product is DLT7000
In order for the results of the download to be known to the operating system's device-status utilities such as infodev, you must use devctl to deconfigure and then reconfigure the devices whose firmware was downloaded. For example:.
# devctl -d tl1
devctl: deconfiguring tl1 from scsibus9
# devctl -c scsibus9
devctl: Found tl1
If any tape drives that you upgraded are located in ACSLS-connected libraries, use the ACSLS server to online the library after the firmware download has completed. For example:
ACSSA> vary LSM 0,0 online
Reconfigure or reactivate each device in the backup application (like SAMS:Alexandria or NetBackup) where it was configured before the firmware was downloaded.
When cfwdl is used to automatically download all required library and tape drive firmware (that is, no -f or -d options are used) or when you download firmware to specific tape drives, the tape drives go into an influx condition after their firmware download completes. This condition does not affect the download of the library firmware and is cleared during the download procedures as explained in step 8 of the procedure "Download Firmware to DLT Tape Drives and STK Libraries."
Influx conditions are avoided for ACSLS-connected STK 9710 libraries when you use the vary command to offline the library before you download tape drive firmware (step 3) and you use the vary command to online the library after the tape drive firmware has been downloaded (step 11).
However, when you download firmware to a library, the tape drives of that library are left in an influx condition. This is not a problem unless you need to download firmware to the tape drives. In that scenario, you will not be able to use cfwdl to download the firmware. (An influx condition on an internal tape drive causes cfwdl to fail.) Before you can complete the firmware downloads to the tape drives, you must clear the influx condition.
The recovery from an influx condition varies based on whether the library is a directly-connected library or an ACSLS-connected library. Refer to the following sections as applicable.
To clear influx conditions for a directly-connected library, issue the mc command with the display argument for the library. Displaying status information resets the state of the library, which clears the influx condition on any tape drives. Once the condition has been cleared, reissue the firmware download commands for the tape drives.
For example, to clear the condition for the mw0 device and then download firmware to its internal tape drives tl0, tl1, tl2, and tl3, enter the following commands:
# mc -f /dev/mch/mw0 display
# cd /usr/ssw/fw
# /usr/service/bin/cfwdl -m -l -d tl0 -d tl1 -d tl2 -d tl3
You do not need to repeat the firmware download to the library if the earlier download to the library was successful. (The influx condition does not affect the download of library firmware.)
To clear influx conditions on tape drives in an ACSLS-connected library, take the appropriate action:
STK 9710 Library. To clear influx conditions for this library, you must offline and then online the library using commands similar to the following from the ACSLS server:
ACSSA> vary LSM 0,0 offline
ACSSA> vary LSM 0,0 online
Once the influx condition is cleared, use cfwdl to download the firmware using the proper procedures. That is, you must vary the library offline, use cfwdl to download the tape drive firmware, and then vary the library online. This sequence resolves any influx conditions that occur. For details, refer to "Download Firmware to DLT Tape Drives and STK Libraries" earlier in this section.
STK 9740 Library. To clear influx conditions for this library, contact customer support.
The cfwdl -a command is used to display auditing information for devices that it recognizes. For most device types, the output lists the firmware version, vendor ID, and product ID of each device. In the case of FC Host Adapters, the output lists chipset revision levels, operational and diagnostic firmware revisions levels, the FC-PH version supported, the flash program list versions, and the device type.
To view firmware details for all devices recognized by cfwdl, use the following command:
# /usr/service/bin/cfwdl -a
To view firmware details for all devices of the same type, use the -a and -t options. For example, to view details for all tl devices, enter the following command:
# /usr/service/bin/cfwdl -a -t tl
To view firmware details for a specific device, use cfwdl -a with the -d option, for example:
# /usr/service/bin/cfwdl -a -d fcbr0
Device name is fcbr0
Firmware Rev is v153
Vendor is SEQUENT
Product is FC BRIDGE
The infodev utility can also be used to display device information. In most cases, the output from cfwdl is more concise than that from infodev, which generally provides unique information that cfwdl does not provide. For FC Host Adapters, the output from cfwdl is more detailed than that provided by infodev, but the infodev output does provide some information that cfwdl does not.