Re: [PATCH 2/2] usb: dwc3: gadget: put link to U0 before Start Transfer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx> writes:

> On 4/4/2016 12:49 PM, Felipe Balbi wrote:
>
>> Synopsys Databook says we should move link to U0
>
>     Why "databook" is capitalized? :-)

because I like capital leters

>> before issuing a Start Transfer command. We could
>> require the gadget driver to call
>> usb_gadget_wakeup() however I feel that changing all
>> gagdget drivers to keep track of Link State and
>
>     Gadget.

will fix

>
>> conditionally call usb_gadget_wakeup() would be far
>> too much work. For now we will handle this at the
>> UDC level, but at some point composite.c should be
>> one handling this.
>
>     The one?

works either way

>
>> Signed-off-by: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx>
>> ---
>>   drivers/usb/dwc3/gadget.c | 14 ++++++++++++++
>>   1 file changed, 14 insertions(+)
>>
>> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
>> index 552ebdf972b4..404573fcb3c9 100644
>> --- a/drivers/usb/dwc3/gadget.c
>> +++ b/drivers/usb/dwc3/gadget.c
> [...]
>> @@ -242,12 +244,24 @@ int dwc3_send_gadget_ep_cmd(struct dwc3 *dwc, unsigned ep,
>>   	 * by the same section on Synopsys databook.
>>   	 */
>>   	if (cmd == DWC3_DEPCMD_STARTTRANSFER) {
>> +		int		needs_wakeup;
>> +
>>   		reg = dwc3_readl(dwc->regs, DWC3_GUSB2PHYCFG(0));
>>   		if (unlikely(reg & DWC3_GUSB2PHYCFG_SUSPHY)) {
>>   			susphy = true;
>>   			reg &= ~DWC3_GUSB2PHYCFG_SUSPHY;
>>   			dwc3_writel(dwc->regs, DWC3_GUSB2PHYCFG(0), reg);
>>   		}
>> +
>> +		needs_wakeup = (dwc->link_state == DWC3_LINK_STATE_U1 ||
>> +				dwc->link_state == DWC3_LINK_STATE_U2 ||
>> +				dwc->link_state == DWC3_LINK_STATE_U3);
>
>     Parens not needed.

I like the clarity of parens

>> +
>
>     Empty line here is hardly needed as well...

I like this empty line

-- 
balbi

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux