Lines Matching refs:mc_bus_dev
83 void dprc_remove_devices(struct fsl_mc_device *mc_bus_dev, in dprc_remove_devices() argument
96 device_for_each_child(&mc_bus_dev->dev, &objs, in dprc_remove_devices()
103 device_for_each_child(&mc_bus_dev->dev, NULL, in dprc_remove_devices()
118 struct fsl_mc_device *mc_bus_dev) in fsl_mc_device_lookup() argument
122 dev = device_find_child(&mc_bus_dev->dev, obj_desc, in fsl_mc_device_lookup()
163 static void fsl_mc_obj_device_add(struct fsl_mc_device *mc_bus_dev, in fsl_mc_obj_device_add() argument
172 child_dev = fsl_mc_device_lookup(obj_desc, mc_bus_dev); in fsl_mc_obj_device_add()
177 error = fsl_mc_device_add(obj_desc, NULL, &mc_bus_dev->dev, in fsl_mc_obj_device_add()
196 static void dprc_add_new_devices(struct fsl_mc_device *mc_bus_dev, in dprc_add_new_devices() argument
208 fsl_mc_obj_device_add(mc_bus_dev, obj_desc); in dprc_add_new_devices()
216 fsl_mc_obj_device_add(mc_bus_dev, obj_desc); in dprc_add_new_devices()
239 int dprc_scan_objects(struct fsl_mc_device *mc_bus_dev, in dprc_scan_objects() argument
245 unsigned int irq_count = mc_bus_dev->obj_desc.irq_count; in dprc_scan_objects()
247 struct fsl_mc_bus *mc_bus = to_fsl_mc_bus(mc_bus_dev); in dprc_scan_objects()
249 error = dprc_get_obj_count(mc_bus_dev->mc_io, in dprc_scan_objects()
251 mc_bus_dev->mc_handle, in dprc_scan_objects()
254 dev_err(&mc_bus_dev->dev, "dprc_get_obj_count() failed: %d\n", in dprc_scan_objects()
263 devm_kmalloc_array(&mc_bus_dev->dev, num_child_objects, in dprc_scan_objects()
277 error = dprc_get_obj(mc_bus_dev->mc_io, in dprc_scan_objects()
279 mc_bus_dev->mc_handle, in dprc_scan_objects()
282 dev_err(&mc_bus_dev->dev, in dprc_scan_objects()
305 dev_dbg(&mc_bus_dev->dev, in dprc_scan_objects()
311 dev_err(&mc_bus_dev->dev, in dprc_scan_objects()
321 if (dev_get_msi_domain(&mc_bus_dev->dev)) { in dprc_scan_objects()
323 dev_warn(&mc_bus_dev->dev, in dprc_scan_objects()
329 error = fsl_mc_populate_irq_pool(mc_bus_dev, in dprc_scan_objects()
336 dprc_remove_devices(mc_bus_dev, child_obj_desc_array, in dprc_scan_objects()
339 dprc_add_new_devices(mc_bus_dev, child_obj_desc_array, in dprc_scan_objects()
343 devm_kfree(&mc_bus_dev->dev, child_obj_desc_array); in dprc_scan_objects()
358 int dprc_scan_container(struct fsl_mc_device *mc_bus_dev, in dprc_scan_container() argument
362 struct fsl_mc_bus *mc_bus = to_fsl_mc_bus(mc_bus_dev); in dprc_scan_container()
364 fsl_mc_init_all_resource_pools(mc_bus_dev); in dprc_scan_container()
370 error = dprc_scan_objects(mc_bus_dev, alloc_interrupts); in dprc_scan_container()