another pmem variant V3

From: Christoph Hellwig
Date: Wed Apr 01 2015 - 03:13:04 EST

Here is another version of the same trivial pmem driver, because two
obviously aren't enough. The first patch is the same pmem driver
that Ross posted a short time ago, just modified to use platform_devices
to find the persistant memory region instead of hardconding it in the
Kconfig. This allows to keep pmem.c separate from any discovery mechanism,
but still allow auto-discovery.

The other two patches are a heavily rewritten version of the code that
Intel gave to various storage vendors to discover the type 12 (and earlier
type 6) nvdimms, which I massaged into a form that is hopefully suitable
for mainline.

Note that pmem.c really is the minimal version as I think we need something
included ASAP. We'll eventually need to be able to do other I/O from and
to it, and as most people know everyone has their own preferre method to
do it, which I'd like to discuss once we have the basic driver in.

This has been tested on a real NVDIMM on a system with a type 12
capable BIOS.

Changes since V2:
- dropped support for the memmap= kernel command line override
- dropped the not needed memblock_reserve call
- merged various cleanups from Boaz in pmem.c

Changes since V1:
- map the persistent memory as uncached
- better kernel parameter description
- various typo fixes

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at