|
@@ -178,10 +178,10 @@ void device_pm_move_to_tail(struct device *dev)
|
|
|
* of the link. If DL_FLAG_PM_RUNTIME is not set, DL_FLAG_RPM_ACTIVE will be
|
|
|
* ignored.
|
|
|
*
|
|
|
- * If the DL_FLAG_AUTOREMOVE is set, the link will be removed automatically
|
|
|
- * when the consumer device driver unbinds from it. The combination of both
|
|
|
- * DL_FLAG_AUTOREMOVE and DL_FLAG_STATELESS set is invalid and will cause NULL
|
|
|
- * to be returned.
|
|
|
+ * If the DL_FLAG_AUTOREMOVE_CONSUMER is set, the link will be removed
|
|
|
+ * automatically when the consumer device driver unbinds from it.
|
|
|
+ * The combination of both DL_FLAG_AUTOREMOVE_CONSUMER and DL_FLAG_STATELESS
|
|
|
+ * set is invalid and will cause NULL to be returned.
|
|
|
*
|
|
|
* A side effect of the link creation is re-ordering of dpm_list and the
|
|
|
* devices_kset list by moving the consumer device and all devices depending
|
|
@@ -198,7 +198,8 @@ struct device_link *device_link_add(struct device *consumer,
|
|
|
struct device_link *link;
|
|
|
|
|
|
if (!consumer || !supplier ||
|
|
|
- ((flags & DL_FLAG_STATELESS) && (flags & DL_FLAG_AUTOREMOVE)))
|
|
|
+ ((flags & DL_FLAG_STATELESS) &&
|
|
|
+ (flags & DL_FLAG_AUTOREMOVE_CONSUMER)))
|
|
|
return NULL;
|
|
|
|
|
|
device_links_write_lock();
|
|
@@ -479,7 +480,7 @@ static void __device_links_no_driver(struct device *dev)
|
|
|
if (link->flags & DL_FLAG_STATELESS)
|
|
|
continue;
|
|
|
|
|
|
- if (link->flags & DL_FLAG_AUTOREMOVE)
|
|
|
+ if (link->flags & DL_FLAG_AUTOREMOVE_CONSUMER)
|
|
|
kref_put(&link->kref, __device_link_del);
|
|
|
else if (link->status != DL_STATE_SUPPLIER_UNBIND)
|
|
|
WRITE_ONCE(link->status, DL_STATE_AVAILABLE);
|
|
@@ -515,7 +516,7 @@ void device_links_driver_cleanup(struct device *dev)
|
|
|
if (link->flags & DL_FLAG_STATELESS)
|
|
|
continue;
|
|
|
|
|
|
- WARN_ON(link->flags & DL_FLAG_AUTOREMOVE);
|
|
|
+ WARN_ON(link->flags & DL_FLAG_AUTOREMOVE_CONSUMER);
|
|
|
WARN_ON(link->status != DL_STATE_SUPPLIER_UNBIND);
|
|
|
WRITE_ONCE(link->status, DL_STATE_DORMANT);
|
|
|
}
|