Microcode Level df1000f114108a03.111304 (1.11x4) with FCode Level 3.10a3 for FC 5735 8 Gigabit PCI Express Dual Port Fibre Channel Adapter( FC 5735, 5273) June 06, 2019 THIS DOCUMENT IS BEST VIEWED WITH THE MOZILLA FIREFOX BROWSER.   Contents 8 Gigabit PCI Express Dual Port Fibre Channel Adapter( FC 5735, 5273) 1 1.0 Overview.. 2 2.0 Adapters Affected. 2 3.0 Microcode Description and Revision History. 2 4.0 Cautions and Important Notes. 5 5.0 To Determine Adapter Microcode Levels. 7 5.1 AIX Systems. 7 5.2 Linux Systems. 7 6.0 Downloading and Unpacking the Microcode RPM Package. 9 6.1 Downloading AIX RPM Package. 9 6.2 Downloading Linux RPM Package. 10 7.0 Installing the Adapter's Microcode. 11 7.1 Using the AIX Command-Line Method. 11 7.2 Using the AIX Diagnostic Service Aid Method. 11 7.3 Using the Emulex hbacmd Method. 11 8.0 Verifying the Update. 14 8.1 Verifying the Update on AIX Systems. 14 8.2 Verifying the Update on Linux. 15 Document Change History. 16       ---------------------------------------------------------------------------------- 1.0 Overview This is the current level of microcode for the IBM 8 Gigabit PCI Express Dual PortFibre Channel Adapter, Feature Code 5735, 5273. Each port of this adapter is fully independent with its own microcode image. When updating microcode on this adapter, both ports should be updated.   ---------------------------------------------------------------------------------- 2.0 Adapters Affected This microcode is for feature code 5735 or EL58 ( High Profile )                                     feature code  5273 or EL2N ( Low Profile )          PN 10N9824 (or 00E0806)        CCIN 577D   To determine the part number of fibre channel adapters on an AIX system, on the command line key in: lscfg -vl fcsX where fcsX represents the adapter. The typical time to install the microcode is 0.4 hr.   ---------------------------------------------------------------------------------- 3.0 Microcode Description and Revision History               Warning: It is 'highly' recommended that installation be scheduled during a maintenance window or during non-peak production periods                                                                              Microcode Level Changes 210313 (210x13) with FCode Level 3.10a11 Impact: Usability   Severity: ATT Fix for the following: -       Slot freeze  EEH error running IOs in IBMi system. -       This level of firmware supports the Firmware Secure Boot feature of Power systems 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 thatall of the required HW/FW fixes are installed. Please Update To The Latest Level At Your Earliest Convenience 210301 (210x1) with FCode Level 3.10a10 Fix for the following: -       Read Performance change in FC_AL topology -       allow user to keep WWPN/WWNN mismatch Only use FW 2.03x5 to correct the WWPN/WWNN mismatch  203305 (203x5) with FCode Level 3.10a7 Fix a FTE issue when a super large transmit sequence (over half-Mbytes) is active and an Abort request comes in and causes a transmit stall. Universial Boot code with FCode fix for mismatched WWPN/WWNN. Change the adapter Rx Pole and Gain settings from 3-3 to 0-0 to improve Fibre Channel signal receive. Fix an Out of Order sequence handling. 202307 (202x7) with FCode Level 3.10x2 Fixes failing NPIV Write command on adapter residual mismatch Fixes NPIV Write Timeout when burst length of XFR_RDY is 8 bytes Fixes FW hit a 4KB page fault while accessing Protection DIF block. Fixes  in F_CTL, the Sequence Context bit incorrectly =1 starting from the second Data-out sequence. This bit must be 0 to indicate Sequence Originator. 200307 (200x7) with FCode Level 3.10a3 Provides host generated T10 Standard Data Integrity Field capability. 111304 (111x4) with FCode Level 3.10a3 Fixes a problem where a tape drive in a noisy SAN environment may drop frames forcing a backup to rerun. Fixes an intermittent power off/on problem where a reset signal may be left in an active state. Prior to this level, the adapter may not respond to a system that has been power cycled and the system will post an SRC BA180020 error. Fixes a false parity error that may occur when one port of the adapter is being configured by the firmware and the other port is being reset by the firmware. Prior to this level, AIX would post SRN 2606-706 and the adapter would be taken offline. If the adapter has the 111304 (1.11x4) already installed, take the corrective action indicated by the SRN. Enhances FC-Tape recovery so that it more robustly handles LS_RJTs from tape devices. Sometimes, FCP commands from a device and the adapter will cross each other on the wire and the adapter will send out retries to a tape device that has already closed the I/O exchange. The adapter now evaluates if the retry should be sent. Enhances the FCode by adding a "set-post-linkup" command. Refer to the Important Notes in Section 4.0 for details. 110305 with FCode Level 3.01a1 This firmware contains changes to support NPIV on AIX. Linux on Power Systems does not support NPIV so this update is not required for Linux. 110105 (1.10a5) with FCode Level 3.01a1 This is the level of microcode that initially shipped with the adapter when it becamegenerall available.   ---------------------------------------------------------------------------------- 4.0 Cautions and Important Notes ·       Limitation on down-level FW support   ·       Concurrent Download The microcode installation supports concurrent download while the adapter and attached drives are available for use.HOWEVER, it is recommended that installation be scheduled during a maintenance window or during non-peak production periods. ·       Enhancement to FCode The FCode has been enhanced by adding a "set-post-linkup" command. By default, link up and initialization on the adapter occurs after the Power On Self Test (POST). The new command will allow customers to switch to bringing the link up and initializing it during POST by turning the support on. Once turned on, it will remain on until the command is run again to turn it off. Customers who would like to utilize this function should contact theIBM Support Center for instructions. ·       Notice for AIX and VIOS customers installing microcode AIX APARs Prior to installing the microcode, the following APARs are required to be installed. Failure to do so may result in LPAR hang while installing microcode. ·       IZ89104 for AIX 7.1  (Shipped in devices.pci.df1000f7.com 7.1.0.15) ·       IZ88330 for AIX 6.1, TL7   (Shipped in devices.pci.df1000f7.com 6.1.7.0) ·       IZ82960 for AIX for AIX 6.1, TL6   (Shipped in  devices.pci.df1000f7.com 6.1.6.15) ·       IZ82911 for AIX for AIX 5.3, TL12   (Shipped in  devices.pci.df1000f7.com 5.3.12.3) ·       IZ81003 for AIX for AIX 5.3, TL11  (Shipped in devices.pci.df1000f7.com 5.3.11.6) ·       IZ80939 for AIX for AIX 5.3, TL10  (Shipped in  devices.pci.df1000f7.com 5.3.10.5) VIOS Requirements These are the equivalent items or higher level  to install for VIOS prior to installing microcode. ·       VIOS 2.2.1.0 or Fixpack 25 ·       VIOS 2.2.0.12-FP-24 SP-02 The Fix Pack can be obtained from the Virtual I/O Server website located at https://www14.software.ibm.com/webapp/set2/sas/f/vios/download/home.html.   ---------------------------------------------------------------------------------- 5.0 To Determine Adapter Microcode Levels Before you install the microcode, it is important to determine the current microcode level of the installed adapter. 5.1 AIX Systems 1) List the fibre channel adapters installed in the system by typing on the command line: lsdev -C | grep fcsX Note the device names of all the fibre channel adapters installed. The adapter device names will befcsX, where X is 0,1, or some other number. There will be anfcsX listing for each port of the FC 5735 or 5273 adapter. 2) Determine the current microcode level on the adapter's port by typing on the command line: lsmcode -d fcsX where X is the number of the adapter's port returned from the "lsdev" command above. A screen similar to the following will be displayed: DISPLAY MICROCODE LEVEL                  802111 fcs8          FC Adapter The current microcode level for fcs8 is 210313. Use Enter to continue. F3=Cancel             F10=Exit             Enter If the current microcode level is not 210313, then the microcode image on the adapter's port is not at the latest level.   5.2 Linux Systems The following steps are for Linux Red Hat or Novell (SuSE) systems running2.6 kernels which support the /sys filesystem. These steps assume you are logged on with root permissions and one or more IBM 8 Gigabit PCI Express Dual PortFibre Channel Adapter, Feature Code 5735, 5273 PN 10N9824 (or 00E0806) are installed. 1) Display the model name for each installed Fibre Channel adapter. Note: IBM 8 Gigabit PCI Express Dual PortFibre Channel Adapters will display as two instances of model 10N9824 (or 00E0806); one for each port on the dual port adapter. Type the following commands to display a list showinghost{n}:model for each installed adapter. cd /sys/class/scsi_host find -L host* -maxdepth 1 -name "modelname" -printf %h: -exec cat {} \; The output will be similar to that shown here. Note the host{n} portion for each model 10N9824 (or 00E0806) in the list, host3 and host4 in this example. These values are needed for next step. If the list is empty, either there are no model 10N9824 (or 00E0806) adapters installed or there was an error in typing the command. If the list contains other adapters but no model 10N9824 (or 00E0806) adapters are listed, none are installed. host3:10N9824 (or 00E0806) host4:10N9824 (or 00E0806) 2) Display the firmware version for each 10N9824 (or 00E0806) model adapter. Type the following command, replacing host{n} for each model 10N9824 (or 00E0806) listed in Step 1. cat host{n}/fwrev The microcode version listed may vary but output will be similar to that shown here: 2.10x13 (U3K2.10x13), sli-3 Repeat this command for each model 10N9824 (or 00E0806) host{n}. If one or more model10N9824 (or 00E0806) adapter lists a microcode version that is not 2.10x13, then the microcode needs to be updated. 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 following command. cat /etc/redhat-release Output will be similar to: Red Hat Enterprise Linux Server release 6.4 (Santiago) For Novell systems, type following command. Output will be similar to: cat /etc/SuSE-release SUSE Linux Enterprise Server 11 (ppc64) VERSION = 11 PATCHLEVEL = 0   ---------------------------------------------------------------------------------- 6.0 Downloading and Unpacking the Microcode RPM Package There are two microcode packages available from this microcode download site; an RPM package for AIX systems and an RPM package for Linux systems. Use the appropriate method for the installed OS on the target server. 6.1 Downloading AIX RPM Package Use this method to install the AIX RPM package on an AIX system. Note that the commands are case sensitive and must be entered exactly as shown, including file names. 1) /etc/microcode is a symbolic link to /usr/lib/microcode.   2) Transfer the RPM format file, df1000f114108a03.210313.aix.rpm to any temporary directory on the target server. 3) Unpack the file. On the command line type: rpm -ihv --ignoreos df1000f114108a03.210313.aix.rpm 4) If the microcode package unpacks successfully, the microcode file will be added to the /etc/microcode directory. If a message is received saying the "package is already installed", you will need to uninstall the rpm package. On the command line type: rpm -e where is the name of the package that was returned in the message. Return to Step 3 and attempt to unpack the file again. 5) Verify the file size and sum of the df1000f114108a03.210313 file in /etc /microcode. On the command line type: For the file size: ls -al df1000f114108a03.210313 For the sum: sum df1000f114108a03.210313 The output of these commands should be: file size: 585740 sum: 48004     6.2 Downloading Linux RPM Package Use this method 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, df1000f114108a03.210313.Linux.rpm, to a temporary directory on the target server such as /tmp. 2) Unpack the rpm file by typing: rpm -ihv /tmp/df1000f114108a03.210313.Linux.rpm 3) If the microcode package unpacks successfully, the microcode file will be added to the /lib/firmware directory. If a message is displayed saying the "package is already installed", you will need to uninstall the rpm package. On the command line type: where 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, df1000f114108a03.210313, was installed in the /lib/firmware directory and check file size and sum. For the file size: ls  -l /lib/firmware/df1000f114108a03.210313 For the sum: sum /lib/firmware/df1000f114108a03.210313 The output of these commands should be: file size: 585740 sum: 48004   ---------------------------------------------------------------------------------- 7.0 Installing the Adapter's Microcode 7.1 Using the AIX Command-Line Method Login as root user. From the command line key in: diag -d fcsX -T download where fcsX is the port you on which you want to install the microcode. Self-explanatory menus will step you through the microcode installation. Repeat this command for all of the adapters/ports. 7.2 Using the AIX Diagnostic Service Aid Method Login as root user. From the command line key in:  diag Select:  Task Selection (Diagnostics, Advanced Diagnostics, Service Aids, etc.) Select:  Microcode Tasks Select:  Download Latest Available Microcode Select:  file system          /etc/microcode Select the device:  fcs* Press enter when prompted to download the microcode Upon completion, a message will state that the microcode has be successfully downloaded and that the new level is 210313.   7.3 Using the Emulex hbacmd Method Microcode updates on Fibre Channel adapters installed in a Linux system require the use of the Emulexhbacmd utility. The hbacmd utility is included in the Emulex One Command CLI Applications Kit which can be downloaded from the IBM OEM web pages hosted on the Emulex/Broadcom website. https://www.broadcom.com/support/download-search (https://urldefense.proofpoint.com/v2/url?u=https-3A__www.broadcom.com_support_download-2Dsearch&d=DwMFaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=BjB6y9VuLiMqCivDwI6_PA&m=F5kTsbiiTzptg3YL3m7FEkZAjyYewvkGKsBW_g9wMY4&s=gBXpHsC9RFCU-ZZuDpbPLoJT7sVv8EjdIPDX-sOhunQ&e=)   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.   Extract the .tgz archive by typing: tar -xzf {elxocmcore-os_release-version}.tgz,  substitute {elxocmcore-os -release-version} with the name of the .tgz file you downloaded.  A new directory,{elxocmcore-os-release-version} will be created.   Change directory to {elxocmcore-os-release-version} and execute the installation shell script by typing:./install.sh Answer the prompts as desired, there should not be any errors reported   Execute the following steps to complete the microcode update process.   1)    Check Prerequisites * Verify the hbacmd command is present by typing: ls /usr/sbin/hbacmd * The output should list the file path for the hbacmd command. * Verify the Driver Module lpfc is loaded by typing: lsmod * Examine the output for the presence of lpfc in the loaded module list. * If it is not present, type: modprobe -a lpfc to load the driver module, examine the console messages for reported errors. If any of the prequisite checks fail, review the installation documentation and ensure all steps were completed. Look for any errors reported during installation. If problems persist; contact IBM service. 2)    The microcode update will reset the fibre channel adapters; ensure that all I/O activity to storage devices controlled by the adapter is stopped prior to proceeding with firmware update.   3)    List installed Emulex adapters. Type /usr/sbin/hbacmd  listhbas Output from this command will be similar to the following, one section will be displayed for each discovered adapter. Model 10N9824 (or 00E0806) adapters can be identified by looking forf100 in Flags value. For each Model 10N9824 (or 00E0806) adapter, make a note of the Port WWN: value. The Port WWN value will be required as an argument for commands in next steps.   Port WWN:10:00:00:00:c9:74:a4:f8 Node WWN : 20:00:00:00:c9:74:a4:f8 Fabric Name:10:00:00:05:1e:34:f2:69 Flags : 8000f100 Host Name : testsys Mfg : Emulex Corporation Serial No. :1B812040D0 Port Number: 0 Mode : Initiator 4)    List hba attributes for each model 10N9824 (or 00E0806) adapter listed in Step 4, Type/usr/sbin/hbacmd  hbaattributes {wwpn}, where {wwpn} is one of the port WWN values noted in Step 4. Output will look similar to the following; listing current versions of FW Version, SLI2 FW, SLI3 FW as well as Boot Code, all of which will be updated by microcode update. Save this information for comparison post update. HBA Attributes for 10:00:00:00:c9:74:a4:f8 Host Name : elm3c101 Manufacturer : Emulex Corporation Serial Number : 1B812040D0 Model : 10N9824 (or 00E0806) Model Desc : IBM 10N9824 (or 00E0806) 8 Gigabit PCI-E Dual Port Fibre Channel Adapter Node WWN : 20 00 00 00 c9 74 a4 f8 Node Symname : Emulex 10N9824 (or 00E0806) FV2.00 DV8.2.8.14 HW Version : 31004549 Opt ROM Version: 5.11a0 FW Version : 2.10x13 (U3K2.10x13), sli-3 Vendor Spec ID : 0000 Number of Ports: 1 Driver Name : lpfc Device ID : F100 HBA Type : 10N9824 (or 00E0806) Operational FW : SLI-3 Overlay SLI2 FW : 2.10x13 SLI3 FW : 2.10x13 IEEE Address : 00 00 c9 74 a4 f8 Boot Code : 5.11a0 Driver Version : 8.2.8.14; HBAAPI(I) v2.1.g,12-07-07 Kernel Version : 1.10a6 HBA Temperature: Normal 5)    Update microcode on each of the model 10N9824 (or 00E0806) adapter ports, one at a time. This step assumes that microcode image .rpm package has been installed on system as described in section 6.2. Warning: Do not interrupt or power off the system while microcode update(s) are in progress. 6)    Start microcode update on one adapter port, type: /usr/sbin/hbacmd download  10:00:00:00:c9:74:a4:f8  /lib/firmware/df1000f114108a03.210313 Completion of download will be indicated by ?Download Complete.? message. 7)    Repeat Step 5 and Step 6 for each adapter port needing microcode update using each of the WWPN?s noted in step 3.   ---------------------------------------------------------------------------------- 8.0 Verifying the Update 8.1 Verifying the Update on AIX Systems 1)List the fibre channel adapters installed in the system by typing on the command line: lsdev -C | grep fcsX Note the device names of all the 8G fibre channel dual port adapters installed. The adapter device names will befcsX, where X is 0,1, or some other number. There will be anfcsX listing for each port of the FC 5735 or 5273 adapter. 2)Determine the current microcode level on the adapter's port by typing on the command line: lsmcode -d fcsX where X is the number of the adapter's port returned from the "lsdev" command above. A screen similar to the following will be displayed: DISPLAY MICROCODE LEVEL                  802111 fcs8           FC Adapter The current microcode level for fcs8 is 210313. Use Enter to continue. F3=Cancel            F10=Exit             Enter If the current microcode level is 210313, then the microcode has been updated.   3) An example of lscfg:   # lscfg -vl fcs8   Fcs8             U5802.001.RCHE994-P1-C7-T1  8Gb PCI Express Dual Port FC Adapter (df1000f114108a03)           Part Number.................00E0806         Serial Number...............1A80400001         Manufacturer................001A         EC Level.................... D77161         Customer Card ID Number.....577D         FRU Number..................00E0938         Device Specific.(ZM)........3         Network Address.............100000109B3F9730         ROS Level and ID............02782131         Device Specific.(Z0)........31004549         Device Specific.(Z1)........00000000         Device Specific.(Z2)........00000000         Device Specific.(Z3)........09030909         Device Specific.(Z4)........FF781150         Device Specific.(Z5)........02782131         Device Specific.(Z6)........07732131         Device Specific.(Z7)........0B7C2131         Device Specific.(Z8)........200000109B3F9730         Device Specific.(Z9)........US2.10X13         Device Specific.(ZA)........U2D2.10X13         Device Specific.(ZB)........U3K2.10X13         Device Specific.(ZC)........00000000         Hardware Location Code......U5802.001.RCHE994-P1-C7-T1     8.2 Verifying the Update on Linux 1) List hba attributes for each model 10N9824 (or 00E0806) adapter listed in Section 7.3, Step 4. Type/usr/sbin/hbacmd  hbaattributes {wwpn},where {wwpn} is one of the port WWN values listed in Section 7.3, Step 4. Output will look similar to the following. HBA Attributes for 10:00:00:00:c9:74:a4:f8 Host Name : elm3c101 Manufacturer : Emulex Corporation Serial Number : 1B812040D0 Model : 10N9824 (or 00E0806) Model Desc : IBM 10N9824 (or 00E0806) 8 Gigabit PCI-E Dual Port Fibre Channel Adapter Node WWN : 20 00 00 00 c9 74 a4 f8 Node Symname : Emulex 10N9824 (or 00E0806) FV2.00 DV8.2.8.14 HW Version : 31004549 Opt ROM Version: 5.11a0 FW Version : 2.10x13 (U3K2.10x13), sli-3 Vendor Spec ID : 0000 Number of Ports:1 Driver Name : lpfc Device ID : F100 HBA Type : 10N9824 (or 00E0806) Operational FW : SLI-3 Overlay SLI2 FW : 2.10x13 SLI3 FW : 2.10x13 IEEE Address : 00 00 c9 74 a4 f8 Boot Code : 5.11a0 Driver Version : 8.2.8.14; HBAAPI(I) v2.1.g, 12-07-07 Kernel Version : 1.10a6 HBA Temperature: Normal Compare the attribute data with the data gathered prior to the update for each port. Values for FW Version, SLI2 FW and SLI3 FW will list 2.10x13. If it does not, carefully retrace steps for omissions and examine console output for errors. Once microcode updates have completed on all model 10N9824 (or 00E0806) ports, repeat Step 5 for each port to confirm firmware update was successful. 2) Updated microcode is now active. System can be returned to use without reboot. ---------------------------------------------------------------------------------- Document Change History 6/06/2019 New release of microcode 210313 (2.10x13) 3/28/2018 Added AIX lscfg 3/20/2018 New release of microcode 210301 (2.10x1 ) 8/8/2016 Added a reboot required in the Node WWN warning note. 7/29/2016 Added a warning on Node WWNs change with 2.03X5 1/19/2016 New release of microcode 203305 (2.03X5) 2/26/2013 New release of microcode documented 202307 6/26/2012 Added notice for VIOS customers installing microcode in section 4.0 Expanded notice limiting support of down-level FW in section 3.0 1/18/2012 Added Notice for AIX customers installing microcode in section 4.0 10/31/2011 Added FC 5273 (LP card) and new PN 00E0806 (RoHS compliant card).  Also corrected the file size and checksum. 06/03/2011 New release of microcode documented (2.02x7) 08/17/2010 All sections: edited to correct formatting issues 08/14/2009 Section 3.0: New release of microcode documented Section 4.0: Enhancement to FCode documented Sections 5.0, 6.0, 7.0, and 8.0: Expanded to include Linux instructions 12/17/2008 Initial Document ----------------------------------------------------------------------------------