Lines Matching refs:dev

26 static void cxl_nvdimm_bridge_release(struct device *dev)  in cxl_nvdimm_bridge_release()  argument
28 struct cxl_nvdimm_bridge *cxl_nvb = to_cxl_nvdimm_bridge(dev); in cxl_nvdimm_bridge_release()
45 struct cxl_nvdimm_bridge *to_cxl_nvdimm_bridge(struct device *dev) in to_cxl_nvdimm_bridge() argument
47 if (dev_WARN_ONCE(dev, dev->type != &cxl_nvdimm_bridge_type, in to_cxl_nvdimm_bridge()
50 return container_of(dev, struct cxl_nvdimm_bridge, dev); in to_cxl_nvdimm_bridge()
54 bool is_cxl_nvdimm_bridge(struct device *dev) in is_cxl_nvdimm_bridge() argument
56 return dev->type == &cxl_nvdimm_bridge_type; in is_cxl_nvdimm_bridge()
60 static int match_nvdimm_bridge(struct device *dev, void *data) in match_nvdimm_bridge() argument
62 return is_cxl_nvdimm_bridge(dev); in match_nvdimm_bridge()
68 struct device *dev; in cxl_find_nvdimm_bridge() local
73 dev = device_find_child(&port->dev, NULL, match_nvdimm_bridge); in cxl_find_nvdimm_bridge()
74 put_device(&port->dev); in cxl_find_nvdimm_bridge()
76 if (!dev) in cxl_find_nvdimm_bridge()
79 return to_cxl_nvdimm_bridge(dev); in cxl_find_nvdimm_bridge()
88 struct device *dev; in cxl_nvdimm_bridge_alloc() local
100 dev = &cxl_nvb->dev; in cxl_nvdimm_bridge_alloc()
102 device_initialize(dev); in cxl_nvdimm_bridge_alloc()
103 lockdep_set_class(&dev->mutex, &cxl_nvdimm_bridge_key); in cxl_nvdimm_bridge_alloc()
104 device_set_pm_not_required(dev); in cxl_nvdimm_bridge_alloc()
105 dev->parent = &port->dev; in cxl_nvdimm_bridge_alloc()
106 dev->bus = &cxl_bus_type; in cxl_nvdimm_bridge_alloc()
107 dev->type = &cxl_nvdimm_bridge_type; in cxl_nvdimm_bridge_alloc()
120 device_unregister(&cxl_nvb->dev); in unregister_nvb()
134 struct device *dev; in devm_cxl_add_nvdimm_bridge() local
144 dev = &cxl_nvb->dev; in devm_cxl_add_nvdimm_bridge()
145 rc = dev_set_name(dev, "nvdimm-bridge%d", cxl_nvb->id); in devm_cxl_add_nvdimm_bridge()
149 rc = device_add(dev); in devm_cxl_add_nvdimm_bridge()
160 put_device(dev); in devm_cxl_add_nvdimm_bridge()
165 static void cxl_nvdimm_release(struct device *dev) in cxl_nvdimm_release() argument
167 struct cxl_nvdimm *cxl_nvd = to_cxl_nvdimm(dev); in cxl_nvdimm_release()
183 bool is_cxl_nvdimm(struct device *dev) in is_cxl_nvdimm() argument
185 return dev->type == &cxl_nvdimm_type; in is_cxl_nvdimm()
189 struct cxl_nvdimm *to_cxl_nvdimm(struct device *dev) in to_cxl_nvdimm() argument
191 if (dev_WARN_ONCE(dev, !is_cxl_nvdimm(dev), in to_cxl_nvdimm()
194 return container_of(dev, struct cxl_nvdimm, dev); in to_cxl_nvdimm()
204 struct device *dev; in cxl_nvdimm_alloc() local
210 dev = &cxl_nvd->dev; in cxl_nvdimm_alloc()
213 device_initialize(dev); in cxl_nvdimm_alloc()
214 lockdep_set_class(&dev->mutex, &cxl_nvdimm_key); in cxl_nvdimm_alloc()
215 device_set_pm_not_required(dev); in cxl_nvdimm_alloc()
216 dev->parent = &cxlmd->dev; in cxl_nvdimm_alloc()
217 dev->bus = &cxl_bus_type; in cxl_nvdimm_alloc()
218 dev->type = &cxl_nvdimm_type; in cxl_nvdimm_alloc()
239 device_unregister(&cxl_nvd->dev); in cxlmd_release_nvdimm()
240 put_device(&cxl_nvb->dev); in cxlmd_release_nvdimm()
253 struct device *dev; in devm_cxl_add_nvdimm() local
267 dev = &cxl_nvd->dev; in devm_cxl_add_nvdimm()
268 rc = dev_set_name(dev, "pmem%d", cxlmd->id); in devm_cxl_add_nvdimm()
272 rc = device_add(dev); in devm_cxl_add_nvdimm()
276 dev_dbg(&cxlmd->dev, "register %s\n", dev_name(dev)); in devm_cxl_add_nvdimm()
279 return devm_add_action_or_reset(&cxlmd->dev, cxlmd_release_nvdimm, cxlmd); in devm_cxl_add_nvdimm()
282 put_device(dev); in devm_cxl_add_nvdimm()
286 put_device(&cxl_nvb->dev); in devm_cxl_add_nvdimm()