aboutsummaryrefslogtreecommitdiff
path: root/target-cris/cpu.c
diff options
context:
space:
mode:
authorJuan Quintela <quintela@redhat.com>2012-05-04 12:54:34 +0200
committerPeter Maydell <peter.maydell@linaro.org>2015-09-17 14:31:38 +0100
commit16a1b6e97c2a2919fd296db4bea2f9da2ad3cc4d (patch)
treec4504d0d79909ca5ecbf06002bfc8c710d7c9e8d /target-cris/cpu.c
parentcc450bfdc030d1943d99b3cb526a3e2cb4f3cd72 (diff)
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.c')
-rw-r--r--target-cris/cpu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/target-cris/cpu.c b/target-cris/cpu.c
index b17e849e2a..d461e074c1 100644
--- a/target-cris/cpu.c
+++ b/target-cris/cpu.c
@@ -302,6 +302,7 @@ static void cris_cpu_class_init(ObjectClass *oc, void *data)
cc->handle_mmu_fault = cris_cpu_handle_mmu_fault;
#else
cc->get_phys_page_debug = cris_cpu_get_phys_page_debug;
+ dc->vmsd = &vmstate_cris_cpu;
#endif
cc->gdb_num_core_regs = 49;