summaryrefslogtreecommitdiff
path: root/drivers/nvdimm/Kconfig
blob: 07a29113b870873d57e17609d583c305dee2b321 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
menuconfig LIBNVDIMM
	tristate "NVDIMM (Non-Volatile Memory Device) Support"
	depends on PHYS_ADDR_T_64BIT
	depends on BLK_DEV
	help
	  Generic support for non-volatile memory devices including
	  ACPI-6-NFIT defined resources.  On platforms that define an
	  NFIT, or otherwise can discover NVDIMM resources, a libnvdimm
	  bus is registered to advertise PMEM (persistent memory)
	  namespaces (/dev/pmemX) and BLK (sliding mmio window(s))
	  namespaces (/dev/ndX). A PMEM namespace refers to a memory
	  resource that may span multiple DIMMs and support DAX (see
	  CONFIG_DAX).  A BLK namespace refers to an NVDIMM control
	  region which exposes an mmio register set for windowed
	  access mode to non-volatile memory.

if LIBNVDIMM

config BLK_DEV_PMEM
	tristate "PMEM: Persistent memory block device support"
	default LIBNVDIMM
	depends on HAS_IOMEM
	help
	  Memory ranges for PMEM are described by either an NFIT
	  (NVDIMM Firmware Interface Table, see CONFIG_NFIT_ACPI), a
	  non-standard OEM-specific E820 memory type (type-12, see
	  CONFIG_X86_PMEM_LEGACY), or it is manually specified by the
	  'memmap=nn[KMG]!ss[KMG]' kernel command line (see
	  Documentation/kernel-parameters.txt).  This driver converts
	  these persistent memory ranges into block devices that are
	  capable of DAX (direct-access) file system mappings.  See
	  Documentation/nvdimm/nvdimm.txt for more details.

	  Say Y if you want to use an NVDIMM

endif