PCIe2 2-Port 16Gb FC
Adapter
******* PLEASE READ
THIS ENTIRE NOTICE *********
DATE: November 14, 2014
Table of Contents
1.0 Microcode and Document Revision History:
2.0 General information
3.0 Installation time
4.0 Machine's Affected:
5.0 Linux Requirements:
6.0 AIX Requirements:
7.0 Determine the Current Microcode Level
7.1 AIX Systems
7.2 Linux Systems
8.0 Downloading the RPM Format File to the Target
Server
8.1 Downloading AIX RPM Package
8.2 Downloading Linux RPM Package
9.0 Discovery Tool Microcode CD-ROM creation and
download instructions
10.0 Verifying microcode before download and notes
10.1 Verifying microcode before download for AIX
10.2 Verifying microcode before download for Linux
11.0 Microcode Download Procedure for AIX:
11.1 Setting up for Microcode download
11.2 Downloading Microcode to the Adapter
11.3 Verify and Re-configure adapters
12.0 Microcode Download Procedure for Linux using
Emulex hbacmd utility
12.1 Download One Command Manager
12.2 Download Code to Adapter
Microcode Level |
Changes |
00010000020025200009 |
* FC * P_RJT response for
Fibre Channel Class 2 ELS's * Reboot FCoE adapter
path recovery failure - mailbox error and fcs unknown error * FC adapter does not
indicate closed exchange when WQE with LNK bit set fails (fw ignores early
closure of exchange for linked scsi
commands) * Experiencing NIM
install issues with adapters * DCBX Get Config
Mailbox Cmd timing out. Fix Link bounces
* Unable to set pause
Flow control when connected to DCBX switch with PFC off * GRP5 Link COS ACQE
needs to be delivered on DCBX/PFC change * AIX issues BA_RJT
with reason code "Protocol Error" to target-Initiated ABTS |
The Firmware
Levels Below Are No Longer Supported By IBM Once They Have Been Removed From
The Microcode Down Load Website. It is best
practices to update to the latest FW level not only for IBM support of these
products, but for optimal performance and to ensure that all of the required
HW/FW fixes are installed. Once new FW has been released to the field, we
will provide a 6 month grace period for customers to update these products to
the currently supported FW level . Please Update To
The Latest Level At Your Earliest Convenience |
|
00001000010005800004 |
- Exchanges aborted after REC is
successfully ACC'd by target device. -
COMMON_GET_FLOW_CONTROL issues in dedicated mode -
No link after cable plugged in -
VIOS disk path does not recover from Initiator port cable pull -
Adapter pport stat counter TX_BROADCAST_BYTES incorrect -
Logging in and out of fabric |
00001000010003400005 |
1)
Adapter livedump following CRC forced errors. 2)
fcode fix of SAN boot LPAR stuck at LED
AA00E158 3)
No link after cable plugged in. 4)
Failed paths to SAN after a switch reboot. |
0001000010003400003 |
This is the level of microcode that
initially shipped with the adapter when it became generally available. |
Document Revision
History |
Description |
02/28/2013 |
Creating
Readme file with latest microcode for
this adapter - df1000e21410f103 |
05/27/2013 |
Update readme file with
level 00001000010003400005 |
05/22/2014 |
Update
readme file with level 00001000010005800004 |
11/14/2014 |
Update
to level 00010000020025200009 |
This Readme file is intended to give directions on how to update the microcode found on the PCIe2 2-Port 16Gb FC Adapter (FC: EN0A and EN0B ).
Approximately 20 minutes.
Feature Code EN0A ( Full Height ), EN0B ( Low Profile )
CCIN 577F
Basic card function is supported on:
• Red Hat Enterprise Linux 6.4 for POWER® , or later
• SUSE Linux Enterprise
Server 11 Service Pack 2, or later, with current maintenance updates available
from SUSE to enable all planned functionality
http://drivers.suse.com/driver-process/pub/update/Emulex/sle11sp2/common/ppc64/
Basic card function is supported on :
If you are using another release of AIX, ensure that the adapter is supported on that release before you install the adapter. Contact service and support for assistance.
Before you install the microcode, it is important to determine the
microcode level of the Adapter installed in the target system. Use the
following instructions to read the ROM level stored in the Adapter's VPD.
1) List the Fiber Channel adapters or Ethernet adapters installed in the system by typing:
lscfg -l fcs\*
or:
lscfg -l ent\*
Note: All of the Fiber Channel and Ethernet adapter ports that are installed will be displayed. They will be listed as fcsX and entX, where X is 0, 1, etc.
2) To check the current microcode level for the adapter or controller enter the following command
lsmcode -cd fcsx
or:
lsmcode -cd entx
Where “x” is the instance of the adapter. The command will produce output similar to:
The current microcode level for fcs0 is 00010000020025200009
If the ROM Level is less than 00010000020025200009 you should update the microcode.
The following steps are for Linux Red Hat or SuSE systems running
2.6 kernels which support the /sys filesystem. These steps assume you are
logged in with root permissions and one or more
PCIe2 16Gb 2-Port Fibre Channel Adapters, Feature Code EN0A or EN0B are
installed.
1) Display the model description for each installed Fibre Channel adapter.
Expect two instances of PCIe2 16Gb
2-Port Fibre Channel Adapters to be displayed; one for each port on the dual port
adapter. Type the following commands to display a list showing the
host{n}:description for each installed adapter.
cd /sys/class/scsi_host
find -L host* -maxdepth 1 -name "modeldesc" -printf %h: -exec cat {}
\;
The output will be similar to that shown here. The host{n} values
will be used in the next step. If the list is empty, either there are no
adapters installed or there was an error in typing the command. If the list
contains other adapters but no 16Gb 2-Port FC adapters are listed, none are installed
and this firmware update should not be applied.
host2: IBM xxxP/Nxxx PCIe2 16Gb 2-Port Fibre Channel Adapter
host3: IBM xxxP/Nxxx PCIe2 16Gb 2-Port Fibre Channel Adapter
2) Display the firmware version for each adapter. Type the following
command, replacing host{n} with the value reported for each adapter listed in
Step 1.
cat host{n}/fwrev
The microcode version listed may vary but output will be similar to
that shown here, four numbers separated with “.”, sli-4:2:b:
10.2.252.9, sli-4:2:b
Repeat this command for each host{n}. If
one or more adapter lists a microcode
version that is not 10.2.252.9, then the microcode update should be applied.
3) Display Linux Operating System version. Type the following
command to display the Operating System version. Make a note of Operating
System version, it will be needed later.
For Red Hat systems, type the following command.
cat /etc/redhat-release
Output will be similar to:
Red Hat
For SuSE systems, type the following command. Output will be similar to:
cat /etc/SuSE-release
SUSE Linux Enterprise Server 11 (ppc64)
VERSION = 11
PATCHLEVEL = 2
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 two directories on your AIX system to receive the RPM format
file.
Enter: "mkdir
/tmp/microcode"
and then create this directory
Enter: "mkdir /tmp/microcode/RPM"
2) Transfer the RPM format file to the /tmp/microcode/RPM directory (using "Save as ..."). Change to that directory, "cd /tmp/microcode/RPM".
You'll see the filename for the RPM file.
"rpm -ihv --ignoreos df1000e21410f103.00010000020025200009.aix.rpm"
3) For AIX: The microcode files will be added to /etc/microcode/.
NOTE:
- "/etc/microcode" is a symbolic link to
"/usr/lib/microcode".
- If permission does not allow the copy to the above stated directory or
file then the user will be prompted for a new location.
Follow these steps to install the Linux RPM package on a Linux system. Note that the Linux commands are case sensitive and must be entered exactly as shown, including file names.
1) Transfer the Linux rpm file, df1000e21410f103.00010000020025200009.grp.Linux.rpm, to a temporary directory on the target server such as /tmp.
2) Unpack the rpm file by typing:
rpm -ihv
/tmp/df1000e21410f103.00010000020025200009.grp.Linux.rpm
3) The microcode package extract the firmware file to the /lib/firmware directory. If a message is displayed saying the "package <package_name> is already installed", you will need to uninstall the rpm package. On the command line type:
rpm -e
<package_name>
where <package_name> is the name of the package that was returned in the message. Return to Step 2 and attempt to unpack the file again.
4) Verify the microcode image in Section 10.2
To obtain information how to burn a CD-ROM and run the Discovery Tool for an AIX or Linux System please go to: http://www14.software.ibm.com/support/customercare/mds/
1) After running the Discovery Tool successfully the "/tmp/microcode/RPM" directory was created and your rpm files are copied from the CD-ROM.
2) Change to that directory, "cd /tmp/microcode/RPM".
3) Unpack the file by executing the instructions below:
Enter the commands:
rpm -ihv --ignoreos df1000e21410f103.00010000020025200009.aix.rpm
4) One microcode file will be copied to
"/etc/microcode".
File Name: df1000e21410f103.00010000020025200009
NOTE:
- "/etc/microcode" is a symbolic link to
"/usr/lib/microcode".
- If permission does not allow the copy to the above stated directory or
file then the user will be prompted for a new location.
Please verify the file size and checksum of the raw microcode files matches what is listed below.
For AIX :
Please verify the file size and checksum
# ls -l df1000e21410f103.00010000020025200009
-rw-r--r-- 1 root
system 10585264 Nov 10 22:25
df1000e21410f103.00010000020025200009
# sum df1000e21410f103.00010000020025200009
10683 10338 df1000e21410f103.00010000020025200009
Please verify the file location, size and checksum of the raw microcode files matches what is listed below.
Verify file size:
ls -l
/lib/firmware/df1000e21410f103.00010000020025200009.grp
Expected file size: 10585264
Verify checksum:
sum /lib/firmware/df1000e21410f103.00010000020025200009.grp
Expected checksum: 10683 10338
Microcode download must be performed separately for each Adapter under each Logical Partitions (LPAR's).
1) Stop all applications that use this interface/adapter
2) You only need to pick one of the fcs# per adapter for microcode update. Diag will update microcode for all ports.
1) At the command line type “diag”
2) Select the "Task Selection" from diagnostics menu.
3) Select "Microcode Tasks” then select “Download Microcode" from the
menu.
4) Select all of the PCIe2 2-port 16Gb FC Adapters that need to be updated from
the list of devices by using the arrow keys to highlight the entry and pressing
"Enter" to mark it. The devices will be displayed as fcs#,
where # is the number of the device. Press "F7" when you are
done marking all the adapters you want to flash.
5) If a source selection menu is displayed, Select “/etc/microcode”.
6) A dialogue box may be displayed on screen. It will state that the current
microcode level on the adapter is not in the /etc/microcode directory.
This is acceptable because the adapter will reject any incorrect code.
Press "Enter" to continue.
7) Select 00010000020025200009 level and press
"Enter" to flash the adapter.
8) The following message will appear on the screen when download is completed:
"Microcode download complete successfully. The current microcode
level …… Please run diagnostics on the
adapter to ensure that it is functioning properly."
9) If you selected more than one adapter to update, then steps 6-9 will repeat
until all adapters are updated.
10) Exit diagnostics.
1) Verify the code level is 00010000020025200009 by typing "lsmcode -cd fcs#" or “lsmcode -cd ent#” for each Fiber Channel or Ethernet adapter updated. <Where # is the instance of the adapter>
2) Re-configure/Verify the adapter’s information through the “smit” menus if necessary.
# lscfg -vl fcs1
fcs1 U2C4B.001.DBJ2970-P2-C6-T2 PCIe2 2-Port 16Gb FC Adapter (df1000e21410f103)
Part Number.................74Y2221
Serial Number...............1A22700026
EC Level....................D76899
Customer Card ID Number.....577F
Manufacturer................001A
FRU Number..................74Y2221
ROM Level.(alterable).......100300
Device Specific.(ZM)........3
Network Address.............10000090FA0203E2
Device Specific.(Z0)........0000000B
Device Specific.(Z1)........00000010
Device Specific.(Z2)........00000000
Device Specific.(Z3)........08090000
Device Specific.(Z4)........01010001
Device Specific.(Z5)........33342E33
Device Specific.(Z6)........33342E33
Device Specific.(Z7)........C0022B40
Device
Specific.(Z8)........20000090FA0203E2
Device Specific.(Z9)........10.2.252.9
Device Specific.(ZA)........10.2.252.9
Device Specific.(ZB)........00000000
Device Specific.(ZC)........00040000
Device Specific.(ZD)........000000FF
Hardware Location Code......U2C4B.001.DBJ2970-P2-C6-T2
Microcode download must be performed separately for each Adapter under each Logical Partitions (LPAR's).
Microcode updates on Fibre Channel adapters installed in a Linux
system require the use of the Emulex hbacmd utility. The hbacmd utility is
included in the Emulex One Command CLI Applications Kit downloads web page
located at
http://www.emulex.com/downloads/emulex/drivers/linux
Select the Linux OS Release;
Select the “Management and Utilities” tab.
For purpose of updating the microcode, One Command Manager (CLI) will be used. Select the Application Kit {version} (CLI) link.
When prompted, save the Application Kit a directory of your choice on the target server.
Complete the requested user registration information, then select Download Driver button.
When prompted, save the elxcmcore-xxxx-xxxx-x.x.x.x-x.tgz file to a temporary directory, /tmp or you may save to directory of your choice.
Change directory to the directory where you have saved the elxcmcore-xxxx-xxxx-x.x.x.x-x.tgz archive.
Unpack the tgz archive, by typing:
tar xzf elxcmcore-xxxx-xxxx-x.x.x.x-x.tgz
Change directory to elxocmcore-xxxx-xxxx-x.x.x.x-x and install the
utility, by typing:
./install.sh
Answer questions as prompted using descriptive information provided as a guide.
Display the utility version to verify the hbacmd command is
functional by typing: /usr/sbin/ocmanager/hbacmd version
Utility component version information should be displayed
Ensure that all I/O activity to storage devices controlled by the adapter
is stopped prior to proceeding with firmware update as the adapter will be
reset after firmware update.
List installed Emulex adapters by typing: /usr/sbin/hbacmd listhbas
Output from this command will be similar to the following, repeated one section
for each discovered adapter. Adapters can be identified by looking for e200 in
Flags value. For each adapter, make a note of the Port WWN: value. The Port WWN
values will be required as an argument for commands in next steps.
Port WWN :
Node WWN :
Fabric Name :
Flags : 8000e200
Host Name : 8205-e6c-1-lp3
Mfg : Emulex Corporation
Serial No. : 123456789
Port Number : 1
Mode : Initiator
PCI Bus Number : 1
PCI Function : 1
Port Type : FC
Model : 74Y2221
List hba attributes for each adapter listed in the above step, Type
/usr/sbin/hbacmd hbaattributes {wwpn}, where {wwpn} is one of the port WWPN
values. Output will look similar to the following and will list current
versions of FW Version, SLI2 FW, SLI3 FW as well as Boot Code, all of which
will be updated by microcode update. Save current operational firmware values
for comparison post update.
HBA Attributes for
Host Name : 8205-e6c-1-lp3
Manufacturer : Emulex Corporation
Serial Number : 123456789
Model : 74Y2221
Model Desc : IBM 74Y2221 PCIe2 16Gb
2-Port Fibre Channel Adapter
Node WWN : 20 00 00 00 c9 d1 8b f1
Node Symname : Emulex 74Y2221 FV1.1.34.3
DV8.3.7.7.1p
HW Version : 0000000b
FW Version : 10.2.252.9
Vendor Spec ID : 10DF
Number of Ports : 1
Driver Name : lpfc
Device ID : E200
HBA Type : 74Y2221
Operational FW : 1.1.34.1
IEEE Address : 00 00 c9 d1 8b f1
Boot Code : Enabled
Boot Version : KT8.02a7
Driver Version
: 8.3.7.7.1p; HBAAPI(I) v2.3.b,
Board Temperature
:
Function Type : FC
Sub Device ID : 03F1
PCI Bus Number : 1
PCI Func Number : 1
Sub Vendor ID : 1014
Service Processor FW Name : 10.2.252.9
ULP FW Name : 10.2.252.9
FC Universal BIOS Version : KT8.02a7
FC x86 BIOS Version : KA6.01a11
FC EFI BIOS Version : KD6.01a11
FC FCODE Version : KN4.02a14
Flash Firmware Version : 10.2.252.9
Update microcode on one port per adapter. This step assumes that
microcode image .rpm package has been installed on system as described in
section 8.2.
Warning: Do not interrupt or power off the system while microcode update(s) are
in progress.
Start microcode update on one adapter port, type:
/usr/sbin/hbacmd download {wwpn}
/lib/firmware/df1000e21410f103.00010000020025200009.grp , where {wwpn} is one of the port WWN values
of adapter.
Completion of download will be indicated by “Download Complete.”
message.
System must be rebooted for firmware to be loaded. Reboot system
After system reboot, check firmware version as described in Section
7.2 or using /usr/sbin/hbacmd
hbaattributes {wwpn} as above for
each port.
If, firmware version is not the version you are expecting, carefully retrace
steps for omissions and examine console output for errors. Contact IBM support if you need further
assistance.