summaryrefslogtreecommitdiffstats
path: root/import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h
diff options
context:
space:
mode:
authorChristopher M. Riedl <cmriedl@us.ibm.com>2017-04-12 09:35:32 -0500
committerJoshua Hunsberger <jahunsbe@us.ibm.com>2017-10-23 17:30:48 -0500
commit849710ebc56c667778a74a354681ad2a7fb9c92f (patch)
tree5c87d63208d40f109c2f94cc8dd9e7f357b55c7d /import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h
parent03e5a6f2151e689fa484f5e8964797e6b5b203f4 (diff)
downloadtalos-hcode-849710ebc56c667778a74a354681ad2a7fb9c92f.tar.gz
talos-hcode-849710ebc56c667778a74a354681ad2a7fb9c92f.zip
Pstate: Resonant Clocking Enablement - CME Hcode
- implement p9_cme_resclk_control and p9_cme_resclk_update - initialize resclk datastructures during init - add handler for comm_recvd (intercme msg interrupt) and corresponding irq priority (10) - update p9_cme_qm_flags.h to match header definition (uint16_t) and fix duplicate flag definition - add intercme msg functions and packet definition Change-Id: I3509892ec90b5a2135f7419f4c78209ac24e4e06 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39353 Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com> Reviewed-by: AMIT KUMAR <akumar3@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Diffstat (limited to 'import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h')
-rw-r--r--import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h b/import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h
index f99653e8..2eef1960 100644
--- a/import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h
+++ b/import/chips/p9/procedures/ppe_closed/cme/p9_cme_irq.h
@@ -58,10 +58,11 @@
#define IDX_PRTY_LVL_DB0 8
#define IDX_PRTY_LVL_INTERCME_IN0 9
#define IDX_PRTY_LVL_PMCR 10
-#define IDX_PRTY_LVL_DISABLED 11
+#define IDX_PRTY_LVL_COMM_RECVD 11
+#define IDX_PRTY_LVL_DISABLED 12
#define IDX_PRTY_VEC 0
#define IDX_MASK_VEC 1
-#define NUM_EXT_IRQ_PRTY_LEVELS (uint8_t)(12)
+#define NUM_EXT_IRQ_PRTY_LEVELS 13
extern const uint64_t ext_irq_vectors_cme[NUM_EXT_IRQ_PRTY_LEVELS][2];
// Group0: Non-task hi-prty IRQs
@@ -86,8 +87,10 @@ extern const uint64_t ext_irq_vectors_cme[NUM_EXT_IRQ_PRTY_LEVELS][2];
#define IRQ_VEC_PRTY9_CME (uint64_t)(0x0100000000000000)
// Group10: PMCR
#define IRQ_VEC_PRTY10_CME (uint64_t)(0x0000000030000000)
-// Group11: We should never detect these
-#define IRQ_VEC_PRTY11_CME (uint64_t)(0x00C003FFC33FFFFF)
+// Group11: COMM_RECVD
+#define IRQ_VEC_PRTY11_CME (uint64_t)(0x0000000400000000)
+// Group12: We should never detect these
+#define IRQ_VEC_PRTY12_CME (uint64_t)(0x00C003FBC33FFFFF)
// This should be 0xFFFFFFFFFFFFFFFF
#define IRQ_VEC_PRTY_CHECK ( IRQ_VEC_PRTY0_CME | \
@@ -101,7 +104,8 @@ extern const uint64_t ext_irq_vectors_cme[NUM_EXT_IRQ_PRTY_LEVELS][2];
IRQ_VEC_PRTY8_CME | \
IRQ_VEC_PRTY9_CME | \
IRQ_VEC_PRTY10_CME | \
- IRQ_VEC_PRTY11_CME )
+ IRQ_VEC_PRTY11_CME | \
+ IRQ_VEC_PRTY12_CME )
extern uint8_t g_current_prty_level;
extern uint8_t g_eimr_stack[NUM_EXT_IRQ_PRTY_LEVELS];
OpenPOWER on IntegriCloud