tree d3523480e6a5b8f59347c481711ea38613532397
parent e858bf9e655938a479aac7c3e10fead5b42938fb
author Stewart Smith <stewart@linux.ibm.com> 1526522524 -0500
committer Stewart Smith <stewart@linux.ibm.com> 1526522524 -0500

hostboot master bump to c4b9c94600ccc933ccb2dcb7563a6e5423d30153

Andre Marin (3):
      Add eff_config functionality needed for RIT, fix cas_latency bug & attr files
      Add initial L2 mss_freq_system procedure.
      Add base spd decoder to share among controllers

Benjamin Weisenbeck (1):
      PRD: Updates for Cumulus PLL analysis

Bill Hoffa (1):
      Implement Interrupt Resource Provider Init for MPIPL Multi-Node Systems

Brian Silver (7):
      Initial commit of memory subsystem
      Fix memory/VBU attribute files, add 'ipl' test case
      Add memdiags implementation for superfast operations
      Add L1 for p9_mss_freq_drift
      Add freq checking to ipl unit test, fix mk file
      Add rudimentary memory plug rules
      Add minor minor version feature support to getecid

Caleb Palmer (4):
      PRD: Fix invalid getConnectedParent in getCommonVars
      PRD: Adjust assert in BadDqBitmap Utils
      PRD: Update restoreDramRepairs for Centaur
      PRD: Rename ATTR_MBA_PORT and ATTR_MBA_DIMM

Christian Geddes (3):
      Add PEER_PATH attribute to xbus and obus targets
      Add error log for sbe poweron fails and clean up errlog commits
      Update targeting init during RT to set PEER_TARGET on OBUS targets

Craig Hamilton (1):
      Adding unit tests for the mss lab sdk

Dan Crowell (2):
      Better debug for weird PIR issues
      Remove writeable from ATTR_FABRIC_GROUP/CHIP_ID

Jacob Harvey (5):
      Implementing thermal_init

Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
