Microcode Level df1000f114108a03.111304 (1.11x4) with FCode Level 3.10a3 for FC 5735 PCIe2 4-Port 8Gb Fibre Channel Adapter ( FC 5729) June 06, 2019 THIS DOCUMENT IS BEST VIEWED WITH THE MOZILLA FIREFOX BROWSER.     Contents PCIe2 4-Port 8Gb Fibre Channel Adapter ( FC 5729) 1 1.0 Overview.. 1 2.0 Adapters Affected. 2 3.0 Microcode Description and Revision History. 2 4.0 Cautions and Important Notes. 4 5.0 To Determine Adapter Microcode Levels. 5 5.1 AIX Systems. 5 5.2 Linux Systems. 6 6.0 Downloading and Unpacking the Microcode RPM Package. 8 6.1 Downloading AIX RPM Package. 8 6.2 Downloading Linux RPM Package. 9 7.0 Installing the Adapter's Microcode. 10 7.1 Using the AIX Command-Line Method. 10 7.2 Using the AIX Diagnostic Service Aid Method. 10 7.3 Using the Emulex hbacmd Method. 10 8.0 Verifying the Update. 13 8.1 Verifying the Update on AIX Systems. 14 8.2 Verifying the Update on Linux. 14 Document Change History. 15       1.0 Overview This is the current level of microcode for the IBM PCIe2  4-Port 8Gb Fibre Channel Adapter, Feature Code 5729. 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 5729: PN  74Y3467: CCIN 5729 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 This is the level of microcode that initially shipped with the adapter when it became generally 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 the IBM 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 be fcsX, where X is 0,1, or some other number. There will be an fcsX listing for each port of the FC 5729 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          FCAdapter 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 PCIe2 4-Port 8Gb Fibre Channel Adapter, Feature Code 5729 PN 74Y3467 are installed. 1) Display the model name for each installed Fibre Channel adapter. Note: IBM PCIe2 4-Port 8Gb Fibre Channel Adapters will display as two instances of model 74Y3467; one for each port on the4 ports 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 74Y3467 in the list, host3,host4,host5 and host6  in this example (four should be shown for each adapter). These values are needed for next step. If the list is empty, either there are no model 74Y3467 adapters installed or there was an error in typing the command. If the list contains other adapters but no model 74Y3467 adapters are listed, none are installed. host3: 74Y3467 Host4: 74Y3467 Host5: 74Y3467 Host6: 74Y3467 2) Display the firmware version for each 74Y3467 model adapter. Type the following command, replacing host{n} for each model 74Y3467 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 74Y3467  host{n}. If one or more model 74Y3467 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, df1000f114100104.210313.aix.rpm to any temporary directory on the target server. 3) Unpack the file. On the command line type: rpm -ihv --ignoreos df1000f114100104.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 df1000f114100104.210313 file in /etc/microcode. On the command line type: For the file size: ls -al df1000f114100104.210313 For the sum: sum df1000f114100104.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, df1000f114100104.210313.Linux.rpm, to a temporary directory on the target server such as /tmp. 2) Unpack the rpm file by typing: rpm -ihv /tmp/df1000f114100104.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, df1000f114100104.210313, was installed in the /lib/firmware directory and check file size and sum. For the file size: ls  -l df1000f114100104.210313 For the sum: sum df1000f114100104.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 Emulex hbacmd 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, repeated one section for each discovered adapter. Model 74Y3467 adapters can be identified by looking forf100 in Flags value. For each Model 74Y3467 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.     : 1C11101F4A Port Number: 0 Mode           : Initiator PCI Bus Number : 5 PCI Function   : 0 Port Type      : FC Model          : 74Y3467   4)    List hba attributes for each model 74Y3467 adapter listed in Step 4. Note, there will be 4 ports per adapter, Type/usr/sbin/hbacmd  hbaattributes  {wwpn},where {wwpn} is one of the port WWN values listed in Step 4. 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 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 : 74Y3467 Model Desc : IBM 74Y3467 8 Gigabit PCI-E  4Ports Fibre Channel Adapter Node WWN : 20 00 00 00 c9 74 a4 f8 Node Symname : Emulex74Y3467  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 : 74Y3467 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 74Y3467 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 Download, type: /usr/sbin/hbacmd  download 10:00:00:00:c9:74:a4:f8  /lib/firmware/df1000f114100104.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 4 ports adapters installed. The adapter device names will be fcsX, where X is 0,1, or some other number. There will be an fcsX listing for each port of the FC5729 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           FCAdapter 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-C9-T1  PCIe2 4-Port 8Gb FC Adapter (df1000f114100104)           Part Number.................74Y3467         Serial Number...............1A5140002A         Manufacturer................001A         EC Level.................... D77075         Customer Card ID Number.....5729         FRU Number..................74Y3467         Device Specific.(ZM)........3         Network Address.............10000090FAA16528         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)........20000090FAA16528         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-C9-T1       8.2 Verifying the Update on Linux 1) List hba attributes for each model 74Y3467 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 r4Model : 74Y3467 Model Desc : IBM 74Y3467 8 Gigabit PCI-E 4 Ports Fibre Channel Adapter Node WWN : 20 00 00 00 c9 74 a4 f8 Node Symname : Emulex 74Y3467 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 : 74Y3467 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 74Y3467 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 New release of microcode 210301 (2.10x1 ) & added AIX lscfg. 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 2/3/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 74Y3467 (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   ----------------------------------------------------------------------------------