On Sat, Jul 07, 2012 at 10:56:45PM +0800, Richard Zhao wrote:
quoted hunk
Phy may need to change settings when port connect change.
Signed-off-by: Richard Zhao <redacted>
Tested-by: Subodh Nijsure <redacted>
---
drivers/usb/core/hub.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 4cc8dc9..2ba9d84 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -20,6 +20,7 @@
#include <linux/usb.h>
#include <linux/usbdevice_fs.h>
#include <linux/usb/hcd.h>
+#include <linux/usb/otg.h>
#include <linux/usb/quirks.h>
#include <linux/kthread.h>
#include <linux/mutex.h>
@@ -4037,6 +4038,13 @@ static void hub_port_connect_change(struct usb_hub *hub, int port1,
}
}
+ if (unlikely(hcd->phy && !hdev->parent)) {
Why is this "unlikely"? And why mark it as such, is this a "fast path"
that needs the compiler to know this hint to optimize things here?
Please don't use likely() or unlikely() except in places it really is
needed, _and_ you have measured the difference. Have you done so in
this place?
thanks,
greg k-h