]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/nvdimm/Kconfig
libnvdimm: infrastructure for btt devices
[karo-tx-linux.git] / drivers / nvdimm / Kconfig
1 menuconfig LIBNVDIMM
2         tristate "NVDIMM (Non-Volatile Memory Device) Support"
3         depends on PHYS_ADDR_T_64BIT
4         depends on BLK_DEV
5         help
6           Generic support for non-volatile memory devices including
7           ACPI-6-NFIT defined resources.  On platforms that define an
8           NFIT, or otherwise can discover NVDIMM resources, a libnvdimm
9           bus is registered to advertise PMEM (persistent memory)
10           namespaces (/dev/pmemX) and BLK (sliding mmio window(s))
11           namespaces (/dev/ndX). A PMEM namespace refers to a memory
12           resource that may span multiple DIMMs and support DAX (see
13           CONFIG_DAX).  A BLK namespace refers to an NVDIMM control
14           region which exposes an mmio register set for windowed
15           access mode to non-volatile memory.
16
17 if LIBNVDIMM
18
19 config BLK_DEV_PMEM
20         tristate "PMEM: Persistent memory block device support"
21         default LIBNVDIMM
22         depends on HAS_IOMEM
23         help
24           Memory ranges for PMEM are described by either an NFIT
25           (NVDIMM Firmware Interface Table, see CONFIG_NFIT_ACPI), a
26           non-standard OEM-specific E820 memory type (type-12, see
27           CONFIG_X86_PMEM_LEGACY), or it is manually specified by the
28           'memmap=nn[KMG]!ss[KMG]' kernel command line (see
29           Documentation/kernel-parameters.txt).  This driver converts
30           these persistent memory ranges into block devices that are
31           capable of DAX (direct-access) file system mappings.  See
32           Documentation/nvdimm/nvdimm.txt for more details.
33
34           Say Y if you want to use an NVDIMM
35
36 config BTT
37         def_bool y
38
39 endif