Skip to content

Commit d46e6a2

Browse files
djbwstellarhopper
authored andcommitted
ACPI: NFIT: Move bus_dsm_mask out of generic nvdimm_bus_descriptor
DSMs are strictly an ACPI mechanism, evict the bus_dsm_mask concept from the generic 'struct nvdimm_bus_descriptor' object. As a side effect the test facility ->bus_nfit_cmd_force_en is no longer necessary. The test infrastructure can communicate that information directly in ->bus_dsm_mask. Cc: Vishal Verma <[email protected]> Cc: Dave Jiang <[email protected]> Cc: Ira Weiny <[email protected]> Signed-off-by: Dan Williams <[email protected]> Signed-off-by: Vishal Verma <[email protected]>
1 parent 92fe2aa commit d46e6a2

File tree

4 files changed

+13
-14
lines changed

4 files changed

+13
-14
lines changed

drivers/acpi/nfit/core.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@ int acpi_nfit_ctl(struct nvdimm_bus_descriptor *nd_desc, struct nvdimm *nvdimm,
478478

479479
cmd_name = nvdimm_bus_cmd_name(cmd);
480480
cmd_mask = nd_desc->cmd_mask;
481-
dsm_mask = nd_desc->bus_dsm_mask;
481+
dsm_mask = acpi_desc->bus_dsm_mask;
482482
desc = nd_cmd_bus_desc(cmd);
483483
guid = to_nfit_uuid(NFIT_DEV_BUS);
484484
handle = adev->handle;
@@ -1238,8 +1238,9 @@ static ssize_t bus_dsm_mask_show(struct device *dev,
12381238
{
12391239
struct nvdimm_bus *nvdimm_bus = to_nvdimm_bus(dev);
12401240
struct nvdimm_bus_descriptor *nd_desc = to_nd_desc(nvdimm_bus);
1241+
struct acpi_nfit_desc *acpi_desc = to_acpi_desc(nd_desc);
12411242

1242-
return sprintf(buf, "%#lx\n", nd_desc->bus_dsm_mask);
1243+
return sprintf(buf, "%#lx\n", acpi_desc->bus_dsm_mask);
12431244
}
12441245
static struct device_attribute dev_attr_bus_dsm_mask =
12451246
__ATTR(dsm_mask, 0444, bus_dsm_mask_show, NULL);
@@ -2157,7 +2158,6 @@ static void acpi_nfit_init_dsms(struct acpi_nfit_desc *acpi_desc)
21572158
int i;
21582159

21592160
nd_desc->cmd_mask = acpi_desc->bus_cmd_force_en;
2160-
nd_desc->bus_dsm_mask = acpi_desc->bus_nfit_cmd_force_en;
21612161
set_bit(ND_CMD_CALL, &nd_desc->cmd_mask);
21622162
set_bit(NVDIMM_BUS_FAMILY_NFIT, &nd_desc->bus_family_mask);
21632163

@@ -2180,7 +2180,7 @@ static void acpi_nfit_init_dsms(struct acpi_nfit_desc *acpi_desc)
21802180
(1 << NFIT_CMD_ARS_INJECT_GET);
21812181
for_each_set_bit(i, &dsm_mask, BITS_PER_LONG)
21822182
if (acpi_check_dsm(adev->handle, guid, 1, 1ULL << i))
2183-
set_bit(i, &nd_desc->bus_dsm_mask);
2183+
set_bit(i, &acpi_desc->bus_dsm_mask);
21842184
}
21852185

21862186
static ssize_t range_index_show(struct device *dev,

drivers/acpi/nfit/nfit.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ struct acpi_nfit_desc {
237237
unsigned long scrub_flags;
238238
unsigned long dimm_cmd_force_en;
239239
unsigned long bus_cmd_force_en;
240-
unsigned long bus_nfit_cmd_force_en;
240+
unsigned long bus_dsm_mask;
241241
unsigned int platform_cap;
242242
unsigned int scrub_tmo;
243243
int (*blk_do_io)(struct nd_blk_region *ndbr, resource_size_t dpa,

include/linux/libnvdimm.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@ typedef int (*ndctl_fn)(struct nvdimm_bus_descriptor *nd_desc,
7676
struct device_node;
7777
struct nvdimm_bus_descriptor {
7878
const struct attribute_group **attr_groups;
79-
unsigned long bus_dsm_mask;
8079
unsigned long cmd_mask;
8180
unsigned long dimm_family_mask;
8281
unsigned long bus_family_mask;

tools/testing/nvdimm/test/nfit.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2507,10 +2507,10 @@ static void nfit_test0_setup(struct nfit_test *t)
25072507
set_bit(ND_CMD_ARS_STATUS, &acpi_desc->bus_cmd_force_en);
25082508
set_bit(ND_CMD_CLEAR_ERROR, &acpi_desc->bus_cmd_force_en);
25092509
set_bit(ND_CMD_CALL, &acpi_desc->bus_cmd_force_en);
2510-
set_bit(NFIT_CMD_TRANSLATE_SPA, &acpi_desc->bus_nfit_cmd_force_en);
2511-
set_bit(NFIT_CMD_ARS_INJECT_SET, &acpi_desc->bus_nfit_cmd_force_en);
2512-
set_bit(NFIT_CMD_ARS_INJECT_CLEAR, &acpi_desc->bus_nfit_cmd_force_en);
2513-
set_bit(NFIT_CMD_ARS_INJECT_GET, &acpi_desc->bus_nfit_cmd_force_en);
2510+
set_bit(NFIT_CMD_TRANSLATE_SPA, &acpi_desc->bus_dsm_mask);
2511+
set_bit(NFIT_CMD_ARS_INJECT_SET, &acpi_desc->bus_dsm_mask);
2512+
set_bit(NFIT_CMD_ARS_INJECT_CLEAR, &acpi_desc->bus_dsm_mask);
2513+
set_bit(NFIT_CMD_ARS_INJECT_GET, &acpi_desc->bus_dsm_mask);
25142514
set_bit(ND_INTEL_FW_GET_INFO, &acpi_desc->dimm_cmd_force_en);
25152515
set_bit(ND_INTEL_FW_START_UPDATE, &acpi_desc->dimm_cmd_force_en);
25162516
set_bit(ND_INTEL_FW_SEND_DATA, &acpi_desc->dimm_cmd_force_en);
@@ -2731,11 +2731,11 @@ static int nfit_ctl_test(struct device *dev)
27312731
.module = THIS_MODULE,
27322732
.provider_name = "ACPI.NFIT",
27332733
.ndctl = acpi_nfit_ctl,
2734-
.bus_dsm_mask = 1UL << NFIT_CMD_TRANSLATE_SPA
2735-
| 1UL << NFIT_CMD_ARS_INJECT_SET
2736-
| 1UL << NFIT_CMD_ARS_INJECT_CLEAR
2737-
| 1UL << NFIT_CMD_ARS_INJECT_GET,
27382734
},
2735+
.bus_dsm_mask = 1UL << NFIT_CMD_TRANSLATE_SPA
2736+
| 1UL << NFIT_CMD_ARS_INJECT_SET
2737+
| 1UL << NFIT_CMD_ARS_INJECT_CLEAR
2738+
| 1UL << NFIT_CMD_ARS_INJECT_GET,
27392739
.dev = &adev->dev,
27402740
};
27412741

0 commit comments

Comments
 (0)