Lines Matching refs:consumer
74 if (link->consumer == con) { in __fwnode_link_add()
85 link->consumer = con; in __fwnode_link_add()
114 link->consumer, link->supplier); in __fwnode_link_del()
129 link->consumer, link->supplier); in __fwnode_link_cycle()
206 __fwnode_link_add(link->consumer, to, link->flags); in __fwnode_links_move_consumers()
324 if (link->consumer == target) in device_is_dependent()
327 ret = device_is_dependent(link->consumer, target); in device_is_dependent()
335 struct device *consumer, in device_link_init_status() argument
340 switch (consumer->links.status) { in device_link_init_status()
357 switch (consumer->links.status) { in device_link_init_status()
396 device_reorder_to_tail(link->consumer, NULL); in device_reorder_to_tail()
522 put_device(link->consumer); in device_link_release_fn()
567 struct device *con = link->consumer; in devlink_add_symlinks()
614 struct device *con = link->consumer; in devlink_remove_symlinks()
728 struct device_link *device_link_add(struct device *consumer, in device_link_add() argument
733 if (!consumer || !supplier || consumer == supplier || in device_link_add()
767 device_is_dependent(consumer, supplier))) { in device_link_add()
777 consumer->links.status != DL_DEV_NO_DRIVER && in device_link_add()
778 consumer->links.status != DL_DEV_PROBING) { in device_link_add()
792 if (link->consumer != consumer) in device_link_add()
801 pm_runtime_new_link(consumer); in device_link_add()
837 device_link_init_status(link, consumer, supplier); in device_link_add()
857 get_device(consumer); in device_link_add()
858 link->consumer = consumer; in device_link_add()
867 dev_bus_name(consumer), dev_name(consumer)); in device_link_add()
878 pm_runtime_new_link(consumer); in device_link_add()
885 device_link_init_status(link, consumer, supplier); in device_link_add()
896 list_add_tail_rcu(&link->c_node, &consumer->links.suppliers); in device_link_add()
899 dev_dbg(consumer, in device_link_add()
913 device_reorder_to_tail(consumer, NULL); in device_link_add()
915 dev_dbg(consumer, "Linked as a consumer to %s\n", dev_name(supplier)); in device_link_add()
932 dev_dbg(link->consumer, "Dropping the link to %s\n", in __device_link_del()
945 else if (!device_is_registered(link->consumer)) in device_link_put_kref()
976 void device_link_remove(void *consumer, struct device *supplier) in device_link_remove() argument
980 if (WARN_ON(consumer == supplier)) in device_link_remove()
986 if (link->consumer == consumer) { in device_link_remove()
1349 driver_deferred_probe_add(link->consumer); in device_links_driver_bound()
1602 struct device *consumer = link->consumer; in device_links_unbind_consumers() local
1604 get_device(consumer); in device_links_unbind_consumers()
1608 device_release_driver_internal(consumer, NULL, in device_links_unbind_consumers()
1609 consumer->parent); in device_links_unbind_consumers()
1610 put_device(consumer); in device_links_unbind_consumers()
1754 dev_dbg(link->consumer, "Relaxing link with %s\n", in fw_devlink_relax_link()
1789 dev_name(link->consumer)); in fw_devlink_dev_sync_state()
2143 if (__fw_devlink_relax_cycles(link->consumer, sup_handle)) { in fw_devlink_create_devlink()
2147 link->consumer, sup_handle); in fw_devlink_create_devlink()
2151 if (con->fwnode == link->consumer) in fw_devlink_create_devlink()
2178 flags, dev_name(sup_dev), link->consumer); in fw_devlink_create_devlink()
2228 con_dev = get_dev_from_fwnode(link->consumer); in __fw_devlink_link_to_consumers()
2240 con_dev = fwnode_get_next_parent_dev(link->consumer); in __fw_devlink_link_to_consumers()