diff options
author | Juan Quintela <quintela@redhat.com> | 2012-05-04 12:54:34 +0200 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2015-09-17 14:31:38 +0100 |
commit | 16a1b6e97c2a2919fd296db4bea2f9da2ad3cc4d (patch) | |
tree | c4504d0d79909ca5ecbf06002bfc8c710d7c9e8d /target-cris/cpu-qom.h | |
parent | cc450bfdc030d1943d99b3cb526a3e2cb4f3cd72 (diff) | |
download | qemu-16a1b6e97c2a2919fd296db4bea2f9da2ad3cc4d.zip qemu-16a1b6e97c2a2919fd296db4bea2f9da2ad3cc4d.tar.gz qemu-16a1b6e97c2a2919fd296db4bea2f9da2ad3cc4d.tar.bz2 |
target-cris: update CPU state save/load to use VMStateDescription
Update the CRIS CPU state save/load to use a VMStateDescription struct
rather than cpu_save/cpu_load functions.
Have to define TLBSet struct.
Multidimensional arrays in C are a mess, just unroll them.
Signed-off-by: Juan Quintela <quintela@redhat.com>
[PMM:
* expand commit message a little since it's no longer one patch in
a 35-patch series
* add header/copyright comment to machine.c; credited copyright is
Red Hat and author is Juan, since this commit gives the file all-new
contents; license is LGPL-2-or-later, to match other target-cris code
* remove hardcoded tab
* add fields for locked_irq, interrupt_vector, fault_vector, trap_vector
* drop minimum_version_id_old fields
* bump version_id to 2 as we are not compatible with old state format
* remove unnecessary hw/boards.h include
* update to register via dc->vmsd]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Diffstat (limited to 'target-cris/cpu-qom.h')
-rw-r--r-- | target-cris/cpu-qom.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/target-cris/cpu-qom.h b/target-cris/cpu-qom.h index 6fc30c2..df4c0b5 100644 --- a/target-cris/cpu-qom.h +++ b/target-cris/cpu-qom.h @@ -73,6 +73,10 @@ static inline CRISCPU *cris_env_get_cpu(CPUCRISState *env) #define ENV_OFFSET offsetof(CRISCPU, env) +#ifndef CONFIG_USER_ONLY +extern const struct VMStateDescription vmstate_cris_cpu; +#endif + void cris_cpu_do_interrupt(CPUState *cpu); void crisv10_cpu_do_interrupt(CPUState *cpu); bool cris_cpu_exec_interrupt(CPUState *cpu, int int_req); |