From: Roger Quadros <rogerq@kernel.org>
To: Greg KH <greg@kroah.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
Krishna Kurapati <quic_kriskura@quicinc.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Next Mailing List <linux-next@vger.kernel.org>,
Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Subject: Re: linux-next: manual merge of the usb tree with the usb.current tree
Date: Sun, 28 May 2023 18:48:12 +0300 [thread overview]
Message-ID: <f604f836-7858-6140-4ec1-9ba95cba6991@kernel.org> (raw)
In-Reply-To: <2023052846-surfer-spore-e873@gregkh>
Hi Greg,
On 28/05/2023 17:28, Greg KH wrote:
> On Mon, May 15, 2023 at 02:01:08PM +0300, Roger Quadros wrote:
>> Hi Stephen,
>>
>> On 15/05/2023 05:35, Stephen Rothwell wrote:
>>> Hi all,
>>>
>>> Today's linux-next merge of the usb tree got a conflict in:
>>>
>>> drivers/usb/dwc3/gadget.c
>>>
>>> between commit:
>>>
>>> c8540870af4c ("usb: dwc3: gadget: Improve dwc3_gadget_suspend() and dwc3_gadget_resume()")
>>>
>>> from the usb.current tree and commit:
>>>
>>> 813f44d57e19 ("usb: dwc3: gadget: Bail out in pullup if soft reset timeout happens")
>>>
>>> from the usb tree.
>>>
>>> I fixed it up (I think - see below) and can carry the fix as
>>> necessary. This is now fixed as far as linux-next is concerned, but any
>>> non trivial conflicts should be mentioned to your upstream maintainer
>>> when your tree is submitted for merging. You may also want to consider
>>> cooperating with the maintainer of the conflicting tree to minimise any
>>> particularly complex conflicts.
>>>
>>
>>> diff --cc drivers/usb/dwc3/gadget.c
>>> index d831f5acf7b5,5965796bc5d5..000000000000
>>> --- a/drivers/usb/dwc3/gadget.c
>>> +++ b/drivers/usb/dwc3/gadget.c
>>> @@@ -2700,21 -2699,6 +2700,26 @@@ static int dwc3_gadget_soft_disconnect(
>>> return ret;
>>> }
>>>
>>> +static int dwc3_gadget_soft_connect(struct dwc3 *dwc)
>>> +{
>>> ++ int ret;
>>> ++
>>> + /*
>>> + * In the Synopsys DWC_usb31 1.90a programming guide section
>>> + * 4.1.9, it specifies that for a reconnect after a
>>> + * device-initiated disconnect requires a core soft reset
>>> + * (DCTL.CSftRst) before enabling the run/stop bit.
>>> + */
>>> + dwc3_core_soft_reset(dwc);
>>
>> Please drop above call to dwc3_core_soft_reset().
>>
>>> ++ ret = dwc3_core_soft_reset(dwc);
>>> ++ if (ret)
>>> ++ return ret;
>>> +
>>> + dwc3_event_buffers_setup(dwc);
>>> + __dwc3_gadget_start(dwc);
>>> + return dwc3_gadget_run_stop(dwc, true);
>>> +}
>>> +
>>> static int dwc3_gadget_pullup(struct usb_gadget *g, int is_on)
>>> {
>>> struct dwc3 *dwc = gadget_to_dwc(g);
>>
>
> Can you verify I got this right in my usb-next branch now?
No, the end result is not correct.
Please apply the below patch to fix it. Thanks.
--
cheers,
-roger
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 7d59e0f43fda..578804dc29ca 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -2702,13 +2702,17 @@ static int dwc3_gadget_soft_disconnect(struct dwc3 *dwc)
static int dwc3_gadget_soft_connect(struct dwc3 *dwc)
{
+ int ret;
+
/*
* In the Synopsys DWC_usb31 1.90a programming guide section
* 4.1.9, it specifies that for a reconnect after a
* device-initiated disconnect requires a core soft reset
* (DCTL.CSftRst) before enabling the run/stop bit.
*/
- dwc3_core_soft_reset(dwc);
+ ret = dwc3_core_soft_reset(dwc);
+ if (ret)
+ return ret;
dwc3_event_buffers_setup(dwc);
__dwc3_gadget_start(dwc);
@@ -2753,25 +2757,11 @@ static int dwc3_gadget_pullup(struct usb_gadget *g, int is_on)
synchronize_irq(dwc->irq_gadget);
- if (!is_on) {
+ if (!is_on)
ret = dwc3_gadget_soft_disconnect(dwc);
- } else {
- /*
- * In the Synopsys DWC_usb31 1.90a programming guide section
- * 4.1.9, it specifies that for a reconnect after a
- * device-initiated disconnect requires a core soft reset
- * (DCTL.CSftRst) before enabling the run/stop bit.
- */
- ret = dwc3_core_soft_reset(dwc);
- if (ret)
- goto done;
-
- dwc3_event_buffers_setup(dwc);
- __dwc3_gadget_start(dwc);
- ret = dwc3_gadget_run_stop(dwc, true);
- }
+ else
+ ret = dwc3_gadget_soft_connect(dwc);
-done:
pm_runtime_put(dwc->dev);
return ret;
next prev parent reply other threads:[~2023-05-28 15:48 UTC|newest]
Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-15 2:35 linux-next: manual merge of the usb tree with the usb.current tree Stephen Rothwell
2023-05-15 3:50 ` Greg KH
2023-05-15 5:22 ` Krishna Kurapati PSSNV
2023-05-15 11:01 ` Roger Quadros
2023-05-15 11:36 ` Stephen Rothwell
2023-05-28 14:28 ` Greg KH
2023-05-28 15:48 ` Roger Quadros [this message]
2023-05-28 16:07 ` Greg KH
-- strict thread matches above, loose matches on Subject: below --
2024-04-26 4:48 Stephen Rothwell
2024-04-26 21:39 ` Thinh Nguyen
2024-04-12 4:25 Stephen Rothwell
2024-04-12 7:58 ` Greg KH
2024-04-24 6:12 ` Stephen Rothwell
2024-02-20 3:39 Stephen Rothwell
2024-02-20 8:18 ` Greg KH
2024-02-26 5:55 ` Greg KH
2023-05-15 2:50 Stephen Rothwell
2023-05-28 14:28 ` Greg KH
2023-03-31 3:01 Stephen Rothwell
2023-03-31 7:52 ` Greg KH
2023-04-10 6:56 ` Greg KH
2023-01-19 3:48 Stephen Rothwell
2023-01-18 0:56 Stephen Rothwell
2023-01-18 7:48 ` Greg KH
2023-01-23 14:40 ` Greg KH
2022-09-01 3:52 Stephen Rothwell
2022-09-05 6:04 ` Greg KH
2022-04-26 5:08 Stephen Rothwell
2022-04-26 9:41 ` Greg KH
2022-05-03 14:36 ` Greg KH
2022-02-21 20:39 broonie
2022-02-22 7:44 ` Greg KH
2021-07-22 4:12 Stephen Rothwell
2021-07-23 12:29 ` Greg KH
2021-07-27 14:45 ` Greg KH
2021-01-20 2:06 Stephen Rothwell
2021-01-20 8:02 ` Greg KH
2021-01-06 0:50 Stephen Rothwell
2021-01-11 7:11 ` Greg KH
2020-06-26 3:29 Stephen Rothwell
2020-06-26 15:14 ` Greg KH
2020-06-29 6:23 ` Greg KH
2018-06-29 4:57 Stephen Rothwell
2018-07-01 8:43 ` Greg KH
2018-07-01 15:11 ` Randy Dunlap
2018-04-23 3:04 Stephen Rothwell
2018-04-23 8:30 ` Johan Hovold
2018-04-23 8:41 ` Greg KH
2018-04-30 1:34 ` Stephen Rothwell
2018-04-30 11:55 ` Sebastian Reichel
2018-04-30 12:16 ` Greg KH
2018-04-30 12:00 ` Greg KH
2017-12-20 2:09 Stephen Rothwell
2017-12-20 9:36 ` Greg KH
2018-01-03 0:56 ` Stephen Rothwell
2018-01-04 16:06 ` Greg KH
2014-11-05 4:18 Stephen Rothwell
2014-11-05 4:30 ` Greg KH
2014-11-05 8:33 ` Paul Bolle
2014-11-06 2:19 ` Greg KH
2014-11-06 5:02 ` Stephen Rothwell
2013-12-18 5:53 Stephen Rothwell
2013-03-21 4:24 Stephen Rothwell
2012-11-14 4:07 Stephen Rothwell
2012-11-16 2:14 ` Greg KH
2012-11-13 3:37 Stephen Rothwell
2012-11-13 18:49 ` Greg KH
2012-10-25 2:05 Stephen Rothwell
2012-10-25 2:17 ` Greg KH
2012-09-12 5:37 Stephen Rothwell
2012-09-12 16:14 ` Greg KH
2012-09-12 5:37 Stephen Rothwell
2012-05-03 4:44 Stephen Rothwell
2012-05-04 23:18 ` Greg KH
2012-05-07 16:05 ` Greg KH
2012-05-07 16:05 ` Greg KH
2012-04-19 5:14 Stephen Rothwell
2012-04-19 20:07 ` Greg KH
2012-04-22 22:27 ` Greg KH
2012-03-05 6:00 Stephen Rothwell
2012-03-05 16:42 ` Greg KH
2011-08-25 4:52 Stephen Rothwell
2011-08-25 15:39 ` Greg KH
2011-08-29 15:52 ` Greg KH
2010-12-20 5:28 Stephen Rothwell
2010-12-20 18:30 ` Greg KH
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f604f836-7858-6140-4ec1-9ba95cba6991@kernel.org \
--to=rogerq@kernel.org \
--cc=Thinh.Nguyen@synopsys.com \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=quic_kriskura@quicinc.com \
--cc=sfr@canb.auug.org.au \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).