Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754019AbbHMSMJ (ORCPT ); Thu, 13 Aug 2015 14:12:09 -0400 Received: from mail-bn1bn0105.outbound.protection.outlook.com ([157.56.110.105]:51721 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752838AbbHMSME (ORCPT ); Thu, 13 Aug 2015 14:12:04 -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][v3]usb:fsl:otg: Signal host drv when host is otg Date: Thu, 13 Aug 2015 23:54:52 +0530 Message-ID: <1439490305-29215-5-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;BN1BFFO11FD001;1:3Yq/Kr2io6Yykxtflt5YYZ/83YxIvbj7qTgW1iNUO+3N3wahInwfML/Bpc2vISBX6QKgLSJ8LidgEXZgd/vORyPcweNbC1p/BFhMN25RPegP/rsX7LamGnEYBNO/WVF8qVK/p5aoJZw+lG0h/c8L6jAm9+DQUSWcDHSUFrlmcc8P18HtXAQqsobUK3mUdN0PUhn/aTaofHmLsdXhLMjyzjP/lxB4U4NeJIr3mZdt6cmF7zOJ99dYA4dnUwUfhkB4JX+0uXS2PH4KdxTVCdkFZrDzac3VNu6pQ4eJs6XYRkFSzWO43Fl0ODPHuX2P3KL/HRXaG4O8VXWqqE434L0XLjZs9i1Qd7HFBC1OzEoP6Avl9a2vS1gSxtbxKwkxgTg6rk/fYZaDeV/ckUpbd04Ycw== X-Forefront-Antispam-Report: CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(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);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:xs4kDb/lIzqO+RcYAsk9L43G8W+CySxBHiAJkGd4WaeelHANCmfj8xtFzXWpwqH4SWurOC1H+5iS8Lou7spugrAn/q+4KAmlBrQYf6ihsvSsOK6w5P+XZ2/8joMlrs3YfwLep0kXLwGzrGuENmvhQIpaSzZcRuTiInL2U2nNqiY=;3:CazgZytd+w84bsKOHY35c0gWHlxRbGOwEvcesdtm+oVy7RsabY18tHXXikWp8CF365Nmy4lGG3bNOeahTeq5rkgedsFwVNtz0LoEKjamxMTexxuphxTDwMyjBczUstdfJes6sRQ9/g/oBl/qMKO7wiTCeIzLBrxOBriBE7CZlxQPcSx22o+/ms0+FPtGNPGscp6L75d62iDjt7A8rANAJqAe44F7vutt7dGXNJWcqI4=;25:KdF8EfwB9zG/KuAaYCFzLGW9Jewx+THD7MQgadGFN6l6oJlRQ1DA3sDBOtR+fbcIko5JVlaTORbchR8N9mHBQeitrwPpX4Beqr+zsDx1Zrgia27fsE124aDLR7YJWrlLuI0dWL7lU94Tze5VoMZJcHz/mpwiC6PNeqDx0fznzDzo/YkSpEqOe+B8JWcFPbCfCA8QqxjJKZQTZKm5FocUXVSB9OZFMFGfm6NnKvCQYMf7JVwwzH9EEo60UYtqNWex X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1580; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1580;20:pb27bFLIpZD2GwbBkcvCo36m6ziN98yLYJd+ekrblHuNhsTXWoxoZ7s5coo4/mTXQrjeQZz670swl3t8nai+oLFdSn3Yz4blF91Ncnv/fmPkEWNtwqT0iPWulMc4vGjlVf5yl0kupLvm0JvoY/6NuvVPzhyzdFySGAqe+1v6VrdUE+Z96KWCpFeTeWqGJdgWzK8Xm9Lewc3Qb4Apdf3673TFjJLRVDo+1LEXazvpoOTs4J6IRBG8WEVo7ATd78NQkH/nXz+yf54PvgkamDdwjLNSV2s6/H7Kta1v+iOZa+POavrz7Et67haT2qmHhJS5e3tPff+DYEh+/R6WClmw5g1L8P+Qe0xwUj9RXt9HT3g=;4:JQqHNud8kYM9RG3IhwCBbSE8TBtrVM6rYkAlkDt47xlHtvnOZCdD1EToxRJYGQKqO816iIWZYAr6hKhJMTXR2wj6fwt+XXQKb8ihFqf4Vq6A1ogiQHMZO74u3AIKz9FQ+XyhR2A9HQ/6G3QlmPVaxGqRv8cq1lhp0386VU1S0aQeJhu6/D33irxK8VMGDtoQPL6wt7uYEF5fsgzyEB3gEKueU/haMY5XM8pPa8JTxLTAvi0FRlYxutp0/QssqydftuzvGiy9pkwlDXe2i+xK7lj+jREssDp5I+1J7W3CVEA= 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:fpcw4ERVz2AMbif4ZPPEsT4wDVFYt5DWKqZk96u?= =?us-ascii?Q?ZRQ1SLZTrtZcNDmvzxuDCbXb7ULVH0SgUoHDSGAc//cP9QJfSEImdOyrAalt?= =?us-ascii?Q?MN5nzS6tMFra4N6tjFcQxk/Lg3xqFfBTXNm5oos001YlukKCELrbr+85mZCr?= =?us-ascii?Q?mXBaOACRcmBRU9eyqjdFNLpTXwNbY00UDo4f/3SbPvXPCVKfAkcYSJAta97F?= =?us-ascii?Q?ZkpSezHsM3KLhe6SZcSapjwwP3CJdypwetlbR99YbUVynRkrjNGsVg9yT8+W?= =?us-ascii?Q?rlYsl9xV1stAwzr9xe0DWmLdQgG+FmAK0a9T9fCRV+eGqKe3VDg56fAWJ2BB?= =?us-ascii?Q?wO1Kq9BnD9jA3kCanFE1fCImNyuM/O0kzeO42uu96dNZraHJwWM2YMlouiEp?= =?us-ascii?Q?9PQs8lPuySOA5ohYdBrUAHZ77VGfNGuKoBgtddOy8Wql5UTTpfDLWYVuGxBW?= =?us-ascii?Q?aoYZHVuqnP3S7YumWnHkTGqmVzD1/YHaWt8FrMcp59p7WwGh3f0u84ZqY6zN?= =?us-ascii?Q?1rPlRtdxtyzXkxJCPRH8/6KCsYFtOQruxDKhruCCVx5GWtUnm9bP+/7Yh46u?= =?us-ascii?Q?tZ/P9qo3Ofc0bcUqF+JeoQoYJN49QN8CwuCWne0ghPHOhJ0YtAcRgxjgS6ze?= =?us-ascii?Q?FNqHoNy8xupeO9FvBldPRd+OkWt03unNoROGP92p9A/H+1OJbIMvS+FOz0mW?= =?us-ascii?Q?EG9r7djStfIO48RHx0rHho9bnxfQAXn1sgSpi3eeHirC0MAsz66OzKGvU70t?= =?us-ascii?Q?u8c1WhUIfF9gEj7YSUiFPteVvvNjLzORMSX9LXbk8UHwIN1ym+rsp40yNjxK?= =?us-ascii?Q?of4Kfli7mrNtFfqzYZ0oB0LLk0Y7Tw5Wdgfapn/7lRssMiAb5omyUaZf7sYX?= =?us-ascii?Q?0fEk518V6/YLXsstKWxMjZeSqYmUK9E7bkAc/Qah07KVJFweJuX+tfHGClDO?= =?us-ascii?Q?aIJaAKI0QK1fwOdVxBYWlbexhnllGrpomG3H2enKG1f9/Jd5hzeSOpSGV5Pz?= =?us-ascii?Q?dZA1O1aZ8t8dzN6+GlPQUKC19wM3xFVuXrGO4gTXTH9SdduIFQlrMZxmPvXO?= =?us-ascii?Q?0fU62ZgfA2z8Lwr3rEGu+h3WL8Z6bPCbzvvmQi9V7lz0YkCdR/9ur1xbvKMZ?= =?us-ascii?Q?b9P6rPiQuvx3CBxEH5p6hanQjM1QlKa4m57QYlr/6eE5rO2v89303gKbSVcH?= =?us-ascii?Q?IigknygPR61D6o4Jn2+GwUpAA/PEOPa5UQXkcXAmqAwZl0ulo1sOLCh5scA?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1580;5:ILPcqXDHmEmlm2J1JZwBiKrkqw8paIZr9eZFvBA1Eyp7zkXZujUoaqd2/BNpKlytFJ7UM0FmzJc3yoJTtf+3Fp9/0Vl1csy3lEbmG2EShUrgNByTmWgUt+t2Ubaq07ieG3F5iSJrQuyj+55KMOAi6g==;24:xI5DY2F4g/S6n4xFEVoq6O0CJ/YTkAD6RQzjpxJoCJ5qWB7y1Dswrk7j7qzrCwW3+wqEZ2qEU5rwTxJ2zg/0VfPYPO3nkHP1Dv9drt5BpwY=;20:Vr4JSGbisqse3cggJcdM2O3QjsUQB/gyBLmBgcVmAoWJyZ7z2BxpJA0RVhKkEUe//tLyXyXnmwqML2Ng5w9uKw== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Aug 2015 18:12:00.1855 (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/