Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1184722

[PATCH 8/8][v2]usb:fsl:otg: Add host-gadget drv sync delay

Path csiph.com!aioe.org!bofh.it!news.nic.it!robomod
From Ramneek Mehresh <ramneek.mehresh@freescale.com>
Newsgroups linux.kernel
Subject [PATCH 8/8][v2]usb:fsl:otg: Add host-gadget drv sync delay
Date Wed, 15 Jul 2015 14:10:02 +0200
Message-ID <pMtFE-71X-5@gated-at.bofh.it> (permalink)
References <pMtvY-6Av-3@gated-at.bofh.it>
X-Original-To <linux-kernel@vger.kernel.org>
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;
Received-Spf Fail (protection.outlook.com: domain of freescale.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net;
X-Mailer git-send-email 1.8.3.1
X-Microsoft-Exchange-Diagnostics 1;BN1BFFO11OLC004;1:7wSjjuNQZfC/m1sT/B4mEaQqSVkaxaRcxe6Io3kDZLPay61NkwuhX+/dHPqWM6fNJ/VietagQR6xn3/YemlkswS8DySYpGjHieKe3HtGWn9rKGgpPGtG8EJb/xS5uWqN6h1jnxmh6K9qIsFei+v3tXscO8l6VRcAqscp0Je5+buh3KhD3qyT6EWYGCKrQ4Lp6O6dkyq4FIVFld6wMgI4UD4i1RkqKbNbDx05g2s4SV1WTzzgmIc/1hjoIszfDXR1sQ4t8Nj9i5sYYQmxsD6/oZHHdoxwotzI4aBGiJ2hQzuefJPyLgkN72Zo88zXTerkKRzQ9L0eZRw/hV9wiKEPPEc2+lrQs1RFa8FX/VFs7MPUgEBG66BVZUNhvXF4r9e2wtTE+Xcrl8ZbctsVn0aXb+rBU3kA9SMHHYNunPdQq1KFRY2+1o+0jKN93et5Xrwm
X-Forefront-Antispam-Report CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(339900001)(199003)(189002)(48376002)(19580405001)(33646002)(62966003)(50986999)(85426001)(105606002)(46102003)(86362001)(229853001)(2351001)(87936001)(36756003)(19580395003)(76176999)(77096005)(50466002)(6806004)(77156002)(5001960100002)(5001920100001)(47776003)(2950100001)(104016003)(107886002)(189998001)(110136002)(106466001)(50226001)(76506005)(5003940100001)(92566002)(4001430100001);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR0301MB1574;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;MLV:sfv;A:1;MX:1;LANG:en;
MIME-Version 1.0
Content-Type text/plain
X-Microsoft-Exchange-Diagnostics 1;BY2PR0301MB1574;2:wxLyHXPbJP/WIYSphRJY+Bn2vI/8yuOd8vJEVs4aWmw+1bz6ylUTxT5h4a/x9AwW;3:IIF0dDMCwpe3fSh0TwFa6htLPgOSrX9ktw7mhaFW+lnFDs+koiRn3uR6ZaMnEywvMfp/12FgeugC1qD+j33qF/RB50v4nUHjdJsZ5+mZWuViyV6PorH9AVCGM+6pz7Vip3aCtPelYsRRXuIMqJ+WSqiIASP8mZG/C/+ODk8Z8CZhyOouohg7bHumjv6PcX3JwMQgQ99qmTv5yzOfYFZ7Y4LlyI1TXRE7Acs/qaVWr9s=;25:JMYvPqa+jVbTvrqd+krRJeLPyQDhSmYWLxWKKNfq7KPjCmlTLnAFLef+fhqvFHPah/xVh6Vjmf6XNN16EdUlzJWJ2mVhsIyemoecda35ItQ3e6cwAZ8no3+7lT8thubU9D7Q7e6Eucq+KKsic7sJakr/dwhrRzv5KxJ4KA1i1cKybJ/jdS1lItmCIFNq2cE9i+uvF/qlah8yKFli4ZtqhhrIV4f4PzTxjICg3+cwiPMckGSajX8EAM0TtCDJizxATT+5Nv83FYnkgrLMtPx3qA==;20:jVPvU9rXBI9FlDZI01/PjRPhLtr8rOtKmSUdTiOHiiZ+EkBtMj3zpsKygD9A6NXne59jxjGYR5JRE6FoHIMt0G8fiU8XeHM9f/Ce1UDsKOOY6w5tuLQez513ISRBp7VynDW1bKDrRJjlSrPdrZpVDCRL1JyKJJSUyYiD1IWkvSuJkdCHfiW8esrEugzv0+LswsrICgZEQEFXnXl+bo5iUUatv1GfcrvZu4RcRqMd07erLDdUwBLPm+uNRQOBnrmWaq6tIma4CNgOAtz2D7ZMz/S9M3lBsRpUGuPmbXa7WfpJ1v31V6VACX26fLvGCF6gef4nSi3F5oCnIz0395ARK0VxrsINpi/UMMl9AnrqWGg=
X-Microsoft-Antispam UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB1574;
By2pr0301mb1574 X-MS-Exchange-Organization-RulesExecuted
X-Microsoft-Antispam-Prvs <BY2PR0301MB157490F1234787372F483910E09A0@BY2PR0301MB1574.namprd03.prod.outlook.com>
X-Exchange-Antispam-Report-Test UriScan:;
X-Exchange-Antispam-Report-Cfa-Test BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BY2PR0301MB1574;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB1574;
X-Microsoft-Exchange-Diagnostics 1;BY2PR0301MB1574;4:CTcy6MWMVgit1hnhcRYZkv1WNN+4m4z+ufuehtUk4tbSGNWMeGTulCcp0+ZHIVdvDKw3b4yMBcQ0fJODs1StxWX8JexrymbAoh0jRQC55p2tAjNsqGhScbX4/N9C2H8T+khldPbfwiTT7geNNYxxIuQ9T66675l5dge6j6XvZyDdDTkG7i15/zGnJsCPCjzk54tlVol4X4gpk8nUIjfY9WYFajUfgUi/Aw/eM5Yn6QgGcvfRDbtgyMKgKqrAheA0Sy2PMOzFkoNeiYD0ev7U/mke9iQ1/BqDf+4/f+LI/Yk=
X-Forefront-Prvs 0638FD5066
X-Microsoft-Exchange-Diagnostics 1;BY2PR0301MB1574;23:CtNJxR/CRZYbv/iom8Q46zFUDxncpNKEfHbFrPt7u7By2RiMbtS9AMO2YXaBEnavCh9mxaRqh+cMy5OcgYRBGKnvICl3OVqxQrD1VFQTxqmoV8nD0OnB2+HqYzzvGczg+qKgikpxfUQI35kyqNN1qW61SeqZMSIEgHfdg9WYHDh0CLVgp/K5MsnbT7vBbLP7sS7LgHCrmb3CPao1llp75rQXSeo5iM4GY2onHuXC/bx+iXMXMVVghnlN7f8eLVOqhnyMhlQQquBaDcODE/fXicF8O2weaNrN0TGD7TWw4QwD1zhBLu2HGwCEOUwHnfJqaxyRQVX/6Z3z4DfVeKSkhXu00ASmdo8SMa6TtxvfYjCGjfRBmHXqUJAeNIzrLYVvEkE/if5c1S/mKwls+mch8ObXuH9bUQDGXZOqv2nReiTN5Z1LlShFjZzo9KMREO5QoouVh/p+LayhRrEyvlaEqWnlyYrEiO1YoQhlsJICZVb5Sx/HLqzRDwjFmrhk6l2ylBoElJoJmAxoQ8ed0JsMklLG1OlvU1Xk/rCVvm2JZR1UKLmOHwBI8+e2etArXJLFGlxjkmLWmaaQO7i8yNbl69pODIl7NMCXFmFnFF/cUydF17LTsyFeobrF4sQmIsHsyKsB2rMlkAlZy2md07Bu0TCak0O+7iU+t4osOnuiRBB7BtKeG0zGxzCDNTC9EETSIlDs8EAhJGcYJzWGn5bkaCMTABJ8oVvJ3esa8Fq34w23/JtJNrQ81P+m1ThjOO5S94qtnVfyvh99dos5Y+DoI/xU+55NekLS1u5lgLfcUOxYK84fZQD78bdAmiNgh9KPP5bLAiSFC0mMQ5i09kwOFL2RTHbdzR0acu/zyYKFaD5A6qEZqeHvMJ68OLB1s6o7YQTXyfrC84w1xtl4hosyHwlpiLl2ku5Djbgn+hqtU77mFrf9vg4M6oCnQlJwQRbPf2yepsoBqB8oCI07HWKAKaXdkCAJG5GFCdXZDpJOCcgUZ2/Ece1BuBH5s9Xo/d/3
X-Microsoft-Exchange-Diagnostics 1;BY2PR0301MB1574;5:j2Oh9Ytr2jSaopvGN4ieoeziO7FGub2m8moU2eAiG5zrYhhnzGgPI4wrh8zzMR+c42ERgODJZ0tnQnu7AEEBkZ02IlwQsKBI6e6REWfRmc9pujAVb+mJRcJ3QRismT9CAJv/5GE0HDM5czLjRQNQxA==;24:3XVBc+tQFcl/SmOwX1vTmz+eST8oUphMXvGVBNHe52B2mk9NMo3X64mr/58P5S8rX6GEAsGNQcrMrhb5s96VOA4cSAUatK04HgHHYcRvfjI=;20:1CglCjWyizCxsX6A8SizE5sL5fttQjJkxKGugmaE8zTcPOa0XE8KzmVUmu2DADJTyFkUVrhuuGn7mYkaMSr8pQ==
X-Originatororg freescale.com
X-Ms-Exchange-Crosstenant-Originalarrivaltime 15 Jul 2015 11:50:52.9839 (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 BY2PR0301MB1574
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 43
Organization linux.* mail to news gateway
X-Original-Cc <balbi@ti.com>, <stern@rowland.harvard.edu>, <gregkh@linuxfoundation.org>, <linux-usb@vger.kernel.org>, Ramneek Mehresh <ramneek.mehresh@freescale.com>
X-Original-Date Wed, 15 Jul 2015 17:32:52 +0530
X-Original-Message-ID <1436961772-11482-9-git-send-email-ramneek.mehresh@freescale.com>
X-Original-References <1436961772-11482-1-git-send-email-ramneek.mehresh@freescale.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref aioe.org linux.kernel:1184722

Show key headers only | View raw


Resolve synchronization issue between host
and gadget drivers upon role-reversal.

Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Reviewed-by: Li Yang-R58472 <LeoLi@freescale.com>
Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
---
 drivers/usb/phy/phy-fsl-usb.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/phy/phy-fsl-usb.c b/drivers/usb/phy/phy-fsl-usb.c
index 689516d..5d678ea 100644
--- a/drivers/usb/phy/phy-fsl-usb.c
+++ b/drivers/usb/phy/phy-fsl-usb.c
@@ -544,8 +544,18 @@ int fsl_otg_start_gadget(struct otg_fsm *fsm, int on)
 	dev = otg->gadget->dev.parent;
 
 	if (on) {
-		if (dev->driver->resume)
+		/*
+		 * Delay gadget resume to synchronize between host and gadget
+		 * drivers. Upon role-reversal host drv is shutdown by kernel
+		 * worker thread. By the time host drv shuts down, controller
+		 * gets programmed for gadget role. Shutting host drv after
+		 * this results in controller getting reset, and it stops
+		 * responding to otg events
+		 */
+		if (dev->driver->resume) {
+			msleep(1000);
 			dev->driver->resume(dev);
+		}
 	} else {
 		if (dev->driver->suspend)
 			dev->driver->suspend(dev, otg_suspend_state);
-- 
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/

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH 8/8][v2]usb:fsl:otg: Add host-gadget drv sync delay Ramneek Mehresh <ramneek.mehresh@freescale.com> - 2015-07-15 14:10 +0200

csiph-web