Thread (1 message) 1 message, 1 author, 2012-05-21

[PATCH v2 01/12] usb: otg: add notify_connect_change callback

From: gregkh@linuxfoundation.org (Greg KH)
Date: 2012-05-21 13:05:56
Also in: linux-devicetree

On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote:
quoted hunk
This let usb phy driver has a chance to change hw settings when connect
status change.

Signed-off-by: Richard Zhao <redacted>
---
 include/linux/usb/otg.h |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h
index 38ab3f4..385641d 100644
--- a/include/linux/usb/otg.h
+++ b/include/linux/usb/otg.h
@@ -117,6 +117,10 @@ struct usb_phy {
 	int	(*set_suspend)(struct usb_phy *x,
 				int suspend);
 
+	/* notify phy connect status change */
+	int	(*notify_connect_change)(struct usb_phy *x,
+					 int port,
+					 int connected);
 };
No, please make this two different callbacks.  As you see in your code
when you implemented this, you really have:
	if (connected) {
		do this...
	} else {
		do that...
	}

So you there is no consolidation in the driver, so just make it 2
callbacks, especially as someone wanted to make connected -1 just for a
tristate, which would be impossible to document properly...

greg k-h

quoted hunk
 
 
@@ -252,6 +256,15 @@ usb_phy_set_suspend(struct usb_phy *x, int suspend)
 }
 
 static inline int
+usb_phy_notify_connect_change(struct usb_phy *x, int port, int connected)
+{
+	if (x->notify_connect_change != NULL)
+		return x->notify_connect_change(x, port, connected);
+	else
+		return 0;
+}
+
+static inline int
 otg_start_srp(struct usb_otg *otg)
 {
 	if (otg && otg->start_srp)
-- 
1.7.5.4


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help