IBM Power Systems
PCIe3 RAID SAS Adapter Quad-port 6Gb x8 & PCIe3 SAS Tape Adapter Quad-port
6Gb x8 (CCIN 57B4)
PCIe3 12GB Cache RAID SAS Adapter Quad-port 6Gb x8 (CCIN 57B1, 57CE)
PCIe3 x8 SAS RAID Internal Adapter 6Gb (CCIN 57D7, 57D8, 57DC, 2CCA, 2CCD, 2CD2)
DATE: February 7, 2022
Table of Contents
2.0 General Information 
2.1 Installation Time
2.2 Machine's Affected
2.3 Operating System 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 Microcode Update via CD 
5.0 Verifying microcode before download and notes
5.1 Microcode Download Procedure-SAS Adapters for AIX
5.2 Microcode Download Procedure-SAS Adapters for Linux
5.3 Microcode Download Procedure-SAS Adapters for VIOS
6.0 Microcode Readme Change History
=====================================================================================
 
| 19512c00 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. Note: If updating on a
  POWER9 MTM 9009-41A, 9009-42A, or 9223-42H, with an expanded function disk
  drive backplane installed, check whether your partition has been updated with
  either POWER9 System Firmware VL910_144 (FW910.32) or VL930_068 (FW930.03).
  If it has not been updated, or superseded, please update to the current level
  of POWER9 System Firmware before applying this adapter microcode update.  - Fixed an issue where a periodic
  check on the supercapacitors may call out an adapter for replacement. - Added detection for an internal
  firmware issue that affects non-caching adapters which will now result in the
  adapter being called out for a microcode update | 
| 19512b00 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. Note: If updating on a
  POWER9 MTM 9009-41A, 9009-42A, or 9223-42H, with an expanded function disk
  drive backplane installed, check whether your partition has been updated with
  either POWER9 System Firmware VL910_144 (FW910.32) or VL930_068 (FW930.03).
  If it has not been updated, or superseded, please update to the current level
  of POWER9 System Firmware before applying this adapter microcode update.  - Fixed an issue with JBOD
  storage devices that could result in a partition boot failure or SAS_ERR2
  errors during partition boot. The partition boot failure could result in SRC
  BA210012.  - Fixed an error that could
  result in an ERRID_SAS_ERR1 error at adapter IPL with EasyTier
  arrays. - Improved error handling and
  recovery when an adapter to adapter link may transition to not operational - Improved error recovery while
  storage devices are initializing - Improved recovery for an interrupted
  secure erase operation to a RAID formatted HDD or RAID formatted SSD - Improved supercapacitor
  interface to avoid calling out the adapter for replacement during system IPL. | 
| 19512900 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. Note: If updating on a
  POWER9 MTM 9009-41A, 9009-42A, or 9223-42H, with an expanded function disk
  drive backplane installed, check whether your partition has been updated with
  either POWER9 System Firmware VL910_144 (FW910.32) or VL930_068 (FW930.03).
  If it has not been updated, or superseded, please update to the current level
  of POWER9 System Firmware before applying this adapter microcode update.  - Improved RAID drive format functionality
  for secure data deletion by sending a Crypto Erase command before a format to
  SED capable drives | 
| 19512800 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update process
  may require an additional microcode download to be performed for the adapter
  microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. Note: If updating on a POWER9 MTM 9009-41A, 9009-42A, or 9223-42H,
  with an expanded function disk drive backplane installed, check whether your
  partition has been updated with POWER9 System Firmware VL930_068 (FW930.03).
  If it has not been updated, or superseded, please update to the current level
  of POWER9 System Firmware before applying this adapter microcode update. - Improved error handling of an issue to
  properly log a temporary device bus error - Improved error handling during
  processing of corrupt parity detection - Fixed an issue that may result
  in a controller requesting a microcode update - Fixed an issue that may cause a
  controller device port to persistently remain in an incorrect mode - Fixed an issue that may prevent
  temporary device bus fabric errors being logged - Fixed an issue that could cause
  devices to be called out for replacement - Fixed an issue that could cause a disk array to
  resynchronize its parity data after a system reboot | 
| 19512300 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. -
  Improved error handling for a high impact issue that may call out an adapter
  for replacement | 
| 19512200 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. -
  Minor performance improvement of RAID-6 storage arrays -
  Fixed an issue that would have caused the adapter call out for a microcode
  update after receiving a microcode update immediately after controller IPL -
  Improved error handling for an issue that may cause a controller to request a
  reset -
  Improved error handling for an issue that may cause in a tape save or restore
  job to fail -
  Improved error handling that would have resulted in controller command
  timeouts -
  Improved error handling for an issue would have caused a storage device to be
  called out for replacement -
  Improved error handling for issues that may result in temporary device bus
  errors | 
| 19511400 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. - Fixed an issue that could
  result in a power supply overcurrent condition when the internal disk devices
  spinup. | 
| 19511200 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. - Fixed an issue that could
  result in missing storage drives and storage controllers being called out
  replacement after system boot-up. | 
| 19511000 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off
  the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is
  logged in AIX during this microcode update that requests downloading the
  latest microcode.  If so, repeat the
  code update again using the same file already downloaded.  If a message of "Microcode download
  required” is logged in Linux, repeat the microcode update using the same
  file already downloaded. - Added support for POWER9 9070-MR9 and 9225-50H - Added support for Secure Boot option on POWER9 systems -
  Performance enhancements for two-drive RAID-10 arrays -
  Performance enhancements for RAID-5 arrays and RAID-6 arrays - The
  adapters minimum supported firmware level is set in this level to prevent back-leveling.  The adapter code update process will not accept
  a download with any code older than this level. -
  Improved error handling and recovery for issues that could result in an
  adapter being called out for replacement -
  Improved error handling and recovery for issues that may have resulted in an
  adapter requesting a microcode update. -
  Incorrect error handling and recovery that may result in a device being
  called out for replacement -
  Fixed an issue that may result in hard command timeouts -
  Fixed an issue that may cause command timeouts in a dual controller setup. -
  Incorrect handling of link status commands in a Dual Controller configuration
  may cause a device hard command timeouts. -
  Improved error handling and recovery for issues that may result in SAS_ERR3 -
  Improvements for signal settings to prevent a command timeout when the
  adapter is attached to a DVD drive. -
  Improved error handling and recovery for issues that could result in device
  bus fabric errors while using active optical cables -
  Fixed an issue where a device may show a failed path after an expander reset -
  Fixed an issue that may result in a port showing degraded while using active
  optical cables -
  Fixed an issue that could cause an adapter to request a reset | 
| 18518500 | Impact = AVAIL     
  Severity = ATT Warning: Do not interrupt or power off the
  system while adapter microcode update is in progress. Note: If updating from a significantly down
  level adapter microcode level, the microcode update process may require an
  additional microcode download to be performed for the adapter microcode to be
  completely updated on the adapter. 
  Check to see if a SAS_ERR1 error is logged in AIX during this
  microcode update that requests downloading the latest microcode.  If so, repeat the code update again using
  the same file already downloaded.  If a
  message of "Microcode download required” is logged in Linux,
  repeat the microcode update using the same file already downloaded.   -
  Improved error handling and reporting in situations where SAS devices
  connected to IBM PCIe3 SAS adapters by a non-IBM cable are not properly
  reported in - Improved error handling and
  recovery to avoid an adapter possibly being called out for a microcode update
  while running two drive RAID-10 -
  Improvements to hardware functionality that may prevent an adapter being
  called out for replacement or a cable being called out for replacement | 
| 18518200 | Impact = AVAIL      Severity = ATT Warning: Do not interrupt or power off the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is logged in AIX during this microcode update that
  requests downloading the latest microcode. 
  If so, repeat the code update again using the same file already
  downloaded.  If a message of "Microcode download required” is
  logged in Linux, repeat the microcode update using the same file already
  downloaded. - Improved error handling to avoid an adapter being called out for a microcode update. - Improved error handling and recovery to avoid temporary device bus errors - Improved error handling and recovery to avoid calling a device out for replacement - Improved error handling and recovery to avoid an adapter being called out for reset. - Improved error handling and recovery to avoid possible adapter command timeouts - Improved error handling and recovery to avoid possible device command timeouts - Improved error handling and recovery to avoid possible
  temporary controller failure | 
| 17518300 | Impact = AVAIL      Severity = ATT Warning: Do not interrupt or power off the system while adapter microcode update is in progress. Note: If updating from a significantly down level adapter microcode level, the microcode update process may require an additional microcode download to be performed for the adapter microcode to be completely updated on the adapter. Check to see if a SAS_ERR1 error is logged in AIX during this microcode update that requests downloading the latest microcode. If so, repeat the code update again using the same file already downloaded. If a message of "Microcode download required” is logged in Linux, repeat the microcode update using the same file already downloaded. Note: The adapters minimum supported firmware level is set to prevent back-leveling. The adapter code update process will not accept a download with any code older than this level. - Added functionality allowing hosts to force a partner adapter reset in dual controller configurations - Fixed an issue where certain error logs with connector port locations did not match adapter tailstock labeling - Multiple improvements to error handling for situations that would have previously resulted and the adapter requesting a microcode update - Added support for ESLS ESM concurrent maintenance with active optical cables - Performance enhancements to degraded RAID-5 and RAID-6 arrays - Improved error handling for caching adapters during IPL that could result in an adapter being called out for replacement - Possible hard command timeouts for non-optimized operations while operating under heavy workloads - Improved error handling on the PCIe bus which would have previously resulted in the adapter being called out for replacement - Improved error handling when an array goes exposed at the same time the dual controller link fails. - Fixed an issue causing possible hard command timeouts on adapter firmware downloads - Fixed a possible array create timeout failure when creating an array with non-zeroed SSDs that are a mixture of different capabilities. - Fixed an issue where parity may become out of sync if a reconstructing drive fails during the rebuild and is subsequently reset causing the rebuild to automatically restart. - Improved error handling and recovery when active optical cables are attached that may result in an adapter calling out for service procedures - Improved error handling and recovery to avoid possible recovered device bus fabric errors - Fixed an error where a delete SAS disk array command could fail | 
| 16519500 | Impact = AVAIL      Severity = ATT Warning: Do not interrupt or power off the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is logged in AIX during this microcode update that
  requests downloading the latest microcode. 
  If so, repeat the code update again using the same file already
  downloaded.  If a message of "Microcode download required” is
  logged in Linux, repeat the microcode update using the same file already
  downloaded. - Fix
  for: Improved error handling while using SAS disks in a JBOD configuration to prevent time-outs and busy conditions while performing JBOD device hot-plug operations. | 
| 16519400 | Impact = SVC     
  Severity = ATT Warning: Do not interrupt or power off the system while adapter microcode update is in progress. Note: If updating from a
  significantly down level adapter microcode level, the microcode update
  process may require an additional microcode download to be performed for the
  adapter microcode to be completely updated on the adapter.  Check to see if a SAS_ERR1 error is logged in AIX during this microcode update that
  requests downloading the latest microcode. 
  If so, repeat the code update again using the same file already
  downloaded.  If a message of "Microcode download required” is
  logged in Linux, repeat the microcode update using the same file already
  downloaded. -
  Fixes for: Possible errors while doing expander microcode updates with active optical cables attached that may result in device bus fabric errors. Improved error handling and recovery of errors, during SAS fabric change processing, to prevent errors against each SAS port. Improved error handling of various non-fatal PCIe errors that may result in the adapter being called out for replacement. Improved error handling for drive errors resulting in devices being called out for replacement Possible errors during SAS adapter supercapacitor failures situation possibly resulting in the controller being called out for replacement Improved error handling of tape driver operations that could result in the adapter being called out for a microcode update. Improved error handling and recovery while performing an array resync that may result in adapter reset and/or being called out for replacement. The adapters minimum supported firmware level is set to 16519200 to prevent back-leveling. The adapter code update process will not accept a download with any code older than that level. | 
| 15511800 | Impact = AVAIL      Severity = HIPER -
  Fixes for: Possible "false" Over Current detection which may cause an adapter failure on a cold (power off) boot. This may result in an adapter resource status of failed or unknown and/or system may log SRCBA180020 SRCB200308C SRCB2004158 Warning: Do not interrupt or power off the system while adapter microcode update is in progress. Note: If updating from a significantly down level adapter microcode level, the microcode update process may require an additional microcode download to be performed for the adapter microcode to be completely updated on the adapter. Check to see if a SAS_ERR1 error is logged in AIX during this microcode update that requests downloading the latest microcode. If so, repeat the code update again using the same file already downloaded. If a message of "Microcode download required” is logged in Linux, repeat the microcode update using the same file already downloaded Possible errors while IO traffic is run to a partner controller which may result in an adapter calling out for a reset. Added required support for SAS Active Optical Cables In a dual controller configuration, both controllers may come up as primary which may result in an controller requesting a microcode update Possible hard command timeouts on controller microcode downloads resulting in device errors and/or controller errors for controller timed out a device command. The adapters minimum supported microcode level is set to 15511800 to prevent back-leveling. The controller microcode update process will not accept a download with any microcode older than that level. | 
| 15511300 | Impact = SVC     
  Severity = ATT -
  Fixes for: Improved
  handling of temporary loss of status from cache supercapacitor control logic
  resulting in adapter being requested to be replaced for controller failure. Enhanced
  code download function to better handle future updates. Improved
  cleanup of stale Task Management Function work queue pointer triggering an
  adapter firmware exception possibly resulting in permanent adapter errors
  requesting a microcode update. Improved
  error handling and recovery of on card memory errors which may result in
  adapter errors requesting to be replaced for a controller failure. Enhanced
  error recovery in a Dual Controller configuration which could result in
  adapter to adapter command timeouts followed by an adapter reset on the
  Primary adapter Adapter
  may log permanent adapter errors requesting a microcode update and/or
  resynchronize array parity data if the adapter was shutdown
  while Easy Tier® function was in the middle of swapping hot & cold data. Incorrect
  processing during device discovery may result in permanent adapter errors
  requesting a microcode update. Possible
  hard command timeouts on reads to tape drives when encountering SAS fabric
  recovery resulting in device errors and/or adapter errors for controller
  timed out a device command. Possible
  hard command timeouts resulting in device errors and/or adapter errors for
  controller timed out a device command. Added
  support for Enterprise Nearline (ENL) disk drives and EXP12SX storage
  enclosure (FC ESLL) and EXP24SX storage enclosure (FC ESLS). The adapter's
  minimum supported firmware level is set to 15511300 to prevent
  back-leveling.  The adapter code update
  process will not accept a download with any code older than that level. Incorrect
  handling of device execution path transitions may result in permanent adapter
  errors requesting a microcode update. Incorrect
  error recovery handling of non
  functional arrays may result in permanent adapter errors
  requesting a microcode update. Incorrect
  error recovery handling of missing cable redundancy may result in an error
  log for multiple controllers not capable of similar functions or controlling
  same set of devices occurring after logging incomplete multipath connection
  between controller and enclosure error. This may also result in incorrect SAS
  path info screens. | 
| 14511f00 | Impact = SVC     
  Severity = ATT -
  Fixes for: Incorrect
  capacity may be reported for some 4k sector hard disk drives in JBOD mode. Issue
  causing greatly extended time to create file system in Linux only. Incorrect
  logging of some adapter hardware issues may result in SRN57B18151,
  SRN57CE8151, SRN57B48151,  SRN57D78151,
  SRN57D88151, SRN2CCA8151, SRN2CD28151, SRN2CCD8151 Possible
  hard command timeouts resulting in SRN57B13109, SRN57CE3109, SRN57B43109,
  SRN57B73109, SRN57D83109, SRN2CCA3109, SRN2CD23109, SRN2CCD3109 and/or
  SAS_ERR4 Incorrect
  hardware buffer allocation may result in SRN57B18151, SRN57CE8151,
  SRN57B48151, SRN57D78151, SRN57D88151, SRN2CCA8151, SRN2CD28151, SRN2CCD8151 An
  issue in performance enhancement code for JBOD devices may result in
  SRN57B18151, SRN57CE8151, SRN57B48151, SRN57D78151, SRN57D88151, SRN2CCA8151,
  SRN2CD28151, SRN2CCD8151 An
  incorrect internal adapter machine check may result in SRN57B18151,
  SRN57CE8151, SRN57B48151, SRN57D78151, SRN57D88151, SRN2CCA8151, SRN2CD28151,
  SRN2CCD8151 Enhanced
  error recovery to prevent possible command timeouts during reads to SAS tape
  device resulting in SRN57B43109 and/or SAS_ERR4 | 
| 14511c00 | -
  Fixes for: Frequent
  adapter SAS path rebalancing, done to optimize performance, may cause the
  adapter HW to get into a bad state leading to possible command timeouts, loss
  of SAS path redundancy to one or more devices, and in some cases one or more
  failed devices in an array requiring an adapter reset to recover. | 
| 14511900 | -
  Fixes for: SAS error logging
  enhancements A retryable
  internal memory error may incorrectly result in SRN57CE8150, SRN57D88150,
  SRN2CCA8150 Device Initiator Response
  Timeouts and/or Device Data Offset Mismatch resulting in SRNxxxxFFFE
  for a device.  Device Check Condition
  due to overlapped commands resulting in SRNxxxxFFF6 for a device. Support for future hardware features | 
| 13512900 | -
  Fixes for: A
  very small timing window in adapter internal NVRAM diagnostics may result in
  SRN57CE8150, SRN57B48150, SRN57B78150, SRN57D88150, SRN2CCA8150, SRN2CD28150,
  SRN2CCD8150 Possible
  hard and/or soft command timeouts resulting in SRN57B43109, SRN57B4FFFE  Incorrect
  usage of adapter freed memory may result in SRN57CE8151, SRN57B48151,
  SRN57B78151, SRN57D88151, SRN2CCA8151, SRN2CD28151, SRN2CCD8151 Adapter
  error logging enhancements Incorrect
  directory management in adapter NAN flash memory function may result in
  SRN57CE8150, SRN57D88150, SRN2CCA8150,  SAS
  error logging enhancements | 
| 13512400 | -
  Fixes for: Incorrectly
  generated ECC in adapter internal memory may resulted in SRN57CE8150,
  SRN57B48150, SRN57B78150, SRN57D88150, SRN2CCA8150, SRN2CD28150, SRN2CCD8150 Incorrect
  timeout processing on some 4k ops may result in  SRN57CE8151, SRN57B48151, SRN57B78151,
  SRN57D88151, SRN2CCA8151, SRN2CD28151, SRN2CCD8151 A SAS
  Multipath redundancy level got better error may be incorrectly logged when an
  adapter is unconfigured and reconfigured into a partition.  SRN57CE4061,
  SRN57D84061, SRN2CCA4061, SRN57B44061, SRN2CD24061 Incorrect
  error recovery handling in a Multi-initiator and high availability
  configuration when connection to remote adapter is lost may result in  SRN57CE8151,
  SRN57B48151, SRN57D88151, SRN2CCA8151, SRN2CD28151 Error
  logging enhancements Incorrect
  command completion following a device reconstruct may result in SRN57CE8151,
  SRN57B48151, SRN57B78151, SRN57D88151, SRN2CCA8151, SRN2CD28151, SRN2CCD8151 Possible
  hard and/or soft command timeouts resulting in  SRC57CE3109, SRC57B43109, SRC57B73109,
  SRC57D83109, SRC57CEFFFE,  SRC57B4FFFE,
  SRC57B7FFFE, SRC57D8FFFE,SRN2CCA3109, SRN2CD23109, SRN2CCD3109,SRN2CCAFFFE,
  SRN2CD2FFFE, SRN2CCDFFFE Enhancements
  to SAS path status screens for path toggling and sync path status and path
  state. Incorrect
  error recovery handling when tape drives are attached to SAS adapter FC EJ10
  or EJ11, CCIN 57B4 may result in TAPE_ERR4 device errors. Support
  for future HW | 
| 13512300 | - Fix
  for adapters that support SATA DVD devices to address an incorrect pointer
  when performing internal adapter configuration for SATA devices which may
  result in an adapter unit check during IPL and may prevent system boot. | 
| 13511e00 | - Fix
  for 8408-E8E Power 8 system to correct an adapter to adapter communication
  issue which could lead to a Host Timeout of the internal SAS controllers,
  resulting in a reset of these internal controllers. | 
| 13511d00 | - GA Level (CCIN 2CCA, 2CCD, 2CD2) Hard
  IOA failure on a command execution may result in SRN57CE8150, SRN57B48150,
  SRN57B78150, SRN57D88150  Internal
  exception may result in SRN57CE8150, SRN57B48150, SRN57B78150, SRN57D88150 Incorrect
  error handling of some virtual system enclosure services issues may result in
  SRN57CE8151, SRN57B48151, SRN57B78151, SRN57D88151 Possible
  out of resource condition for adapters with write cache may result in
  SRN57CE8151, SRN57D88151 Possible
  op completion timing issue between the adapter and device may result in
  SRN57CEFFF6, SRN57B4FFF6, SRN57D7FFF6, SRN57D8FFF6, SRN57CEFFFE,  SRN57B4FFFE,
  SRN57D7FFFE, SRN57D8FFFE       Possible
  duplicate event for same SAS op may result in SRN57CE8151, SRN57B48151,
  SRN57B78151, SRN57D88151 Performance
  enhancements for feature EL3W used in an ESS solution only Enhancements
  to SAS path status display to prevent a blank status for a path found failed
  at IPL time. Error
  logging enhancements Serviceability
  Enhancements for Linux General
  performance enhancements Serviceability
  Enhancements  Error
  Recovery Enhancements | 
| 12511700 | Performance
  improvements for feature EL3W in ESS Solution Error
  recovery enhancements to prevent possible SRN57CE8151 SRN57B48151 SRN57D88151
  SRN57D78151 Error
  logging enhancements. SRN57CEFFFE, SRN57B4FFFE, SRN57D8FFFE Error
  recovery enhancements to prevent possible recoverable SRN57CE8150 SRN57B48150
  SRN57D88150 SRN57D78150                                                                       
   | 
| 12511400 | - Fix
  for Power 8 internal DVD device that may go unresponsive and/or log error
  during runtime or following an IPL. - GA Level (CCIN 57DC), Log Tip
  performance enhancement | 
| 12511200 | -HIPER: Fix for - SAS
  I/O adapter firmware enhancement to prevent a possible failure of both
  adapters in a Multi-initiator and high availability (Dual Controller)
  configuration which could result in a chance of data loss due to possible
  data trapped in cache. - Fix
  for possible failure of a JBOD operation responding to the host which may
  result in a potential boot failure or host time out | 
| 12511000 | Multiple
  Error logging enhancements. Error
  recovery enhancements for Multi-Initiator HA configurations. Multiple
  Serviceability enhancements. Correction
  for possible performance degradation with 4k sector disk drives Possible
  hard command timeouts may result in SAS_ERR2 recommending microcode download. SAS
  path error recovery issues may result in adapter unit check.  SRC57B48151
  SRC57CE8151 SRC57B78151 SRC57B88151 | 
| 1151002a | SAS PCIe3
  I/O adapter processing of heavy workloads has been enhanced to prevent a
  possibility of undetected data corruption. | 
| 11510024 | -Prerequisite for Easy Tier for AIX/Linux | 
| 11510022 | -GA Level (CCIN 57D7, 57D8) | 
| 10510057 | -Multiple
  Error logging enhancements. | 
| 10510052 | -GA Level (CCIN 57B4, 57CE) | 
 
This
subject microcode is to be used on the following SAS Adapter/controller types:
 
CCIN 57B1: PCIe3 12 GB Cache RAID + SAS quad-port 6 Gb x8 Adapter
CCIN 57B4: PCIe3 RAID SAS Adapter Quad-port 6Gb x8 & PCIe3 SAS Tape Adapter Quad-port 6Gb x8
CCIN 57CE: PCIe3 12GB Cache RAID SAS Adapter Quad-port 6Gb x8
CCIN 57D7, 57D8, 57DC, 2CCA, 2CCD, 2CD2: PCIe3 x8 SAS RAID Internal Adapter 6Gb
2.1 Installation
Time: 
Approximately 30 minutes 
  
2.2 Machine's
Affected: 
See Universal Sales Manual or other relevant documents for current listings of supported systems for these adapters
2.3 Operating
System Requirements
If you are installing a new feature, ensure that you have the software that is required to support the new feature and that you determine whether any prerequisites must be met for this feature and attaching devices. Consult the IBM sales manual for your system model to determine the AIX, VIOS, Linux, or IBMi release level requisites to support the feature in the system. To check for the Feature prerequisites, see IBM Prerequisite website (https://www14.software.ibm.com/support/customercare/iprt/home).
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 SAS RAID Adapters installed in the system by typing:
lsdev -C | grep sissas
Note: All of the SAS RAID initiators addresses that are installed will be displayed. The names will be sissasX, where X is 0, 1, etc.
2) To check the current microcode level for the adapter or controller enter the following command
lscfg -vl sissasX
Where X is the number/s of the previous command. The Command will produce output similar to
Example show for CCIN 57CE
DEVICE LOCATION DESCRIPTION
sissas0
U2C4E.001.DBJ8646-P2-C1-T1 PCIe3 12GB Cache RAID SAS Adapter Quad-port 6Gb x8
PCIe3 12GB Cache RAID SAS Adapter Quad-port 6Gb :
Part Number.................00E8432
FRU Number..................00E8431
Serial Number...............YL3BUE342052
Manufacture ID..............0BUE
EC Level....................B
ROM Level.(alterable).......1051004f
Customer Card ID Number.....57CE
Product Specific.(Z1).......1
Product Specific.(Z2).......2D21
Hardware Location Code......U2C4E.001.DBJ8646-P2-C1-T1
If the ROM Level is less than 19512c00 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 SAS adapter by typing a "1" in front of it and pressing
Enter.
4) The Command will produce output similar to 
"Firmware Version . . . . . . . . . . . . : 10510047"
If the Firmware Version is less than 19512c00 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) "pci.1014034a.51-19512c00-1.aix6.1.noarch.rpm"
    B) "pci.1014034A.51-19512c00-1.Linux.noarch.rpm"
    C) "pci.1014034A.51-19512c00-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 pci.1014034a.51-19512c00-1.aix6.1.noarch.rpm"
5b) For Linux - RHEL/SUSE:  Unpack the RPM file by using the
following command:  "rpm -ihv --ignoreos --force pci.1014034A.51-19512c00-1.Linux.noarch.rpm"
5c) For Linux - Ubuntu:
Un-tar the file by using the following command: tar -C / -xzf pci.1014034A.51-19512c00-1.Linux.noarch.tgz
6a) For the AIX rpm file:  The microcode files
will be added to /usr/lib/microcode/.
6b) For the Linux - RHEL/SUSE rpm file:  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/Linux:  The filename is pci.1014034a.51-19512c00-1.aix6.1.noarch.rpm
    B) For Linux - RHEL/SUSE:  The filename is pci.1014034A.51-19512c00-1.Linux.noarch.rpm
    C)
For Linux - Ubuntu: The filename is pci.1014034A.51-19512c00-1.Linux.noarch.tgz
3) Unpack the file by executing the instructions below: 
    A) For AIX:  Type "rpm -ihv --ignoreos --force
pci.1014034a.51-19512c00-1.aix6.1.noarch.rpm"
    B) For Linux - RHEL/SUSE:  Type "rpm
-ihv --ignoreos --force
pci.1014034A.51-19512c00-1.Linux.noarch.rpm"
    C)
For Linux - Ubuntu: Un-tar the file by using the following
command: tar -C / -xzf
pci.1014034A.51-19512c00-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/.
  
Below
are references and the general flow on how to update microcode update via CD
1) Boot the system via a Standalone Diagnostic's CD
b) To create a bootable Diagnostic's CD go to the following URL.
Burn cdlatest.iso on to a CD-R (or CD-RW). Currently,
DVD media cannot be utilized.
http://www14.software.ibm.com/webapp/set2/sas/f/diags/home.html
c) After booting to Standalone Diagnostics, the Diagnostic's CD can be removed.
2) The Diagnostic's CD should be replaced by a CD containing the unpacked
microcode image(s).
The CD containing the microcode images should be prepared prior. This can be
done by taking the rpm file(s) from the microcode download site and unpacking
them on a usable server. The unpacked files can then be burned on to the CD
media.
b) Another method is to use a Microcode Update CD
See the below website for more details
http://www14.software.ibm.com/webapp/set2/firmware/lgjsn?mode=10&page=cdrom.html#downloadcdrom
The Microcode Update CD and Discovery Tool can also be ordered through the
following link
http://www14.software.ibm.com/webapp/set2/firmware/lgjsn?mode=10&page=compare.html&title=Microcode%20Survey%20and%20update%20tool
5.0 Verifying microcode before download and notes
NOTE:
Microcode download must be performed separately for each Adapter bus 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 Download CAN be performed concurrently.
Installation Time: Approximately 30 min System Time.
Please
verify the file size and checksum of the raw microcode files matches the below.
Filesize:  3827288
Checksum:  53812
For AIX/Linux:  "ls -l /usr/lib/microcode/53495351.19512c00"
to verify Filesize.  
               
"sum /usr/lib/microcode/53495351.19512c00"
to verify Checksum.
For Linux:  "ls -l /lib/firmware/pci.1014034A.51.19512c00"
to verify Filesize.
                
"sum /lib/firmware/pci.1014034A.51.19512c00" to verify Checksum.
For systems that have LPAR installed, the microcode file must be placed on all partitions that have a SAS device in order to update the code. Follow this procedure for each partition:
For
AIX/Linux:
    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 53495351.19512c00"
    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 pci.1014034A.51.19512c00"
    F)  Type: "quit"
5.1 Microcode Download Procedure-SAS Adapters 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 Adapters/Controllers that need to be updated from the
list of devices by pressing "Enter".  The devices will be
displayed as sissas#, where # is the number of the
device.  Press "F7".
6) A dialogue box will be displayed on screen.  Press "Enter" to
continue.
7) Select "/etc/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 /etc/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 /etc/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 sissas# 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
adapters have been selected for update, if more than one adapter has been
selected, diagnostics will continue to the next adapter update, and the option
to return to the main menu to select running diagnostics on the adapter that
has just been updated will not be available until all the adapters have been
updated.
11) Exit diagnostics.
12) Verify the code level is 19512c00 by typing "lscfg
-vl sissas#" for each
SAS device updated. <Where # is the number sissas
device>
5.2 Microcode Download Procedure-SAS Adapters
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 Adapters/Controllers 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 19512c00).  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 Adapters 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 Adapters/Controllers that need to be updated from the
list of devices by pressing "Enter".  The devices will be
displayed as sissas#, where # is the number of the
device.  Press "F7".
6) A dialogue box will be displayed on screen.  Press "Enter" to
continue.
7) Select "/etc/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 /etc/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 /etc/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 sissas# 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
adapters have been selected for update, if more than one adapter has been
selected, diagnostics will continue to the next adapter update, and the option
to return to the main menu to select running diagnostics on the adapter that
has just been updated will not be available until all the adapters have been
updated.
11) Exit diagnostics.
12) Verify the code level is 19512c00 by typing "lscfg
-vl sissas#" for each
SAS device updated. <Where # is the number sissas
device>
6.0 Microcode
Readme Change History
| 2022-02-07 | -19512c00
  released | 
| 2020-11-20 | -19512b00
  released | 
| 2020-02-25 | -19512900
  released | 
| 2020-02-10 | -19512800
  released | 
| 2019-05-24 | -19512300
  released | 
| 2019-04-10 | -19512200
  released | 
| 2018-11-28 | -19511400
  released | 
| 2018-10-22 | -19511200
  released | 
| 2018-07-25 | -19511000
  released | 
| 2018-05-23 | -18518500
  released -updated
  OS requirements by revising section 2.3 and removing sections 2.4 and 2.5 | 
| 2018-03-01 | -18518200
  released | 
| 2017-11-27 | -17518300
  released | 
| 2017-06-01 | -16519500
  released | 
| 2017-05-05 | -16519400
  released | 
| 2017-02-20 | -15511800
  released | 
| 2016-10-27 | -15511300
  released | 
| 2016-08-12 | -14511f00
  released | 
| 2016-05-25 | -14511c00
  released | 
| 2016-04-19 | -14511900
  released | 
| 2015-11-23 | -13512900
  released | 
| 2015-09-22 | -13512400
  released | 
| 2015-08-20 | -13512300
  released | 
| 2015-06-19 | -13511e00
  released | 
| 2015-06-01 | -13511d00
  released | 
| 2015-04-08 | -12511700
  released | 
| 2014-12-08 | -12511400
  released | 
| 2014-11-12 | -12511200
  released | 
| 2014-10-21 | -Linux
  rpm microcode filename changed to upper case letter | 
| 2014-10-10 | -12511000
  released | 
| 2014-08-04 | -1151002a
  released. Added information about 11510022 | 
| 2014-06-02 | -11510024
  released | 
| 2014-04-14 | -10510057
  released | 
| 2014-02-18 | -GA
  microcode level 10510052 |