|
@@ -449,3 +449,110 @@ do { \
|
|
|
/* Watchpoint Instruction Address Register 5 */
|
|
|
#define WPIA5 0xFFE07054
|
|
|
/* Watchpoint Instruction Address Count Register 0 */
|
|
|
+#define WPIACNT0 0xFFE07080
|
|
|
+/* Watchpoint Instruction Address Count Register 1 */
|
|
|
+#define WPIACNT1 0xFFE07084
|
|
|
+/* Watchpoint Instruction Address Count Register 2 */
|
|
|
+#define WPIACNT2 0xFFE07088
|
|
|
+/* Watchpoint Instruction Address Count Register 3 */
|
|
|
+#define WPIACNT3 0xFFE0708C
|
|
|
+/* Watchpoint Instruction Address Count Register 4 */
|
|
|
+#define WPIACNT4 0xFFE07090
|
|
|
+/* Watchpoint Instruction Address Count Register 5 */
|
|
|
+#define WPIACNT5 0xFFE07094
|
|
|
+/* Watchpoint Data Address Control Register */
|
|
|
+#define WPDACTL 0xFFE07100
|
|
|
+/* Watchpoint Data Address Register 0 */
|
|
|
+#define WPDA0 0xFFE07140
|
|
|
+/* Watchpoint Data Address Register 1 */
|
|
|
+#define WPDA1 0xFFE07144
|
|
|
+/* Watchpoint Data Address Count Value Register 0 */
|
|
|
+#define WPDACNT0 0xFFE07180
|
|
|
+/* Watchpoint Data Address Count Value Register 1 */
|
|
|
+#define WPDACNT1 0xFFE07184
|
|
|
+/* Watchpoint Status Register */
|
|
|
+#define WPSTAT 0xFFE07200
|
|
|
+
|
|
|
+/* Performance Monitor Registers (0xFFE08000 - 0xFFE08104) */
|
|
|
+
|
|
|
+/* Performance Monitor Control Register */
|
|
|
+#define PFCTL 0xFFE08000
|
|
|
+/* Performance Monitor Counter Register 0 */
|
|
|
+#define PFCNTR0 0xFFE08100
|
|
|
+/* Performance Monitor Counter Register 1 */
|
|
|
+#define PFCNTR1 0xFFE08104
|
|
|
+
|
|
|
+/****************************************************
|
|
|
+ * Core MMR Register Bits
|
|
|
+ ****************************************************/
|
|
|
+
|
|
|
+/**************************************************
|
|
|
+ * EVT registers (ILAT, IMASK, and IPEND).
|
|
|
+ **************************************************/
|
|
|
+
|
|
|
+/* Bit Positions */
|
|
|
+#define EVT_EMU_P 0x00000000 /* Emulator interrupt bit position */
|
|
|
+#define EVT_RST_P 0x00000001 /* Reset interrupt bit position */
|
|
|
+#define EVT_NMI_P 0x00000002 /* Non Maskable interrupt bit position */
|
|
|
+#define EVT_EVX_P 0x00000003 /* Exception bit position */
|
|
|
+#define EVT_IRPTEN_P 0x00000004 /* Global interrupt enable bit position */
|
|
|
+#define EVT_IVHW_P 0x00000005 /* Hardware Error interrupt bit position */
|
|
|
+#define EVT_IVTMR_P 0x00000006 /* Timer interrupt bit position */
|
|
|
+#define EVT_IVG7_P 0x00000007 /* IVG7 interrupt bit position */
|
|
|
+#define EVT_IVG8_P 0x00000008 /* IVG8 interrupt bit position */
|
|
|
+#define EVT_IVG9_P 0x00000009 /* IVG9 interrupt bit position */
|
|
|
+#define EVT_IVG10_P 0x0000000a /* IVG10 interrupt bit position */
|
|
|
+#define EVT_IVG11_P 0x0000000b /* IVG11 interrupt bit position */
|
|
|
+#define EVT_IVG12_P 0x0000000c /* IVG12 interrupt bit position */
|
|
|
+#define EVT_IVG13_P 0x0000000d /* IVG13 interrupt bit position */
|
|
|
+#define EVT_IVG14_P 0x0000000e /* IVG14 interrupt bit position */
|
|
|
+#define EVT_IVG15_P 0x0000000f /* IVG15 interrupt bit position */
|
|
|
+
|
|
|
+/* Masks */
|
|
|
+#define EVT_EMU MK_BMSK_(EVT_EMU_P ) /* Emulator interrupt mask */
|
|
|
+#define EVT_RST MK_BMSK_(EVT_RST_P ) /* Reset interrupt mask */
|
|
|
+#define EVT_NMI MK_BMSK_(EVT_NMI_P ) /* Non Maskable interrupt mask */
|
|
|
+#define EVT_EVX MK_BMSK_(EVT_EVX_P ) /* Exception mask */
|
|
|
+#define EVT_IRPTEN MK_BMSK_(EVT_IRPTEN_P) /* Global interrupt enable mask */
|
|
|
+#define EVT_IVHW MK_BMSK_(EVT_IVHW_P ) /* Hardware Error interrupt mask */
|
|
|
+#define EVT_IVTMR MK_BMSK_(EVT_IVTMR_P ) /* Timer interrupt mask */
|
|
|
+#define EVT_IVG7 MK_BMSK_(EVT_IVG7_P ) /* IVG7 interrupt mask */
|
|
|
+#define EVT_IVG8 MK_BMSK_(EVT_IVG8_P ) /* IVG8 interrupt mask */
|
|
|
+#define EVT_IVG9 MK_BMSK_(EVT_IVG9_P ) /* IVG9 interrupt mask */
|
|
|
+#define EVT_IVG10 MK_BMSK_(EVT_IVG10_P ) /* IVG10 interrupt mask */
|
|
|
+#define EVT_IVG11 MK_BMSK_(EVT_IVG11_P ) /* IVG11 interrupt mask */
|
|
|
+#define EVT_IVG12 MK_BMSK_(EVT_IVG12_P ) /* IVG12 interrupt mask */
|
|
|
+#define EVT_IVG13 MK_BMSK_(EVT_IVG13_P ) /* IVG13 interrupt mask */
|
|
|
+#define EVT_IVG14 MK_BMSK_(EVT_IVG14_P ) /* IVG14 interrupt mask */
|
|
|
+#define EVT_IVG15 MK_BMSK_(EVT_IVG15_P ) /* IVG15 interrupt mask */
|
|
|
+
|
|
|
+/**************************************************
|
|
|
+ * DMEM_CONTROL Register
|
|
|
+ **************************************************/
|
|
|
+/* Bit Positions */
|
|
|
+#define ENDM_P 0x00 /* (doesn't really exist) Enable
|
|
|
+ *Data Memory L1
|
|
|
+ */
|
|
|
+#define DMCTL_ENDM_P ENDM_P /* "" (older define) */
|
|
|
+
|
|
|
+#define ENDCPLB_P 0x01 /* Enable DCPLBS */
|
|
|
+#define DMCTL_ENDCPLB_P ENDCPLB_P /* "" (older define) */
|
|
|
+#define DMC0_P 0x02 /* L1 Data Memory Configure bit 0 */
|
|
|
+#define DMCTL_DMC0_P DMC0_P /* "" (older define) */
|
|
|
+#define DMC1_P 0x03 /* L1 Data Memory Configure bit 1 */
|
|
|
+#define DMCTL_DMC1_P DMC1_P /* "" (older define) */
|
|
|
+#define DCBS_P 0x04 /* L1 Data Cache Bank Select */
|
|
|
+#define PORT_PREF0_P 0x12 /* DAG0 Port Preference */
|
|
|
+#define PORT_PREF1_P 0x13 /* DAG1 Port Preference */
|
|
|
+
|
|
|
+/* Masks */
|
|
|
+#define ENDM 0x00000001 /* (doesn't really exist) Enable
|
|
|
+ * Data Memory L1
|
|
|
+ */
|
|
|
+#define ENDCPLB 0x00000002 /* Enable DCPLB */
|
|
|
+#define ASRAM_BSRAM 0x00000000
|
|
|
+#define ACACHE_BSRAM 0x00000008
|
|
|
+#define ACACHE_BCACHE 0x0000000C
|
|
|
+#define DCBS 0x00000010 /* L1 Data Cache Bank Select */
|
|
|
+#define PORT_PREF0 0x00001000 /* DAG0 Port Preference */
|
|
|
+#define PORT_PREF1 0x00002000 /* DAG1 Port Preference */
|