aboutsummaryrefslogtreecommitdiff
path: root/include/hw/cpu
diff options
context:
space:
mode:
authorAndreas Färber <andreas.faerber@web.de>2013-06-30 20:44:23 +0200
committerAndreas Färber <afaerber@suse.de>2013-11-05 17:47:30 +0100
commitde4c2dcf7fedf5fa727113e1dec0d0e5dd0462a0 (patch)
tree9977a6fbbcb9360de620bfb7bc5851adb77ab226 /include/hw/cpu
parent837cf1013e6e1aa821ce13d7f63bb3dc0a92a1ab (diff)
a9mpcore: Prepare for QOM embedding
Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
Diffstat (limited to 'include/hw/cpu')
-rw-r--r--include/hw/cpu/a9mpcore.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/hw/cpu/a9mpcore.h b/include/hw/cpu/a9mpcore.h
new file mode 100644
index 0000000000..010489b98e
--- /dev/null
+++ b/include/hw/cpu/a9mpcore.h
@@ -0,0 +1,37 @@
+/*
+ * Cortex-A9MPCore internal peripheral emulation.
+ *
+ * Copyright (c) 2009 CodeSourcery.
+ * Copyright (c) 2011 Linaro Limited.
+ * Written by Paul Brook, Peter Maydell.
+ *
+ * This code is licensed under the GPL.
+ */
+#ifndef HW_CPU_A9MPCORE_H
+#define HW_CPU_A9MPCORE_H
+
+#include "hw/sysbus.h"
+#include "hw/intc/arm_gic.h"
+#include "hw/misc/a9scu.h"
+#include "hw/timer/arm_mptimer.h"
+
+#define TYPE_A9MPCORE_PRIV "a9mpcore_priv"
+#define A9MPCORE_PRIV(obj) \
+ OBJECT_CHECK(A9MPPrivState, (obj), TYPE_A9MPCORE_PRIV)
+
+typedef struct A9MPPrivState {
+ /*< private >*/
+ SysBusDevice parent_obj;
+ /*< public >*/
+
+ uint32_t num_cpu;
+ MemoryRegion container;
+ uint32_t num_irq;
+
+ GICState gic;
+ A9SCUState scu;
+ ARMMPTimerState mptimer;
+ ARMMPTimerState wdt;
+} A9MPPrivState;
+
+#endif