Lines Matching refs:supplier
91 link->supplier = sup; in fwnode_link_add()
115 link->consumer, link->supplier); in __fwnode_link_del()
314 struct device *supplier) in device_link_init_status() argument
316 switch (supplier->links.status) { in device_link_init_status()
489 pm_runtime_put(link->supplier); in device_link_release_fn()
492 put_device(link->supplier); in device_link_release_fn()
523 struct device *sup = link->supplier; in devlink_add_symlinks()
572 struct device *sup = link->supplier; in devlink_remove_symlinks()
686 struct device *supplier, u32 flags) in device_link_add() argument
690 if (!consumer || !supplier || consumer == supplier || in device_link_add()
701 if (pm_runtime_get_sync(supplier) < 0) { in device_link_add()
702 pm_runtime_put_noidle(supplier); in device_link_add()
720 if (!device_pm_initialized(supplier) in device_link_add()
722 device_is_dependent(consumer, supplier))) { in device_link_add()
746 list_for_each_entry(link, &supplier->links.consumers, s_node) { in device_link_add()
792 device_link_init_status(link, consumer, supplier); in device_link_add()
809 get_device(supplier); in device_link_add()
810 link->supplier = supplier; in device_link_add()
821 dev_bus_name(supplier), dev_name(supplier), in device_link_add()
825 put_device(supplier); in device_link_add()
842 device_link_init_status(link, consumer, supplier); in device_link_add()
850 pm_runtime_resume(supplier); in device_link_add()
852 list_add_tail_rcu(&link->s_node, &supplier->links.consumers); in device_link_add()
858 dev_name(supplier)); in device_link_add()
872 dev_dbg(consumer, "Linked as a consumer to %s\n", dev_name(supplier)); in device_link_add()
879 pm_runtime_put(supplier); in device_link_add()
890 dev_name(link->supplier)); in __device_link_del()
933 void device_link_remove(void *consumer, struct device *supplier) in device_link_remove() argument
937 if (WARN_ON(consumer == supplier)) in device_link_remove()
942 list_for_each_entry(link, &supplier->links.consumers, s_node) { in device_link_remove()
961 if (link->supplier->links.status == DL_DEV_DRIVER_BOUND) { in device_links_missing_supplier()
1001 c_hook)->supplier; in device_links_check_suppliers()
1020 dev_name(link->supplier)); in device_links_check_suppliers()
1281 struct device *supplier; in device_links_driver_bound() local
1286 supplier = link->supplier; in device_links_driver_bound()
1306 __device_links_supplier_defer_sync(supplier); in device_links_driver_bound()
1308 __device_links_queue_sync_state(supplier, &sync_list); in device_links_driver_bound()
1347 if (link->supplier->links.status == DL_DEV_DRIVER_BOUND) { in __device_links_no_driver()
1638 dev_name(link->supplier)); in fw_devlink_relax_link()
1645 if (!link->supplier->can_match) in fw_devlink_no_driver()
1948 struct fwnode_handle *sup = link->supplier; in __fw_devlink_link_to_suppliers()