diff options
author | Dan Williams <dan.j.williams@intel.com> | 2017-09-24 09:57:34 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2017-10-07 10:03:40 -0700 |
commit | 4b27db7e26cdb9deb4a211e963e2993fde0110cb (patch) | |
tree | b730464ad24dbd0ac015bc214aad91ea02766586 /drivers/nvdimm | |
parent | 10246dc84dfcabb05f2d29d442c9de967fd61270 (diff) | |
download | op-kernel-dev-4b27db7e26cdb9deb4a211e963e2993fde0110cb.zip op-kernel-dev-4b27db7e26cdb9deb4a211e963e2993fde0110cb.tar.gz |
acpi, nfit: add support for the _LSI, _LSR, and _LSW label methods
ACPI 6.2 adds support for named methods to access the label storage area
of an NVDIMM. We prefer these new methods if available and otherwise
fallback to the NVDIMM_FAMILY_INTEL _DSMs. The kernel ioctls,
ND_IOCTL_{GET,SET}_CONFIG_{SIZE,DATA}, remain generic and the driver
translates the 'package' payloads into the NVDIMM_FAMILY_INTEL 'buffer'
format to maintain compatibility with existing userspace and keep the
output buffer parsing code in the driver common.
The output payloads are mostly compatible save for the 'label area
locked' status that moves from the 'config_size' (_LSI) command to the
'config_read' (_LSR) command status.
Cc: Jeff Moyer <jmoyer@redhat.com>
Cc: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm')
-rw-r--r-- | drivers/nvdimm/dimm.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/nvdimm/dimm.c b/drivers/nvdimm/dimm.c index 98466d7..f8913b8 100644 --- a/drivers/nvdimm/dimm.c +++ b/drivers/nvdimm/dimm.c @@ -55,6 +55,8 @@ static int nvdimm_probe(struct device *dev) goto err; rc = nvdimm_init_config_data(ndd); + if (rc == -EACCES) + nvdimm_set_locked(dev); if (rc) goto err; |