| # SPDX-License-Identifier: GPL-2.0-only | |
| config DAX_DRIVER | |
| select DAX | |
| bool | |
| menuconfig DAX | |
| tristate "DAX: direct access to differentiated memory" | |
| select SRCU | |
| default m if NVDIMM_DAX | |
| if DAX | |
| config DEV_DAX | |
| tristate "Device DAX: direct access mapping device" | |
| depends on TRANSPARENT_HUGEPAGE | |
| help | |
| Support raw access to differentiated (persistence, bandwidth, | |
| latency...) memory via an mmap(2) capable character | |
| device. Platform firmware or a device driver may identify a | |
| platform memory resource that is differentiated from the | |
| baseline memory pool. Mappings of a /dev/daxX.Y device impose | |
| restrictions that make the mapping behavior deterministic. | |
| config DEV_DAX_PMEM | |
| tristate "PMEM DAX: direct access to persistent memory" | |
| depends on LIBNVDIMM && NVDIMM_DAX && DEV_DAX | |
| default DEV_DAX | |
| help | |
| Support raw access to persistent memory. Note that this | |
| driver consumes memory ranges allocated and exported by the | |
| libnvdimm sub-system. | |
| Say M if unsure | |
| config DEV_DAX_KMEM | |
| tristate "KMEM DAX: volatile-use of persistent memory" | |
| default DEV_DAX | |
| depends on DEV_DAX | |
| depends on MEMORY_HOTPLUG # for add_memory() and friends | |
| help | |
| Support access to persistent memory as if it were RAM. This | |
| allows easier use of persistent memory by unmodified | |
| applications. | |
| To use this feature, a DAX device must be unbound from the | |
| device_dax driver (PMEM DAX) and bound to this kmem driver | |
| on each boot. | |
| Say N if unsure. | |
| config DEV_DAX_PMEM_COMPAT | |
| tristate "PMEM DAX: support the deprecated /sys/class/dax interface" | |
| depends on m && DEV_DAX_PMEM=m | |
| default DEV_DAX_PMEM | |
| help | |
| Older versions of the libdaxctl library expect to find all | |
| device-dax instances under /sys/class/dax. If libdaxctl in | |
| your distribution is older than v58 say M, otherwise say N. | |
| endif |