Lines Matching refs:links
133 list_for_each_entry(link, &dev->links.consumers, s_node) { in device_is_dependent()
151 switch (supplier->links.status) { in device_link_init_status()
153 switch (consumer->links.status) { in device_link_init_status()
170 switch (consumer->links.status) { in device_link_init_status()
206 list_for_each_entry(link, &dev->links.consumers, s_node) { in device_reorder_to_tail()
348 list_for_each_entry(link, &supplier->links.consumers, s_node) { in device_link_add()
452 list_add_tail_rcu(&link->s_node, &supplier->links.consumers); in device_link_add()
453 list_add_tail_rcu(&link->c_node, &consumer->links.suppliers); in device_link_add()
487 list_add_tail(&consumer->links.needs_suppliers, &wait_for_suppliers); in device_link_wait_for_supplier()
488 consumer->links.need_for_probe = need_for_probe; in device_link_wait_for_supplier()
526 links.needs_suppliers) in device_link_add_missing_supplier_links()
528 list_del_init(&dev->links.needs_suppliers); in device_link_add_missing_supplier_links()
624 list_for_each_entry(link, &supplier->links.consumers, s_node) { in device_link_remove()
640 list_for_each_entry(link, &dev->links.suppliers, c_node) in device_links_missing_supplier()
671 if (!list_empty(&dev->links.needs_suppliers) && in device_links_check_suppliers()
672 dev->links.need_for_probe) { in device_links_check_suppliers()
680 list_for_each_entry(link, &dev->links.suppliers, c_node) { in device_links_check_suppliers()
692 dev->links.status = DL_DEV_PROBING; in device_links_check_suppliers()
724 list_for_each_entry(link, &dev->links.consumers, s_node) { in __device_links_queue_sync_state()
738 if (WARN_ON(!list_empty(&dev->links.defer_sync))) in __device_links_queue_sync_state()
742 list_add_tail(&dev->links.defer_sync, list); in __device_links_queue_sync_state()
756 list_for_each_entry_safe(dev, tmp, list, links.defer_sync) { in device_links_flush_sync_list()
757 list_del_init(&dev->links.defer_sync); in device_links_flush_sync_list()
793 list_for_each_entry_safe(dev, tmp, &deferred_sync, links.defer_sync) { in device_links_supplier_sync_state_resume()
798 list_del_init(&dev->links.defer_sync); in device_links_supplier_sync_state_resume()
816 if (list_empty(&sup->links.defer_sync)) in __device_links_supplier_defer_sync()
817 list_add_tail(&sup->links.defer_sync, &deferred_sync); in __device_links_supplier_defer_sync()
842 list_del_init(&dev->links.needs_suppliers); in device_links_driver_bound()
847 list_for_each_entry(link, &dev->links.consumers, s_node) { in device_links_driver_bound()
868 list_for_each_entry(link, &dev->links.suppliers, c_node) { in device_links_driver_bound()
882 dev->links.status = DL_DEV_DRIVER_BOUND; in device_links_driver_bound()
912 list_for_each_entry_safe_reverse(link, ln, &dev->links.suppliers, c_node) { in __device_links_no_driver()
923 dev->links.status = DL_DEV_NO_DRIVER; in __device_links_no_driver()
942 list_for_each_entry(link, &dev->links.consumers, s_node) { in device_links_no_driver()
979 list_for_each_entry_safe(link, ln, &dev->links.consumers, s_node) { in device_links_driver_cleanup()
998 list_del_init(&dev->links.defer_sync); in device_links_driver_cleanup()
1025 list_for_each_entry(link, &dev->links.consumers, s_node) { in device_links_busy()
1037 dev->links.status = DL_DEV_UNBINDING; in device_links_busy()
1065 list_for_each_entry(link, &dev->links.consumers, s_node) { in device_links_unbind_consumers()
1106 list_del(&dev->links.needs_suppliers); in device_links_purge()
1115 list_for_each_entry_safe_reverse(link, ln, &dev->links.suppliers, c_node) { in device_links_purge()
1120 list_for_each_entry_safe_reverse(link, ln, &dev->links.consumers, s_node) { in device_links_purge()
1971 INIT_LIST_HEAD(&dev->links.consumers); in device_initialize()
1972 INIT_LIST_HEAD(&dev->links.suppliers); in device_initialize()
1973 INIT_LIST_HEAD(&dev->links.needs_suppliers); in device_initialize()
1974 INIT_LIST_HEAD(&dev->links.defer_sync); in device_initialize()
1975 dev->links.status = DL_DEV_NO_DRIVER; in device_initialize()