*IBM eServer SAS Enclosure Services for 5803-001 and 5802-001* *0081 Microcode Update* DATE: Oct 21, 2009 *Table of Contents* *0.0 Precaution <#0.0>* *1.0 Microcode Change History <#1.0>* *2.0 General Information <#2.0>* *2.1 Installation Time <#2.1> 2.2 Machine's Affected <#2.2> 2.3 AIX Requirements <#2.3> 2.4 Linux Requirements <#2.4>* *2.5 IBM i Requirements <#2.5>* *3.0 Determine the Current Microcode Level for AIX <#3.0> 3.1 Determine the Current Microcode Level for Linux <#3.1>* *4.0 Downloading and Unpacking the Firmware Update Package from CORE <#4.0>* *4.1 Downloading the RPM Format File to the Target Server <#4.1>* *4.2 Discovery Tool Microcode CD-ROM creation and download instructions <#4.2>* *5.0 Verifying microcode before download and notes <#5.0>* *_5.1 Microcode Download Procedure-SAS Enclosure Services for 5802-001 and 5803-001for AIX <#5.1> 5.2 Microcode Download Procedure-SAS Enclosure Services for 5802-001 and 5803-001 for Linux <#5.2>_* *6.0 Microcode Readme Change History <#6.0>* *=====================================================================================* <#0.0>*0.0 Precaution:* SES Microcode update Precautions if configured in Split Backplane mode on a DASD enclosure. Microcode update on a SES will temporarily disable one path to the underlying devices (DASD). For enclosures in Single Backplane mode diagnostics will prevent microcode download from occurring if it would cause loss of connectivity to a device(s). (This could occur if one of the redundant SAS paths to a device is already in the Failed State during the microcode update procedure.) Thus, there is no worry about issuing the microcode update procedure in this Single Backplane environment. However, in Split Backplane mode, an exposure exists regardless of whether both halves exist in the same or different LPARs. Diagnostics may not be fully aware of every possible SAS path and may not know if a SAS path has failed in the other half of the backplane. Thus, it could be possible for microcode update to take place on a SES device when there is already a failed SAS path to a device. If both SAS paths to a device go down then complete loss of connectivity will take place, even if for only a matter of moments. In order to prevent this possibility please inspect your SAS configuration prior to updating in a Split Backplane environment. Find the SAS Controllers/Adapters that are connected to the same backplane (ie sissas1 & sissas3). These may be in different LPARs. From the AIX command prompt type: sissasraidmgr ?Tl sissas# (ie sissasraidmgr ?Tl sissas1) # sissasraidmgr -Tl sissas0 cd0 Path 1: Operational pdisk0 Path 1: Operational Path 2: Operational pdisk1 Path 1: Operational Path 2: Operational ses8 Path 1: Operational ses9 Path 1: Operational ses10 Path 1: Operational # sissasraidmgr -Tl sissas1 hdisk37 Path 1: Operational Path 2: Failed hdisk51 Path 1: Operational Path 2: Failed hdisk52 Path 1: Operational Path 2: Failed ses17 Path 1: Operational The above is an example of a split backplane on a 5803-001. sissas0 is CCIN 574E PCI-E SAS Adapter connected to T1 of the SAS conduit card. sissas1 is CCIN 574E PCI-E SAS Adapter connected to T2 of the SAS conduit card. Both are connected to a 5802-001 and/or 5803-001 DASD backplane in split backplane mode (Mode 4) with 5 DASD?s installed. On sissas0, all of the SAS paths are operational. However, on sissas1, three of the SAS paths are failed *1.0 Microcode Change History:* 0081 SSD support and updates to error handling on device power on 0074 Initial GA Level *2.0 General information* *NOTE:* If using the split backplane feature then microcode will need to be updated on all four "ses" appearing in the configuration. *NOTE:* Microcode update cannot be performed to both SAS expanders (SES) at the same time. *2.1 Installation Time:* Approximately 30 minutes *2.2 Machine's Affected:* 5803-001 5802-001 *2.3 AIX Requirements:* /TL refers to Technology Level/ /SP refers to Service Pack/ AIX 5.3 TL_07 w/ SP9 AIX 5.3 TL_08 w/ SP7 AIX 5.3 TL_09 w/ SP4 AIX 5.3 TL_10 AIX 6.1 TL_00 w/ SP9 AIX 6.1 TL_01 w/ SP5 AIX 6.1 TL_02 w/ SP4 AIX 6.1 TL_03 or above *2.4 Linux Requirements:* _For support_: SUSE Linux Enterprise Server 10-SP2 for POWER or above Red Hat Enterprise Linux AS for POWER Version 4 Update 7, RHEL 5 Update 2 or above *2.5 IBM i Requirements:* IBM i 6.1 with Service Pack 1, or later *3.0 Determine the Current Microcode Level for 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 SES installed in the system by typing: lsdev -C | grep ses Note: All of the SAS RAID initiators addresses that are installed will be displayed. The names will be sesX, where X is 0, 1, etc. 2) To check the current microcode level for the adapter or controller enter the following command lscfg -vl sesX Where X is the number/s of the previous command. The Command will produce output similar to * DEVICE LOCATION DESCRIPTION* ses0 U5802.001.B86PS16-P3-C1 SAS Enclosure Services Device <------------Could also be U5803.001.xxxxxxx-Px-Cx Manufacturer................IBM Machine Type and Model......5802-001 <------------Could also be 5803-001 ROM Level.(alterable).......0081 Serial Number............... B86PS16 FRU Number.................. 45D2502 Device Specific.(Z0)........0D0004022B004002 Hardware Location Code......U5802.001.B86PS16-P3-C1 <------------Could also be U5803.001.xxxxxxx-Px-Cx If the *ROS Level and ID* is less than *0081* then you should update the microcode. *3.1 Determine the Current Microcode Level for Linux:* 1) Type "iprconfig" 2) Select "Display hardware status" 3) Select SES by typing a "1" in front of it and pressing Enter. 4) The Command will produce output similar to "*Firmware Version . . . . . . . . . . . . : 0081*" If the *Firmware Version* is less than *0081* then you should update the microcode. *4.0 Downloading and Unpacking the Firmware Update Package from CORE* NOTE: The CORE image will now be the RPM Format File. 1) After downloading the files from CORE on to your personal system find the following files in the CORE destination directory (c:\ibmdocs\DISKIMG): A) "*ses.5802-0081-1.aix5.1.noarch.rpm*" B) "*ses.5802-0081-1.Linux.noarch.rpm*" 2) Log in to the Target Server 3) Create a directory, if not already existent (mkdir /tmp/microcode; mkdir /tmp/microcode/RPM) 4) Transfer the file to the Target Server "/tmp/microcode/RPM directory" using ftp or another method. Change to that directory, "cd /tmp/microcode/RPM". 5a) For _AIX_: Unpack the RPM file by using the following command: "*rpm -ihv --ignoreos --force ses.5802-0081-1.aix5.1.noarch.rpm*"" 5b) For _Linux_: Unpack the RPM file by using the following command: "*rpm -ihv --ignoreos --force ses.5802-0081-1.Linux.noarch.rpm*" 6a) For _AIX_: The microcode files will be added to /usr/lib/microcode/. 6b) For _Linux_: The microcode files will be added to /lib/firmware/. *4.1 Downloading the RPM Format File to the Target Server* Use this method to download to an AIX or Linux system: *Note:* The instructions that follow are specific AIX/Linux commands. AIX/Linux commands are CASE (lower and upper) SENSITIVE, and */must/* be entered exactly as shown, including filenames. 1) Make a directory on an AIX/Linux system to receive the RPM format file. Enter: "mkdir /tmp/microcode" 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 filenames for the RPM files. A) For _AIX:_ The filename is *ses.5802-0081-1.aix5.1.noarch.rpm * B) For _Linux:_ The filename is *ses.5802-0081-1.Linux.noarch.rpm *3) Unpack the file by executing the instructions below: A) For _AIX_: Type "*rpm -ihv --ignoreos --force ses.5802-0081-1.aix5.1.noarch.rpm" * B) For _Linux_: Type "*rpm -ihv --ignoreos --force ses.5802-0081-1.Linux.noarch.rpm"* 4a) For _AIX_: The microcode files will be added to /usr/lib/microcode/. 4b) For _Linux_: The microcode files will be added to /lib/firmware/. *4.2 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 System please go to: http://techsupport.services.ibm.com/server/mdownload/CDROMhelp.html 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 --force ses.5802-0081-1.aix5.1.noarch.rpm* 4) Microcode files will be copied to "/etc/microcode". The file size and checksum of the microcode image will be verified in Section 5.0 *Notes:* - "/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. *5.0 Verifying microcode before download and notes* *NOTE:* Microcode download must be performed separately for each "ses" under distinct Logical Partitions (LPAR's). Please save current and older versions of the microcode update files in case you need to restore your system. *NOTE:* Microcode update cannot be performed to both SAS expanders (SES) at the same time. /Installation Time: /Approximately 30 min System Time. Please verify the file size and checksum of the raw microcode files matches the below.* Filesize: 442208* *Checksum: 54347* For _AIX_: "ls -l /usr/lib/microcode/A1700DE1.0081" to verify Filesize. "sum /usr/lib/microcode/A1700DE1.0081" to verify Checksum. For _Linux_: "ls -l /lib/firmware/IBM-A1700DE1.0081" to verify Filesize. "sum /lib/firmware/IBM-A1700DE1.0081" to verify Checksum. For systems that have LPAR installed, the microcode file must be placed on all partitions that have a SES device in order to update the code. Follow this procedure for each partition: For _AIX_: A) Log into the target partition. B) Type: "cd /usr/lib/microcode" C) FTP (for AIX) or SFTP (for Linux) to the partition that has the media bay assigned. (ie. ftp/sftp partition1.ibm.com) D) Type: "cd /usr/lib/microcode" E) If using FTP then Type: "bin" F) Type: "get A1700DE1.0081" G) Type: "quit" For _Linux_: A) Log into the target partition. B) Type: "cd /lib/firmware" C) SFTP to the partition that has the media bay assigned. (ie. "sftp partition1.ibm.com") D) Type: "cd /lib/firmware" E) Type: "get IBM-A1700DE1.0081" F) Type: "quit" *5.1 Microcode Download Procedure-SAS Enclosure Services for 5802-001 and 5803-001 for AIX* */Procedure:/* 1) It is advised, but not necessary to stop all applications. 2) Enter diag 3) Select the "Task Selection" from diagnostics menu. 4) Select "Download Microcode" or "Microcode Tasks -> Download Microcode" from "Task Selection" menu. 5) Select all of the SAS Enclosure Services for 5802-001's and/or 5803-001's that need to be updated from the list of devices by pressing "Enter". The devices will be displayed as ses#, where # is the number of the device. Press "F7". 6) A dialogue box will be displayed on screen. Press "Enter" to continue. 7) Select "/usr/lib/microcode". 8) A dialogue box will may be displayed on screen. It will state that the current microcode level on the adapter is not in the /usr/lib/microcode directory. This is acceptable as you will be flashing new microcode onto the adapter. Also, incorrect code will automatically be rejected. Press "Enter" to continue. 9) An "M" will be displayed next to the latest level of microcode in the /usr/lib/microcode directory. Select that level and press "Enter". 10) The following message will appear on the screen when download is completed: "Microcode download complete successfully. The current microcode level for the device ses# is ..... Please run diagnostics on the adapter to ensure that it is functioning properly." DO NOT run diagnostics on the device at this time. 11) Exit diagnostics. 12) Verify the code level is 0081 by typing "lscfg -vl ses#" for each SES device updated. *5.2 Microcode Download Procedure-SAS Enclosure Services for 5802-001 and/or 5803-001 for Linux /Procedure:/* 1) Stop all applications. 2) Type "iprconfig" and press "Enter". 3) Select "Download Microcode" and press "Enter". 4) Select all of the SAS Enclosure Services for 5802-001's and/or 5803-001?s that need to be updated from the list of devices by pressing "1". Then press "Enter". 5) Select the appropriate microcode image to flash by pressing "1". (The image will end in 0081). Press Enter. Press Enter again to confirm. 6) If multiple devices were selected in step 4, then repeat step 5 until finished. *6.0 Microcode Readme Change History * 2009-10-21 Fixed problem with RPM packaging, checksum in section 5.0 has been updated 2009-10-13 Release level 0081 to support SSDs 2009-05-13 Added 5802-001 references to document Corrected firmware filenames Corrected OS support levels 2009-05-08 Initial Document