summaryrefslogtreecommitdiffstats
path: root/src/usr/mbox
Commit message (Collapse)AuthorAgeFilesLines
* Serialize all attribute synchronization callsNick Bofferding2018-10-171-2/+12
| | | | | | | | | | | | | | | Forces all FSP attribute synchronizations down to FSP to serialize in the attribute resource provider attribute synchronization daemon thread to avoid concurrenty problems. Change-Id: Ifb355ba6f42872465ea3d6f0d9009cfd6f768d7a CQ: SW448280 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/67450 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>
* Improve error traces for MBOX errorsChristian Geddes2018-10-161-2/+2
| | | | | | | | | | | | | | | | If an error flag is found to be set when reading a mbox msg we want to print out the error status register in addition to stating that an error occured. Change-Id: I56267880bf6d8ea3edc0bf1ff7bf25c1cf900361 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/67520 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: Dean Sanner <dsanner@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Shutdown: Move attribute sync to shutdown handlerNick Bofferding2018-10-011-2/+12
| | | | | | | | | | | | | | | Moved synching attributes into an attribute resource provider shutdown path to avoid race conditions along the shutdown path where a normal error path coupled with parallel shutdown leads to FSP attribute sync errors. Change-Id: Ibdb828f8132da1e251f880ef0e7d4fea2e4619a3 CQ: SW443737 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/66431 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>
* Additional tracing for shutdown eventsMatt Derksen2018-09-121-1/+2
| | | | | | | | | | | | | | | | | Hit an issue where a shutdown was called but all that is traced is a msgQ pointer. These traces should help associate the msgQ pointer to an actual task being shutdown. Change-Id: Ic22fdde1a146eec90f26d557e8af1ddec3c85c4e CQ:SW443508 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/65464 Reviewed-by: Christian R. Geddes <crgeddes@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: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Turn off core xstop escalalation on slave nodes prior payload handoffChristian Geddes2018-09-101-4/+10
| | | | | | | | | | | | | | | | | | | | | There was a bug in the code where we only were turning off core xstop escalation on the master node. This is because we were not using IPC to tell slave nodes they also need to do this. This commit re-adds the enableCoreCheckstop function to istep21 and adds it to part of the IPC_START_PAYLOAD message handler so this will happen prior to shutdown on all nodes. Change-Id: I0b601f379635107c851d6fc723b75a0ba21d1016 CQ: SW444801 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/65768 Reviewed-by: Dean Sanner <dsanner@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@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: Christian R. Geddes <crgeddes@us.ibm.com>
* Only unmask source on proc targ passed to unmask function in intrrpChristian Geddes2018-08-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | There was a bug in the code where if an interrupt was resolved for a source the code to clean up the pending interrupt in the intrrp will unmask the source. This was actually unmasking the source on all processors. This causes odd behavior if there was an outstanding int on that source on one of the other processors. Essentially the intrrp would think that a new interrupt came in but we will already be handling it. The logic breaks down here and we end up getting in a locked state. Fixing this caused issues with Hostboot management of the maskList which kept track of which sources were masked. Instead of managing this list of masked sources hostboot will instead keep track of sources which are not registered to any msg Qs. When new processors are added to the interrupt resource provider after fabric is up, all LSI sources who are not registered to a msg Q will be masked for the new processor. CQ: SW419101 Change-Id: I86f5bc2a748383e18b1853d9bf9480f265c214fd Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/63158 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: Dean Sanner <dsanner@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* SBE PSU timeout during MBOX init causes task crash/HB TIRick Ward2018-07-051-1/+1
| | | | | | | | | | | | | | | | | | | - Handling a PSU DD Timeout involves invoking the SBE Retry handler, which can cause crashes (FAPI library not yet initialized) if the timeout happens very early in the IPL. - Added a check if the FAPI Library was loaded, and added a call to handle the early timeout later in the IPL. Change-Id: I199cf0302af916b3f6ffec598ccab04c031e48e6 RTC:433868 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61730 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> Disable-CI: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Print out MBOX/INTR state info on DMA request hangChristian Geddes2018-07-054-7/+207
| | | | | | | | | | | | | | | | | | | | We have been stuck on a hang that occurs during memdiags on our multi-node p9 systems. It appears that Hostboot is never receiving the response to the request to reclaim DMA buffers from the FSP. From debugging we know the FSP thinks it has sent the message over the FSI mbox but hostboot isnt seeing it. Next time this happens if this is in the code we should be able to get a better idea of what is happening. Change-Id: I6b702e4094da3576ba454b5cdf0660841961baff Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60977 Reviewed-by: Richard Ward <rward15@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> Reviewed-by: Roland Veloz <rveloz@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Leverage INTRP fully for SBE PSU Interrupt HandlingBill Hoffa2018-06-281-2/+2
| | | | | | | | | | | | | | | | | | | | | - Remove PSU Handling from INTRP code and instead treat PSU interrupts like any other interrupt type - Add msg_handler to SBE PSU Code to handle interrupts - Add better interrupt handling to timeout path so the interrupt condition will be cleared instead of represented continuously - Handle shutdown message from INTRP Change-Id: I5eafea806e147c22be235ae1c54a5ce4706aa012 RTC: 149698 CQ: SW418168 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60049 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: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Save HRMOR in mbox scratch reg for IPC messagingPrachi Gupta2018-06-261-35/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to know where the IPC message of a given node is, we save off the HRMOR of every node in a hw register. Originally, we were saving this information in the core scratch register. Since, the core scratch registers are wiped off when the cores go into the winkle state, therefore, we were writing to the register after we come out of winkle. But, at that point, we ran into race conditions because other nodes could be ahead and try to access the register on a node that is not exactly out of winkle yet. This fixes the problems by using the mbox scratch register rather than the core scratch register because they are saved off even when the cores go into winkle state. Because the registers are preseved, we can set the value prior to cores coming out of winkle, so, we don't run into the race condition where one node is trying to read a value prior to the other one writing the value. Change-Id: I822bfc8defe09cbb418edc5f36a99b7cd41eec88 CQ:SW435271 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61093 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>
* Added in a sleep after we winkle in istep 18 to avoid race conditionsPrachi Gupta2018-06-201-0/+3
| | | | | | | | | | | | | | | | | | We are adding in a sleep to make sure that all the nodes are awake from the winkle prior to writing the HRMOR in the core scratch register for IPC to function properly. CQ:SW433411 Change-Id: I01eb6c1005047c4c6eebe5c15db083e6ec9df1e0 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60992 Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Disable-CI: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@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>
* Fixes to node IPC messaging to handle non-zero base addressesBrian Bakke2018-06-074-2/+164
| | | | | | | | | | | | | | | | | | | | 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>
* Verify frequency attributes across nodes to match with that of master nodeSwathi Madhuri Bhattiprolu2018-05-161-0/+84
| | | | | | | | | | | | | | | | | | | | | -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>
* Fix multinode Inst storage exception on runtime callDean Sanner2018-04-241-2/+3
| | | | | | | | | | | | Change-Id: I0d3e7c022d1a02e4d18242afa6140a26b66d822a Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57579 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: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Drain message queue prior to setting iv_disabled in mailboxspChristian Geddes2018-04-201-1/+6
| | | | | | | | | | | | | | | | | | Set iv_disabled after we have resumed the mbox interrupts so that the message queue can drain. If iv_disabled is true, resume() will not do anything and the mbox msg queue will not drain. This can cause us to hang in the shutdown path because we will never reach the quiesced state that we need to be in before initiating handleShutdown() Change-Id: Ibf1dc1d59a496d3b33fc9fca5080349d945c0169 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57439 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: Brian E. Bakke <bbakke@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Multinode SBE Window SupportJaymes Wilks2018-04-131-2/+4
| | | | | | | | | | | | | | | | | | | Code for SP ATTN, COMM, and SBE FFDC areas has been extended to all chips/nodes. The COMM area base address calculation is now updated to use the lowest addressable location for the master node. Change-Id: Ib02e62958a520c60e4bcc5bd9d4c4257893adbd9 RTC:189038 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56614 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@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>
* Ensure runtime lib is loaded for IPC_POPULATE_TPM_INFO_BY_NODEDean Sanner2018-04-121-6/+40
| | | | | | | | | | | | | | | | | | Need to load the runtime lib before making calls to it in IPC otherwise slave nodes will see segfault and boot "hang" Only impacts multinode systems Change-Id: I292096256a33c35b1ddb03a6adf540b6e171abe1 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57097 CI-Ready: Nicholas E. Bofferding <bofferdn@us.ibm.com> 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: 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>
* Revert "Verify frequency attributes across nodes"SWATHI M. BHATTIPROLU2018-04-091-76/+5
| | | | | | | | | | | | This reverts commit 571e1d84dfe50aaa674aa7e33abb75868b432d78. Change-Id: I8720246ef94be07ce0a37151b7209c8080320d59 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56933 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>
* Propagate TPM information into HDAT on non-master nodesJaymes Wilks2018-04-061-2/+30
| | | | | | | | | | | | | | | | | | | | | | | Extends HDAT population to add TPM data to all functional nodes - Added message sends from the master to each node - Each node updates # of instances, sizes of structures, etc. - Each node navigates to its appropriate offset in HDAT - HDAT now populates entries for all TPMs in the blueprint - Physical presence interaction mechanism is master-only obtained - TPM SRTM and DRTM logs are no longer interlaced between TPM info - Single node workaround reverted Change-Id: Ic77cbeb7ba3d35a9f02ba68525ed79f27159e9bf RTC:167290 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/55283 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: ILYA SMIRNOV <ismirno@us.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Verify frequency attributes across nodesSwathi Madhuri Bhattiprolu2018-04-052-5/+80
| | | | | | | | | | | | | | | | | | | | | | | -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: I922d32456c9d3c4e53dae528f088dbb013c3ded9 RTC:158036 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/54825 CI-Ready: SWATHI M. BHATTIPROLU <bhmadhur@in.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Richard Ward <rward15@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>
* Close and Disable TCEs on Non-Master NodesMike Baiocchi2018-03-291-2/+70
| | | | | | | | | | | | | | | | | | During istep21.1 this commit sends a message to all non-Master nodes to close and disable their TCEs using the ipc mailbox interface to the FSP. Change-Id: I5575228c9f237025a48e0aeca23e741724ec7886 RTC:187335 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56269 CI-Ready: 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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: ILYA SMIRNOV <ismirno@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 sending chip info to SBEs on multinodeDean Sanner2018-02-281-1/+90
| | | | | | | | | | | | | | | | | | | | Existing code didn't support collecting the present chips on all nodes (Hostboot instances) and updating all SBEs with a system wide view. For non multi drawer configs it will just update based on HB instance view. For multi drawer configs the other hostboot instances will be queried for their configs, aggregated, and then informed of the system wide view via IPC commnuication. Change-Id: I45c5673df26f940de212cbe2b54525e32c9147ab Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/53603 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: Dean Sanner <dsanner@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Re-order INTR/IPC shutdown message handlingBill Hoffa2018-02-141-7/+4
| | | | | | | | | | | | | | | | | - The mbox msg_handler already subscribes to the INITSERVICE shutdown message so perform the IPC shutdown logic during that Change-Id: I2402e6ac17212051029de3474e24b8e91dce9544 CQ: SW417278 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/53984 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> 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: Dean Sanner <dsanner@us.ibm.com>
* Fixes for multinode istep 21.1Dean Sanner2018-02-061-18/+36
| | | | | | | | | | | | | | | -Reordered start_payload to ensure that common things like disabling special wakeup, closing down SBE windows, core xstop, and clearing PM bars are executed as part of our shutdown path -Due to above, needed to correct shared libs loaded on non master HB instance -Added back in the P8 code to pass the payload base to slave HB Instances on populate attr IPC message Change-Id: I5371b9daf7a4e1aadd1743badcd4219604a38ce7 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/53343 Tested-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Enable multi-drawer hdat constructionRichard J. Knight2018-02-061-5/+3
| | | | | | | | | | | | | | | | | | | | | -Enable IPC message to drawers to populate hdat -Update HDAT HB reserved memory pointer allocation to be based on the number of drawers in the system -Modify reserved memory pointer allocator to allow drawer specific range of reserved memory pointers -Duplicate data in hdat will be resolved with a follow on commit. Change-Id: I8093a0aac36fbd3d6642db6a1595caa020fd6e78 RTC:186290 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/52655 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@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: William G. Hoffa <wghoffa@us.ibm.com>
* Handle INTRP SHUT_DOWN message in MBOX IPC msg_hdlrBill Hoffa2018-02-061-45/+60
| | | | | | | | | | | | | | | | | - Messages sent to MBOX during INTRP shutdown causing IPC Invalid Message Data Errorlogs - Improve Inadvertent IPC Message Handling FFDC Change-Id: Idccad59664e7c95bf8a8618646a13b28c71b4ac7 CQ: SW415386 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/52981 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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Multi-Drawer (IPC) Interrupt/Messaging SupportBill Hoffa2018-01-253-69/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | - Use doorbells instead of IPIs (no IPI support using LSI interupts in the XIVE intr architecture) - New message type from kernel to userspace so the kernel can notify the HB userspace Interrupt Resource Provider (INTRP) that an IPC message was sent to the particular HB instance (in P8 this happened automatically as that was part of the IPI architecture). - Re-enable testcase that validates that an IPC message can be successfully sent. Change-Id: Ic846f8dca45217205ed61d8381a573e995cb16f2 RTC: 150861 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/52004 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: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Add mutex to protect queue from SMP effects.Brian Bakke2017-10-194-4/+35
| | | | | | | | | | | | | | | | The MailboxSp sendQ was not SMP safe. The MailboxSp msqQ and response Q are SMP safe. Change-Id: I4e6deac6592b72fcae4653eee60ea3f07f6568db CQ: SW405184 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48570 Tested-by: Jenkins Server <pfd-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> 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>
* Enable mbox test casesChristian Geddes2017-10-101-60/+61
| | | | | | | | | | | Change-Id: I22f80858539438871d33b06be505854149d267a0 RTC: 179069 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46699 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 message tracking variable increment that disappeared.Brian Bakke2017-10-061-0/+14
| | | | | | | | | | | | | | | | | message tracking variables count the number of Reclaim Buffer messages sent and the number of responses received. This is used to pace the message sends to avoid runaway. Change-Id: I61d0c86c445cd23111b8f0905cd3d770fd8e009c CQ: SW403683 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/47071 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: 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: Daniel M. Crowell <dcrowell@us.ibm.com>
* Send "recollect dma buffers" message in TI pathBrian Bakke2017-09-194-36/+248
| | | | | | | | | | | | | | Change-Id: Ice352f333cc3cfca7393b335414958612834b3c8 RTC:170428 CQ:SW359697 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/44706 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>
* Secureboot: Add IPL calls to Open/Close Memory Regions via SBEMike Baiocchi2017-07-191-1/+12
| | | | | | | | | | | | | | | | | | | This commit adds the open/close SBE memory region calls throughout the IPL, as needed. The underlying SBE calls are still commented out, however, as we await SBE support. Change-Id: I87685dca95e5cb7d10997eb6eb414a1927862d64 RTC:145686 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42873 Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@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: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* P9 PSIHB Base Interrupt SupportBill Hoffa2016-03-301-60/+16
| | | | | | | | | | | | | | | | | | | This change includes the following: - Kernel Updates to handle hypervisor interrupt vector - Interrupt Resource Provider changes to setup and handle LSI Based interrupts - Kernel updates to handle modified interrupt flow for LSI Based interrupts - Attribute updates for Scom BAR Registers Change-Id: If63f246a0090ab8c81c3fa8ac3ab6871a0af2e31 RTC:137561 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/20692 Tested-by: Jenkins Server Tested-by: FSP CI Jenkins Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Update constants and comments for P9 PIR formatDan Crowell2016-02-291-3/+4
| | | | | | | | | | | | | | | Implemented a set of macros and constants that can be used everywhere to translate a PIR into its component parts and pull out individual pieces of data from a complete PIR. Also added and updated the references to the old ATTR_FABRIC_NODE_ID with ATTR_FABRIC_GROUP_ID. Change-Id: If9735f53940e5849a648729e4bf8ca0cfbb09f6e RTC: 88055 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/706 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Handle mbox shutdown correctly when using pollingDean Sanner2015-12-111-2/+5
| | | | | | | Change-Id: Ic185d76c5bb1dde47a3123392cfd2f9331d68e3e Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22699 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Remove "secure" memory need for DMA Buffercrgeddes2015-12-112-47/+5
| | | | | | | | | Change-Id: If2e5511a8cdfeb29f261c4e76e0d52f52ad7226b Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22013 Reviewed-by: PRACHI GUPTA <pragupta@us.ibm.com> Tested-by: Jenkins Server Reviewed-by: WILLIAM G. HOFFA <wghoffa@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Enable mailbox polling until P9 Interrupts are availableDean Sanner2015-12-112-1/+65
| | | | | | | | | Change-Id: I57f85e9ea31f6176aa93a2041d8bda3a1bd8f5d7 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22020 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: WILLIAM G. HOFFA <wghoffa@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Remove all compile dependencies on old fapiPrachi Gupta2015-12-111-3/+4
| | | | | | | Change-Id: Ia1633645fe2b294fecd15a8ede67983b86d3549c Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/22283 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* P9 Isteps: Created directory structure for istep 21 wrappersPrachi Gupta2015-12-111-3/+3
| | | | | | | | | Change-Id: Ie9760711a21d3965579e7f6f4854839b8e474e54 RTC:137652 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/21503 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Establish a working P9 Hostboot and Simics baseDean Sanner2015-12-112-3/+6
| | | | | | | | | | | | | | | Includes changes for nimbus.por Making recent Simics usable by Hostboot Removing portions of code not yet ready Basic LPC read/write Change-Id: Ic40a9613934fab7bb6a28a8100685496246bb5ea RTC:132170 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/21931 Tested-by: Jenkins Server Reviewed-by: WILLIAM G. HOFFA <wghoffa@us.ibm.com> Reviewed-by: Christian Geddes <crgeddes@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Avoid deadlock in cross-node IPC messagingDan Crowell2015-06-082-9/+21
| | | | | | | | | | | | | | | | | Move poll for empty queue out of kernel space to allow for the primary thread to see new interrupts and clear out incoming messages. This will prevent 2 nodes from deadlocking one another while they wait for each other to handle the last message that was sent to them. Change-Id: Icbe4e0f621661a37c704b4ac4cdf111664b2039d CQ: SW298667 Backport: release-fips820 Backport: release-fips830 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/17788 Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Prevent out-of-order data access to FSP mailbox memory areaNick Bofferding2015-04-091-2/+4
| | | | | | | | | | | | | | | | | | - Added system call to map FSP mailbox memory with guard permission - Call new mapping in DMA area init - Propagate guard permission down to MMIO map - Apply guard permission in page fault handler - Updated debug tools to support extra bit in MMIO struct Change-Id: I8335ac7d3ef57e46d4c8b6c2b2a42b8a0bf7c4b0 Backport: release-fips830 Backport: release-fips820 CQ: SW295345 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/16307 Tested-by: Jenkins Server Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* P8+ VPO - HB supports to istep 7 for NVLINK testThi Tran2015-01-162-3/+6
| | | | | | | | | | Change-Id: I79ec79e1601ae51bf759b80a07c5b4cf2d97fc5c RTC: 95236 Depends-On: I19823ac32a963d7072d21140b828c30ab326a19f Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/14468 Tested-by: Jenkins Server Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Fix spelling mistakes using codespell.Patrick Williams2015-01-153-10/+12
| | | | | | | | | | | | - See https://github.com/lucasdemarchi/codespell Change-Id: I03e102d1ebb9473b6226fa9b6edb684fa0218a2f Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/15031 Tested-by: Jenkins Server Reviewed-by: STEPHEN M. CPREK <smcprek@us.ibm.com> Reviewed-by: Zane Shelley <zshelle@us.ibm.com> Reviewed-by: Brian Silver <bsilver@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Stop IPLing in IpcSp::messageHandler if there is an errorPrachi Gupta2014-09-261-2/+11
| | | | | | | | | | | CQ: SW278972 Backport: release-fips820 Change-Id: I1c93de796b9ae953b7060b6efdb33c7dea10554b Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13526 Tested-by: Jenkins Server Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Reviewed-by: STEPHEN M. CPREK <smcprek@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Workaround SBE interupt injection bug on multi-nodeDean Sanner2014-09-114-17/+79
| | | | | | | | | | | Change-Id: Ib17ae25542100c88fd5e85add362876582ea4449 CQ: SW274682 Backport: release-fips820 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13224 Tested-by: Jenkins Server Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Use non blocking messages in intRP to prevent trace deadlockDean Sanner2014-09-111-9/+5
| | | | | | | | | | | Change-Id: I14cd978a7a102f75e4829d5daa369946e766e874 CQ: SW274049 Backport: release-fips820 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13025 Tested-by: Jenkins Server Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Throttle mailbox operations to avoid out-of-memory conditionDoug Gilbert2014-08-122-18/+210
| | | | | | | | | | Change-Id: I18f13ec742efe196e6a2bc3714051e2489567158 RTC: 102852 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/11586 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Clean handling of shutdown path in error casesDoug Gilbert2014-07-072-9/+48
| | | | | | | | | | | Change-Id: Id03c0f2fc91a31b05572222a2a2743db1518198c RTC: 109993 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/11636 Tested-by: Jenkins Server Reviewed-by: Michael Baiocchi <baiocchi@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
* Merge HWAS commits from StradaleBill Schwartz2014-06-302-1/+17
| | | | | | | | | | | | These changes are to reduce the amount of trace entries, disable garding, and to print the model type. Change-Id: Iff1cd4995367c7bfad621f41a36e0080007ec6ef RTC: 97496 Origin: Google Shared Technology Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/11172 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
OpenPOWER on IntegriCloud