| 
									
										
										
										
											2013-06-30 20:44:23 +02:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * 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"
 | 
					
						
							| 
									
										
										
										
											2013-12-01 23:37:11 -08:00
										 |  |  | #include "hw/timer/a9gtimer.h"
 | 
					
						
							| 
									
										
										
										
											2013-06-30 20:44:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | #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; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     A9SCUState scu; | 
					
						
							| 
									
										
										
										
											2013-12-10 13:24:51 +00:00
										 |  |  |     GICState gic; | 
					
						
							| 
									
										
										
										
											2013-12-01 23:37:11 -08:00
										 |  |  |     A9GTimerState gtimer; | 
					
						
							| 
									
										
										
										
											2013-06-30 20:44:23 +02:00
										 |  |  |     ARMMPTimerState mptimer; | 
					
						
							|  |  |  |     ARMMPTimerState wdt; | 
					
						
							|  |  |  | } A9MPPrivState; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif
 |