summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-03-06 09:26:37 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-03-10 08:03:46 +0100
commitba15b92370f661bb870fbfdcb83ee31da285b018 (patch)
treefa4f3694a4b97330c91ce7c87ee28ff02b444cc2
parentbsps/sparc: Remove fix for ERC32 with FPU rev. B/C (diff)
downloadrtems-ba15b92370f661bb870fbfdcb83ee31da285b018.tar.bz2
bsps/sparc: Add missing IRQMP registers
-rw-r--r--c/src/lib/libbsp/sparc/shared/include/grlib.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/include/grlib.h b/c/src/lib/libbsp/sparc/shared/include/grlib.h
index 5a1449f3e5..86164245d6 100644
--- a/c/src/lib/libbsp/sparc/shared/include/grlib.h
+++ b/c/src/lib/libbsp/sparc/shared/include/grlib.h
@@ -35,6 +35,14 @@ struct apbuart_regs {
volatile unsigned int scaler;
};
+/* IRQMP and IRQAMP interrupt controller timestamps */
+struct irqmp_timestamp_regs {
+ volatile unsigned int counter; /* 0x00 */
+ volatile unsigned int control; /* 0x04 */
+ volatile unsigned int assertion; /* 0x08 */
+ volatile unsigned int ack; /* 0x0c */
+};
+
/* IRQMP and IRQAMP interrupt controllers */
struct irqmp_regs {
volatile unsigned int ilevel; /* 0x00 */
@@ -44,7 +52,7 @@ struct irqmp_regs {
volatile unsigned int mpstat; /* 0x10 */
volatile unsigned int bcast; /* 0x14 */
volatile unsigned int notused02; /* 0x18 */
- volatile unsigned int notused03; /* 0x1c */
+ volatile unsigned int wdgctrl; /* 0x1c */
volatile unsigned int ampctrl; /* 0x20 */
volatile unsigned int icsel[2]; /* 0x24,0x28 */
volatile unsigned int notused13; /* 0x2c */
@@ -56,8 +64,10 @@ struct irqmp_regs {
volatile unsigned int force[16]; /* 0x80 */
/* Extended IRQ registers */
volatile unsigned int intid[16]; /* 0xc0 */
- /* 0x100, align to 4Kb boundary */
- volatile unsigned int resv1[(0x1000-0x100)/4];
+ volatile struct irqmp_timestamp_regs timestamp[16]; /* 0x100 */
+ volatile unsigned int resetaddr[4]; /* 0x200 */
+ /* 0x210, align to 4Kb boundary */
+ volatile unsigned int resv1[(0x1000-0x210)/4];
};
/* GPTIMER Timer instance */