[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 10/31] hw/core/clock-vmstate: define a vmstate entry for clock sta
From: |
Peter Maydell |
Subject: |
[PULL 10/31] hw/core/clock-vmstate: define a vmstate entry for clock state |
Date: |
Thu, 30 Apr 2020 12:51:21 +0100 |
From: Damien Hedde <address@hidden>
Signed-off-by: Damien Hedde <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Alistair Francis <address@hidden>
Reviewed-by: Edgar E. Iglesias <address@hidden>
Message-id: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
---
hw/core/Makefile.objs | 1 +
include/hw/clock.h | 9 +++++++++
hw/core/clock-vmstate.c | 25 +++++++++++++++++++++++++
3 files changed, 35 insertions(+)
create mode 100644 hw/core/clock-vmstate.c
diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index 1d9b0aa2057..115df550874 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -21,6 +21,7 @@ common-obj-$(CONFIG_SOFTMMU) += null-machine.o
common-obj-$(CONFIG_SOFTMMU) += loader.o
common-obj-$(CONFIG_SOFTMMU) += machine-hmp-cmds.o
common-obj-$(CONFIG_SOFTMMU) += numa.o
+common-obj-$(CONFIG_SOFTMMU) += clock-vmstate.o
obj-$(CONFIG_SOFTMMU) += machine-qmp-cmds.o
common-obj-$(CONFIG_EMPTY_SLOT) += empty_slot.o
diff --git a/include/hw/clock.h b/include/hw/clock.h
index 82a7f3c6982..f3e44e9460c 100644
--- a/include/hw/clock.h
+++ b/include/hw/clock.h
@@ -74,6 +74,15 @@ struct Clock {
QLIST_ENTRY(Clock) sibling;
};
+/*
+ * vmstate description entry to be added in device vmsd.
+ */
+extern const VMStateDescription vmstate_clock;
+#define VMSTATE_CLOCK(field, state) \
+ VMSTATE_CLOCK_V(field, state, 0)
+#define VMSTATE_CLOCK_V(field, state, version) \
+ VMSTATE_STRUCT_POINTER_V(field, state, version, vmstate_clock, Clock)
+
/**
* clock_setup_canonical_path:
* @clk: clock
diff --git a/hw/core/clock-vmstate.c b/hw/core/clock-vmstate.c
new file mode 100644
index 00000000000..260b13fc2c8
--- /dev/null
+++ b/hw/core/clock-vmstate.c
@@ -0,0 +1,25 @@
+/*
+ * Clock migration structure
+ *
+ * Copyright GreenSocs 2019-2020
+ *
+ * Authors:
+ * Damien Hedde
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+#include "migration/vmstate.h"
+#include "hw/clock.h"
+
+const VMStateDescription vmstate_clock = {
+ .name = "clock",
+ .version_id = 0,
+ .minimum_version_id = 0,
+ .fields = (VMStateField[]) {
+ VMSTATE_UINT64(period, Clock),
+ VMSTATE_END_OF_LIST()
+ }
+};
--
2.20.1
- [PULL 00/31] target-arm queue, Peter Maydell, 2020/04/30
- [PULL 01/31] dma/xlnx-zdma: Fix descriptor loading (MEM) wrt endianness, Peter Maydell, 2020/04/30
- [PULL 03/31] nrf51: Fix last GPIO CNF address, Peter Maydell, 2020/04/30
- [PULL 02/31] dma/xlnx-zdma: Fix descriptor loading (REG) wrt endianness, Peter Maydell, 2020/04/30
- [PULL 05/31] Typo: Correct the name of CPU hotplug memory region, Peter Maydell, 2020/04/30
- [PULL 04/31] bugfix: Use gicr_typer in arm_gicv3_icc_reset, Peter Maydell, 2020/04/30
- [PULL 07/31] msf2: Add EMAC block to SmartFusion2 SoC, Peter Maydell, 2020/04/30
- [PULL 06/31] hw/net: Add Smartfusion2 emac block, Peter Maydell, 2020/04/30
- [PULL 08/31] tests/boot_linux_console: Add ethernet test to SmartFusion2, Peter Maydell, 2020/04/30
- [PULL 10/31] hw/core/clock-vmstate: define a vmstate entry for clock state,
Peter Maydell <=
- [PULL 11/31] qdev: add clock input&output support to devices., Peter Maydell, 2020/04/30
- [PULL 12/31] qdev-clock: introduce an init array to ease the device construction, Peter Maydell, 2020/04/30
- [PULL 09/31] hw/core/clock: introduce clock object, Peter Maydell, 2020/04/30
- [PULL 13/31] docs/clocks: add device's clock documentation, Peter Maydell, 2020/04/30
- [PULL 14/31] hw/misc/zynq_slcr: add clock generation for uarts, Peter Maydell, 2020/04/30
- [PULL 16/31] hw/arm/xilinx_zynq: connect uart clocks to slcr, Peter Maydell, 2020/04/30
- [PULL 15/31] hw/char/cadence_uart: add clock support, Peter Maydell, 2020/04/30
- [PULL 18/31] hw/arm: versal: Setup the ADMA with 128bit bus-width, Peter Maydell, 2020/04/30
- [PULL 19/31] Cadence: gem: fix wraparound in 64bit descriptors, Peter Maydell, 2020/04/30