Skip to content

Commit

Permalink
libnvdimm, pmem: move pmem to drivers/nvdimm/
Browse files Browse the repository at this point in the history
Prepare the pmem driver to consume PMEM namespaces emitted by regions of
an nvdimm_bus instance.  No functional change.

Acked-by: Christoph Hellwig <hch@lst.de>
Tested-by: Toshi Kani <toshi.kani@hp.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
  • Loading branch information
Dan Williams committed Jun 25, 2015
1 parent 3d88002 commit 18da2c9
Showing 5 changed files with 25 additions and 13 deletions.
11 changes: 0 additions & 11 deletions drivers/block/Kconfig
Original file line number Diff line number Diff line change
@@ -404,17 +404,6 @@ config BLK_DEV_RAM_DAX
and will prevent RAM block device backing store memory from being
allocated from highmem (only a problem for highmem systems).

config BLK_DEV_PMEM
tristate "Persistent memory block device support"
help
Saying Y here will allow you to use a contiguous range of reserved
memory as one or more persistent block devices.

To compile this driver as a module, choose M here: the module will be
called 'pmem'.

If unsure, say N.

config CDROM_PKTCDVD
tristate "Packet writing on CD/DVD media"
depends on !UML
1 change: 0 additions & 1 deletion drivers/block/Makefile
Original file line number Diff line number Diff line change
@@ -14,7 +14,6 @@ obj-$(CONFIG_PS3_VRAM) += ps3vram.o
obj-$(CONFIG_ATARI_FLOPPY) += ataflop.o
obj-$(CONFIG_AMIGA_Z2RAM) += z2ram.o
obj-$(CONFIG_BLK_DEV_RAM) += brd.o
obj-$(CONFIG_BLK_DEV_PMEM) += pmem.o
obj-$(CONFIG_BLK_DEV_LOOP) += loop.o
obj-$(CONFIG_BLK_CPQ_DA) += cpqarray.o
obj-$(CONFIG_BLK_CPQ_CISS_DA) += cciss.o
23 changes: 22 additions & 1 deletion drivers/nvdimm/Kconfig
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
config LIBNVDIMM
menuconfig LIBNVDIMM
tristate "NVDIMM (Non-Volatile Memory Device) Support"
depends on PHYS_ADDR_T_64BIT
depends on BLK_DEV
@@ -13,3 +13,24 @@ config LIBNVDIMM
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
3 changes: 3 additions & 0 deletions drivers/nvdimm/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
obj-$(CONFIG_LIBNVDIMM) += libnvdimm.o
obj-$(CONFIG_BLK_DEV_PMEM) += nd_pmem.o

nd_pmem-y := pmem.o

libnvdimm-y := core.o
libnvdimm-y += bus.o
File renamed without changes.

0 comments on commit 18da2c9

Please sign in to comment.