12080e88aSDan Williamsconfig DAX_DRIVER 22080e88aSDan Williams select DAX 32080e88aSDan Williams bool 42080e88aSDan Williams 57b6be844SDan Williamsmenuconfig DAX 6ab68f262SDan Williams tristate "DAX: direct access to differentiated memory" 7956a4cd2SDan Williams select SRCU 87b6be844SDan Williams default m if NVDIMM_DAX 97b6be844SDan Williams 107b6be844SDan Williamsif DAX 117b6be844SDan Williams 127b6be844SDan Williamsconfig DEV_DAX 137b6be844SDan Williams tristate "Device DAX: direct access mapping device" 147b6be844SDan Williams depends on TRANSPARENT_HUGEPAGE 15ab68f262SDan Williams help 16ab68f262SDan Williams Support raw access to differentiated (persistence, bandwidth, 17ab68f262SDan Williams latency...) memory via an mmap(2) capable character 18ab68f262SDan Williams device. Platform firmware or a device driver may identify a 19ab68f262SDan Williams platform memory resource that is differentiated from the 20ab68f262SDan Williams baseline memory pool. Mappings of a /dev/daxX.Y device impose 21ab68f262SDan Williams restrictions that make the mapping behavior deterministic. 22ab68f262SDan Williams 23ab68f262SDan Williamsconfig DEV_DAX_PMEM 24ab68f262SDan Williams tristate "PMEM DAX: direct access to persistent memory" 2574d71a01SMike Galbraith depends on LIBNVDIMM && NVDIMM_DAX && DEV_DAX 26730926c3SDan Williams depends on m # until we can kill DEV_DAX_PMEM_COMPAT 27ab68f262SDan Williams default DEV_DAX 28ab68f262SDan Williams help 29ab68f262SDan Williams Support raw access to persistent memory. Note that this 30ab68f262SDan Williams driver consumes memory ranges allocated and exported by the 31ab68f262SDan Williams libnvdimm sub-system. 32ab68f262SDan Williams 33730926c3SDan Williams Say M if unsure 34730926c3SDan Williams 35*c221c0b0SDave Hansenconfig DEV_DAX_KMEM 36*c221c0b0SDave Hansen tristate "KMEM DAX: volatile-use of persistent memory" 37*c221c0b0SDave Hansen default DEV_DAX 38*c221c0b0SDave Hansen depends on DEV_DAX 39*c221c0b0SDave Hansen depends on MEMORY_HOTPLUG # for add_memory() and friends 40*c221c0b0SDave Hansen help 41*c221c0b0SDave Hansen Support access to persistent memory as if it were RAM. This 42*c221c0b0SDave Hansen allows easier use of persistent memory by unmodified 43*c221c0b0SDave Hansen applications. 44*c221c0b0SDave Hansen 45*c221c0b0SDave Hansen To use this feature, a DAX device must be unbound from the 46*c221c0b0SDave Hansen device_dax driver (PMEM DAX) and bound to this kmem driver 47*c221c0b0SDave Hansen on each boot. 48*c221c0b0SDave Hansen 49*c221c0b0SDave Hansen Say N if unsure. 50*c221c0b0SDave Hansen 51730926c3SDan Williamsconfig DEV_DAX_PMEM_COMPAT 52730926c3SDan Williams tristate "PMEM DAX: support the deprecated /sys/class/dax interface" 53730926c3SDan Williams depends on DEV_DAX_PMEM 54730926c3SDan Williams default DEV_DAX_PMEM 55730926c3SDan Williams help 56730926c3SDan Williams Older versions of the libdaxctl library expect to find all 57730926c3SDan Williams device-dax instances under /sys/class/dax. If libdaxctl in 58730926c3SDan Williams your distribution is older than v58 say M, otherwise say N. 59ab68f262SDan Williams 60ab68f262SDan Williamsendif 61