Home
last modified time | relevance | path

Searched refs:ndd (Results 1 – 8 of 8) sorted by relevance

/Linux-v4.19/drivers/nvdimm/
Dlabel.c43 unsigned sizeof_namespace_label(struct nvdimm_drvdata *ndd) in sizeof_namespace_label() argument
45 return ndd->nslabel_size; in sizeof_namespace_label()
54 static int __nvdimm_num_label_slots(struct nvdimm_drvdata *ndd, in __nvdimm_num_label_slots() argument
57 return (ndd->nsarea.config_size - index_size * 2) / in __nvdimm_num_label_slots()
58 sizeof_namespace_label(ndd); in __nvdimm_num_label_slots()
61 int nvdimm_num_label_slots(struct nvdimm_drvdata *ndd) in nvdimm_num_label_slots() argument
65 tmp_nslot = ndd->nsarea.config_size / sizeof_namespace_label(ndd); in nvdimm_num_label_slots()
68 return __nvdimm_num_label_slots(ndd, NSINDEX_ALIGN * n); in nvdimm_num_label_slots()
71 size_t sizeof_namespace_index(struct nvdimm_drvdata *ndd) in sizeof_namespace_index() argument
80 nslot = nvdimm_num_label_slots(ndd); in sizeof_namespace_index()
[all …]
Ddimm.c26 struct nvdimm_drvdata *ndd; in nvdimm_probe() local
40 ndd = kzalloc(sizeof(*ndd), GFP_KERNEL); in nvdimm_probe()
41 if (!ndd) in nvdimm_probe()
44 dev_set_drvdata(dev, ndd); in nvdimm_probe()
45 ndd->dpa.name = dev_name(dev); in nvdimm_probe()
46 ndd->ns_current = -1; in nvdimm_probe()
47 ndd->ns_next = -1; in nvdimm_probe()
48 ndd->dpa.start = 0; in nvdimm_probe()
49 ndd->dpa.end = -1; in nvdimm_probe()
50 ndd->dev = dev; in nvdimm_probe()
[all …]
Ddimm_devs.c47 static int validate_dimm(struct nvdimm_drvdata *ndd) in validate_dimm() argument
51 if (!ndd) in validate_dimm()
54 rc = nvdimm_check_config_data(ndd->dev); in validate_dimm()
56 dev_dbg(ndd->dev, "%pf: %s error: %d\n", in validate_dimm()
65 int nvdimm_init_nsarea(struct nvdimm_drvdata *ndd) in nvdimm_init_nsarea() argument
67 struct nd_cmd_get_config_size *cmd = &ndd->nsarea; in nvdimm_init_nsarea()
68 struct nvdimm_bus *nvdimm_bus = walk_to_nvdimm_bus(ndd->dev); in nvdimm_init_nsarea()
70 int rc = validate_dimm(ndd); in nvdimm_init_nsarea()
81 rc = nd_desc->ndctl(nd_desc, to_nvdimm(ndd->dev), in nvdimm_init_nsarea()
88 int nvdimm_init_config_data(struct nvdimm_drvdata *ndd) in nvdimm_init_config_data() argument
[all …]
Dnd.h72 struct nvdimm_drvdata *ndd, int i) in to_namespace_index() argument
77 return ndd->data + sizeof_namespace_index(ndd) * i; in to_namespace_index()
81 struct nvdimm_drvdata *ndd) in to_current_namespace_index() argument
83 return to_namespace_index(ndd, ndd->ns_current); in to_current_namespace_index()
87 struct nvdimm_drvdata *ndd) in to_next_namespace_index() argument
89 return to_namespace_index(ndd, ndd->ns_next); in to_next_namespace_index()
92 unsigned sizeof_namespace_label(struct nvdimm_drvdata *ndd);
94 #define namespace_label_has(ndd, field) \ argument
96 < sizeof_namespace_label(ndd))
104 #define for_each_dpa_resource(ndd, res) \ argument
[all …]
Dlabel.h141 int nd_label_validate(struct nvdimm_drvdata *ndd);
142 void nd_label_copy(struct nvdimm_drvdata *ndd, struct nd_namespace_index *dst,
144 size_t sizeof_namespace_index(struct nvdimm_drvdata *ndd);
145 int nd_label_active_count(struct nvdimm_drvdata *ndd);
146 struct nd_namespace_label *nd_label_active(struct nvdimm_drvdata *ndd, int n);
147 u32 nd_label_alloc_slot(struct nvdimm_drvdata *ndd);
148 bool nd_label_free_slot(struct nvdimm_drvdata *ndd, u32 slot);
149 u32 nd_label_nfree(struct nvdimm_drvdata *ndd);
Dnamespace_devs.c303 struct nvdimm_drvdata *ndd = to_ndd(nd_mapping); in nd_namespace_blk_size() local
311 for_each_dpa_resource(ndd, res) in nd_namespace_blk_size()
321 struct nvdimm_drvdata *ndd = to_ndd(nd_mapping); in __nd_namespace_blk_validate() local
326 if (!nsblk->uuid || !nsblk->lbasize || !ndd) in __nd_namespace_blk_validate()
331 for_each_dpa_resource(ndd, res) { in __nd_namespace_blk_validate()
350 for_each_dpa_resource(ndd, res) in __nd_namespace_blk_validate()
456 struct nvdimm_drvdata *ndd = to_ndd(nd_mapping); in scan_free() local
464 for_each_dpa_resource(ndd, res) in scan_free()
473 nd_dbg_dpa(nd_region, ndd, res, "delete %d\n", rc); in scan_free()
474 nvdimm_free_dpa(ndd, res); in scan_free()
[all …]
Dnd-core.h115 resource_size_t nvdimm_allocated_dpa(struct nvdimm_drvdata *ndd,
119 struct nvdimm_drvdata *ndd, struct nd_namespace_blk *nsblk,
121 int nvdimm_num_label_slots(struct nvdimm_drvdata *ndd);
122 void get_ndd(struct nvdimm_drvdata *ndd);
Dregion_devs.c340 struct nvdimm_drvdata *ndd = to_ndd(nd_mapping); in set_cookie_show() local
342 if (ndd) { in set_cookie_show()
345 nsindex = to_namespace_index(ndd, ndd->ns_current); in set_cookie_show()
372 struct nvdimm_drvdata *ndd = to_ndd(nd_mapping); in nd_region_available_dpa() local
375 if (!ndd) in nd_region_available_dpa()
724 struct nvdimm_drvdata *ndd = nd_mapping->ndd; in nd_region_notify_driver_action() local
731 put_ndd(ndd); in nd_region_notify_driver_action()
732 nd_mapping->ndd = NULL; in nd_region_notify_driver_action()
733 if (ndd) in nd_region_notify_driver_action()