Microcode Revision Level df1080f9.192101 (1.92a1)
With FCode level 1.50a4 for F/C 6239, FC 6025, FC 6026

03/06/2008:  Updated Section 4.0. See Description Revision History for details

Contents

1.0 Overview

This is the current level of firmware for the IBM pSeries 2 Gigabit Fibre Channel PCI-X Adapter.

·          Back to Contents


2.0 Systems Affected

This level of firmware is for FC 6239, PNs 00P4295, 80P4381, and 80P6415.
The typical time to install the microcode is .4 hr.

 Back to Contents


3.0 Firmware Description and Revision History

This firmware update contains the following features and fixes:
 

Firmware Level

Changes

1.92a1

READ CAUTIONS AND IMPORTANT NOTES (SECTION 4.0) PRIOR TO INSTALLING THIS FIRMWARE LEVEL
  • Fix FC_DISK_ERR (command timeout ) command not processed due to a race condition clearing interrupts.
  • Fix transmit hang that results in out of resources condition.

1.91x4

  • Fix problem with IOCB left on ring.

1.81X3

  • Fix tape sequence recovery algorithm.

1.81X1

  • Fix problem with FCode (Can't see devices from SMS menu).
  • Fix problem with FCode (System crashes to default menu during SAN boot).
  • Fix firmware problem (data not sent to target on a write) cause by mismanagement of AIX data pointer list.
  • Add support for IP over FC.
  • Firmware 1.90x2 was pulled do to disk command time out errors.

1.00X5

GA Level

 Back to Contents


4.0 Cautions and Important Notes


 Back to Contents


5.0 To Determine Adapter Microcode Levels

Before you install the microcode, it is important to determine the FRU number and microcode level of the adapter installed in the target system. Use the following instructions to read the FRU number stored in the adapter's non-volatile memory.

5.1 AIX Systems

List the Fibre Channel PCI adapters installed in the system by typing:

lsdev -C | grep "fcs"

Note the device names of all the Gigabit Fibre Channel PCI Adapters installed. The adapter device names will be fcsX, where X is 0,1, or some other number.

There are two methods to check the current microcode level on the adapter.

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              3F-08             FC Adapter

                Part Number.................80P6415
                EC Level....................A
                Serial Number...............1D51406697
                Manufacturer................001D
                Feature Code/Marketing ID...5704
                FRU Number.................. 80P6416
                Device Specific.(ZM)........3
                Network Address.............10000000C9492EF6
                ROS Level and ID............02E01971
                Device Specific.(Z0)........2003806D
                Device Specific.(Z1)........00000000
                Device Specific.(Z2)........00000000
                Device Specific.(Z3)........03000909
                Device Specific.(Z4)........FF601410
                Device Specific.(Z5)........02E01971
                Device Specific.(Z6)........06631971
                Device Specific.(Z7)........07631971
                Device Specific.(Z8)........20000000C9492EF6
                Device Specific.(Z9)........HS1.91X1 <============== firmware level
                Device Specific.(ZA)........H1D1.91X1
                Device Specific.(ZB)........H2D1.91X1
                Device Specific.(YL)........P1-I5/Q1
 

If the firmware level in the "Z9" field is not 1.92a1, then the microcode should be upgraded.

lsmcode -d fcsX
Where X is the number of the adapter returned from the "lsdev" command above.

Example:

lsmcode -d fcs3

DISPLAY MICROCODE LEVEL 802111
fcs3 FC Adapter

The current microcode level for fcs3 is 181301.

Use Enter to continue.

F3=Cancel F10=Exit Enter

181301 is the extension of the firmware image (df1080f9.181301) that was last loaded on the adapter.
If the current microcode level is not 192101, then the firmware should be upgraded.

 Back to Contents

5.2 Linux Systems

On Linux systems one of two possible methods may be used to determine the current level of microcode on installed adapters. The method used is dependent upon the version of Linux installed on the target server. If the one method does not display the microcode level, try the other method. Both methods assume you are logged in as root and one or more Fibre Channel PCI adapters are installed.

1.      List Fibre Channel PCI adapter information for all installed adapters by typing:

cat /proc/scsi/lpfc/*

Output will display various information for each installed Fibre Channel PCI adapter. Make note of Driver version, Emulex LightPulse model and Firmware Version:

Emulex LightPulse FC SCSI 7.2.4
Emulex LightPulse LP9802 2 Gigabit PCI Fibre Channel Adapter
Firmware Version: 1.81 (H2D1.81X1)

1.      Determine which host numbers are assigned to all installed Fibre Channel PCI adapters by typing:

cd /sys/class/scsi_host
find . -name "lpfc_drvr_version" -print

Output will list relative path names for each installed Fibre Channel PCI adapter. Note the host{n} portion of each path.

./host2/lpfc_drvr_version
./host1/lpfc_drvr_version

2.      Determine the common driver version for installed Fibre Channel PCI adapters. Type the following command, replacing host{n} with one of the lpfc hosts listed in step 1. Driver version should be noted as it will be required later when the microcode is updated.

cat host{n}/lpfc_drvr_version

Driver versions may vary but output will be similar to that shown here:

Emulex LightPulse FC SCSI 7.2.4

3.      Display Emulex LightPulse model name for each installed Fibre Channel PCI adapter. Type the following command, replacing host{n} with one of the lpfc hosts listed in step 1. Take note of all LP9802 model hosts.

cat host{n}/modelname

Repeat for each host listed to identify the LP9802 models. Model will display as follows:

LP9802

4.      Display firmware version for each installed Fibre Channel PCI adapter. Type the following command, replacing host{n} with the lpfc hosts for model LP9802 listed in step 3:

cat host{n}/fwrev

Repeat for each host model LP9802. Firmware version will display as follows:

1.81 (H2D1.81X1)

If, as shown in bold text above, the Emulex LightPulse model is LP9802 and the firmware version is not 1.92a1, then the microcode should upgraded.

 Back to Contents


6.0 Downloading and Unpacking the Firmware Update Package

There are two firmware packages available, from the internet and CORE; an RPM package for AIX systems and an RPM package for Linux systems. Use the appropriate method for the Operating System installed on the target server.

6.1 AIX System RPM Package

Use this method to install the AIX RPM package on 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

2. Transfer the RPM format file as a bin (binary) image to a temporary directory on the target server.
    You'll see the filename is pci.df1080f9-1-92a1.aix.rpm

3. Unpack the file by executing the instructions below:
    Enter the commands:
        rpm -ihv --ignoreos pci.df1080f9-1-92a1.aix.rpm

4. If the firmware unpacks successfully, the microcode files will be added to /etc/microcode/ directory.

/etc/microcode/df1080f9.192101


5.The file size and checksum will be verified on the firmware image, NOT the RPM file.
File size:  701264
Checksum: 54720


If step 3 returns with: " package package_name is already installed"
You will need to uninstall the rpm package as follows:

rpm -e package_name

Where "package_name" is the package name returned in the failure of step three.

Now go to step 3 above to unpack the firmware.

 Back to Contents

6.2 Linux System RPM Package

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.10dff980-1-92a1.Linux.rpm to a temporary directory on the target server, /tmp in this example.

2. Unpack the RPM file by typing:
    rpm -ivh /tmp/pci.10dff980-1-92a1.Linux.rpm

3. Verify the firmware update file, pci.10dff980.192101, was installed in /lib/firmware directory.

4. If not, carefully review previous steps and carefully examine output from rpm command for any reported errors.

5. If the firmware unpacks successfully, the microcode files will be added to the correct directory.

6.The file size and checksum will be verified on the firmware image, NOT the RPM file.
File size:701264
Checksum: 54720

If step 2 returns with: " package package_name is already installed"
You will need to uninstall the rpm package as follows:

rpm -e package_name

Where "package_name" is the package name returned in the failure of step 3.

Now go to step 2 above to unpack the firmware.

 Back to Contents


7.0 Update the Adapter's Microcode

The Diagnostic Microcode Download software supports the following AIX naming convention for the microcode binary file :
   df1080f9.192101 where 192101 is the version of the file.

The Diagnostic Microcode Download software supports the following Linux naming convention for the microcode binary file {vendor_id}{device_id}.{version}:
    pci.10dff980.192101 where 192101 is the version of the file.

 Back to Contents

7.1 Using the AIX Command-Line Method

You are now ready to FLASH 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"

 Back to Contents


7.2 Using the AIX Download Microcode 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
    Microcode Tasks
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 been successfully downloaded and that
the new level is  192101.

Exit.

 Back to Contents


7.3 Using the Linux lputil Method

To update the Fibre Channel PCI adapter microcode on installed adapters in a Linux system the Emulex lputil flash program must be used. The lputil flash program must be installed on the system using an Application Kit available only from the IBM OEM web pages on the Emulex web site. Some driver versions may also require an Application Helper Module Kit. If the Application helper Module Kit is required, it will be listed on the IBM OEM web page along with the Application Kit. Be sure to look at all Kits on the web page.

To begin, open the IBM OEM web page by entering http://www.emulex.com/ts/docoem/framibm.htm in an internet browser. The page is a matrix with Driver versions in the first column and storage systems/platforms in the first row. Find the OS release and driver version currently installed on your system as determined in section 5.2. Click on any link in this row. This page will contain the Application Kit, a User's Guide, and the Application Helper Module for this driver version if it is required.

Download the Application Kit and, if listed, the Application Helper Module to a temporary directory on the target server. Follow the installation instructions as provided in the User's Guide to install the downloaded packages.

Once the Application Kit and, if required, the Application Helper Module Kit have been installed on the target system, the microcode update can proceed as follows.

  1. Begin by confirming proper installation of Application Kit and Application Helper Module.

Verify lputil command is present by typing: ls /usr/sbin/lpfc/lputil   Output should list file path for lputil command.
Verify Driver Module (lpfc or lpfcdd) is loaded by typing: lsmod   Examine output for presence of lpfc or lpfcdd in loaded module list. If not present, type: modprobe -a lpfc or modprobe -a lpfcdd and examine console messages for error reported.

If an Application Helper Module kit was installed, verify the Application Helper Module (lpfcdfc) is loaded by typing: lsmod   Examine output for presence of lpfcdfc in list. If not present, type modprobe lpfcdfc and 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.

  1. Since firmware update will reset the Fibre Channel adapters, you should insure that all IO activity to storage devices controlled by the adapter being updated is stopped prior to proceeding.

Caution: Do not interrupt this process, shutdown the system, or remove power until the firmware update process is complete.

  1. Start the utility by typing:   /usr/sbin/lpfc/lputil
  2. From the Main menu, enter 1, List Adapters. Note which adapters are LP9802 adapters as each of these adapters will need to be updated.
  3. From the Main menu, enter 3, Firmware Maintenance
  4. If more than one adapter is installed, select the adapter to be updated.
  5. Enter 1, Load Firmware Image
  6. Enter the full path to the firmware file, /lib/firmware/pci.10dff980.192101, press enter.
  7. Wait for a message indicating Image Successfully Downloaded and the Firmware Maintenance menu to be displayed. The firmware update has now been written to the selected adapter.
  8. Repeat steps 4 through 10 to update firmware on each installed LP9802 adapter.
  9. To exit the utility, Enter 0, Return to Main Menu, followed by 0, Exit.

 Back to Contents


7.4 Verifying the Update on AIX

List the Fibre Channel PCI adapters installed in the system by typing:

   lsdev -C | grep "fcs"

 Note the device names of all the Gigabit Fibre Channel PCI Adapters installed. The adapter  device names will be fcsX, where X is 0,1, or some other number.

There two methods to check the current microcode level for the adapter.

lsmcode -d fcsX
Where X is the number of the adapter returned from the "lsdev" command above.

Example:

lsmcode -d fcs3

DISPLAY MICROCODE LEVEL 802111
fcs3 FC Adapter

The current microcode level for fcs3 is 192101.

Use Enter to continue.

F3=Cancel F10=Exit Enter


If current microcode level is 192101, then the firmware has been upgraded.

  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              3F-08             FC Adapter

        Part Number.................00P4295
        EC Level....................A
        Serial Number...............1A31600450
        Manufacturer................001A
        FRU Number..................     00P4297
        Device Specific.(ZM)........3
        Network Address.............10000000C9332A79
        ROS Level and ID............02E01871
        Device Specific.(Z0)........2003806D
        Device Specific.(Z1)........00000000
        Device Specific.(Z2)........00000000
        Device Specific.(Z3)........03000909
        Device Specific.(Z4)........FF601032
        Device Specific.(Z5)........02E01871
        Device Specific.(Z6)........06631871
        Device Specific.(Z7)........07631871
        Device Specific.(Z8)........20000000C9332A79
        Device Specific.(Z9)........HS1.91X1
        Device Specific.(ZA)........H1D1.91X1
        Device Specific.(ZB)........H2D1.91X1
        Device Specific.(YL)........U1.9-P2-I1/Q1
 

If the firmware level in the "Z9" filed is 1.92a1, then the firmware has been upgraded

 Back to Contents


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 Fibre Channel PCI adapters are installed.

1.      List Fibre Channel PCI adapter information for all installed adapters by typing:

cat /proc/scsi/lpfc/*

Output will display various information for each installed Fibre Channel PCI adapter. Verify Firmware Version:

Firmware Version: 1.92A1 (H2D1.92A1)

1.      Determine which host numbers are assigned to installed Fibre Channel PCI adapters by typing:

cd /sys/class/scsi_host
find . -name "lpfc_drvr_version" -print

Output will list relative path names for each installed Fibre Channel PCI adapter. Note the host{n} portion of each path.

./host2/lpfc_drvr_version
./host1/lpfc_drvr_version

2.      Display firmware version for each installed Fibre Channel PCI adapter by typing:

cat host{n}/fwrev

Where host{n} is one from step 1. Firmware version will display as follows:

1.92A1 (H2D1.92A1)

If the firmware level displayed using either method above is 1.92A1, then the firmware has been upgraded.

 Back to Contents


8.0 Machine Record

 Back to Contents


Description Revision History

Date Changes
03/06/08 Section 4.0: Updated Notice for Customers Installing 1.92a1 Firmware. All customers now directed to link for 5.2 and 5.3 fixes.
12/07/07 Section 4.0: Updated link to APARs. 5.2 customers instructed to install 5.2 fix. Modified date when 5.3 fix will be available.
10/04/07 Section 4.0: Updated Notice for Customers Installing 1.92a1 Firmware


 Back to Contents


Privacy | Legal | Contact IBM