libnvdimm, label: add v1.2 nvdimm label definitions
authorDan Williams <dan.j.williams@intel.com>
Sat, 3 Jun 2017 09:30:43 +0000 (18:30 +0900)
committerDan Williams <dan.j.williams@intel.com>
Thu, 15 Jun 2017 21:31:39 +0000 (14:31 -0700)
commit564e871aa66f548a947b23808d3140f326381f0c
treeb1c2b0c45f296df59d1924847d97f86add22d7c1
parent87085ff2e90ecfa91f8bb0cb0ce19ea661bd6f83
libnvdimm, label: add v1.2 nvdimm label definitions

In support of improved interoperability between operating systems and pre-boot
environments the Intel proposed NVDIMM Namespace Specification [1], has been
adopted and modified to the the UEFI 2.7 NVDIMM Label Protocol [2].

Update the definitions of the namespace label data structures so that the new
format can be supported alongside the existing label format.

The new specification changes the default label size to 256 bytes, so
everywhere that relied on sizeof(struct nd_namespace_label) must now use the
sizeof_namespace_label() helper.

There should be no functional differences from these changes as the
default is still the v1.1 128-byte format. Future patches will move the
default to the v1.2 definition.

[1]: http://pmem.io/documents/NVDIMM_Namespace_Spec.pdf
[2]: http://www.uefi.org/sites/default/files/resources/UEFI_Spec_2_7.pdf

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/nvdimm/label.c
drivers/nvdimm/label.h
drivers/nvdimm/nd.h