/linux-6.12.1/Documentation/ABI/testing/ |
D | sysfs-class-devlink | 7 denoted as ... above, is of the form <supplier>--<consumer> 8 where <supplier> is the supplier bus:device name and <consumer> 17 supplier devices themselves are still present. 22 - 'supplier unbind' 28 'supplier unbind' means the device link will be removed when 29 the supplier's driver is unbound from the supplier device. 32 when as long as the supplier and consumer devices themselves 46 runtime power management behavior of the consumer and supplier 47 devices. For example: Making sure the supplier doesn't enter 62 of a device link is affected by whether the supplier and [all …]
|
D | sysfs-devices-supplier | 1 What: /sys/devices/.../supplier:<supplier> 5 The /sys/devices/.../supplier:<supplier> are symlinks to device 6 links where this device is the consumer. <supplier> denotes the 7 name of the supplier in that device link and is of the form
|
D | sysfs-devices-consumer | 6 links where this device is the supplier. <consumer> denotes the
|
/linux-6.12.1/Documentation/driver-api/ |
D | device_link.rst | 29 "supplier" device and its "consumer" devices, and it guarantees driver 30 presence on the supplier. The consumer devices are not probed before the 31 supplier is bound to a driver, and they're unbound before the supplier 34 When driver presence on the supplier is irrelevant and only correct 37 enforcing driver presence on the supplier is optional. 41 is instructed to runtime resume the supplier and keep it active 48 :c:func:`device_add()` has been called for the supplier and 61 ``->probe`` callback while the supplier hasn't started to probe yet: Had the 64 presence of the supplier after adding the link, and defer probing on 66 ``->probe`` callback while the supplier is still probing, but the consumer must [all …]
|
/linux-6.12.1/drivers/base/ |
D | core.c | 83 link->supplier = sup; in __fwnode_link_add() 114 link->consumer, link->supplier); in __fwnode_link_del() 129 link->consumer, link->supplier); in __fwnode_link_cycle() 336 struct device *supplier) in device_link_init_status() argument 338 switch (supplier->links.status) { in device_link_init_status() 518 pm_runtime_put_noidle(link->supplier); in device_link_release_fn() 520 pm_request_idle(link->supplier); in device_link_release_fn() 523 put_device(link->supplier); in device_link_release_fn() 566 struct device *sup = link->supplier; in devlink_add_symlinks() 613 struct device *sup = link->supplier; in devlink_remove_symlinks() [all …]
|
/linux-6.12.1/drivers/base/power/ |
D | runtime.c | 296 retval = pm_runtime_get_sync(link->supplier); in rpm_get_suppliers() 299 pm_runtime_put_noidle(link->supplier); in rpm_get_suppliers() 315 struct device *supplier = link->supplier; in pm_runtime_release_supplier() local 324 atomic_read(&supplier->power.usage_count) > 0) in pm_runtime_release_supplier() 325 pm_runtime_put_noidle(supplier); in pm_runtime_release_supplier() 336 pm_request_idle(link->supplier); in __rpm_put_suppliers() 352 pm_request_idle(link->supplier); in rpm_suspend_suppliers() 1817 pm_runtime_get_sync(link->supplier); in pm_runtime_get_suppliers() 1838 pm_runtime_put(link->supplier); in pm_runtime_put_suppliers() 1874 pm_request_idle(link->supplier); in pm_runtime_drop_link()
|
D | main.c | 271 dpm_wait(link->supplier, async); in dpm_wait_for_suppliers() 1189 link->supplier->power.must_resume = true; in dpm_superior_set_must_resume() 1569 spin_lock_irq(&link->supplier->power.lock); in dpm_clear_superiors_direct_complete() 1570 link->supplier->power.direct_complete = false; in dpm_clear_superiors_direct_complete() 1571 spin_unlock_irq(&link->supplier->power.lock); in dpm_clear_superiors_direct_complete()
|
/linux-6.12.1/include/acpi/ |
D | acpi_bus.h | 301 acpi_handle supplier; member 941 void acpi_dev_clear_dependencies(struct acpi_device *supplier); 943 struct acpi_device *acpi_dev_get_next_consumer_dev(struct acpi_device *supplier, 952 #define for_each_acpi_consumer_dev(supplier, consumer) \ argument 953 for (consumer = acpi_dev_get_next_consumer_dev(supplier, NULL); \ 955 consumer = acpi_dev_get_next_consumer_dev(supplier, consumer))
|
/linux-6.12.1/drivers/firmware/arm_scmi/ |
D | common.h | 409 struct device *supplier; member 435 strans.supplier = dev; \
|
D | driver.c | 2513 struct device *supplier) in scmi_device_link_add() argument 2517 link = device_link_add(consumer, supplier, DL_FLAG_AUTOREMOVE_CONSUMER); in scmi_device_link_add() 3037 if (!trans || !trans->desc || !trans->supplier || !trans->core_ops) in scmi_transport_setup() 3040 if (!device_link_add(dev, trans->supplier, DL_FLAG_AUTOREMOVE_CONSUMER)) { in scmi_transport_setup() 3049 dev_info(dev, "Using %s\n", dev_driver_string(trans->supplier)); in scmi_transport_setup()
|
/linux-6.12.1/drivers/power/supply/ |
D | power_supply_core.c | 43 static bool __power_supply_is_supplied_by(struct power_supply *supplier, in __power_supply_is_supplied_by() argument 48 if (!supply->supplied_from && !supplier->supplied_to) in __power_supply_is_supplied_by() 53 if (!supplier->desc->name) in __power_supply_is_supplied_by() 56 if (!strcmp(supplier->desc->name, supply->supplied_from[i])) in __power_supply_is_supplied_by() 61 for (i = 0; i < supplier->num_supplicants; i++) in __power_supply_is_supplied_by() 62 if (!strcmp(supplier->supplied_to[i], supply->desc->name)) in __power_supply_is_supplied_by()
|
/linux-6.12.1/include/linux/ |
D | fwnode.h | 68 struct fwnode_handle *supplier; member
|
D | device.h | 847 struct device *supplier; member 1260 struct device *supplier, u32 flags); 1262 void device_link_remove(void *consumer, struct device *supplier);
|
/linux-6.12.1/scripts/ |
D | dev-needs.sh | 131 SUPPLIER=$(realpath $SL/supplier)
|
/linux-6.12.1/drivers/acpi/ |
D | scan.c | 2047 dep->supplier = dep_devices->handles[i]; in acpi_scan_add_dep() 2450 if (dep->supplier == handle) { in acpi_walk_dep_device_list() 2467 void acpi_dev_clear_dependencies(struct acpi_device *supplier) in acpi_dev_clear_dependencies() argument 2469 acpi_walk_dep_device_list(supplier->handle, acpi_scan_clear_dep, NULL); in acpi_dev_clear_dependencies() 2501 struct acpi_device *acpi_dev_get_next_consumer_dev(struct acpi_device *supplier, in acpi_dev_get_next_consumer_dev() argument 2506 acpi_walk_dep_device_list(supplier->handle, in acpi_dev_get_next_consumer_dev()
|
/linux-6.12.1/drivers/cpufreq/ |
D | mediatek-cpufreq.c | 192 if (sup_link->supplier->links.status != DL_DEV_DRIVER_BOUND) in is_ccifreq_ready()
|
/linux-6.12.1/Documentation/driver-api/usb/ |
D | persist.rst | 54 you can convince the BIOS supplier to fix the problem (lots of luck!).
|
/linux-6.12.1/drivers/ufs/core/ |
D | ufshcd.c | 5283 struct device *supplier = NULL; in ufshcd_slave_destroy() local 5288 supplier = &hba->ufs_device_wlun->sdev_gendev; in ufshcd_slave_destroy() 5289 get_device(supplier); in ufshcd_slave_destroy() 5293 if (supplier) { in ufshcd_slave_destroy() 5299 device_link_remove(&sdev->sdev_gendev, supplier); in ufshcd_slave_destroy() 5300 put_device(supplier); in ufshcd_slave_destroy()
|
/linux-6.12.1/drivers/pci/ |
D | quirks.c | 5648 unsigned int supplier, unsigned int class, in pci_create_device_link() argument 5658 PCI_DEVFN(PCI_SLOT(pdev->devfn), supplier)); in pci_create_device_link()
|
/linux-6.12.1/drivers/soc/mediatek/ |
D | mtk-svs.c | 2164 if (sup_link->supplier->links.status != DL_DEV_DRIVER_BOUND) in svs_add_device_link()
|
/linux-6.12.1/Documentation/power/ |
D | runtime_pm.rst | 849 through a supplier device link. For these reasons and to avoid boilerplate code
|
/linux-6.12.1/Documentation/admin-guide/ |
D | kernel-parameters.txt | 1652 fw_devlink= [KNL,EARLY] Create device links between consumer and supplier 1654 consumer/supplier relationships. This feature is 1657 (suppliers first, then consumers), supplier boot state
|