7d0c99a9d8
explicitly include qom/cpu.h
...
exec/cpu-all.h includes qom/cpu.h. Explicit inclusion
will keep things working when cpu.h will not be included
indirectly almost everywhere (either directly or through
qemu-common.h).
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-05-19 16:42:27 +02:00
da34e65cb4
include/qemu/osdep.h: Don't include qapi/error.h
...
Commit 57cb38b
included qapi/error.h into qemu/osdep.h to get the
Error typedef. Since then, we've moved to include qemu/osdep.h
everywhere. Its file comment explains: "To avoid getting into
possible circular include dependencies, this file should not include
any other QEMU headers, with the exceptions of config-host.h,
compiler.h, os-posix.h and os-win32.h, all of which are doing a
similar job to this file and are under similar constraints."
qapi/error.h doesn't do a similar job, and it doesn't adhere to
similar constraints: it includes qapi-types.h. That's in excess of
100KiB of crap most .c files don't actually need.
Add the typedef to qemu/typedefs.h, and include that instead of
qapi/error.h. Include qapi/error.h in .c files that need it and don't
get it now. Include qapi-types.h in qom/object.h for uint16List.
Update scripts/clean-includes accordingly. Update it further to match
reality: replace config.h by config-target.h, add sysemu/os-posix.h,
sysemu/os-win32.h. Update the list of includes in the qemu/osdep.h
comment quoted above similarly.
This reduces the number of objects depending on qapi/error.h from "all
of them" to less than a third. Unfortunately, the number depending on
qapi-types.h shrinks only a little. More work is needed for that one.
Signed-off-by: Markus Armbruster <armbru@redhat.com >
[Fix compilation without the spice devel packages. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2016-03-22 22:20:15 +01:00
17b7f2dbbc
arm devices: Clean up includes
...
Clean up includes so that osdep.h is included first and headers
which it implies are not included manually.
This commit was created with scripts/clean-includes.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 1453832250-766-36-git-send-email-peter.maydell@linaro.org
2016-01-29 15:07:25 +00:00
6533a1fcc2
hw/cpu/{a15mpcore, a9mpcore}: Handle missing has_el3 CPU props gracefully
...
Handle missing CPU support for EL3 gracefully.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com >
Message-id: 1442135278-25281-2-git-send-email-edgar.iglesias@gmail.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2015-09-14 14:39:49 +01:00
4182bbb19d
hw/cpu/{a15mpcore, a9mpcore}: enable TrustZone in GIC if it is enabled in CPUs
...
If the A9 and A15 CPUs which we're creating the peripherals for have
TrustZone (EL3) enabled, then also enable it in the GIC we create.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Peter Crosthwaite <crosthwaite.peter@gmail.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com >
Tested-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com >
Message-id: 1441383782-24378-5-git-send-email-peter.maydell@linaro.org
2015-09-08 17:38:43 +01:00
57e72f2a19
cpu/a9mpcore: Add Global Timer
...
Add the global timer to A9 MPCore.
Signed-off-by: François LEGAL <devel@thom.fr.eu.org >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: ff92f35f438ac671b57d99d823723dd3e62d2c49.1385969450.git.peter.crosthwaite@xilinx.com
[PC Changes:
* new commit message
* split off original version as a separate patch
* Rebased against new mpcore implementation (with struct embedding)
]
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2013-12-10 13:28:25 +00:00
4c25f365ab
cpu/a9mpcore: reorder operations/declarations
...
To make it consistent for easier code reading. The order in which
variables are defined and functions are called is set to match the
address map ordering.
The new consistent order of doing stuff is:
SCU -> GIC -> MPTimer -> WDT.
0 functional change.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 8f31398e6d9a93f57291399f269039da1a77a2b5.1385969450.git.peter.crosthwaite@xilinx.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2013-12-10 13:24:51 +00:00
d3053e6be5
cpu/a9mpcore: rename timerbusdev variable
...
Rename this variable for consistency with the above defined mptimerdev
variable.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Message-id: 28939ef95589a62414634e86c47cef76b21b15f7.1385969450.git.peter.crosthwaite@xilinx.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2013-12-10 13:24:51 +00:00
de4c2dcf7f
a9mpcore: Prepare for QOM embedding
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-11-05 17:47:30 +01:00
837cf1013e
a9mpcore: Convert to QOM realize
...
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-11-05 17:47:30 +01:00
eb110bd843
a9mpcore: Embed ARMMPTimerState
...
Prepares for QOM realize.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-11-05 17:47:29 +01:00
fc719d7741
a9mpcore: Embed A9SCUState
...
Prepares for QOM realize.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-11-05 17:47:29 +01:00
9b5f952bb8
a9mpcore: Embed GICState
...
Prepares for conversion to QOM realize.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-11-05 17:47:29 +01:00
753bc6e981
a9mpcore: Split off instance_init
...
Prepares for QOM realize.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-11-05 17:47:29 +01:00
5126fec766
cpu/a9mpcore: QOM casting cleanup
...
Introduce type constant and cast macro and enforce its use by
renaming A9MPPrivState::busdev field to parent_obj.
Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Signed-off-by: Andreas Färber <andreas.faerber@web.de >
2013-07-29 20:41:54 +02:00
300b1fc68c
hw/c*: pass owner to memory_region_init* functions
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-07-04 17:42:47 +02:00
2c9b15cab1
memory: add owner argument to initialization functions
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-07-04 17:42:44 +02:00
0434e30afb
hw: move ARM CPU cores to hw/cpu/, configure with default-configs/
...
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2013-04-08 18:13:16 +02:00