|
@@ -0,0 +1,53 @@
|
|
|
+/*
|
|
|
+ * Header file for Freescale MPC52xx Interrupt controller
|
|
|
+ *
|
|
|
+ * Copyright (C) 2004-2005 Sylvain Munaut <tnt@246tNt.com>
|
|
|
+ * Copyright (C) 2003 MontaVista, Software, Inc.
|
|
|
+ *
|
|
|
+ * This file is licensed under the terms of the GNU General Public License
|
|
|
+ * version 2. This program is licensed "as is" without any warranty of any
|
|
|
+ * kind, whether express or implied.
|
|
|
+ */
|
|
|
+
|
|
|
+#ifndef __POWERPC_SYSDEV_MPC52xx_PIC_H__
|
|
|
+#define __POWERPC_SYSDEV_MPC52xx_PIC_H__
|
|
|
+
|
|
|
+#include <asm/types.h>
|
|
|
+
|
|
|
+
|
|
|
+/* HW IRQ mapping */
|
|
|
+#define MPC52xx_IRQ_L1_CRIT (0)
|
|
|
+#define MPC52xx_IRQ_L1_MAIN (1)
|
|
|
+#define MPC52xx_IRQ_L1_PERP (2)
|
|
|
+#define MPC52xx_IRQ_L1_SDMA (3)
|
|
|
+
|
|
|
+#define MPC52xx_IRQ_L1_OFFSET (6)
|
|
|
+#define MPC52xx_IRQ_L1_MASK (0x00c0)
|
|
|
+
|
|
|
+#define MPC52xx_IRQ_L2_OFFSET (0)
|
|
|
+#define MPC52xx_IRQ_L2_MASK (0x003f)
|
|
|
+
|
|
|
+#define MPC52xx_IRQ_HIGHTESTHWIRQ (0xd0)
|
|
|
+
|
|
|
+
|
|
|
+/* Interrupt controller Register set */
|
|
|
+struct mpc52xx_intr {
|
|
|
+ u32 per_mask; /* INTR + 0x00 */
|
|
|
+ u32 per_pri1; /* INTR + 0x04 */
|
|
|
+ u32 per_pri2; /* INTR + 0x08 */
|
|
|
+ u32 per_pri3; /* INTR + 0x0c */
|
|
|
+ u32 ctrl; /* INTR + 0x10 */
|
|
|
+ u32 main_mask; /* INTR + 0x14 */
|
|
|
+ u32 main_pri1; /* INTR + 0x18 */
|
|
|
+ u32 main_pri2; /* INTR + 0x1c */
|
|
|
+ u32 reserved1; /* INTR + 0x20 */
|
|
|
+ u32 enc_status; /* INTR + 0x24 */
|
|
|
+ u32 crit_status; /* INTR + 0x28 */
|
|
|
+ u32 main_status; /* INTR + 0x2c */
|
|
|
+ u32 per_status; /* INTR + 0x30 */
|
|
|
+ u32 reserved2; /* INTR + 0x34 */
|
|
|
+ u32 per_error; /* INTR + 0x38 */
|
|
|
+};
|
|
|
+
|
|
|
+#endif /* __POWERPC_SYSDEV_MPC52xx_PIC_H__ */
|
|
|
+
|