IBM Power Systems
PCIe3 1.6TB NVMe Flash Adapter (CCIN 58CB)

PCIe3 3.2TB NVMe Flash Adapter (CCIN 58CC)

Feature Code EC54, EC55, EC56, EC57

Microcode Update

 

 DATE: November 17, 2016

 

Table of Contents

1.0 Microcode Change History

2.0 General Information
2.1 Installation Time
2.2 Linux Requirements

3.0 Determine the Current Microcode Level

4.0 Downloading and Unpacking the Firmware Update Package

5.0 Verifying microcode before download and notes
5.1 Microcode Download Procedure

6.0 Microcode Readme Change History

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

1.0 Microcode Change History:

113

-GA2 Level

Boot Capability - The PCIe3 NVMe Flash Adapter can be used as a load source/boot device.

Fuel Gauge Enhancement- Remaining Spares Threshold changed from 10% to 90% 

State Dump Feature – Enhanced error logging and data capture

 

 2.0 General information
This subject microcode is to be used on:

PCIe3 1.6TB NVMe Flash Adapter (CCIN 58CB), FC (Low Profile/High Profile): EC54 / EC55

PCIe3 3.2TB NVMe Flash Adapter (CCIN 58CC), FC (Low Profile/High Profile): EC56 / EC57

 

2.1 Installation Time
Approximately 30 minutes
 
2.2 Linux Requirements:
Red Hat Enterprise Linux 7.2 for POWER, or later

Novel SUSE Linux Enterprise 11 Service Pack 4, or later

Novel SUSE Linux Enterprise 12 Service Pack 2, or later

Ubuntu 16.04 or later

 

3.0 Determine the Current Microcode Level

 

These steps assume you are logged in with root permissions and a PCIe3 NVMe Flash Adapter, Feature Code EC54, EC55, EC56, or EC57 is installed.

 

Prerequisites for Red Hat and SUSE Linux:

Use the ibm-power-repo to configure the repositories and then use yum or yast to download the nvme-cli package.

http://www14.software.ibm.com/support/customercare/sas/f/lopdiags/home.html

 

1. Download the IBM Linux on Power Tools Repository configuration RPM file available at:

http://www14.software.ibm.com/webapp/set2/sas/f/lopdiags/yum.html

 

2. Copy the file to the target system and install the RPM

# rpm -ivh ibm-power-repo-latest.noarch.rpm

 

3. To add the Tools Repository to the package management configuration, run the following command as root user (or with root privilege) and accept the Licensing agreement.

# /opt/ibm/lop/configure

 

Instructions for installing nvme-cli tool using Red Hat Enterprise Linux

 

To list the currently enabled repositories, enter:

# yum repolist enabled

 

Install the nvme-cli package, enter:

# yum install nvme-cli

 

Instructions for installing nvme-cli tool using SUSE Linux Enterprise Linux

 

Tools Installation instructions for SuSE

http://www14.software.ibm.com/webapp/set2/sas/f/lopdiags/installation.html#suse

 

To list the currently enabled repositories, enter:

# zypper sl

 

To update the installed packages to the latest version available, enter:

# zypper update -t package

 

Install the nvme-cli package, enter:

# zypper install nvme-cli

 

 

Instructions for installing nvme-cli tool using Ubuntu Linux

# apt-get update

# apt-get install nvme-cli

 

After nvme-cli is installed on the system, check the current microcode level for the adapter enter the following command:

# nvme list

 

Note: "nvme list" command uses libudev-devel, if it doesn't work, may need to install “libudev-devel"

 

If the FW Rev is different from “KMIPP113” install this update.
# nvme list

Node             Model                Version  Namepace Usage                      Format           FW Rev

---------------- -------------------- -------- -------- -------------------------- ---------------- --------

/dev/nvme0n1     PCIe3 3.2TB NVMe Fla 1.1      1          3.20  TB /   3.20  TB      4 KiB +  0 B   KMIPP113

/dev/nvme1n1     PCIe3 1.6TB NVMe Fla 1.1      1          1.60  TB /   1.60  TB      4 KiB +  0 B   KMIPP113

 

4.0 Downloading and Unpacking the Firmware Update Package

NOTE:  For RHEL and SLES, the image will be the RPM format file.
For Ubuntu, the image will be the TGZ format file.

 

1. Download feature code EC54, EC55, EC56, or EC57 package from FixCentral, and transfer the file, to a temporary directory on the target server such as /tmp.

 

2. Install the package

(RHEL)

rpmivh nvme-113-1.Linux.noarch.rpm

(SLES)

zypper install nvme-113-1.Linux.noarch.rpm

 

OR, Untar the package (Ubuntu)

tar -C / -xzf /tmp/nvme-113-1.Linux.noarch.tgz

 

3. The microcode package extracts the firmware file to the /lib/firmware/ directory

 

4. Verify the microcode image in Section 5.0

 

 

5.0 Verifying microcode before download and notes

 

Please verify the file size and checksum of the raw microcode files matches the below.

Filesize:  1320960
Checksum:  34264
 

"ls –l /lib/firmware/KMIPP113.bin"  to verify Filesize
 "sum /lib/firmware/KMIPP113.bin"  to verify Checksum

5.1 Microcode Download Procedure

Prerequisites:

·       System firmware and operating system are up-to-date.

·       nvme-cli and microcode image are available on the system.

·       Adapter(s) are plugged into PCIe slots.

·       Applications are idle.

·       Platform Firmware FW840.10 or later, OP820.01 or later

 

NOTE: New image will not take effect until a reset of the adapter occurs or the operating system is rebooted.

 

Procedure:
1. Boot and log in to the operating system as root user (or with root privilege)

 

2. Ensure the adapter(s) is present. Look for each present adapter in “ls -l /dev/nvme*”

In this example, two NVMe cards are present:

 

# ls -l /dev/nvme*

crw------- 1 root root 249,  0 Nov 14 15:52 /dev/nvme0     -- NVMe controller

brw-rw---- 1 root disk 259,  8 Nov 14 15:52 /dev/nvme0n1   -- NVMe name space

crw------- 1 root root 249,  1 Nov 14 15:52 /dev/nvme1

brw-rw---- 1 root disk 259,  6 Nov 14 15:52 /dev/nvme1n1

 


3. Update the microcode on the NVMe controller (Note: the firmware location directory path should not have spaces)

               nvme fw-download <nvme-device-name>  --fw=<nvme-fw-filename>

 

Example:

       # nvme fw-download /dev/nvme0  --fw=/lib/firmware/KMIPP113.bin

 

Warning: Do not interrupt or power off the system while microcode update is in progress.

 

4. Activate adapter microcode:

       nvme fw-activate <nvme-device-name> -a 1 -s 1

       nvme fw-activate <nvme-device-name> -a 1 -s 2

       nvme fw-activate <nvme-device-name> -a 1 -s 3

       nvme fw-activate <nvme-device-name> -a 1 -s 4

              

5. Verify the adapter microcode level

               nvme fw-log <nvme-device-name>

 

Example:

       # nvme fw-log /dev/nvme0

       Firmware Log for device:nvme0

       afi  : 0x44

       frs1 : 0x3031315050494d4b (KMIPP113)

       frs2 : 0x3031315050494d4b (KMIPP113)

       frs3 : 0x3031315050494d4b (KMIPP113)

       frs4 : 0x3031315050494d4b (KMIPP113)

 

 

6.0 Microcode Readme Change History
 

2016-11-17

-Initial Release