xemu/hw
Xiao Guangrong 87252e1b61 nvdimm acpi: build ACPI NFIT table
NFIT is defined in ACPI 6.0: 5.2.25 NVDIMM Firmware Interface Table (NFIT)

Currently, we only support PMEM mode. Each device has 3 structures:
- SPA structure, defines the PMEM region info

- MEM DEV structure, it has the @handle which is used to associate specified
  ACPI NVDIMM  device we will introduce in later patch.
  Also we can happily ignored the memory device's interleave, the real
  nvdimm hardware access is hidden behind host

- DCR structure, it defines vendor ID used to associate specified vendor
  nvdimm driver. Since we only implement PMEM mode this time, Command
  window and Data window are not needed

The NVDIMM functionality is controlled by the parameter, 'nvdimm', which
is introduced for the machine, there is a example to enable it:
-machine pc,nvdimm -m 8G,maxmem=100G,slots=100  -object \
memory-backend-file,id=mem1,share,mem-path=/tmp/nvdimm1,size=10G -device \
nvdimm,memdev=mem1,id=nv1

It is disabled on default

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2015-12-22 18:39:20 +02:00
..
9pfs virtio-9p-device: add minimal unrealize handler 2015-12-10 10:46:22 +00:00
acpi nvdimm acpi: build ACPI NFIT table 2015-12-22 18:39:20 +02:00
alpha alpha: convert "naked" qemu_log to tracepoint 2015-12-17 17:33:47 +01:00
arm acpi: support specified oem table id for build_header 2015-12-22 18:39:20 +02:00
audio Remove macros IO_READ_PROTO and IO_WRITE_PROTO 2015-10-19 09:03:53 +02:00
block block: replace IOV_MAX with BlockLimits.max_iov 2015-12-22 16:01:07 +08:00
bt bt: avoid unintended sign extension 2015-12-04 09:39:55 +03:00
char cris: avoid "naked" qemu_log 2015-12-17 17:33:47 +01:00
core pc: Move option_rom_has_mr/rom_file_has_mr globals to MachineClass 2015-12-22 17:45:12 +02:00
cpu icc_bus: drop the unused files 2015-10-02 16:22:02 -03:00
cris cris: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:43 +02:00
display xenfb: avoid reading twice the same fields from the shared page 2015-12-18 15:10:09 +00:00
dma arm: soc-dma: use hwaddr instead of target_ulong in printf 2015-12-17 13:37:13 +00:00
gpio i.MX: add support for lower and upper interrupt in GPIO. 2015-12-17 13:37:13 +00:00
i2c i.MX: Standardize i.MX I2C debug 2015-10-27 15:59:46 +00:00
i386 nvdimm acpi: build ACPI NFIT table 2015-12-22 18:39:20 +02:00
ide atapi: Fix code indentation 2015-11-24 14:56:49 -05:00
input qapi: Change munging of CamelCase enum values 2015-12-17 08:21:28 +01:00
intc kvm: x86: add support for KVM_CAP_SPLIT_IRQCHIP 2015-12-17 17:33:47 +01:00
ipack pci: Trivial device model conversions to realize 2015-02-26 12:42:16 +01:00
ipmi ipmi: Add a force off function 2015-12-22 18:39:19 +02:00
isa hw/isa/lpc_ich9: inject the SMI on the VCPU that is writing to APM_CNT 2015-10-22 14:39:09 +03:00
lm32 ui/opengl: Reduce build required libraries for opengl 2015-11-03 10:13:42 +01:00
m68k m68k: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:43 +02:00
mem nvdimm: implement NVDIMM device abstract 2015-12-22 18:39:20 +02:00
microblaze mb: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:43 +02:00
mips gt64xxx: fix decoding of ISD register 2015-12-04 09:39:55 +03:00
misc hw/misc: Hyper-V test device 'hyperv-testdev' 2015-12-17 15:24:35 +01:00
moxie moxie: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:43 +02:00
net -----BEGIN PGP SIGNATURE----- 2015-12-07 14:18:31 +00:00
nvram fw_cfg: replace ioport data read with generic method 2015-12-15 11:46:13 +01:00
openrisc * First batch of MAINTAINERS updates 2015-09-25 21:52:30 +01:00
pci fix bad indentation in pcie_cap_slot_write_config() 2015-11-06 15:42:38 +03:00
pci-bridge hw/pxb: introduce pxb-pcie expander for PCIe machines 2015-12-22 17:45:13 +02:00
pci-host i440fx: print an error message if user tries to enable iommu 2015-11-17 15:41:13 +02:00
pcmcia hw: do not pass NULL to memory_region_init from instance_init 2015-10-09 15:25:56 +02:00
ppc spapr_drc: Change value of property "fdt" from null back to {} 2015-12-04 16:50:59 +11:00
s390x virtio: handle non-virtio-1-capable backend for ccw 2015-12-02 19:34:11 +02:00
scsi scsi: always call notifier on async cancellation 2015-12-17 17:33:49 +01:00
sd sdhci: add optional quirk property to disable card insertion/removal interrupts 2015-12-22 16:34:26 +08:00
sh4 Use DEFINE_MACHINE() to register all machines 2015-09-19 16:40:15 +02:00
smbios smbios: add smbios 3.0 support 2015-09-07 10:39:28 +01:00
sparc sparc: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:44 +02:00
sparc64 sparc: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:44 +02:00
ssi arm: Use g_new() & friends where that makes obvious sense 2015-09-07 10:39:27 +01:00
timer i.MX: rename i.MX CCM get_clock() function and CLK ID enum names 2015-12-17 13:37:15 +00:00
tpm tpm: avoid clang shifting negative signed warning 2015-11-17 18:35:56 +08:00
tricore tricore: Remove ELF_MACHINE from cpu.h 2015-09-25 12:04:44 +02:00
unicore32 Use DEFINE_MACHINE() to register all machines 2015-09-19 16:40:15 +02:00
usb ehci: make idt processing more robust 2015-12-15 09:49:03 +01:00
vfio vfio: Use g_new() & friends where that makes obvious sense 2015-11-10 12:11:08 -07:00
virtio virtio-pci: Set the QEMU_PCI_CAP_EXPRESS capability early in its DeviceClass realize method 2015-12-02 21:51:33 +02:00
watchdog i6300esb: remove muldiv64() 2015-09-25 14:52:17 +02:00
xen xen: fix invalid assertion 2015-11-06 15:42:38 +03:00
xenpv xen: fix usage of xc_domain_create in domain builder 2015-11-13 17:38:06 +00:00
xtensa target-xtensa: xtfpga: attach FLASH to system IO 2015-10-21 21:28:33 +03:00
Makefile.objs Add a base IPMI interface 2015-12-22 18:39:19 +02:00