|
@@ -929,6 +929,17 @@ static int nfit_mem_init(struct acpi_nfit_desc *acpi_desc)
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+static ssize_t bus_dsm_mask_show(struct device *dev,
|
|
|
|
+ struct device_attribute *attr, char *buf)
|
|
|
|
+{
|
|
|
|
+ struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
|
|
|
|
+ struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
|
|
|
|
+
|
|
|
|
+ return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
|
|
|
|
+}
|
|
|
|
+static struct device_attribute dev_attr_bus_dsm_mask =
|
|
|
|
+ __ATTR(dsm_mask, 0444, bus_dsm_mask_show, NULL);
|
|
|
|
+
|
|
static ssize_t revision_show(struct device *dev,
|
|
static ssize_t revision_show(struct device *dev,
|
|
struct device_attribute *attr, char *buf)
|
|
struct device_attribute *attr, char *buf)
|
|
{
|
|
{
|
|
@@ -1065,6 +1076,7 @@ static struct attribute *acpi_nfit_attributes[] = {
|
|
&dev_attr_revision.attr,
|
|
&dev_attr_revision.attr,
|
|
&dev_attr_scrub.attr,
|
|
&dev_attr_scrub.attr,
|
|
&dev_attr_hw_error_scrub.attr,
|
|
&dev_attr_hw_error_scrub.attr,
|
|
|
|
+ &dev_attr_bus_dsm_mask.attr,
|
|
NULL,
|
|
NULL,
|
|
};
|
|
};
|
|
|
|
|