******* PLEASE READ THIS ENTIRE NOTICE *********
DATE: May 23, 2018
Table of Contents
1.0 Microcode and Document Revision
History:
7.0 Determine the Current Microcode Level
8.0
Downloading and unpacking the Microcode Package
8.1
Downloading AIX RPM Package
8.2
Downloading Linux RPM Package
9.0 Discovery Tool Microcode CD-ROM creation and download
instructions for AIX systems
10.0 Verifying microcode before download and notes for AIX
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
Microcode Level |
Changes |
00011000020021100021 |
Impact: Usability Severity:
ATT * adapter has an intermittant
issue where reading NIC fcode returns 00 * FCode memory leak in fibre channel driver * adapter with FW 11.1.35.67 failing NIM install * Direct Attach LinkUp
Issue with DS8K array. FEC set to off on both sides to work. * Add data scrubbing to adapter FW dump process to
remove/obscure user data * Customer reporting spontaneous dump on FCoE adapter running 10.2.252.1921 fw
* FC adapter intermittently aborts active I/Os after Accepted REC * VIOS crashed when lpar was booted into Sles |
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. Please Update To The Latest Level At Your Earliest Convenience |
|
00010000020025201919 |
* Fixed an
intermittent issue of Link not coming up after reboot with Cisco switch. * Fixed FC Tape
class 3 error recovery * Fixed performance
scaling when using IBM Flash system 900 |
00010000020025201905 |
*Fix for SRIOV mode, adapter went to error state when
config Vnic. *Fix for SRIOV VF TX timeouts when other VFs are FLR – reseted. *Fix for SRIOV Vnic ping failure when injecting EEH errors. *Fix for spontaneous livedump
with adapter entered error state (9F000013,00001007) *Fix a rogue frame with EoFa and
a bad length, seen during switch reboots. *Fix an inbound class 2 FLOGI rejected with non-retryable invalid class of service |
00010000020025200016 |
*Fix for SRIOV race conditions in PCI Function Reset *Fix for Outbound Jammer test (Dropped outbound data frame
of single frame sequence) *Fix IO
fail to resume after f/w update on FCoE *Fix DMA to 0 in an IBMi system *Fix for SRIOV hard LPAR shutdowns |
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 |
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. |
00001000010003400003 |
This is the level of microcode that initially shipped with the adapter when it became generally available. |
Document Revision History |
Description |
|
Creating Readme file with latest microcode for this adapter- df1000e214105e04 |
|
Update readme file with level 00001000010003400005 |
05/28/2014 |
Update readme file with
level 00001000010005800004 |
12/05/2014 |
Update readme file with level 00010000020025200009 |
07/20/2015 |
Update readme file with level 00010000020025200016 |
02/22/2016 |
Update readme file with level 00010000020025201905 |
09/12/2016 |
Update readme file with level 00010000020025201919 |
05/23/2018 |
Update readme file with level 00011000020021100021 |
This
Readme file is intended to give directions on how to update the microcode found
on the GX++ 2-port 16Gb Fibre Channel Adapter (FC:
EN23).
Approximately 20 minutes.
Feature Code
EN23:
9119-FHB
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.
Download drivers link:
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.
Important
Notice: EEH error
entries in AIX system errlog are expected when updating adapter FW.
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 installed in the system by typing:
lscfg -l fcs\*
Note:
All of the Fiber Channel adapters that are installed will be displayed. They
will be listed as fcsX, 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
Where
“x” is the instance of the adapter. The command will produce output similar to:
The
current microcode level for fcs0 is 00011000020021100021
If
the ROM Level is less than 00011000020021100021
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 IBM 2 port 16Gb Fibre Channel GX++ adapters, Feature Code EN23 are
installed.
1) Display the model description for each installed Fibre
Channel adapter. Expect two instances of IBM 2 port 16Gb Fibre
Channel GX++ 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 Feature Code EN23
adapters installed or there was an error in typing the command. If the list
contains other adapters but no FC EN23 adapters are listed, none are installed
and this firmware update should not be applied.
host1:IBM 2 port 16Gb Fibre Channel GX++ adapter with
SW optics
host2:IBM 2 port 16Gb Fibre Channel GX++ adapter with
SW optics
2)
Display the firmware version for each Feature Code EN23 adapter. Type the
following command, replacing host{n} with the value reported for each FC EN23
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:
11.2.211.21 , sli-4:2:b
Repeat this command for each adapter
host{n}. If one or more adapter lists a microcode version that is not 11.2.211.21,
then the microcode update should be applied.
3)
Display Emulex Fibre Channel adapter driver version.
Type the following command to display the adapter driver version.
modinfo
-F version lpfc
Only the portion following the ':' is important. Make a note of driver version
as it will be needed later. For example:
0:8.3.5.86.1p
4)
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 following command.
cat /etc/redhat-release
Output will be similar to:
Red Hat
For Novell systems, type 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 df1000e214105e04.00011000020021100021.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.
8.2 Downloading Linux RPM
Package
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, df1000e214105e04.00011000020021100021.grp.Linux.rpm,
to a temporary directory on the target server such as /tmp.
2) Unpack the rpm file by typing:
rpm -ihv /tmp/df1000e214105e04.00011000020021100021.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 df1000e214105e04.00011000020021100021.aix.rpm
4)
One microcode file will be copied to "/etc/microcode". The file
size and checksum of the microcode image will be verified in Section 9.0.
FileName:
df1000e214105e04.00011000020021100021
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 df1000e214105e04.00011000020021100021
-rw-r--r--
1 root system 10846192 Apr 03 22:25 df1000e214105e04.00011000020021100021
#
sum df1000e214105e04.00011000020021100021
43623
10592 df1000e214105e04.00011000020021100021
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/df1000e214105e04.00011000020021100021.grp
Expected
file size: 10846192
Verify checksum:
sum /lib/firmware/df1000e214105e04.00011000020021100021.grp
Expected
checksum: 43623 10592
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 GX++ 2-Port 16Gb FC
Adapter 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 00011000020021100021
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
for the device fcs# is ... 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 00011000020021100021 by typing "lsmcode-cd
fcs#" for each Fiber Channel adapter updated.
2)
Re-configure/Verify the adapter’s information through the “smit” menus if
necessary.
# lscfg -vl fcs0
fcs0 U78A2.001.DQD0004-P6-C39-T1 GX++ 2-Port 16Gb FC Adapter
(df1000e214105e04)
Part Number.................73Y8774
EC
Level....................N44581B
Customer Card ID Number.....2B9B
FRU
Number..................73Y8776
Device Specific.(ZM)........3
Network Address.............1000005076000164
Device Specific.(Z0)........0000000B
Device Specific.(Z1)........00000010
Device Specific.(Z2)........00000000
Device
Specific.(Z3)........08090000
Device Specific.(Z4)........01000001
Device Specific.(Z5)........2E323532
Device Specific.(Z6)........2E323532
Device Specific.(Z7)........C0022B40
Device Specific.(Z8)........2000005076000164
Device Specific.(Z9)........11.2.211.21
Device Specific.(ZA)........11.2.211.21
Device Specific.(ZB)........00000000
Device Specific.(ZC)........00040000
Device Specific.(ZD)........000000FF
Hardware
Location Code......U78A2.001.DQD0004-P6-C39-T1
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 :
https://www.broadcom.com/support/download-search
Group:
Storage Adapters, Controllers, and ICs
Family:
Fibre Channel Host Bus Adapters
OEM:
Product:
All
Asset
type: Management Software and Tools
Keyword:
PowerPC
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. Feature Code EN23 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. Note: model may be shown as 41T8694 in
this output.
Port WWN
: 10:00:34:40:b5:da:0c:80
Node WWN
: 20:00:34:40:b5:da:0c:80
Fabric Name
: 10:00:00:05:1e:89:a0:e9
Flags : 8000e200
Host
Name : mpvhejemp2
Mfg : Emulex Corporation
Serial
No. : 3440b5da0c80
Port
Number : 0
Mode : Initiator
PCI
Bus Number : 1
PCI
Function : 0
Port
Type : FC
Model : 41T8694
List
hba attributes for each Feature Code EN23 adapter
listed in Step 1, Type /usr/sbin/hbacmd hbaattributes {wwpn}, where {wwpn} is one of
the port WWPN values listed in Step 1. 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 10:00:34:40:b5:da:0c:80
Host
Name : mpvhejemp2
Manufacturer : Emulex Corporation
Serial
Number : 3440b5da0c80
Model : 41T8694
Model
Desc : IBM 2 port 16Gb Fibre
Channel GX++ adapter with SW optics
Node WWN : 20 00 34 40 b5 da 0c 80
Node Symname : Emulex 41T8694 FV1.1.34.5
DV8.3.7.7.1p
HW
Version : 0000000b
FW
Version : 11.2.211.21
Vendor
Spec ID : 10DF
Number
of Ports : 1
Driver
Name : lpfc
Device
ID : E200
HBA Type : 41T8694
Operational FW : 11.2.211.21
IEEE
Address : 34 40 b5 da 0c 80
Boot
Code : Enabled
Boot
Version : KT8.02a7
Driver
Version : 8.3.7.7.1p;
HBAAPI(I) v2.3.b, 07-12-10
Board
Temperature :
Function
Type : FC
Sub
Device ID : 045E
PCI
Bus Number : 1
PCI
Func Number
: 0
Sub
Vendor ID : 1014
Service
Processor FW Name : 11.2.211.21
ULP
FW Name :
11.2.211.21
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 : 11.2.211.21
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/df1000e214105e04.00011000020021100021.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.