diff options
author | Bill Hoffa <wghoffa@us.ibm.com> | 2018-01-09 08:16:44 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-01-25 17:44:20 -0500 |
commit | cb444552aebafa54ceb0417c12d61cd48fbc65e0 (patch) | |
tree | 0668b3062d19ceea3cf3ca626a5a5fcbda1acd1d /src/include/usr/intr/intr_reasoncodes.H | |
parent | de1c2d1d9e39215b8c7012a0dbfde029de6bec2d (diff) | |
download | talos-hostboot-cb444552aebafa54ceb0417c12d61cd48fbc65e0.tar.gz talos-hostboot-cb444552aebafa54ceb0417c12d61cd48fbc65e0.zip |
Multi-Drawer (IPC) Interrupt/Messaging Support
- 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>
Diffstat (limited to 'src/include/usr/intr/intr_reasoncodes.H')
-rw-r--r-- | src/include/usr/intr/intr_reasoncodes.H | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/include/usr/intr/intr_reasoncodes.H b/src/include/usr/intr/intr_reasoncodes.H index 4101e2380..62d8ad87a 100644 --- a/src/include/usr/intr/intr_reasoncodes.H +++ b/src/include/usr/intr/intr_reasoncodes.H @@ -35,7 +35,6 @@ namespace INTR MOD_INTR_ENABLE = 0x01, /**< intrrp.C : INTR::enableExternalInterrupts */ MOD_INTR_DISABLE = 0x02, /**< intrrp.C : INTR::disableExternalInterrupts */ MOD_INTR_REGISTER = 0x03, /**< intrrp.C : INTR::registerMsgQ */ - MOD_INTRRP_CHECKADDRESS = 0x04, /**< intrrp.C : IntrRp::checkAddress */ MOD_INTRRP_REGISTERINTERRUPT = 0x05, /**< intrrp.C : IntrRp::registerInterrupt */ MOD_INTR_ENABLE_PSI_INTR = 0x06, /**< intrrp.C : INTR::enablePsiIntr */ MOD_INTR_INIT_XIVR = 0x07, /**< intrrp.C : INTR::initXIVR */ @@ -50,6 +49,7 @@ namespace INTR MOD_INTRRP_HNDLPSUINTERRUPT = 0x10, /**< intrrp.C : INTR::handlePsuInterrupt */ MOD_INTRRP_RESETINTUNIT = 0x11, /**< intrrp.C : IntrRp::resetIntUnit */ MOD_INTRRP_XIVE_SENDEOI = 0x12, + MOD_INTRRP_IPC = 0x13, }; enum IntrReasonCode @@ -67,6 +67,7 @@ namespace INTR RC_PSU_DOORBELL_TIMEOUT = INTR_COMP_ID | 0x0A, RC_XIVE_PBUS_QUIESCE_TIMEOUT = INTR_COMP_ID | 0x0B, RC_MESSAGE_SEND_ERROR = INTR_COMP_ID | 0x0C, + RC_IPC_DATA_INVALID = INTR_COMP_ID | 0x0D, }; }; |