IBM Power Systems
SAS Enclosure Services for 9040-MR9
Feature Code EJ0C

Microcode Update

 

 DATE: May 15, 2019

 

Table of Contents

1.0 Microcode Change History

2.0 General Information
2.1 Installation Time
2.2 Machine's Affected
2.3 AIX Requirements
2.4 Linux Requirements

3.0 Determine the Current Microcode Level for AIX
3.1 Determine the Current Microcode Level for Linux

4.0 Downloading and Unpacking the Firmware Update Package from CORE
4.1 Downloading the RPM Format File to the Target Server
4.2 Discovery Tool Microcode CD-ROM creation and download instructions

5.0 Verifying microcode before download and notes
5.1 Microcode Download Procedure-SAS Enclosure Services for AIX
5.2 Microcode Download Procedure-SAS Enclosure Services for Linux
5.3 Microcode Download Procedure-SAS Enclosure Services for VIOS

6.0 Microcode Readme Change History

=====================================================================================

1.0 Microcode Change History:

0150

Impact = NEW      Severity = NEW

-GA Level

 2.0 General information

This subject microcode is to be used on the following SAS expander (SES) type:

Power 9 Expanded Function DASD backplane 9040-MR9

FC: EJ0C, CCIN 2D38
 

2.1 Installation Time:
Approximately 30 minutes
 
2.2 Machine's Affected:
9040-MR9
 

2.3 AIX Requirements:
For support:

AIX Version 7.2 with the 7200-02 TL and SP 7200-02-02-1832

AIX Version 7.1 with the 7100-05 TL and SP 7100-05-02-1832

AIX Version 7.2 with the 7200-03 Technology Level

AIX Version 6.1 with the 6100-09 TL and SP 6100-09-12-1838 (AIX 6.1 service extension required)

AIX Version 7.2 with the 7200-01 TL and SP 7200-01-05-1845

AIX Version 7.1 with the 7100-04 TL and SP 7100-04-07-1845

VIOS 2.2.6.23

or above

 

2.4 Linux Requirements:

For support:

Red Hat Enterprise Linux 7.5 for Power LE (p8compat)

Red Hat Enterprise Linux for SAP with Red Hat Enterprise Linux 7 for Power LE version 7.5

SUSE Linux Enterprise Server for SAP with SUSE Linux Enterprise Server 11 Service Pack 4

SUSE Linux Enterprise Server 12 Service Pack 3

SUSE Linux Enterprise Server for SAP with SUSE Linux Enterprise Server 12 Service Pack 3

or above

 

 

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

 

Example shown for FC EJ0C, CCIN 2D38

 DEVICE   LOCATION                                 DESCRIPTION

  # lscfg -vl ses0

  ses0             U78D4.ND1.CSS0FF9-P2-Y2  SAS Enclosure Services Device

 

      SAS Expander:

        FRU Number..................02EA636

        Serial Number...............YH30BG8B801H

        Customer Card ID Number.....2D38

        Load ID.....................A1700DF7

        ROM Level.(alterable).......0150

        Hardware Location Code......U78D4.ND1.CSS0FF9-P2-Y2

 If the ROM Level is less than 0150 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 . . . . . . . . . . . . : 0150"

If the Firmware Version is less than 0150 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-0150-1.aix6.1.noarch.rpm"
    B) "ses-0150-1.Linux.noarch.rpm"

    C) "ses-0150-1.Linux.noarch.tgz"
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-0150-1.aix6.1.noarch.rpm"
5b) For Linux - RHEL/SUSE:  Unpack the RPM file by using the following command:  "rpm -ihv --ignoreos --force ses-0150-1.Linux.noarch.rpm"
5c) For Linux - Ubuntu:  Un-tar the file by using the following command:  " tar -C / -xzf ses-0150-1.Linux.noarch.tgz"

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/.
6c) For the Linux - Ubuntu file:  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-0150-1.aix6.1.noarch.rpm
    B) For Linux - RHEL/SUSE: The filename is ses-0150-1.Linux.noarch.rpm
    C) For Linux- Ubuntu:  The filename is ses-0150-1.Linux.noarch.tgz

3) Unpack the file by executing the instructions below:
    A) For AIX:  Type "rpm -ihv --ignoreos --force ses-0150-1.aix6.1.noarch.rpm"
    B) For Linux R- HEL/SUSE:  Type "rpm -ihv --ignoreos --force ses-0150-1.Linux.noarch.rpm"
    C) For Linux - Ubuntu: Un-tar the file by using the following command: tar -C / -xzf ses-0150-1.Linux.noarch.tgz

4a) For AIX rpm file:  The microcode files will be added to /usr/lib/microcode/.
4b) For Linux rpm file:  The microcode files will be added to /lib/firmware/.
4c) For the Linux - Ubuntu file:  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-0150-1.aix6.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:  571696

Checksum:  22168
For AIX:  "ls -l /usr/lib/microcode/ A1700DF7.0150" to verify Filesize
                "sum /usr/lib/microcode/A1700DF7.0150 " to verify Checksum.
For Linux:  "ls -l /lib/firmware/A1700DF7.0150 " to verify Filesize.
                 "sum /lib/firmware/A1700DF7.0150 " 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 A1700DF7.0150 "
    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 A1700DF7.0150 "
    F)  Type: "quit"

5.1 Microcode Download Procedure-SAS Enclosure Services 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 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 may be displayed on screen.  It will state that the current microcode level on the device is not in the /usr/lib/microcode directory.  This is acceptable as you will be flashing new microcode onto the device.  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.
In the case where multiple devices have been selected for update, if more than one device has been selected, diagnostics will continue to the next device update, and the option to return to the main menu to select running diagnostics on the device that has just been updated will not be available until all the devices have been updated.
11) Exit diagnostics.
12) Verify the code level is 0150 by typing "lscfg -vl ses#" for each SES device updated. <Where # is the number ses device>


5.2 Microcode Download Procedure-SAS Enclosure Services 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 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 0150).  Press Enter.  Press Enter again to confirm.
6) If multiple devices were selected in step 4, then repeat step 5 until finished.

 

5.3 Microcode Download Procedure-SAS Enclosure Services for VIOS

 

Procedure:
1) It is advised, but not necessary to stop all applications.
2) Enter diagmenu
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 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 may be displayed on screen.  It will state that the current microcode level on the device is not in the /usr/lib/microcode directory.  This is acceptable as you will be flashing new microcode onto the device.  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.
In the case where multiple devices have been selected for update, if more than one device has been selected, diagnostics will continue to the next device update, and the option to return to the main menu to select running diagnostics on the device that has just been updated will not be available until all the devices have been updated.
11) Exit diagnostics.
12) Verify the code level is 0150 by typing "lscfg -vl ses#" for each SES device updated. <Where # is the number ses device>

 

 

6.0 Microcode Readme Change History
 

2019-05-15

-Initial Release