Lines Matching refs:nvdimm
33 struct nvdimm *nvdimm; in __validate_dimm() local
38 nvdimm = to_nvdimm(ndd->dev); in __validate_dimm()
40 if (!nvdimm->dsm_mask) in __validate_dimm()
42 if (!test_bit(ND_CMD_GET_CONFIG_DATA, nvdimm->dsm_mask)) in __validate_dimm()
187 struct nvdimm *nvdimm = to_nvdimm(dev); in nvdimm_release() local
189 ida_simple_remove(&dimm_ida, nvdimm->id); in nvdimm_release()
190 kfree(nvdimm); in nvdimm_release()
203 struct nvdimm *to_nvdimm(struct device *dev) in to_nvdimm()
205 struct nvdimm *nvdimm = container_of(dev, struct nvdimm, dev); in to_nvdimm() local
208 return nvdimm; in to_nvdimm()
212 struct nvdimm *nd_blk_region_to_dimm(struct nd_blk_region *ndbr) in nd_blk_region_to_dimm()
217 return nd_mapping->nvdimm; in nd_blk_region_to_dimm()
223 struct nvdimm *nvdimm = nd_mapping->nvdimm; in to_ndd() local
225 WARN_ON_ONCE(!is_nvdimm_bus_locked(&nvdimm->dev)); in to_ndd()
227 return dev_get_drvdata(&nvdimm->dev); in to_ndd()
260 const char *nvdimm_name(struct nvdimm *nvdimm) in nvdimm_name() argument
262 return dev_name(&nvdimm->dev); in nvdimm_name()
266 void *nvdimm_provider_data(struct nvdimm *nvdimm) in nvdimm_provider_data() argument
268 if (nvdimm) in nvdimm_provider_data()
269 return nvdimm->provider_data; in nvdimm_provider_data()
277 struct nvdimm *nvdimm = to_nvdimm(dev); in commands_show() local
280 if (!nvdimm->dsm_mask) in commands_show()
283 for_each_set_bit(cmd, nvdimm->dsm_mask, BITS_PER_LONG) in commands_show()
293 struct nvdimm *nvdimm = to_nvdimm(dev); in state_show() local
301 return sprintf(buf, "%s\n", atomic_read(&nvdimm->busy) in state_show()
341 struct nvdimm *nvdimm_create(struct nvdimm_bus *nvdimm_bus, void *provider_data, in nvdimm_create()
345 struct nvdimm *nvdimm = kzalloc(sizeof(*nvdimm), GFP_KERNEL); in nvdimm_create() local
348 if (!nvdimm) in nvdimm_create()
351 nvdimm->id = ida_simple_get(&dimm_ida, 0, 0, GFP_KERNEL); in nvdimm_create()
352 if (nvdimm->id < 0) { in nvdimm_create()
353 kfree(nvdimm); in nvdimm_create()
356 nvdimm->provider_data = provider_data; in nvdimm_create()
357 nvdimm->flags = flags; in nvdimm_create()
358 nvdimm->dsm_mask = dsm_mask; in nvdimm_create()
359 atomic_set(&nvdimm->busy, 0); in nvdimm_create()
360 dev = &nvdimm->dev; in nvdimm_create()
361 dev_set_name(dev, "nmem%d", nvdimm->id); in nvdimm_create()
364 dev->devt = MKDEV(nvdimm_major, nvdimm->id); in nvdimm_create()
368 return nvdimm; in nvdimm_create()