summaryrefslogtreecommitdiffstats
path: root/src/include
Commit message (Collapse)AuthorAgeFilesLines
* Fix data storage exception when PRD runs in istep 12.Thi Tran2018-06-221-0/+1
| | | | | | | | | | | | | | | Exception happens when PRD invokes a HWP that calls mss functions (p9c_query_channel_failure) to analyze a HW error. The fix is to include libisteps_mss.so to HB istep 12. Change-Id: Ied113906139506dd232d8e0cf919d51006c6ca24 CQ:SW433264 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61141 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add TPM Calls to Node Communication ABUS Exchange ProcedureMike Baiocchi2018-06-211-0/+10
| | | | | | | | | | | | | | | | | | This commit adds the TPM calls to generate a random number and log ('extend') the nonces passed between the nodes via the ABUSes. It also cleans up some other TODOs and traces. Change-Id: I1389af2d809351421f3c2b3b954b3eaf6b0506aa RTC:184518 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60962 Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* HRMOR relative addressing for PHyp SP ATTN area dumpJaymes Wilks2018-06-214-0/+29
| | | | | | | | | | | | | | | | | | | | | This change adds absolute addresses to HDAT for the SP ATTN area that the PHyp team can now use for predictably locating PHyp debug information. In addition, Hostboot now populates attributes with its intended PHyp ATTN area start addresses for FSP to read. Change-Id: I21fbdf672c37462c87705236973b22f9d1d4eba4 CMVC-Prereq: 1059060 CMVC-Prereq: 1058912 CMVC-Prereq: 1059317 RTC:186439 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59269 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* HBRT attrrp depends on node zero being presentMarty Gloff2018-06-212-33/+42
| | | | | | | | | | | | | | | | | Rework the code in the runtime startup() function to not depend on using Node 0 reserved memory data to discover what nodes are present and to create "invalid node" structs in iv_nodeContainer for nodes that are not present. Change-Id: I61f0dbdc94c6dd1a31a3e3453b149e7322311a6e RTC: 192967 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59497 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add procedure for istep 18's Node Communication ABUS ExchangeMike Baiocchi2018-06-191-0/+11
| | | | | | | | | | | | | | | | | | | | | This commit creates a new interface that will be called in istep 18 to facilitate the exchanging of Link Mailboxes messages between nodes acros the ABUS interface. It also does the basic procedure without all of the final FFDC and RAS implementation that will come in subsequent commits. All error logs are deleted to not kill any IPLs until full functionality is tested. Change-Id: I7391deaa37e49629cd01cfad212b64fecb9529bd RTC:184518 CMVC-Prereq:1058895 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60793 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* New Global For Console DaemonIlya Smirnov2018-06-191-1/+15
| | | | | | | | | | | | | | | | | | | | | | This change implements a new global variable that indicates whether the console daemon has been started. This variable is checked in the doShutdown path prior to printing any console traces. There may be a situation very early in the IPL where we attempt to write to console before the console daemon has been started. This causes timeouts and IPL failures. Change-Id: Ibec90d2207e5db9ef3b9507503d1ea9e2eb7cf6d CQ: SW431130 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60060 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Secure Boot: Support API to fence off all node processors' secure mailboxesIlya Smirnov2018-06-192-0/+42
| | | | | | | | | | | | | | | | This change imlpements the logic to lock down the Abus secure mailboxes prior to starting PHyp. The lock down is perormed as part of secure node communication in istep 18 Change-Id: I4bc678ce7844290a7229b605406d5d3c689a0c6c RTC: 191005 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59692 Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* HBRT Reserved Mem Trace Buffer implementation.Sakethan R Kotta2018-06-193-2/+23
| | | | | | | | | | | | | | | | | | | | | | -Hostboot master Drawer will create TRACEBUF section in the HB Rsvd Mem and HBRT, while booting, gets the TRACEBUF section details and initializes the circual buffer, if available. -If a valid data is present in the buffer, HBRT will create an info log ERRL, otherwise initializes the buffer. -Traces from all components are serialized and stored in the single TRACEBUF in the same format (fsp-binary Trace). When buffer is full, it deletes the oldest entry/entries to store the new ones. -ERRL->collectTrace() works similar to other buffers. -A new test case is added to dump the traces from TRACEBUF. Change-Id: I4ce943231a2ba30e3a13ca34d1c40ff68464a994 RTC:188726 RTC:191302 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56450 Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* untrusted SBE reserved memory region to Rsvd Mem Trace Buf SectionSakethan R Kotta2018-06-191-0/+11
| | | | | | | | | | | | | | Opens an untrusted SBE reserved memory region with read-only permissions to the Rsvd Mem Trace Buf Section.so that tools/debug can come in and read those traces in secure mode. Establishes the window across -all- chips. Change-Id: Ied9852455d7c412915871328976a9204e1f5247f RTC:191303 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58637 Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Ensure hwas state reflects resource recovery actionsAndrew Geissler2018-06-191-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Once resource recovery is run to recover hardware resources to allow the system to boot, it will not be run again until the configuration of the hardware changes. An issue with that design is that the HWAS state, deconfiguredByEid, will not be properly updated in situations where resource recovery has already run. This state is used by the gard command line tool to inform the user on the state of their garded hardware. This commit ensure the deconfiguredByEid is properly updated for targets that are guarded, but have been resource recovered to allow system boot. Change-Id: Ib15c1e8402e7c13b6497915c5138831e5e591bbe CQ: SW432846 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60486 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: DHRUVARAJ SUBHASH CHANDRAN <dhruvaraj@in.ibm.com> Reviewed-by: ARAVIND T. NAIR <aravindnair@in.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* SW419349: Handle override of deconfig by Error vs FCO reasons by associationAmit Tendolkar2018-06-182-1/+39
| | | | | | | | | | | | | | | | | | | | | | 1. Override the deconfig reason of a parent .. a) getting deconfig by association due to error on its child && b) has at least 1 other child already deconfig by FCO .. to deconfig by FCO 2. Override the deconfig reason of a child .. c) whose parent is getting deconfig by an error && d) that is itself already deconfig by FCO .. to deconfig by that error Change-Id: I9c73fe35aedb832f9a4b33bd299bb30fe589095c CQ: SW419349 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59934 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Update MAGIC instruction for SimicsDan Crowell2018-06-181-2/+2
| | | | | | | | | | | | Fixed some bad asm code Change-Id: I6786a6010c682ce8bb5de74999da659ad2eb43d7 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60775 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Implement the VPD backend for these attributesSwathi Madhuri Bhattiprolu2018-06-151-0/+41
| | | | | | | | | | | | | | | | - ATTR_CEN_VPD_CDIMM_SENSOR_MAP_PRIMARY - ATTR_CEN_VPD_CDIMM_SENSOR_MAP_SECONDARY Change-Id: Idb20b53f1fe9d5a8fbdbef608fb3ab3faa64330b CQ:SW422858 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60473 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Debug improvements for exceptions and OOM hangsDan Crowell2018-06-152-3/+16
| | | | | | | | | | | | | | | | | There are two main changes in this commit: 1) Forcing an assert if we cannot allocate pages after 10,000 attempts to yield. 2) Adding a backtrace for a lot of exception paths. Change-Id: I755ada753b78abed56e553f7c669f0f98ae68700 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58224 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Fix for multinode HBRT use of VPDDan Crowell2018-06-101-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | Node0 VPD memory is being used for all nodes because we were using a Singleton pointer across modules. This is a problem because static memory is specific to each module which meant we were getting a new copy of the AttrRP object instead of the real version that had real data in it. The change here is to create a new static interface that external modules can call to retrieve the node associated with a given Target. There is also a change to cache this data into a map as I noticed hundreds of accesses during the one function call I was using to test with. Change-Id: I148bf1f405d076276193d526d8a4b1f0649b2c1c CQ: SW431462 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60276 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Itep16 substep order does not match documentationBrian Bakke2018-06-081-6/+6
| | | | | | | | | | | | | | | Documentation - 16.5 call_host_load_io_ppe; 16.6 call_host_ipl_complete; Implementation - 16.5 call_host_ipl_complete; 16.6 call_host_load_io_ppe Change-Id: I578d7b574dc1f54d903477d22e2a270453c3850b RTC:192626 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60131 Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Add clock callout enums for specific clock sourcesDan Crowell2018-06-071-0/+9
| | | | | | | | | | | | | | | | | | | | PRD running up in the host needs to be able to point at a specific clock source when detecting some errors. Since the Hostboot targeting model doesn't include the clock targets, we will use the existing clock callout pathway to do this. This change adds a few new constants that specific which clock has the issue instead of using the 'currently active' clock that we have now. Change-Id: I6441ba3d1a082134cf2ada37cefca4cba1781924 RTC: 190666 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59133 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Manish K. Chowdhary <manichow@in.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Fixes to node IPC messaging to handle non-zero base addressesBrian Bakke2018-06-076-6/+91
| | | | | | | | | | | | | | | | | | | | Current code has each Node calculate each Remote Node's IPC area remote address by performing a fixed format calculation. This change has each Node calculating its IPC area Remote address and posting this value to a local SCOM register. A Node reads a Remote Node's SCOM register to acquire the Remote IPC area address. Change-Id: I25260ce180e0d07e5e81990d4c1f99e249912491 RTC:191463 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59177 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* missing memory: istep 7 and 14 changesPrachi Gupta2018-06-063-2/+50
| | | | | | | | | | | | | | | | | | | | | There are two cases where hostboot's attention is required in istep7: - If HRMOR we booted with doesn't fall in the range of proc_mem_to_use's memory, then the SBE is old. HB will do an sbe update and request re-ipl - If HB deconfigured a bunch of dimms in istep7 and ran out of memory, then we will request a reconfig loop Then, in istep14, we added another sanity check to make sure we have memory as expected to prevent unexpected failure after exiting cache contained mode. Change-Id: I018f4ce862cc79b5d7bacbe01cc28d1d2b4fc788 CQ:SW430015 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59696 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Centaur Channel Checkstop (runtime)Rick Ward2018-06-053-9/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This story covers when a DMI channel gets checkstopped at runtime and how to service the subsequent SCOM operations that PRD requests to diagnose the issue. At runtime, PRD makes all of its SCOM requests to HBRT which passes them on to PHYP for in-band access. The checkstop blocks in-band access, so HBRT must fail-over to messaging the FSP to do FSI accesses. To reduce the number of SCOM calls to the FSP, HBRT makes a "multi-SCOM read" call for all the common SCOMs that PRD will request after a checkstop, and caches the results. Two new calls (MBOX, generic messaging interface) to the FSP were added in a previous commit to allow FSI SCOM operations through the FSP: - MSG_SINGLE_SCOM_OP - MSG_MULTI_SCOM_OP Also, a new map, chnlFailScomList, was added in a previous commit. chnlFailScomList contains a list of target types and associated SCOM addresses that PRD is likely want to read after a checkstop. PRD is responsible for maintaining the contents. Change-Id: I829a72067007ac8a61d80caa690d8eedee0f08cc RTC:189294 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59197 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Write Hostboot HRMOR into core scratch reg 1Dan Crowell2018-06-042-36/+29
| | | | | | | | | | | | | | | | | | | | | | | | Hostboot code will write the current HRMOR value into core scratch reg 1 (scom=xx010A87, spr=0x08) at initial boot. This data is ORed into the memory size data that was already present. The bootloader code will do the same. Also updated the debug tools to key off of this data if it is available to avoid any HRMOR hardcoding. The purpose of this change is to provide a method for the FSP code to handle various memory remapping scenarios that are currently in plan without needing any explicit communication from Hostboot. Change-Id: Ia3c81980ebd780ae182956cddae785dd408fbed9 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59699 Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Secure Boot: Defer init of Centaur SCOM cache register definitionsNick Bofferding2018-06-041-4/+6
| | | | | | | | | | | | | | Defer init of Centaur SCOM cache register definitions until after istep 10.2 Change-Id: Ifdf94d00d65b0dffe841a32698f1aec5a97f3fe6 RTC: 187288 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59615 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
* Refactor re-init of targeting data during MPIPL/HBRT startupChristian Geddes2018-06-024-9/+102
| | | | | | | | | | | | | | | | | | | | There are a couple of things we have to do to targets/attrs when we either transition from Hostboot->HBRT or from HBRT->Hostboot during an MPIPL. These include resetting all of the mutex attrs so they are in the unlocked state and updating the pointer which PEER_TARGET stores as a value to reflect the change in the memory mapping. For both of these tasks we need to loop through all of the targets.This refactor allows both these tasks to be done in the same loop. Change-Id: I23614bba11b2c9eabb97a7ddc7a53937f83dc131 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58316 Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add support for missing memory behind master procPrachi Gupta2018-06-022-8/+48
| | | | | | | | | | | | | | | | | | | On a phyp based system, when we detect that memory is missing behind master processor, we find a proc with memory and set ATTR_PROC_MEM_TO_USE to its HRMOR. This commit adds this support in hwas common code as HWSV will call this function, update SBE mbox registers, and IPL the system. Change-Id: I88a6cb69aa10147365c556f9cf31014066bd3d08 CQ:SW430015 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59159 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Add support for getting SBE Capabilites; extract SBE Version, Commit ID and TagsRoland Veloz2018-06-014-6/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Structure sbeCapabilities_t was added to the sbe_utils.H, a common file that can be shared among other files that need the sbeCapabilities_t struct. The psuCommand structure was updated, in file sbe_psudd.H, to facilitate the PSU call to get SBE Capabilities. Also structs fifoGetCapabilitiesResponse/ fifoGetCapabilitiesRequest were added to file sbe_fifodd to facilitate the FIFO call to get SBE Capabilities. Attributes SBE_COMMIT_ID, SBE_VERSION_INFO and SBE_RELEASE_TAGS were added to the target '<id>chip-processor</id>'. These attributes are the ultimate receiver of the SBE capabilities' version, commit id and release tags info. New file sbe_capabilities.C contains the call to getPsuSbeCapabilities and getFifoSbeCapabilities which ultimately perform the call to do the PSU chip operation, FIFO chip operation and update the attributes above. In step 6, host_discover_targets, and in step 8, call_proc_check_slave_sbe_seeprom_complete, is where the calls to getPsuSbeCapabilities and getFifoSbeCapabilities are made respectively. The file FipS_SBE_Interface_Specification_v1.3a.pdf (FIFO), file Host_SBE_Interface_Specification_v0.9d.pdf and looking at HW code were used to guide the coding of this. Change-Id: I32ccdeab7bf0a478298b199d42d74650a3f393f6 RTC:181139 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56317 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add Mutex and Error Recovery for Node CommunicationsMike Baiocchi2018-05-312-1/+2
| | | | | | | | | | | | | | | | | | | | This commit adds the attributes needed for a mutex XBUS and ABUS lock and then uses them in the Node Communications Device Driver. It also adds some additional error recovery to the Node Comm DD. Plus, it adds some additional SCOMs to the Read and Write Node Comm DD operations. Change-Id: I27b94f29a6e3c2e3e2ba98fec48cc000c39add47 RTC:191008 Depends-on:I19510888c0922e5bb857cffc9426399e79e113ba Depends-on:I11893af06b7a097b43106117d648e9a431c4f3ea Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59292 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Add some MAGIC instructions to aid Simics optimizationDan Crowell2018-05-301-8/+25
| | | | | | | | | | | | | | | | 8001 - Tell Simics we are waiting on the FSP 8006 - Tell Simics we shutdown 8020 - Tell Simics which istep we're running CQ: SW423959 Change-Id: Icea13d2ed7ff73de04400c46b9b1855e94db7c84 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58104 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Hieu C. Nguyen <hieu.nguyen@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Add test case for getChildTargetsForCDGAndrew Geissler2018-05-292-1/+24
| | | | | | | | | | | | | | | | Some changes are coming to the getChildTargetsForCDG interface in regards to how it returns DIMM information. Get a unit test in place for this function so the future changes can be verified. Change-Id: I731841598f35a169c6dfbbdd873c07dc37d27273 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59072 Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Increase default watchdog timeout to 10 minutesDan Crowell2018-05-291-2/+2
| | | | | | | | | | | | | | | | | | | We have discovered some error cases within the memory diagnostics step where a single hardware operation can take up to 6 minutes to complete. The code sends a watchdog ping before issuing any command, but the current timeout (2 minutes) is insufficient to handle these long commands. Resolves boston-openpower/#1240 Change-Id: I4e27a45c927c014b5fcc28d4510c5996a7009953 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59254 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Set Master Proc Attrs during MPIPL FSP Fail-Over ScenarioBill Hoffa2018-05-241-0/+18
| | | | | | | | | | | | | | | | | | | | - Need to account for a Service Processor Fail-Over scenario where the 'master' processor could change. Because of this, FW must re-evaluate which target pointer is the current master and update attributes accordingly. Change-Id: I83ada72389f05cc2a80d4c6a34db7d9ab3c2b3ce CQ: SW429022 RTC: 182718 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59221 Reviewed-by: Richard J. Knight <rjknight@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Clear Block Spec Deconfig Attribute when Gard is removedMarty Gloff2018-05-241-0/+12
| | | | | | | | | | | | | | | | | | | In the Resource Recovery redesign, the Block Spec Deconfig attribute gets set when a check for minimal hardware fails to find enough hardware, and it gets cleared when there is a hardware change. Now, the Block Spec Deconfig attribute will also be cleared when a target that had gard applied no longer has any gard records. Change-Id: I8f93ca4821b1360638a94855c0aadb3dda365046 CQ: SW429890 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59325 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Brian E. Bakke <bbakke@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Improve FFDC for new Node Comm Device DriverMike Baiocchi2018-05-241-0/+1
| | | | | | | | | | | | | | | | | This commit adds a new custom Node Comm Device Driver error log user details section and its parser code. It also adds a function to add the target and important HW registers to an error log. Change-Id: I11893af06b7a097b43106117d648e9a431c4f3ea RTC:191008 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59079 Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Establish Base Support For Sending Mailbox Messages Across XBUS/ABUSMike Baiocchi2018-05-244-1/+115
| | | | | | | | | | | | | | | | | | | | This commit establishes base support for Secure Node Communications. It creates a new device driver to operate the XBUS and ABUS Link Mailboxes and adds base support for using these device drivers to send and receive messages. It also adds a test to perform a 2-chip XBUS Link Mailbox operation. Change-Id: I19510888c0922e5bb857cffc9426399e79e113ba RTC:191008 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58376 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Support TPM PCR PoisoningJaymes Wilks2018-05-231-2/+25
| | | | | | | | | | | | | | | | | | | To support Fleetwood secure inter-node communication, we need to “poison” the PCRs of all still functional non-master node TPMs just prior to transferring control to PHyp, and report that poisoned state to HDAT. Change-Id: Ic104ef2e44fc98895b9b435fdf8ba4c5e4972818 RTC:191001 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58244 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add SMP_CABLE to PartCallout listDan Crowell2018-05-221-0/+1
| | | | | | | | | | | | | | | | | | | | The SMP_CABLE part callout will be used to indicate to the FSP that a SMP cable is at fault. The FSP code will do further analysis, possibly adding more FFDC to the error log or triggering recovery code. Change-Id: Ib7463e5e21c1a9aa75e6a6121e31d742293ef928 RTC: 180336 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/59132 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Reviewed-by: Srikantha S. Meesala <srikantha@in.ibm.com> Disable-CI: Srikantha S. Meesala <srikantha@in.ibm.com> Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add fix for HDAT Fail in Hostboot istep 21: BC8A1A20Richard J. Knight2018-05-221-3/+3
| | | | | | | | | | | | | | | | | | | -On a multi node Fleetwood system with node0 deconfigured the index into the hostboot reserved memory array for the master node exceeds the limit check due to an invalid calculation when nodes other than 0 become the master. The calculation was using the node id instead of the effective instance id. Change-Id: I55d991eda04452aa242fcccad07fede05d29eccb CQ:SW425720 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58113 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* FFDC enhancements for core activate failsDan Crowell2018-05-191-0/+3
| | | | | | | | | | | | | | Adding some more traces to the error log we grab for core activation failures. Change-Id: I30c6985060fcffcb3382b775a52e59c08d2b51b7 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57907 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Get SN from BMC and update into PVPD EEPROMMeng Li2018-05-192-2/+20
| | | | | | | | | | | | Resolves #135 Change-Id: I46b5c2208ed28822c6001a955f4056d976e79339 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58010 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add option to masterProcChipTargetHandle() to return functional chipMike Baiocchi2018-05-181-2/+15
| | | | | | | | | | | | | | | | | | | | | This commit adds an option to the two masterProcChipTargetHandle() functions to only look for and return a functional master proc chip as necessary with the issue in Defect SW424528. The default behavior of these functions - where the functionality is not checked - remains the same. Once use of these functions has also been updated to use this new option. Change-Id: I37049d2cb9299a9404b57d85031a364bdb257c82 CQ:SW424528 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58920 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Verify frequency attributes across nodes to match with that of master nodeSwathi Madhuri Bhattiprolu2018-05-164-0/+17
| | | | | | | | | | | | | | | | | | | | | -Existing code ensures consistency of frequency data across all modules in istep6.12. -In a multi-drawer config this data needs to be consistent across all drawers. -Master drawer sends the frequency data to all the other via IPC mechanism. -This data is compared and error is returned if there is a mismatch. Change-Id: Ia1daf1f0eeb90fbafb68417b979488b040efe535 RTC:158036 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57542 Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Improve resource recovery path to handle memory plugging rulesMarty Gloff2018-05-151-0/+10
| | | | | | | | | | | | | | | | | | | | | Resource recovery is a RAS feature wherein we do not apply certain gard records if those records would result in a boot fail due to a lack of hardware. Change the logic from applying speculative deconfiguration one by one to applying all predictive gard records and then removing those records if minimal hardware is not available. Also add BLOCK_SPEC_DECONFIG attribute to flag when speculative deconfiguration is not allowed. This flag is set if minimum hardware is not available and is cleared after a hardware change. Change-Id: Ia065de3a44ab29fbf33ad4ce98bc42ea5144463f RTC: 191414 CQ: SW424137 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58041 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Double frequency of coalescing memory fragmentationThi Tran2018-05-141-2/+2
| | | | | | | | | | | Change-Id: I146289bb2f36519fee5e1fb1dfc07aedf71a1a34 CQ:SW428001 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58704 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Force hb dump on VFS crashesDan Crowell2018-05-111-2/+8
| | | | | | | | | | | | | | | | Added flag to force a HB dump for most VFS crashes. Also added a few constants in the ErrlEntry constructor to make the bool args more obvious. Change-Id: I4f90ee694cece10f567df787f851dca78a895ad7 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57272 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Secure Boot: Inform FSP of key transition progressNick Bofferding2018-05-101-2/+21
| | | | | | | | | | | | | | | | | | | | | | | The existing key transition flow updates all SBE SEEPROMs within the system in the same boot, thereby quiescing all SBEs. This compromises the ability of FSP to detect a key transition TI at the end of the update process because the SBE is not alive to service FSP's incoming SBE FIFO request to read the memory holding the attention information. This change adds new support to log the key transition progress in a node target attribute introduced in an earlier commit and send that status to FSP via a new mailbox message. Change-Id: I828184ae8be89ac87137d7510a3c375cef2e05d7 CQ: SW418697 CMVC-Prereq: 1053806 CMVC-Prereq: 1053552 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56677 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add additional comparison function objects into functional headerAndre Marin2018-05-101-30/+108
| | | | | | | | | | Change-Id: I6314ec8582e1d9cc284adf877e115433e95a168e Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58217 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* New API to Retrieve Random Number from the TPMJaymes Wilks2018-05-102-2/+33
| | | | | | | | | | | | | | | | | A new programming interface allows us to obtain random numbers from the TPM more easily (i.e. in a more high-level way). Change-Id: Ibd3d3b320411bea146d6eab4d1a59ca760bc726c RTC:191000 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57802 Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Get Final HDAT Size from PAYLOAD's SPIRA sectionMike Baiocchi2018-05-082-1/+5
| | | | | | | | | | | | | | | | | This commit retrieves the amount of space the PAYLOAD has reserved for the HDAT content in its SPIRA section. It then uses this size when copying the HDAT from the temporary location (where the FSP put it with DMAs-via-TCEs) to its final location. Change-Id: I430a78a1655db85f448b3f5c30e6a83f5be4b1f6 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58261 Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Secure Boot: Implement Centaur SCOM cacheNick Bofferding2018-05-082-1/+406
| | | | | | | | | | | | | | | | | | | This change implements a Centaur SCOM cache for sensitive SCOM registers. The cache is initialized and enabled before the first Centaur SCOM, and disabled just prior to locking down the Centaur configuration. Once the Centaur has been locked down, the real register values are compared to the cache entries, and the Centaur is deconfigured (not garded) on any mismatch in assumptions. RTC: 187288 Change-Id: I7b13bfd7eb6b427aba115d6944958bf55e171008 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57532 Reviewed-by: ILYA SMIRNOV <ismirno@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* RTC189294 - Centaur Channel Checkstop (Runtime)Rick Ward2018-05-082-0/+43
| | | | | | | | | | | | | | | | | | | I think this is all that's required to define the SCOM interface to FSP. I used a single structure for request/response because I want to use the generic FSP messaging code, and it assumes that the request and response structs are the same (at least in size). Change-Id: I45d3678db1e265cc1ba5108ea6ffbbe9a15bc307 RTC:189294 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57807 Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Alpana Kumari <alpankum@in.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Implement Interrupt Resource Provider Init for MPIPL Multi-Node SystemsBill Hoffa2018-05-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - In MPIPL the HW interrupt config could be such that interrupts will cross node boundaries. HB handles interrupts independently on each node - so initialize INTRP in a way to handle this transition. - Modify the MPIPL flow with the following changes: a) Set the Interrupt LSI State Machine to disabled b) Enable LSI Mode via the Interrupt Control Register c) Force all nodes to sync after steps a + b - Enable INTRP Multi-Node MPIPL Sync Code developed in P8 - Each node will now initialize its own internode_info data area during an initial IPL - Coalescing of the Host will modify this data to define all the nodes in the system - During the MPIPL each node can view each others area to determine when all nodes have reached the common sync point - Remove Legacy P8 MPIPL INTRP Code that is not used Change-Id: Idb742eafc7389f328ea7f506c4c4541c989e52b6 RTC: 182712 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57993 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Richard J. Knight <rjknight@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
OpenPOWER on IntegriCloud