From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1030349AbdADNYY (ORCPT ); Wed, 4 Jan 2017 08:24:24 -0500 Received: from mail-by2nam01on0073.outbound.protection.outlook.com ([104.47.34.73]:61712 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S967693AbdADNX4 (ORCPT ); Wed, 4 Jan 2017 08:23:56 -0500 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; apm.com; dkim=none (message not signed) header.d=none;apm.com; dmarc=bestguesspass action=none header.from=xilinx.com; From: Manish Narani To: , , , , , , , , , , , , , , , , , , CC: , Subject: [RFC PATCH] usb: dwc3: host: add support for OTG in DWC3 host driver Date: Wed, 4 Jan 2017 18:52:59 +0530 Message-ID: <1483536181-22356-5-git-send-email-mnarani@xilinx.com> X-Mailer: git-send-email 2.1.1 In-Reply-To: <1483536181-22356-1-git-send-email-mnarani@xilinx.com> References: <1483536181-22356-1-git-send-email-mnarani@xilinx.com> X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.0.0.1202-22802.006 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(39410400002)(39450400003)(39840400002)(39860400002)(39850400002)(2980300002)(438002)(199003)(189002)(575784001)(45336002)(2201001)(52956003)(63266004)(356003)(47776003)(305945005)(42186005)(103686003)(4001430100002)(106466001)(76176999)(50986999)(2950100002)(5003940100001)(54906002)(38730400001)(81166006)(81156014)(626004)(92566002)(8936002)(50226002)(5660300001)(6666003)(8676002)(36756003)(5001770100001)(107886002)(189998001)(46386002)(7416002)(48376002)(2906002)(33646002)(36386004)(90966002)(4326007)(50466002)(921003)(107986001)(2101003)(83996005)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:CO1PR02MB206;H:xsj-pvapsmtpgw01;FPR:;SPF:Pass;PTR:unknown-60-83.xilinx.com;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;SN1NAM02FT013;1:1hb+bNashDmo1RPUSgQrdr4e33DQc+HPa4JcFh7HZWt7Ser2BytrAcVF+XUv199Lx3GaJavG6/vei3Ab+U4oAIWTnovfVzjg1TF3bgZWv3idUlTM4XkodvCuLuOevKy0KI28g8QhpSCtJGU9ksWxdtOOk/fDGsJaI6/4kLSDSaxGvinNE0SvBH90QAQnjdlmy7lObwf4WC48RUywBmeU0pmDQQWL2F57r0/BOiclD4FpxuojoEeg6F3EhFBLmQ7D7bCsdf5OYpEcyFGOfHXFOw50XKVMUfSpIn0V9cgysmf+PVO/ZC9qa50I/1RRokIx1FjZVQW8GIPAAFdB6Kupn9owTbE4EUoz3mBhD4/KUgQA8r+XxuMsLUnuKfd/Yd1abtPrcvmuvB8VqpKwp5R7Wb8L9BODkcCiMQ936xfCQOAz9MfQxQzEUE8GnrfrAWCdJKJ6wk6lxxIrl4Pb6JUkgPCuCcW9wzSyp6amznYV3dq+/YAR/Jto5cqo8UQ/tW92m36xKDbQgqszJqJZo8yo9P7vkHfSNyj9Tw4QoKPqdO1Hrb8netGAFk4kOq0tND2r0QSBLaMYXzQ50ErZfYkGGDPFTKIWmkvASvCFUPYxcCphpfe7kr6G/gLp3hUYKeVIlgmzUO27PLxgZqD/14WL8Q== MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 8a7ad9d0-1624-49da-0c82-08d434a4d807 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(8251501002);SRVR:CO1PR02MB206; X-Microsoft-Exchange-Diagnostics: 1;CO1PR02MB206;3:9Q6ze+lao5gEr9g4k30+q43yUHAjMpev1i/HiArNAnG6xHFz9BT76Lvkdtu6SyGBT/UFscuKAou6rsq+Apw4LK79R1uAagKg4VdsxFOFniHTj2zzl2Lcovl8gUSrTZUWCej/y5T+9xwH4y+97ne6lBgdQvYkw3LZR78xtnSV/YOtJAWKwT/HYwsYdHWjMTj4WWiD9U10R1rr3URTGOHT+A67HO4krSrF6tOQ4v3klOSE9hQ5Z0eaxPEzfVhW+JceDYEFrVNopOEyjcXcnCwpq/efDaWKTsHsxUtU4IS5CyKPSPDvH9H+ihJIQeSsQE2jrKdxPVpwjGaOjoxtMjQCpJ2YAwrloU4Wafs4cmU/kwBBQM14E4g/faMkEVwGINRisnZ8TGrLz/+76VDpLG63Qg== X-Microsoft-Exchange-Diagnostics: 1;CO1PR02MB206;25:9Kw1GY/aeKYNUBb9P3CFzKkYUJUGyJZd9xNCqQjCl3fR7CNsNkUjksABe0akWqTCfjSq/Yu47bbrY18xADOjpbABARtRtR+iLPTkx+V7ppYfOPoMeuc/7qDepWwtkvyP+nLYfhtkuFBvc8MlppfqpI53cZFuqumKrMo1xlGsQMzGdzPS8CHNYsGV4RvxOKw8CvzNGkg+wf9MQ996RjMlXviAO6eqTevHwf5GPJteJx37nkJeEHKx13EVMUKqVYSZths7SDViPVq1KqNC8JHLBIrQ6XX7TZCl1/48g+SwqKEVeunUNNREMF5IBjvGdmd1N3VSfgR5whV8/LiDA8VJiJFScZq7K4kw1+TnO46MzyYs+6A2/xGsirhtETkVsyWxkBMzottUmnLLpDN8mv4rJ2vAjq/m7s99TZk1Zp+TcdDJTiCGl6rFfnli+hdFsFw+tGMndHskLdN4uwmJ7pQGgMowKa0PQ/54qPQy9IJ3lOMaU+JgmbqSK6tjt7JQheYj0MVzAtAoCub0J8wT4/Fx51Uje6MnQdu/RHcUNeM23EmLznxhMpW8+dUvsN8JedxdFbQZS21HqG5WNiQemgNckEnICuPHqMOBrlNo8O+xEGtjKjxg9z6fXmwCY7shr7Pn35S4F3KyjHuRKQGKf0a0AOGrq3i/+XMzWEdg9mzscNFBDMU2hGJG3K3CnNrdm0vVxITxuiDFAxDjiJa5wEHtg3R1+370T48n1YuKGkvsbPa8rxNr0lwYlZvBI9z/YMt5sc86/2DM45XIi+ja32L3GOo+fghlHysG1D3DVc/IOu5z+ErT4mQuULavQ8KRWsY0 X-Microsoft-Exchange-Diagnostics: 1;CO1PR02MB206;31:tyTTdXmdnJv4FNLAtOcccCqSISSIgM068KAjYbs3jnft8sRR7bv5qhSAUAnN49mdxNyR0HDAJ4SBnSxjwoxTob9B30AxROq+afCW2R7ksTPAMX7aVNXUJLuRZ8Sm2yiO3qFt7Gd2LAvMRGbCdpDkuEzwT3MUrraOUrRRuobWWXhw6EYG+XsP4UBqm9XmUJazr0tU++EbPb5MHyC6Bx/jrMhuPxdAjIAmliycJt169zP76EpGKlXWrZepiJgnyWTnARpGg7aSq3bHedCnM3U2bA==;20:rnuIGYN9V8aH8j+EjpQMiWo9vV/raUv+rCK5WrswfFd0xC0iZ9xJq3MXROq0iGSn9UGKLMrdOXwZH5LdZeSXfBC9T+8zJP/9Uyn5Auky+8sP/0u9C9inotvw+n7easVYhPZMPWaYiJiP5SiEdeIa1heqCdeHo2pGJWnwTZmn+7W6mKmvgFC99obosWlELdSkICIFEL8PCpwQCvcSB6GaHwPEkGVxfxfbvZaAIaAlh9VAPvEjeggOG9EqdfAJJwhg7YnDCLmeq3tcbEbt8NgDd76yW3vUQc2rf5OHtnw9erhL8a42Ep/rxQjTwmlSbqvGcYXaDQl8KcuRymOnzin/hqoAnXoWfJ9lMztXvCoPaQP7BU3hpJV57uTB7fwuvwnG/DX02I0u1OXMe8HijtvwHNFtz8n/Wc5AJ8z+yGSgeiFcMa+YyeIqku4lOEq3jlYoZ+wfuIgtEp6Ed0uAYB3ZQny3zhfOVMQAnMQU4XVuEoKBWe6o0d2K7zOzlC3qok3g X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192813158149592); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(13015025)(13017025)(13023025)(13024025)(13018025)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123555025)(20161123562025)(20161123564025)(20161123558021)(6072148);SRVR:CO1PR02MB206;BCL:0;PCL:0;RULEID:;SRVR:CO1PR02MB206; X-Microsoft-Exchange-Diagnostics: 1;CO1PR02MB206;4:zgBLQjGu1VakdDHpOmXvL9RIWPXf8OzIBSW0Ptr2KRlYXffFD4S6orMMPlXxyqt3KCRPR2+FG3PI0H3PuZUzC/4tUzZdUbXOgleQmZsSZkpx+X1psoAyAE/qmbA9FuzccrQZWLLCE9/AwKrCwYJCsrLa+oX0unn6uqOApKWDObQtHlUsoYzrR8cl6QKcQvdsFLqZNy8ZL2UwT4S4c6yXtwsiYfvYyfORt5rPXQZCddvrtYPajaJwm50f8GxERCPQQo7Z+GvxfsIhJlNCBaTZzmYGJHW5JCH/YX7OP9Bhy3azkqz7YLfJgKjutxyL3jv8G1gu0RxzkgwMpGFR6AzUEYT7UZak/IB3uNwr6llHLR7UnOM2jCmgUZG+uhy9g6NGeb2Slhf3tGVixdYwunCav8JlbZV7RDxV95V6Osgx5aw8J2oJiIbgowklRepfB/g1DyEQMQmiJYEn8eAmrIo4DjBVlfBhad0ZlU0329Pe/v89cYwrWN8sdj1ZTSY2Lprp3Bd3Gc3U4xE2O66ndOYwggmUo8jw49+9hUM4P3MeEOg2FCwloYtadMS9lPLFSLA++v3gBebgtDuCcudHYsYjy73SLpXbonuIXu9BQ8pEZqCHc9UHNPLLqOkuSIxzg0pvNg8KGCpww6yCZWysv7KKA556xcbv/8jxWetfzR5NcJYAhf52EEb9h5R7GCUmgww2Qc5PbAuoqrXzgCWIWmH1PO8o8PfmHRfOL+TE1CjQae/9rPEI45uQ+rSOHfoAwVzwybQEwOSFoXHM9ZlGsW6etg== X-Forefront-PRVS: 0177904E6B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CO1PR02MB206;23:f+99S+04Ph6f+xYW7lOOAbnkuo0Gn/+uwuJLFJCrkw?= =?us-ascii?Q?KUsTUQ75EVbQCUjiiDjUcUMy4ot6xzWKrqscwfwSbkRXnY1bnz/ijNG4i2l4?= =?us-ascii?Q?Z9dxN1jf5SPtd6pzlabgIsAerfiLw6nar4VO1M792OLpIIBetI+5QviS6vwD?= =?us-ascii?Q?TpwhOEDe5aV41IQNDPZvlKMiaxHJgM4zASUShVp7z5JtWxxm8CoxI0m5ocwb?= =?us-ascii?Q?c0yTYC/QUEqHY5NiiiojaXaoMoG6aRRodqGB8V2GcxFNfT58iDHUBcpG8L/n?= =?us-ascii?Q?XEX5nIuFmulC/O35uagqwLhJx5mOIloBiageBMSdRPuwJSi2HyuhH1S+ePIa?= =?us-ascii?Q?gHCcu7H3m8k/XEJwQ6LjL7+BCeIyZ0+0BjX2yG4Msop5WpBcuyXeyVinf2bD?= =?us-ascii?Q?6D5SautpcCzLXVrt69zSU0o7/XrRl5BAFqUMLqiwKEJ/ysm8M1AEtts3voCa?= =?us-ascii?Q?OJt/ePyqDh+rQFSMd6HMG/JNXF7s/8LInli84cWHRvFysL5JS+gP1MN1QNyU?= =?us-ascii?Q?w5vRhB54ozX59aapGb7D4KKPqvqjsEVhlX0B7caNyz+UUmOrXAOm5aGN6K8z?= =?us-ascii?Q?VyBJBmEXYaQrIqm14OKyMgsnsQ6+ivxLAb2byFwWubtzJAO6tY+b/cHHV9Nq?= =?us-ascii?Q?aoW4xOUM4+3Je3b7ebZZzuaBlnpi15X8JbYhrZRResPwd2UPkWP18vtR2Xlt?= =?us-ascii?Q?vWHW6qm7mLn5nCoevBURK9rnqnwzXNbHLDd0uA0/C2xuF2Xb7By1AioqQLA2?= =?us-ascii?Q?FvznVgUd2LXPremY6nyVFVWjr+DRNlB64CWcGm+XXccQDe2R3uNpAJZH73af?= =?us-ascii?Q?o254RDj2OPKIIO4eqExlVXNhgS8aiPmDdj7OW3Puko9z6v/5VnYHdmGZNjUz?= =?us-ascii?Q?SLbss6hVOLJCN/gJyWT+yMLd/e9h73ImnYN7nwAsKP020KoviQiYxPyVE2oQ?= =?us-ascii?Q?jxNw+O+/K2AXXqVRwI8dTbum4UjMKtjMMmaXrscL9BRIJxLQNHgJhdPSrrmu?= =?us-ascii?Q?ilJ6kxRw3GZZel7qWLQCqLcgS7BeN+wj4A08Zc2vAt0M0MglRbrd6MCYPDqb?= =?us-ascii?Q?wzXp/QDK5vShaKD6uF//dErt1PotFNSUw9cM+Z2OHERKi7RAfKjdJj/AMUmo?= =?us-ascii?Q?0q0LEFpkuehjdDn53wZiBxPXqgple1nptkSEcs3dvqgzGOFpfbuAjiu7siLG?= =?us-ascii?Q?ig/nWbb2GwO0vN0I9X5gJupkRb90JoR4H2dtMUcohWkhg9dc+g9cN9gkyTI/?= =?us-ascii?Q?zIDH9BC9Djr5OQacjXaHr+CbtTMhnmwOtoD6uiiyGv2pTIlyTjPOlSrgudEM?= =?us-ascii?Q?edI5hk39SBiHVcPNjLgWzw95M5GssQohIg01CwTmBdr5wqNzAxbt/Y+pDUFJ?= =?us-ascii?Q?7YHQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;CO1PR02MB206;6:5YjkmUE9oEEmba9lH8Dinloe27mp8boBpWnqVfyvnvcJW9KgHVkOXcA9mCR1/X0Efs8hMopAIrbM43LGlVgtpbO6ak+SCEoeqihVHCbgQ4wjrcFWU0kAHbeG5F78q2+WPI3JyIiOoCXGWRq2Nb6KUROmEwP3ctphq8e+eO4Y7sOaouTUuy2gWMk+eYy7RS34KBwzPdOxlOlUgf2hOkPEnZsI0H/ckBXvQapQsO8w/H80qo91RIlpaSTB9G394cq3m0itMh97aNq1DTSEZzD5yw4nzSKdq5UipzKwvD7z6CVIC5Su2fH0koXcGc+ejNLnLl64gOV1btNSao/8ufZrOoNsdKC1vo35hnPd/V+B04gmj16gHdhhxDQn422lPmKdgVoS+F67vXEDfOrfVL44LJontNRQ/yTA9uovMCYZBlTwtNRz/VV5qZxPoPnKU8mDkNSBlcHcyTJRz56mm03F5Q==;5:RP6l/q46GqsFc+J4mtUGM+rUhUxIARCCg9732rA+uw0008uPei4SOx3L9vsG7Gi8l2xe69gZN4ZXSK/680jZyunKGgrZ4PkluW2H3dzE/YO59mMWaTYdiXcNgZ5WMJPsEy5iIlabVQudIx6L9wmk5wTmv9Gs86M475evY1PKkrc=;24:IFG9kt1EAH5C+COfzyDNMKnxXy/WgmPHj0PFGRuERgW7M8L8gxeff93QxZlrXEChmKSnk1ZZY7JBUlgIEg7AHKKAjeb8+DShTH2Qa0fpcio= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CO1PR02MB206;7:FqdLT0WIvbK2N8xazPIrgE+31FWfzgkmDO7oWluMPttus2xx2qz0aCFdLufmTmEkEUwyQY3ZplEMzcD191YxHUQndiaJk/9YE4iagrjFp0j5bVQ/rpTAebFxaIYEh2jR4hy1wdC98JtY040FkPySs1phV1t6KdKD+WcaMk1PbvwInCprKUIqs0jd9Lm9DirZ1VpI75ZA4X6ryozkiApXMPtizMG5b7B+Fo1LUH7l+a3pwXcKGqpxMx+8NVpO5MgHM3L1+dwKvPafRQxJKmNkaKp9+bBRx3I9cNELpshRrhqjBgarvah83yc146G1L3KtVH51hm4lrnEtAB6QhmTC6xYwDm0X2rYZZh7nWgI1RBB22Cqydi/PzclukWKDjWk3W1TAqSvzHT0p+pusWWCbddeOjAGIV50vn4e9iBzqYwS9OrgTz6Z07Dc22slhgUQghUGrvf/uuWnwsX5yQWjgfw== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2017 13:23:16.3766 (UTC) X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c;Ip=[149.199.60.83];Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR02MB206 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch adds support for OTG host mode initialization in DWC3 host driver. Before the host initialization sequence begins. The driver has to make sure the no OTG peripheral mode is enabled. Signed-off-by: Manish Narani --- drivers/usb/dwc3/host.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c index 487f0ff..4caa3fe 100644 --- a/drivers/usb/dwc3/host.c +++ b/drivers/usb/dwc3/host.c @@ -16,6 +16,8 @@ */ #include +#include +#include #include "core.h" @@ -111,6 +113,18 @@ int dwc3_host_init(struct dwc3 *dwc) phy_create_lookup(dwc->usb3_generic_phy, "usb3-phy", dev_name(dwc->dev)); + if (dwc->dr_mode == USB_DR_MODE_OTG) { + struct usb_phy *phy; + /* Switch otg to host mode */ + phy = usb_get_phy(USB_PHY_TYPE_USB3); + if (!IS_ERR(phy)) { + if (phy && phy->otg) + otg_set_host(phy->otg, + (struct usb_bus *)(long)1); + usb_put_phy(phy); + } + } + ret = platform_device_add(xhci); if (ret) { dev_err(dwc->dev, "failed to register xHCI device\n"); -- 2.1.1