diff options
Diffstat (limited to 'import/chips/p9/common/pmlib/include/stop_sgpe_cme_api.h')
-rw-r--r-- | import/chips/p9/common/pmlib/include/stop_sgpe_cme_api.h | 38 |
1 files changed, 27 insertions, 11 deletions
diff --git a/import/chips/p9/common/pmlib/include/stop_sgpe_cme_api.h b/import/chips/p9/common/pmlib/include/stop_sgpe_cme_api.h index 6924b5fb..40a44ad8 100644 --- a/import/chips/p9/common/pmlib/include/stop_sgpe_cme_api.h +++ b/import/chips/p9/common/pmlib/include/stop_sgpe_cme_api.h @@ -41,11 +41,12 @@ enum SGPE_STOP_IRQ_PAYLOAD_MASKS // 0110 reserved TYPE2_PAYLOAD_DECREMENTER_WAKEUP = 0x700, // 0111 - TYPE2_PAYLOAD_SUSPEND_OP_MASK = 0x400, + // These bit1-4 is aligned with the bit0-3 of DB1 below + TYPE2_PAYLOAD_SUSPEND_ACTION_MASK = 0x400, TYPE2_PAYLOAD_SUSPEND_EXIT_MASK = 0x200, TYPE2_PAYLOAD_SUSPEND_ENTRY_MASK = 0x100, - TYPE2_PAYLOAD_SUSPEND_BOTH_MASK = 0x300, - TYPE2_PAYLOAD_SUSPEND_ACK_MASK = 0x080, + TYPE2_PAYLOAD_SUSPEND_SELECT_MASK = 0x080, + TYPE2_PAYLOAD_SUSPEND_ACK_MASK = 0x040, TYPE5_PAYLOAD_CME_ERROR = 0x3FF, TYPE6_PAYLOAD_EXIT_EVENT = 0x00F @@ -63,14 +64,29 @@ enum CME_STOP_PIG_TYPES /// Numberical Doorbell Message IDs(used by CME check) enum CME_DOORBELL_MESSAGE_IDS { - MSGID_DB1_UNSUSPEND_STOP_ENTRIES = 0x01, - MSGID_DB1_UNSUSPEND_STOP_EXITS = 0x02, - MSGID_DB1_UNSUSPEND_STOP_ENTRIES_EXITS = 0x03, - // 0x04 Illegal - MSGID_DB1_SUSPEND_STOP_ENTRIES = 0x05, - MSGID_DB1_SUSPEND_STOP_EXITS = 0x06, - MSGID_DB1_SUSPEND_STOP_ENTRIES_EXITS = 0x07, - MSGID_DB1_WAKEUP_GRANTED = 0x08, + // Bit0:Suspend(1)/Unsuspend(0) | Bit1:Exit | Bit2:Entry | Bit3:Suspend(1)/Block(0) + + // Illegal as Unblock without Entry/Exit 00, // 0000 + MSGID_DB1_UNBLOCK_STOP_ENTRIES = 0x02, // 0010 + MSGID_DB1_UNBLOCK_STOP_EXITS = 0x04, // 0100 + MSGID_DB1_UNBLOCK_STOP_ENTRIES_EXITS = 0x06, // 0110 + + // Illegal as Block without Entry/Exit 08, // 1000 + MSGID_DB1_BLOCK_STOP_ENTRIES = 0x0A, // 1010 + MSGID_DB1_BLOCK_STOP_EXITS = 0x0C, // 1100 + MSGID_DB1_BLOCK_STOP_ENTRIES_EXITS = 0x0E, // 1110 + + // Illegal as Unsuspend without Entry/Exit 01, // 0001 + MSGID_DB1_UNSUSPEND_STOP_ENTRIES = 0x03, // 0011 + MSGID_DB1_UNSUSPEND_STOP_EXITS = 0x05, // 0101 + MSGID_DB1_UNSUSPEND_STOP_ENTRIES_EXITS = 0x07, // 0111 + + // Illegal as Suspend without Entry/Exit 09, // 1001 + MSGID_DB1_SUSPEND_STOP_ENTRIES = 0x0B, // 1011 + MSGID_DB1_SUSPEND_STOP_EXITS = 0x0D, // 1101 + MSGID_DB1_SUSPEND_STOP_ENTRIES_EXITS = 0x0F, // 1111 + + MSGID_DB1_WAKEUP_GRANTED = 0x10, MSGID_DB2_DECREMENTER_WAKEUP = 0x01, MSGID_DB2_RESONANT_CLOCK_DISABLE = 0x02, |