usb: chipidea: host: init otg port number
authorLi Jun <B47624@freescale.com>
Wed, 23 Apr 2014 07:56:46 +0000 (15:56 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 24 Apr 2014 19:56:35 +0000 (12:56 -0700)
Init otg_port number of otg capable host to be 1 at host start.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Li Jun <b47624@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/chipidea/host.c

index ffb4168..a93d950 100644 (file)
@@ -82,10 +82,17 @@ static int host_start(struct ci_hdrc *ci)
        }
 
        ret = usb_add_hcd(hcd, 0, 0);
-       if (ret)
+       if (ret) {
                goto disable_reg;
-       else
+       } else {
+               struct usb_otg *otg = ci->transceiver->otg;
+
                ci->hcd = hcd;
+               if (otg) {
+                       otg->host = &hcd->self;
+                       hcd->self.otg_port = 1;
+               }
+       }
 
        if (ci->platdata->flags & CI_HDRC_DISABLE_STREAMING)
                hw_write(ci, OP_USBMODE, USBMODE_CI_SDIS, USBMODE_CI_SDIS);