Note: Firmware LEVEL 3.91A3 has been pulled due to the following regression:
On FC adapters with black connectors:
When attaching to certain disk subsystems and switches, the laser will not turn on and the link is not established
This update provides new adapter firmware for adapter pSereis FC 6228
PNs 03N2452 (FRU 09P0102) , 09P5079 (FRU 09P5080), 00P2995 (FRU 00P2996),
00P4494 (FRU 00P4495), 80P3388 (FRU 80P3389), 80P4383 (FRU 80P4384) and
iSereis FC 0612 PNs 80P5081, 00P2997, 00P4496, 80P3387, 80P4385.
The typical time to install the microcode is .4 hr.
Level | Description |
3.93a0 |
|
3.91x4 |
|
3.91A1 | 1. (2105) Support Out Of Order ACKs within a range of 1-7
from the expected
sequence count. 2. Change DMA retry timer from 750 ms to 1500ms. 3. (2105) If timed out waiting for an ACK1, just abort the
exchange instead of sending an
4. (2105) Correctly handle XCB state WAIT_ACK_CONFIRM. 5. (2105) Range check each RRQ XID. 6. (2105) Determine correct local exchange ID when RRQ is
7. (2105) Accurately keep track of sequences when sending
an
8. (2105) When we receive a CLOSE_XRI, properly close the
exchange no matter what
9. Initialize and un-initialized variable. 10. Correct our handling of zero length Dams. 11. Always complete transmit DMA for GEN_REQ_64.
|
3.82A1 | 1. SAN Boot Support
2. Fixed bug on inputting a invalid LUN number 3. Fixed bug on inputting a invalid WWPN number and continue to access LOGO and PLOGI instead of exit. 4. Disable the message "Can't open disk label package" for non-bootable disks. 5. Bug fixed for FCODE map-in doesn't match decoded register error. 6. Bug fixed for "Error: can't free iommu-list" due to the data structure memory allocation problem on true 64-bit machine. 7. Enhanced the behavior to relogin if a target logs out during the boot sequence. 8. Added new multiple topologies mode 9. Added default setting mode to set everything into default value 10. Change the encode-fcp-unit such as when lun is non zero, the return string is "wwpn,unit", and if the lun is zero, the return string will be only "wwpn" and no comma and no 0's. 11. Changed the new behavior for 64-bit machine which running under 32-bit format with 64-bit machine. 12. Make CT timeout to be 2 * R_A_TOV instead of 1 sec before. 13. Reduced Io_sequence timeout value if ABTS happened. 14. Added set-els-err in cmd-fcp to update the IOSTAT_LOCAL_REJECT and IOERR_SEQUENCE_TIMEOUT if a Rad Box issued a logout during SCSI command. 15. Added new feature, the host can able to determine 32bit BAR versus 64bit BAR base on the system firmware. 16. Bug fixed on reservation conflict which fail to exit after exceeded 8 times of retries on executed a SCSI command. 17. Replace the WWPN to LOGO payload instead of D_ID. 18. Added one more retry for CT Response after retries on timeout. 19. Change back number of retry of SCSI-command to 0 when system issues a "Reservation Conflict" of status byte code due to the IEEE standard. 20. Change number of retry of SCSI-command to 10 times when system issues a "Check Condition" of the status byte code . |
3.90X3 | 1. Fixed problem in FCODE if name server returns with bad return code. (Multi Boot menu hang, returned to system firmware incorrectly) 2. Performance enhancements. |
Concurrent Download
Concurrent download is an AIX feature that allows firmware to be downloaded without bringing the system down and rebooting following fibre channel download. Due to recent regressions with this AIX feature (unable to see end devices/hung
system), it is strongly recommended that firmware upgrades be performed
during a scheduled maintenance window and that the system be re-booted
following firmware download.
Machine type 7039-651 must be at system firmware level 3J030521 or higher. If the system firmware level is less than 3J930521 and you attempt to change the fibre channel adapter firmware, you can damage the fibre channel adapter.
To determine machine type, enter the following command:
lscfg -pl sysplanar0 | grep Model | awk ' {print $2}'
If machine type is "IBM,7039-651", check the system firmware level by entering the following command:
lsmcode -rt system
NOTE: firmware level RJ030206 is a lower level than 3J030521. To compare firmware levels, compare the trailing 6 characters. For firmware levels RJ030206 and 3J030521, you compare the trailing 6 characters: 030206 is less than 030521
5.1 AIX Systems
1) List the Fiber Channel PCI adapters installed in the system by typing:
lsdev -C | grep "fcs"
Note the device names of all the Gigabit Fiber Channel PCI Adapters installed. The adapter device names will be fcsX, where X is 0,1, or some other number.
2) There are two methods to check the current microcode level on the adapter.
- The first method uses the "lscfg" command and will display much of the information from the adapter VPD. The Z9 field will contain the firmware level. This method will also display the FRU part number and the assembly part number.
lscfg -vl fcsX
Where X is the number of the adapter returned by the previous lsdev command.
The Command will produce output similar to
DEVICE LOCATION DESCRIPTION
fcs0 00-04 IBM Gigabit Fiber Channel PCI Adapter for 64 bit bus
Part Number.................00P4494
EC Level....................A
Serial Number...............1A25001206
Manufacturer................001A
FRU Number.................. 00P4495
Network Address.............10000000C930D02B
ROS Level and ID............02C03951
Device Specific.(Z0)........2002606D
Device Specific.(Z1)........00000000
Device Specific.(Z2)........00000000
Device Specific.(Z3)........03000909
Device Specific.(Z4)........FF401210
Device Specific.(Z5)........02C03951
Device Specific.(Z6)........06433951
Device Specific.(Z7)........07433951
Device Specific.(Z8)........20000000C930D02B
Device Specific.(Z9)........CS3.91X4
Device Specific.(ZA)........C1D3.91X4
Device Specific.(ZB)........C2D3.91X4
If the firmware level in the "Z9" field is less than 3.93a0, then you should update the microcode.
- The second method uses the "lsmcode" command and will display the file extension of the firmware image file name the was last installed on the adapter.
lsmcode -d fcsX
Where X is the number of the adapter returned by the previous lsdev command
DISPLAY MICROCODE LEVEL 802111
fcs3 FC Adapter
The current microcode level for fcs3 is 393100.
Use Enter to continue.
F3=Cancel F10=Exit Enter
If the firmware level in the is NOT 393100, then you should upgrade the microcode.
5.2 Linux Systems
On Linux systems one of two possible methods must be used to determine the current level of Microcode on installed adapters. If the first method does not display the Microcode level, the second method should display the Microcode level for installed adapters. Both methods assume you are logged in as root and one or more Fiber Channel PCI adapters are installed.
cat /proc/scsi/lpfc/*
Output will display various information for each installed Fiber Channel PCI adapter. Make note of Driver version, Emulex LightPulse model and Firmware Version:
Emulex LightPulse FC SCSI 7.2.4
Emulex LightPulse LP9002L 2 Gigabit PCI Fiber Channel Adapter
Firmware Version: 3.93 (H2D3.93a0)
cd /sys/class/scsi_host
find . -name "lpfc_drvr_version" -print
Output will list relative path names for each installed Fiber Channel PCI adapter. Note the host{n} portion of each path.
./host2/lpfc_drvr_version
./host1/lpfc_drvr_version
cat host{n}/lpfc_drvr_version
Where host{n} is one from step 1. Driver version should be noted as it will be required later when Microcode is updated. Driver version may vary but will display as follows:
Emulex LightPulse FC SCSI 7.2.4
cat host{n}/modelname
Where host{n} is one from step 1. Model will display as follows:
LP9002L
cat host{n}/fwrev
Where host{n} is one from step 1. Firmware version will display as follows:
3.93 (H2D3.93a0)
If, as shown in bold text above, the Emulex LightPulse model is LP9002L and the firmware version is not 3.93a0, then the microcode should upgraded.
Instructions for downloading and unpacking firmware update packages follows.
NOTE: Microcode can now be installed during normal operations. If you are on 4.3.3, please install APAR IY26204 from FIXDIST. If you are on AIX 5.1.0, please install APAR IY26249 from FIXDIST.
The download choices are from the internet and CORE:
You will want a copy of the description and one of the above formats.
You may transfer the files to
the target system in one of the following ways:
Detailed download /unpacking instruction follow for each format.
NOTE: The following values apply to this microcode file:
File size: 458884 bytes
Checksum: 19356
6.1 Downloading AIX RPM Format File to an AIX Server
Use this method to download to an AIX system:
Note: The instructions that follow are specific AIX commands. AIX commands are CASE (lower and upper) SENSITIVE, and must be entered exactly as shown, including filenames.
1. Make a directory on an AIX system to receive the RPM format file.
Enter: mkdir /etc/microcode
Note: The /etc/microcode directory may already exist, if so, proceed to the next step.
Enter:
cd /etc/microcode
2. Transfer the RPM format file to the /etc/microcode directory (using "Save as ...").
You'll see the filename is pci.df1000f9-3-93a0.aix.noarch.rpm
3. Unpack the file by executing the instructions below:
Enter the commands:
rpm -ihv --ignoreos pci.df1000f9-3-93a0.aix.noarch.rpm
4. If the firmware unpacks successfully, the microcode files will be added to /etc/microcode/
5.The file size and checksum will be verified on the firmware image, NOT the RPM file.
File size: 458884
Checksum: 19356
If step 3 returns with: " package package_name is already installed"
You will need to un-install the rpm package as follows:
rpm -e package_nameNow go to step 3 above to unpack the firmware.
Where "package_name" is the package name returned in the failure of step three.
6.2 Downloading Linux RPM Format File to a Linux Server
Note: The steps that follow list specific Linux commands. Linux commands are CASE (lower and upper) SENSITIVE, and must be entered exactly as shown, including filenames.1. Transfer the Linux RPM format file, pci.10dff900-3-91x4.Linux.noarch.rpm to a temporary directory on the target server, /tmp in this example.
2. Unpack the RPM file by typing:
rpm -ivh /tmp/pci.10dff900-3-93a0.Linux.noarch.rpm3. Verify the firmware update file, pci.10dff900.393100, was installed in /lib/firmware directory.
4. If not, carefully review previous steps and carefully examine output from rpm command for any reported errors.
The Diagnostic Microcode Downpour software supports the following naming convention for the microcode binary file :
df1000f9.393100 where the 393100 is the version of the file.
NOTE: Due to regressions with the AIX concurrent download feature, it is recommended that firmware download be performed during a maintenance window.
7.1 Using the AIX Command-Line Method
You are now ready to FLASH the EEPROM in the adapter using the single command:
diag -d fcsX -T download
Where X is the number found from the "lsdev -C | grep fcs " command.
Self-explanatory menus will step you through the microcode installation.
Repeat each step in 7.1 above for all the cards that need the update.
To Back level the firmware
diag -d fcsX -T "download -f -l previous"
7.2 Using the Update Flash Diagnostic Service Aid Method
From the command line login, log in as root.
Enter
diag
Select
Task Selection (Diagnostics, Advanced Diagnostics, Service Aids, etc.)
Select
Download Microcode
Select the device returned for above
fcs*
Press enter when prompted to download the microcode
Upon completion, a message will state that the firmware has be successfully downloaded and that
the new level is 393100.
Exit.
7.3 Using the Linux lputil Method
To update the Fiber Channel PCI adapter microcode on installed adapters in a Linux system the Emulex lputil flash program must be used. This program is included in an Application Kit availble only from the IBM OEM web pages on the Emulex web site. Some versions of Linux will also require an Application Helper Module also available from the IBM OEM web pages on the Emulex web site.
In some cases, the IBM OEM web page may list an updated driver for the Linux version installed on the target server. The updated Driver Kit includes both an updated driver and the corresponding Application Helper Module. You should consider installing the updated Driver Kit along with the Application Helper Module.
To begin, open the IBM OEM web page by entering http://www.emulex.com/ibm/support/index.jsp in an Internet browser. Follow links on the page to the LP9002 IBM Branded Fiber Channel PCI adapter page. This page will contain a list of supported drivers for this adapter.
Scroll down to the "Drivers for Linux" or the "Previous Releases" section. Find the entry in the table which corresponds to the Linux driver version currently installed on the target server as determined in section 5.2 above. Download the Application Kit or Driver Kit and, if needed, the Application Helper Module to a temporary directory on the target server. Follow the installation instructions provided on the IBM OEM web page to install the downloaded packages.
Once both the Application Helper Module Kit or Driver Kit and the Application Kit have been installed on the target, updating the microcode can proceed as follows.
- Begin by confirming proper installation of Application Kit and Application Helper Module.
Verify lputil command is present, type ls /usr/sbin/lpfc/lputil Output should list file path for lputil command.
Verify Driver Module (lpfc of lpfcdd) is loaded, type lsmod Examine output for presence of lpfc or lpfcdd in loaded module list. If not present, type modprobe lpfc or modprobe lpfcdd, examine console messages for error reported.
Verify Helper Module (lpfcdfc) is loaded, type lsmod Examine output for presence of lpfcdfc in list. If not present, type modprobe lpfcdfc, examine console messages for error reported.If any of the verification checks fail, review the installation documentation and insure all steps were completed, look for any errors reported during installation. If problems cannot be resolved, contact IBM service support.
- Since firmware update will reset the Fiber Channel adapters, you should unmount any storage devices controlled by the adapter being updated before proceeding.
Caution: Do not interrupt this process, shutdown the system or remove power until the firmware update process is complete.
- Start the utility by typing: /usr/sbin/lpfc/lputil
- From the Main menu, enter 3, Firmware Maintenance
- If more than one HBA is installed, select the HBA to be updated.
- Enter 1, Load Firmware Image
- Enter the full path to the firmware file, /lib/firmware/pci.00dff900.393100, press enter.
- Wait for message indicating update process is complete.
- Enter 0 twice to exit the utility, the new firmware has been flashed to the adapter.
If you are updating the firmware on a dual-channel HBA, repeat steps 3 through 8 to update the firmware on the second port.
7.4 Verifying the Update on AIX Systems
1 List the Fiber Channel PCI adapters installed in the system by typing:
lsdev -C | grep "fcs"
Note the device names of all the Gigabit Fiber Channel PCI Adapters installed. The adapter device names will be fcsX, where X is 0,1, or some other number.
2 There are two methods to check the current microcode level for the adapter.
- The first method uses the "lscfg" command and will display much of the information from the adapter VPD. The Z9 field will contain the firmware level.
lscfg -vl fcsX
Where X is the number of the adapter returned by the previous lsdev command.
The Command will produce output similar to
DEVICE LOCATION DESCRIPTION
fcs0 00-04 IBM Gigabit Fiber Channel PCI Adapter for 64 bit bus
Part Number.................00P4494
EC Level....................A
Serial Number...............1A25001206
Manufacturer................001A
FRU Number.................. 00P4495
Network Address.............10000000C930D02B
ROS Level and ID............02C03951
Device Specific.(Z0)........2002606D
Device Specific.(Z1)........00000000
Device Specific.(Z2)........00000000
Device Specific.(Z3)........03000909
Device Specific.(Z4)........FF401210
Device Specific.(Z5)........02C03951
Device Specific.(Z6)........06433951
Device Specific.(Z7)........07433951
Device Specific.(Z8)........20000000C930D02B
Device Specific.(Z9)........CS3.93a0
Device Specific.(ZA)........C1D3.93a0
Device Specific.(ZB)........C2D3.93a0
If the firmware level in the "Z9" field is 3.93a0, then the microcode has been successfully upgraded.
- The second method uses the "lsmcode" command and will display the file extention of the firmware image file name the was last installed on the adapter.
lsmcode -d fcsX
Where X is the number of the adapter returned by the previous lsdev command
DISPLAY MICROCODE LEVEL 802111
fcs3 FC Adapter
The current microcode level for fcs3 is 393100.
Use Enter to continue.
F3=Cancel F10=Exit Enter
If the firmware level in the "Z9" field is 393100, then microcode has been successfully upgraded.
7.5 Verifying the Update on Linux
On Linux systems one of two possible methods must be used to determine the current level of Microcode on installed adapters. If the first method does not display the Microcode level, the second method should display the Microcode level for installed adapters. Both methods assume you are logged in as root and one or more Fiber Channel PCI adapters are installed.
- The first method generally works on systems running Linux 2.4 kernels and some systems running 2.6 kernels which do not have full support for the /sys filesystem.
- List Fiber Channel PCI adapter information for all installed adapters by typing:
cat /proc/scsi/lpfc/*
Output will display various information for each installed Fiber Channel PCI adapter. Make note of Firmware Version:
Firmware Version: 3.93 (H2D3.93a0)- The second method works on systems running Linux 2.6 and higher kernels which support the /sys file system.
- Determine which host numbers are assigned to installed Fiber Channel PCI adapters by typing:
cd /sys/class/scsi_host
find . -name "lpfc_drvr_version" -printOutput will list relative path names for each installed Fiber Channel PCI adapter. Note the host{n} portion of each path.
./host2/lpfc_drvr_version
./host1/lpfc_drvr_version- Display Firmware version for each installed Fiber Channel PCI adapter by typing:
cat host{n}/fwrev
Where host{n} is one from step 1. Firmware version will display as follows:
3.93 (H2D3.93a0)
If the firmware level in displayed using either method is 3.93a0, then the firmware has been upgraded
Privacy | Legal | Contact IBM