Thread (11 messages) 11 messages, 4 authors, 2016-08-08

[PATCH v4 2/6] power: add power sequence library

From: mka@chromium.org (Matthias Kaehlcke)
Date: 2016-08-03 22:17:44
Also in: linux-devicetree, linux-pm, lkml

El Tue, Aug 02, 2016 at 11:30:48AM +0800 Peter Chen ha dit:
quoted hunk ↗ jump to hunk
diff --git a/drivers/power/pwrseq/core.c b/drivers/power/pwrseq/core.c
...

+static DEFINE_MUTEX(pwrseq_list_mutex);
+static LIST_HEAD(pwrseq_list);
+
+int pwrseq_get(struct device_node *np, struct pwrseq *p)
+{
+	if (p && p->get)
+		return p->get(np, p);
+
+	return -ENOTSUPP;
+}
+
+int pwrseq_on(struct device_node *np, struct pwrseq *p)
+{
+	if (p && p->on)
+		return p->on(np, p);
+
+	return -ENOTSUPP;
+}
+
+void pwrseq_off(struct pwrseq *p)
+{
+	if (p && p->off)
+		p->off(p);
+}
+
+void pwrseq_put(struct pwrseq *p)
+{
+	if (p && p->put)
+		p->put(p);
+}
+
+void pwrseq_free(struct pwrseq *p)
+{
+	if (p && p->free)
+		p->free(p);
+}
+
+void pwrseq_register(struct pwrseq *pwrseq)
+{
+	mutex_lock(&pwrseq_list_mutex);
+	list_add(&pwrseq->node, &pwrseq_list);
+	mutex_unlock(&pwrseq_list_mutex);
+}
+
+void pwrseq_unregister(struct pwrseq *pwrseq)
+{
+	mutex_lock(&pwrseq_list_mutex);
+	list_del(&pwrseq->node);
+	mutex_unlock(&pwrseq_list_mutex);
+}
What is the purpose of pwrseq_register/unregister()? The pwrseq
structs are added and removed from pwrseq_list, but besides that
pwrseq_list is not used.

Looks like this is a remainder from the ancestor of this code
(drivers/mmc/core/pwrseq.c) which uses the list to avoid having
multiple pwrseq instances for the same device.

Matthias
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help