[PATCH 4.19 129/134] drivers: base: Helpers for adding device connection descriptions

From: Greg Kroah-Hartman
Date: Mon Apr 01 2019 - 13:58:04 EST


4.19-stable review patch. If anyone has any objections, please let me know.

------------------

From: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>

commit cd7753d371388e712e3ee52b693459f9b71aaac2 upstream.

Introducing helpers for adding and removing multiple device
connection descriptions at once.

Acked-by: Hans de Goede <hdegoede@xxxxxxxxxx>
Tested-by: Hans de Goede <hdegoede@xxxxxxxxxx>
Signed-off-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
include/linux/device.h | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -774,6 +774,30 @@ void device_connection_add(struct device
void device_connection_remove(struct device_connection *con);

/**
+ * device_connections_add - Add multiple device connections at once
+ * @cons: Zero terminated array of device connection descriptors
+ */
+static inline void device_connections_add(struct device_connection *cons)
+{
+ struct device_connection *c;
+
+ for (c = cons; c->endpoint[0]; c++)
+ device_connection_add(c);
+}
+
+/**
+ * device_connections_remove - Remove multiple device connections at once
+ * @cons: Zero terminated array of device connection descriptors
+ */
+static inline void device_connections_remove(struct device_connection *cons)
+{
+ struct device_connection *c;
+
+ for (c = cons; c->endpoint[0]; c++)
+ device_connection_remove(c);
+}
+
+/**
* enum device_link_state - Device link states.
* @DL_STATE_NONE: The presence of the drivers is not being tracked.
* @DL_STATE_DORMANT: None of the supplier/consumer drivers is present.