Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
2080e88a DW |
2 | config DAX_DRIVER |
3 | select DAX | |
4 | bool | |
5 | ||
7b6be844 | 6 | menuconfig DAX |
ab68f262 | 7 | tristate "DAX: direct access to differentiated memory" |
7b6be844 | 8 | select SRCU |
ab68f262 | 9 | default m if NVDIMM_DAX |
7b6be844 DW |
10 | |
11 | if DAX | |
12 | ||
13 | config DEV_DAX | |
14 | tristate "Device DAX: direct access mapping device" | |
dee41079 | 15 | depends on TRANSPARENT_HUGEPAGE |
ab68f262 DW |
16 | help |
17 | Support raw access to differentiated (persistence, bandwidth, | |
18 | latency...) memory via an mmap(2) capable character | |
19 | device. Platform firmware or a device driver may identify a | |
20 | platform memory resource that is differentiated from the | |
21 | baseline memory pool. Mappings of a /dev/daxX.Y device impose | |
22 | restrictions that make the mapping behavior deterministic. | |
23 | ||
ab68f262 DW |
24 | config DEV_DAX_PMEM |
25 | tristate "PMEM DAX: direct access to persistent memory" | |
74d71a01 | 26 | depends on LIBNVDIMM && NVDIMM_DAX && DEV_DAX |
ab68f262 DW |
27 | default DEV_DAX |
28 | help | |
29 | Support raw access to persistent memory. Note that this | |
30 | driver consumes memory ranges allocated and exported by the | |
31 | libnvdimm sub-system. | |
32 | ||
730926c3 DW |
33 | Say M if unsure |
34 | ||
c221c0b0 DH |
35 | config DEV_DAX_KMEM |
36 | tristate "KMEM DAX: volatile-use of persistent memory" | |
37 | default DEV_DAX | |
38 | depends on DEV_DAX | |
39 | depends on MEMORY_HOTPLUG # for add_memory() and friends | |
40 | help | |
41 | Support access to persistent memory as if it were RAM. This | |
42 | allows easier use of persistent memory by unmodified | |
43 | applications. | |
44 | ||
45 | To use this feature, a DAX device must be unbound from the | |
46 | device_dax driver (PMEM DAX) and bound to this kmem driver | |
47 | on each boot. | |
48 | ||
49 | Say N if unsure. | |
50 | ||
730926c3 DW |
51 | config DEV_DAX_PMEM_COMPAT |
52 | tristate "PMEM DAX: support the deprecated /sys/class/dax interface" | |
67476656 | 53 | depends on m && DEV_DAX_PMEM=m |
730926c3 DW |
54 | default DEV_DAX_PMEM |
55 | help | |
56 | Older versions of the libdaxctl library expect to find all | |
57 | device-dax instances under /sys/class/dax. If libdaxctl in | |
58 | your distribution is older than v58 say M, otherwise say N. | |
ab68f262 DW |
59 | |
60 | endif |