xref: /openbmc/qemu/include/hw/ppc/spapr_nvdimm.h (revision d2dfe0b5)
1 /*
2  * QEMU PowerPC PAPR SCM backend definitions
3  *
4  * Copyright (c) 2020, IBM Corporation.
5  *
6  * This code is licensed under the GPL version 2 or later. See the
7  * COPYING file in the top-level directory.
8  */
9 
10 #ifndef HW_SPAPR_NVDIMM_H
11 #define HW_SPAPR_NVDIMM_H
12 
13 #include "hw/mem/nvdimm.h"
14 
15 typedef struct SpaprDrc SpaprDrc;
16 typedef struct SpaprMachineState SpaprMachineState;
17 
18 int spapr_pmem_dt_populate(SpaprDrc *drc, SpaprMachineState *spapr,
19                            void *fdt, int *fdt_start_offset, Error **errp);
20 void spapr_dt_persistent_memory(SpaprMachineState *spapr, void *fdt);
21 bool spapr_nvdimm_validate(HotplugHandler *hotplug_dev, NVDIMMDevice *nvdimm,
22                            uint64_t size, Error **errp);
23 void spapr_add_nvdimm(DeviceState *dev, uint64_t slot);
24 void spapr_nvdimm_finish_flushes(void);
25 
26 #endif
27