xref: /openbmc/qemu/hw/mem/nvdimm.c (revision 84a3a53c)
1 /*
2  * Non-Volatile Dual In-line Memory Module Virtualization Implementation
3  *
4  * Copyright(C) 2015 Intel Corporation.
5  *
6  * Author:
7  *  Xiao Guangrong <guangrong.xiao@linux.intel.com>
8  *
9  * Currently, it only supports PMEM Virtualization.
10  *
11  * This library is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU Lesser General Public
13  * License as published by the Free Software Foundation; either
14  * version 2 of the License, or (at your option) any later version.
15  *
16  * This library is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19  * Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public
22  * License along with this library; if not, see <http://www.gnu.org/licenses/>
23  */
24 
25 #include "hw/mem/nvdimm.h"
26 
27 static void nvdimm_class_init(ObjectClass *oc, void *data)
28 {
29     DeviceClass *dc = DEVICE_CLASS(oc);
30 
31     /* nvdimm hotplug has not been supported yet. */
32     dc->hotpluggable = false;
33 }
34 
35 static TypeInfo nvdimm_info = {
36     .name          = TYPE_NVDIMM,
37     .parent        = TYPE_PC_DIMM,
38     .class_init    = nvdimm_class_init,
39 };
40 
41 static void nvdimm_register_types(void)
42 {
43     type_register_static(&nvdimm_info);
44 }
45 
46 type_init(nvdimm_register_types)
47