Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753651AbbHMSOm (ORCPT ); Thu, 13 Aug 2015 14:14:42 -0400 Received: from mail-bn1on0119.outbound.protection.outlook.com ([157.56.110.119]:26443 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754046AbbHMSMZ (ORCPT ); Thu, 13 Aug 2015 14:12:25 -0400 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none; From: Ramneek Mehresh To: CC: , , , , Ramneek Mehresh Subject: [PATCH 4/8][v2]usb:fsl:otg: Signal host drv when host is otg Date: Thu, 13 Aug 2015 23:55:01 +0530 Message-ID: <1439490305-29215-14-git-send-email-ramneek.mehresh@freescale.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1439490305-29215-1-git-send-email-ramneek.mehresh@freescale.com> References: <1439490305-29215-1-git-send-email-ramneek.mehresh@freescale.com> X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1AFFO11FD036;1:YgCAl4TDNmtTkow80elkUNYn5u1KS3hbZKZ4mpCXZaOF42JO0Y7Lug6r7TsZtCoPbDlz9Tv/zAn1D5mFYU2i4J+Eh7/PE3Szj/jtt1z96jnSTWJIeY7ROJlVI9FQleHxWFoknWEmibHi+fQhCnIk6vomVmb5F7SDy9VHXpfqG31jLr4C8Tw26HkvyITfEFUGjef30P3awptgpOmGA2/w13vpNE/cgCArhyj1ocFFkK3WbbnPI4WtxxYQcmCWMEum838HXFMA99F0595O4Jpw7IKKLbnJ4fDQUUpeui8Pijo+r+WeIGJMR/VopLEWhlYOj+BNmFYD0YirhFLQoUyVPR9oz8AxGpkGxZUYfgglll1vu/dZ4ECi2LuE8P3NF5tREceJonE4uWs/WXaSXMaK0g== X-Forefront-Antispam-Report: CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(979002)(6009001)(2980300002)(3050300001)(339900001)(199003)(189002)(77156002)(19580395003)(19580405001)(46102003)(6806004)(48376002)(85426001)(50986999)(76506005)(86362001)(50466002)(64706001)(76176999)(189998001)(47776003)(4001540100001)(81156007)(87936001)(110136002)(107886002)(5001960100002)(5001830100001)(5001860100001)(5001920100001)(97736004)(92566002)(2950100001)(105606002)(5003940100001)(50226001)(68736005)(33646002)(62966003)(106466001)(104016003)(36756003)(2351001)(229853001)(77096005)(4001430100001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:CY1PR0301MB1580;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1580;2:WY7+OGQsP80VbcExvgWAzEYsxovLnjB0DkyXuSeXW6NeqususFKv/ruOQK6xuUdPWq7ydNrbP7cubV1gAJqxharDtcwnZfEL0iS7/74zQH90rvaYK0qg+zyVl759/Tqu03lQzvBJx1u98B68kd2nXilvvUSOL7kHiaptcCzGNlA=;3:XnXhEW2D9ujh9o461Q6XNRd2paKCjNrj2zMJY/Q9NlNEoLz3We03GslI7o87x88Q/HdrY2GYIqJixzZvRnXYyy1D+aWLxxjM9Q6Tv5jHnPxuHanaxWf+RW3fg6sMU/mBEkx6Rm//ojnb7LGGgh8NzXiCnuF+/Tc5s8jeruCUiiUakal/fTC+CAjhF3NKvR+ra+YLrRQiNOrxQvIl4XpZo05LJ8J76YuWtDwgYcmZkKk=;25:xLhVxG/CnTlG5mPG9DYteK/PBVOJE3l4RxkOjhdgVIUlgP/DI0Hs8RZzgbIuJKRGQWOJqveQQc9T7M2VYL89Kn4lohHylOXsWlpUmjYfjKzI/LvMBQIuNrct+BvtLg2K+G42kRqSAzBZvwPh37nVHoLPNS50ArA34YUdShsL6dQdqVoEYjZDYFGAIHNkAQlP5q2s4ohE7ozpEf2XZbHXsevWBcm+y4khXzAwiQep5xHL5mDu3hZputTDR5a/JsLi X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1580; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1580;20:R+WlJpybfZbcdslHVtrRp51E1715PVxNOzn0NqupgE6DgASQOxZBzawGc18vRh1/B52q6QnvGn/f2ZQ/VOpcpG7/UrjjLI4IQ3MGZnHyFeD8pQZATl7mKw2vcD+S3bedC/dJicneyzbLdkkyPOVJ9pt0iKCeI4FWemAvnVXhSftseCLlDSMQL02CcoABKHb2HSRdLW8MoHO4mW95c9RVLCMwEa0aNYcD2mes+iXAo+ATSvx6hlMj/SupVjgXaZ/cNOVmXvQCiZlGr+XlqQqYz4wEp8xn+SilVRqXlFcREQCyuvweerbOCZk6eDGOgjn1DhaN+kVwyvnWG5A/su1deLynfN8hQm64L6vcTfBZ7UQ=;4:fKxOeyqojakk2UUrllb5P90XwhPk0HWcAZ93fCq7eYETrNg6XRZu3rZApzDHeO25EYGbNt/V7lPbjs5n1ZRc+NLR/BhgoZMFmDmNd7BNQO2bUQnKKSBATQWST7Nrm38/5mJ5hJWBvbSMOmrENZcYXr/ejTdQIoOsPGDu7041giBKopBLdcDc5Iv5hvuc9JPKegSHQ4AZK13uj52zmAxXJjiWF0jbcki1XbY6SHlkiWdRD8Y24YuIqlM2vntQDED0DLOuIZ8oe+u6X9E7drFuI7bjaePK+AcPGH7H7XWBOsM= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:CY1PR0301MB1580;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1580; X-Forefront-PRVS: 0667289FF8 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY1PR0301MB1580;23:zcLdhir/U+FMIiUPenN7rNIiWQH9gmVK8+lMwRx?= =?us-ascii?Q?SHHfncfoyy6a/L4z1Hl495cSPDXOOVMNE++ujSwty6xmcwsd3fQY7bt3eYED?= =?us-ascii?Q?MFIFQt0DVducybgl7rKO+EeEo4tPjGemBxtp1WTFjuAb5fmzI3u5CqWb+dfd?= =?us-ascii?Q?o2ztM0sJmS3jhK1bcL5psyxjZ9+lrkDtINLpBxEY+7HQl3c8YqvQn0fOtX/k?= =?us-ascii?Q?I6B7uuByrOKvZHBGIwcRJO0SZNkb2JeYr94sWABPqqU19J6PZNMcDupMuwIc?= =?us-ascii?Q?+UK51o/ZfTCoAXImalyC4XPzK9Y3hEoeUtOwaQo0WlSw4seA5Vmk9PyxoP5Q?= =?us-ascii?Q?7r+YzHFwlWcDIZBMmngGFJicV3i4i3ncv2t0nH7jr2Gm+MZjDA24fxLgiN8Y?= =?us-ascii?Q?F0UcVQ1IMoj2aMavOL7CtCtDNmvWSNHM3QQD6drmZwcWrkyld6Js3v7pUU+U?= =?us-ascii?Q?1kPinE5qqSLvBQn6IB3lmnzGhfRo9K59eQ1ZyN74LoFgfZhoYIvqTB4NvTa2?= =?us-ascii?Q?0RgnYMnf/hVOAFCQkBZ9UbbjlorwWoeVCni+WKPM7orBjNXkmlcoopd5BThI?= =?us-ascii?Q?ibc1u+D3Bou0RM4G+1geMrvPmKFcjd6TsRBAkyd8/BGXGEKs0cTnCTLDqz0A?= =?us-ascii?Q?mrJYAHUZHEM/Ip3XqPWkS8vmJeoNEcF2DlFAmVARug0f0ydrYzLWFsP44pNE?= =?us-ascii?Q?QUYbkfg1wG0lvNUpI0vpJPm0pmQE8dYBAqxHwMYVVOgjjc7TPIa+8HNq8Fd4?= =?us-ascii?Q?WYcAdlDykEv3dxkWIGA/uM0GNaQB/ea12zjUpEmdzMkETLNR7X6zi/fHCW9P?= =?us-ascii?Q?0XGyEi8BZITngGKUZFYMz6VC4cL8xgvy9oKzPwciJGlTGgn+CR+qlWxIKSVj?= =?us-ascii?Q?qMHnXFzIlHqjUj8DkSbuXDkpvplAmaMAwjYdx+vgwAbGsEavJr9gA3AGejyj?= =?us-ascii?Q?sQKckRikrLJYuUdTqMoeksk8LVtYIyZ8DD6k+PYuO3kAbjkfWjlBvZHdQ/tk?= =?us-ascii?Q?CVPtA4ox3Mj01Db+hi/2TcKJc+uwGAFm09diIPhrVcRcF2JvZQKF1jZww7W0?= =?us-ascii?Q?grrvn2M51xODPbnn0z0sOKX0+/fMoaio10wUdNuBml84cKa+iETDj+ocz57c?= =?us-ascii?Q?ZSnulARKvTQq+KS0J+7AoKO5OXeaQIy8/ZyopTsa8phTOMGZA9zAI9rzOfQl?= =?us-ascii?Q?jtXRHhswo7kWZh3A///XqtsCsJk6Gajz0nkbDMXZN+C2hz+Nzn+7IzWhW4rJ?= =?us-ascii?Q?URQaWM/h297q6Og3SYss2L2PmQ6TMbIw0Os+YzmH40kkrmW2svR7W2Q58zTK?= =?us-ascii?Q?EDCWTZr8e6jhsdujb8o6WqtA=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1580;5:YtQQ8vfSUx6uISGgdPCWrLr7aifaO1Y7xqno6yNjK4WhuLL79asS0JfnNwRDWLJmlbCmA4PnnT1JQzmTzH8WC2mgswPLX7EPTAQcQ8FSeum7nDjpzlhBIHshKf4YrFdyzMjfrBPTowhYySF6EZefuQ==;24:ur83zNlk21CPHssbGe/URVZxC8obkhWF/AjX8q7m94jHOvnsEpJuq/Rrr9wbiBZpmseECYXoCk36fNXNVczDXBrn3MYnuiDc2z3GjkDccbU=;20:kEB1kaPWR7fy3EOGo9JuuTL4TmnBtdgxdxABJeJKwJFc1jJpACtwWWVJMvzcuYjnbvYlA4tkjGz+9X2K9NFc2Q== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Aug 2015 18:12:22.5076 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.168.50];Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0301MB1580 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2192 Lines: 62 Set is_otg boolean flag to signal host driver when host is running in context of otg host suspend/resume. Signed-off-by: Ramneek Mehresh --- drivers/usb/phy/phy-fsl-usb.c | 7 ++++++- include/linux/usb.h | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/usb/phy/phy-fsl-usb.c b/drivers/usb/phy/phy-fsl-usb.c index 4e58aee..815c22c 100644 --- a/drivers/usb/phy/phy-fsl-usb.c +++ b/drivers/usb/phy/phy-fsl-usb.c @@ -463,6 +463,7 @@ void otg_reset_controller(void) int fsl_otg_start_host(struct otg_fsm *fsm, int on) { struct usb_otg *otg = fsm->otg; + struct usb_bus *host = otg->host; struct device *dev; struct fsl_otg *otg_dev = container_of(otg->usb_phy, struct fsl_otg, phy); @@ -485,6 +486,7 @@ int fsl_otg_start_host(struct otg_fsm *fsm, int on) else { otg_reset_controller(); VDBG("host on......\n"); + host->is_otg = 1; if (dev->driver->pm && dev->driver->pm->resume) { retval = dev->driver->pm->resume(dev); if (fsm->id) { @@ -510,8 +512,11 @@ int fsl_otg_start_host(struct otg_fsm *fsm, int on) else { VDBG("host off......\n"); if (dev && dev->driver) { - if (dev->driver->pm && dev->driver->pm->suspend) + if (dev->driver->pm && + dev->driver->pm->suspend) { + host->is_otg = 1; retval = dev->driver->pm->suspend(dev); + } if (fsm->id) /* default-b */ fsl_otg_drv_vbus(fsm, 0); diff --git a/include/linux/usb.h b/include/linux/usb.h index 447fe29..2208822 100644 --- a/include/linux/usb.h +++ b/include/linux/usb.h @@ -355,6 +355,7 @@ struct usb_bus { * for control transfers? */ u8 otg_port; /* 0, or number of OTG/HNP port */ + unsigned is_otg:1; /* true when host is also otg */ unsigned is_b_host:1; /* true during some HNP roleswitches */ unsigned b_hnp_enable:1; /* OTG: did A-Host enable HNP? */ unsigned no_stop_on_short:1; /* -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/