diff options
author | Christoffer Dall <christoffer.dall@linaro.org> | 2013-09-23 17:55:56 -0400 |
---|---|---|
committer | Christoffer Dall <christoffer.dall@linaro.org> | 2013-12-21 13:01:27 -0500 |
commit | 0307e1770fdeff2732cf7a35d0f7f49db67c6621 (patch) | |
tree | 199483e6e2745bbaf9966f17975f439bba8e7617 /include/linux/irqchip | |
parent | ce01e4e8874d410738f4b4733b26642d6611a331 (diff) |
irqchip: arm-gic: Define additional MMIO offsets and masks
Define CPU interface offsets for the GICC_ABPR, GICC_APR, and GICC_IIDR
registers. Define distributor registers for the GICD_SPENDSGIR and the
GICD_CPENDSGIR. KVM/ARM needs to know about these definitions to fully
support save/restore of the VGIC.
Also define some masks and shifts for the various GICH_VMCR fields.
Cc: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'include/linux/irqchip')
-rw-r--r-- | include/linux/irqchip/arm-gic.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/irqchip/arm-gic.h b/include/linux/irqchip/arm-gic.h index cac496b1e279..0ceb389dba6c 100644 --- a/include/linux/irqchip/arm-gic.h +++ b/include/linux/irqchip/arm-gic.h | |||
@@ -17,6 +17,9 @@ | |||
17 | #define GIC_CPU_EOI 0x10 | 17 | #define GIC_CPU_EOI 0x10 |
18 | #define GIC_CPU_RUNNINGPRI 0x14 | 18 | #define GIC_CPU_RUNNINGPRI 0x14 |
19 | #define GIC_CPU_HIGHPRI 0x18 | 19 | #define GIC_CPU_HIGHPRI 0x18 |
20 | #define GIC_CPU_ALIAS_BINPOINT 0x1c | ||
21 | #define GIC_CPU_ACTIVEPRIO 0xd0 | ||
22 | #define GIC_CPU_IDENT 0xfc | ||
20 | 23 | ||
21 | #define GIC_DIST_CTRL 0x000 | 24 | #define GIC_DIST_CTRL 0x000 |
22 | #define GIC_DIST_CTR 0x004 | 25 | #define GIC_DIST_CTR 0x004 |
@@ -56,6 +59,15 @@ | |||
56 | #define GICH_LR_ACTIVE_BIT (1 << 29) | 59 | #define GICH_LR_ACTIVE_BIT (1 << 29) |
57 | #define GICH_LR_EOI (1 << 19) | 60 | #define GICH_LR_EOI (1 << 19) |
58 | 61 | ||
62 | #define GICH_VMCR_CTRL_SHIFT 0 | ||
63 | #define GICH_VMCR_CTRL_MASK (0x21f << GICH_VMCR_CTRL_SHIFT) | ||
64 | #define GICH_VMCR_PRIMASK_SHIFT 27 | ||
65 | #define GICH_VMCR_PRIMASK_MASK (0x1f << GICH_VMCR_PRIMASK_SHIFT) | ||
66 | #define GICH_VMCR_BINPOINT_SHIFT 21 | ||
67 | #define GICH_VMCR_BINPOINT_MASK (0x7 << GICH_VMCR_BINPOINT_SHIFT) | ||
68 | #define GICH_VMCR_ALIAS_BINPOINT_SHIFT 18 | ||
69 | #define GICH_VMCR_ALIAS_BINPOINT_MASK (0x7 << GICH_VMCR_ALIAS_BINPOINT_SHIFT) | ||
70 | |||
59 | #define GICH_MISR_EOI (1 << 0) | 71 | #define GICH_MISR_EOI (1 << 0) |
60 | #define GICH_MISR_U (1 << 1) | 72 | #define GICH_MISR_U (1 << 1) |
61 | 73 | ||