GX++ 2-port 10Gb FCoE CNA SR Optical Adapter (FC: EN22) 

******* PLEASE READ THIS ENTIRE NOTICE *********

 
DATE: December 5, 2014 

Table of Contents

 

Contents

1.0 Microcode and Document Revision History: 1

2.0 General information  3

3.0 Installation time  3

4.0 Machine's Affected: 3

5.0 Linux Requirements: 3

6.0 AIX Requirements: 3

7.0 Determine the Current Microcode Level for AIX: 4

7.1 AIX  4

7.2 Linux  5

8.0 Downloading the RPM Format File to the Target Server  5

8.1 AIX Use this method to download to an AIX system: 6

8.2 Linux  6

10.0 Verifying microcode before download and notes  7

10.1 AIX  7

10.2 Linux  8

11.0 Microcode Download Procedure for AIX: 8

11.1 Setting up for Microcode download  8

11.2 Downloading Microcode to the Adapter  8

11.3 Verify and Re-configure adapters  9

12.0 Microcode Download Procedure for Linux: 10

12.1 Setting up for Microcode download  10

12.2 Downloading Microcode to the Adapter  11

 

1.0            Microcode and Document Revision History:
 

 

Microcode Level

Changes

00010000020025200009

* FC Adapter Port Error on ISL pull

* 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.

 

00001000010003400003

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 - df1060e214105f04

 

 05/27/2013

Update readme file with level  00001000010003400005

 06/06/2014

 Update readme file with level  00001000010005800004

12/05/2014

Update readme file with level   00010000020025200009


2.0 General information

This Readme file is intended to give directions on how to update the microcode found on the PCIe2 10Gb 4-Port FCoE Adapter (FC: EN0H and EN0J ).

3.0 Installation time

Approximately 20 minutes.

 

4.0 Machine's Affected: 

Feature Code  EN22

9119-FHB

  

5.0 Linux Requirements:

·         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/

 

6.0 AIX Requirements:

Basic card function is supported on :

  • AIX Version 7.1 with the 7100-02 Technology Level, or later
  • AIX Version 7.1 with the 7100-01 Technology Level and Service Pack 6, or later
  • AIX Version 7.1 with the 7100-00 Technology Level and Service Pack 8, or later
  • AIX Version 6.1 with the 6100-08 Technology Level, or later
  • AIX Version 6.1 with the 6100-07 Technology Level and Service Pack 6, or later
  • AIX Version 6.1 with the 6100-06 Technology Level and Service Pack 10, or later

 

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:  If your AIX system doesn’t have the APARs listed below:

                                              You need to unconfigure the ethernet ports before updating adapter FW to avoid Ethernet errors.

                                               This is only if you update from 1.1.34.5 (00001000010003400005) into 1.1.58.4 ( 00001000010005800004 )

 

 

 

                                

               AIX Level

           APAR needed

7100-01-06  and later

             IV57610

7100-02-02  and later

             IV57070

7100-03     and later

             IV56321

 

 

6100-07-06  and later

             IV58726

6100-08-02  and later

             IV58005

6100-09     and later

             IV56310

 

 

7.0 Determine the Current Microcode Level for AIX:

7.1 AIX

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.

7.2 Linux

NOTE: The instructions that follow are specific Linux commands. Linux commands are CASE (lower and upper) SENSITIVE, and must be entered exactly as shown, including filenames.

 

1)  List the Ethernet interfaces for PCIe2 10Gb 4-Port FCoE Adapter adapters installed in the system by typing:

 

    ifconfig -a | grep eth

 

Note: All of the Ethernet adapters that are installed will be displayed. They will be listed as eth{n}, where {n} is 0, 1, etc.

 

2) For each adapter listed, use ethtool -i eth{n} to determine which Ethernet interfaces are associated with the GX++ 2-port 10Gb FCoE CNA SR Optical Adapter. If driver name is “be2net”, that interface is for GX++ 2-port 10Gb FCoE CNA SR Optical Adapter. For example:

 

   ethtool -i eth{n}

 

Where {n} is the instance of the adapter. The command will produce output similar to:

 

ethtool -i eth1

 

driver: be2net

version: 2.102.426r

firmware version: 10.2.252.9

bus-info: 0001:01:00.0

 

If driver name is “be2net”, eth1 is one of GX++ 2-port 10Gb FCoE CNA SR Optical Adapter interfaces. firmware-version is “10.2.252.9”.

 

If firmware-version is not 10.2.252.9 or higher, on any of the adapters listed with a be2net driver; you should update the microcode

 

8.0 Downloading the RPM Format File to the Target Server

8.1 AIX
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 df1060e214105f04.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.

8.2 Linux

Use this method to download the new microcode to a Linux system:

NOTE: The instructions that follow are specific Linux commands. Linux commands are CASE (lower and upper) SENSITIVE, and must be entered exactly as shown, including filenames.

1)   Transfer the RPM format file to the /tmp directory(using “Save as....”). You will see the filename for the RPM file.
 

2)   Install rpm on your Linux system by typing:

rpm -ivh  /tmp/df1060e214105f04.00010000020025200009.Linux.rpm

3) The microcode package will install the firmware images in the /lib/firmware directory. If a message is displayed saying the "package <package_name> is already installed", you will need to uninstall the listed 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 install the file again.

4)    The microcode file will be installed to the /lib/firmware directory. File namedf1060e214105f04.00010000020025200009

 

9.0 Discovery Tool Microcode CD-ROM creation and download instructions

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 df1060e214105f04.00010000020025200009.aix.rpm

4) One microcode file will be copied to "/etc/microcode".               
               File Name: df1060e214105f04.
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.

10.0 Verifying microcode before download and notes

10.1 AIX

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 df1060e214105f04.00010000020025200009

-rw-------    1 root     system      10585264 Dec 03 15:54 df1060e214105f04.00010000020025200009

 

# sum df1060e214105f04.00010000020025200009

 10683 10338 df1060e214105f04.00010000020025200009

10.2 Linux

ls -l /lib/firmware/df1060e214105f04.00010000020025200009  to verify file size is 10585264

sum /lib/firmware/df1060e214105f04.00010000020025200009  to verify Checksum is 10683

11.0 Microcode Download Procedure for AIX: 

Microcode download must be performed separately for each Adapter under each Logical Partitions (LPAR's).

11.1 Setting up for Microcode download

1) Stop all applications that use this interface/adapter

2) Detach the Adapter’s interface (not always needed, but it is a good practice to do this step.

               a) Before detaching the interface, record the ip address and any other pertinent information that was configured on the Adapter.  This information may be needed if the microcode update overwrites this section on the Adapter.

 3) You only need to pick one fcs# per adapter for microcode update. Diag will update microcode for all ports.

Note: in step 3) you might need to perform “rmdev -Rl fscsi#  “ to remove child devices to the fcs#. fcs# needs to be Available for fw download.

 

11.2 Downloading Microcode to the Adapter

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 10Gb FCoE CNA SR Optical 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.

11.3 Verify and Re-configure adapters

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 adapters information through the “smit” menus if necessary.

 

# lscfg -vl fcs2

  fcs2             U78A2.001.DQD0004-P6-C40-T1  GX++ 10Gb 2-Port FCoE Adapter (df1060e214105f04)

 

        Part Number.................41T8872

        EC Level....................G37293B

        Customer Card ID Number.....2B74

        FRU Number..................41T8872

        Device Specific.(ZM)........3

        Network Address.............10003440B5DA21CC

        Device Specific.(Z0)........0000000B

        Device Specific.(Z1)........00000010

        Device Specific.(Z2)........00000000

        Device Specific.(Z3)........08090000

        Device Specific.(Z4)........00003001

        Device Specific.(Z5)........33342E35

        Device Specific.(Z6)........33342E35

        Device Specific.(Z7)........C0022B40

        Device Specific.(Z8)........20003440B5DA21CC

        Device Specific.(Z9)........10.2.252.9

        Device Specific.(ZA)........10.2.252.9

        Device Specific.(ZB)........30310000

        Device Specific.(ZC)........00040000

        Device Specific.(ZD)........000000FF

        Hardware Location Code......U78A2.001.DQD0004-P6-C40-T1

 

# lscfg -vl ent5

  ent5             U78A2.001.DQD0004-P6-C40-T1  10GbE 2-port GX++ Gen2 Converged Network Adapter (df1020e214105d04)

 

      2 port 10Gb Ethernet CNA GX++ adapter with SR optics, NIC PF:

        Part Number.................41T8872

        EC Level....................G37293B

        Customer Card ID Number.....2B74

        Network Address.............3440B5DA21C8

        ROM Level.(alterable).......10.2.252.9

        Hardware Location Code......U78A2.001.DQD0004-P6-C40-T1

12.0 Microcode Download Procedure for Linux:

12.1 Setting up for Microcode download

1)      Use this series of Linux commands to determine which of any installed Network adapters are PCIe2 10Gb 4-Port FCoE Adapter:

Note: It is advisable to cut and paste these command strings into your system console, to avoid typographical errors.

for i in `ls /sys/class/net | grep eth` ; do echo -n "${i}: "; ethtool -i ${i} | grep bus-info; done

Output will display the association between eth{n} devices and PCI bus device numbers, nnnn:nn:nn.n

eth0: bus-info:
eth1: bus-info: 0000:01:00.0
eth2: bus-info: 0000:01:00.1

lspci -d 10df:e220

Output will list PCI bus device numbers for the PCIe2 10Gb 4-Port FCoE Adapter functions, nn:nn.n

01:00.0 Ethernet controller: Emulex Corporation OneConnect NIC (Lancer) (rev 10)
01:00.1 Ethernet controller: Emulex Corporation OneConnect NIC (Lancer) (rev 10)

This example shows the 2 ports of one GX++ 10Gb 2-Port FCoE Adapter. Firmware need only be updated on the first port of each adapter,

eth1 in this case.

If more than 2 ports are shown, it is likely you have more than one adapter, so you would need to also update firmware on first port of second adapter.

 

2)      Stop all applications that use the interface/adapter to be updated

3)      Configure the adapter’s interface, eth1 in this example.

ifconfig eth1 192.168.1.1/24

4)      Check that no errors were reported. If errors were reported verify proper interface was configured and command was entered correctly.

12.2 Downloading Microcode to the Adapter

1)      Using the eth{n} configured in previous step use ethtool --flash to update the firmware.

  ethtool --flash eth{n} df1060e214105f04.00010000020025200009  

       Note: eth{n} is the interface previously configured with ifconfig  (See 12.2 Setting up for Microcode downloading).

2)      If flashing is completed successfully, no messages will appear on the screen. You can check messages in system log.
 

dmesg | grep be2net

For example, dmesg command will show the following messages:

be2net 0000:01:00.0: Flashing firmware file df1060e214105f04.00010000020025200009  
be2net 0000:01:00.0: System reboot required for new FW to be active
be2net 0000:01:00.0: Firmware flashed successfully


These messages show flashing is completed successfully.

3)      Reboot the OS instance to activate the updated firmware.

4)      Verify firmware has been activated

Using same eth{n} interface used for ethtool --flash command, type:

ethtool -i eth1

driver: be2net
version: 4.4.161.0s
firmware-version: 10.2.252.9
bus-info: 0000:01:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: no

 

5)      Firmware-version must show 10.2.252.9.  If firmware-version is not as expected, carefully retrace steps to confirm no steps were omitted or performed incorrectly. If no errors or omissions were found, contact IBM customer service for assistance.