| What: /sys/class/devlink/.../ | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| Provide a place in sysfs for the device link objects in the | |
| kernel at any given time. The name of a device link directory, | |
| denoted as ... above, is of the form <supplier>--<consumer> | |
| where <supplier> is the supplier device name and <consumer> is | |
| the consumer device name. | |
| What: /sys/class/devlink/.../auto_remove_on | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| This file indicates if the device link will ever be | |
| automatically removed by the driver core when the consumer and | |
| supplier devices themselves are still present. | |
| This will be one of the following strings: | |
| - 'consumer unbind' | |
| - 'supplier unbind' | |
| - 'never' | |
| 'consumer unbind' means the device link will be removed when | |
| the consumer's driver is unbound from the consumer device. | |
| 'supplier unbind' means the device link will be removed when | |
| the supplier's driver is unbound from the supplier device. | |
| 'never' means the device link will not be automatically removed | |
| when as long as the supplier and consumer devices themselves | |
| are still present. | |
| What: /sys/class/devlink/.../consumer | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| This file is a symlink to the consumer device's sysfs directory. | |
| What: /sys/class/devlink/.../runtime_pm | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| This file indicates if the device link has any impact on the | |
| runtime power management behavior of the consumer and supplier | |
| devices. For example: Making sure the supplier doesn't enter | |
| runtime suspend while the consumer is active. | |
| This will be one of the following strings: | |
| === ======================================== | |
| '0' Does not affect runtime power management | |
| '1' Affects runtime power management | |
| === ======================================== | |
| What: /sys/class/devlink/.../status | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| This file indicates the status of the device link. The status | |
| of a device link is affected by whether the supplier and | |
| consumer devices have been bound to their corresponding | |
| drivers. The status of a device link also affects the binding | |
| and unbinding of the supplier and consumer devices with their | |
| drivers and also affects whether the software state of the | |
| supplier device is synced with the hardware state of the | |
| supplier device after boot up. | |
| See also: sysfs-devices-state_synced. | |
| This will be one of the following strings: | |
| - 'not tracked' | |
| - 'dormant' | |
| - 'available' | |
| - 'consumer probing' | |
| - 'active' | |
| - 'supplier unbinding' | |
| - 'unknown' | |
| 'not tracked' means this device link does not track the status | |
| and has no impact on the binding, unbinding and syncing the | |
| hardware and software device state. | |
| 'dormant' means the supplier and the consumer devices have not | |
| bound to their driver. | |
| 'available' means the supplier has bound to its driver and is | |
| available to supply resources to the consumer device. | |
| 'consumer probing' means the consumer device is currently | |
| trying to bind to its driver. | |
| 'active' means the supplier and consumer devices have both | |
| bound successfully to their drivers. | |
| 'supplier unbinding' means the supplier devices is currently in | |
| the process of unbinding from its driver. | |
| 'unknown' means the state of the device link is not any of the | |
| above. If this is ever the value, there's a bug in the kernel. | |
| What: /sys/class/devlink/.../supplier | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| This file is a symlink to the supplier device's sysfs directory. | |
| What: /sys/class/devlink/.../sync_state_only | |
| Date: May 2020 | |
| Contact: Saravana Kannan <saravanak@google.com> | |
| Description: | |
| This file indicates if the device link is limited to only | |
| affecting the syncing of the hardware and software state of the | |
| supplier device. | |
| This will be one of the following strings: | |
| === ================================ | |
| '0' | |
| '1' Affects runtime power management | |
| === ================================ | |
| '0' means the device link can affect other device behaviors | |
| like binding/unbinding, suspend/resume, runtime power | |
| management, etc. | |
| '1' means the device link will only affect the syncing of | |
| hardware and software state of the supplier device after boot | |
| up and doesn't not affect other behaviors of the devices. |