Re: [U-Boot] [PATCH] usb: dwc2: Init desc_before_addr

2016-04-28 Thread Marek Vasut
On 04/28/2016 08:16 AM, Stefan Roese wrote:
> On 26.04.2016 03:08, Marek Vasut wrote:
>> Initialize desc_before_addr, otherwise the USB core won't send the
>> first 64B Get Device Descriptor request in common/usb.c function
>> usb_setup_descriptor() . There are some USB devices which expect
>> this sequence and otherwise can misbehave.
>>
>> Signed-off-by: Marek Vasut 
>> Cc: Dinh Nguyen 
>> Cc: Tom Rini 
> 
> Tested-by: Stefan Roese 
> 
> Thanks,
> Stefan

Applied.

-- 
Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] usb: dwc2: Init desc_before_addr

2016-04-28 Thread Stefan Roese

On 26.04.2016 03:08, Marek Vasut wrote:

Initialize desc_before_addr, otherwise the USB core won't send the
first 64B Get Device Descriptor request in common/usb.c function
usb_setup_descriptor() . There are some USB devices which expect
this sequence and otherwise can misbehave.

Signed-off-by: Marek Vasut 
Cc: Dinh Nguyen 
Cc: Tom Rini 


Tested-by: Stefan Roese 

Thanks,
Stefan
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] usb: dwc2: Init desc_before_addr

2016-04-27 Thread Marek Vasut
On 04/27/2016 07:15 PM, Dinh Nguyen wrote:
> On 04/25/2016 08:08 PM, Marek Vasut wrote:
>> Initialize desc_before_addr, otherwise the USB core won't send the
>> first 64B Get Device Descriptor request in common/usb.c function
>> usb_setup_descriptor() . There are some USB devices which expect
>> this sequence and otherwise can misbehave.
>>
>> Signed-off-by: Marek Vasut 
>> Cc: Dinh Nguyen 
>> Cc: Tom Rini 
>> ---
>>  drivers/usb/host/dwc2.c | 3 +++
>>  1 file changed, 3 insertions(+)
>> ---
>> NOTE: I checked this with TotalPhase Beagle USB480 and it does what it is
>>   supposed to do now. It would be wonderful to get this into rc3.
>>
>> diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
>> index b2f4bc6..559c43f 100644
>> --- a/drivers/usb/host/dwc2.c
>> +++ b/drivers/usb/host/dwc2.c
>> @@ -1182,6 +1182,9 @@ static int dwc2_usb_ofdata_to_platdata(struct udevice 
>> *dev)
>>  static int dwc2_usb_probe(struct udevice *dev)
>>  {
>>  struct dwc2_priv *priv = dev_get_priv(dev);
>> +struct usb_bus_priv *bus_priv = dev_get_uclass_priv(dev);
>> +
>> +bus_priv->desc_before_addr = true;
>>  
>>  return dwc2_init_common(priv);
>>  }
>>
> 
> With this patch, I no longer have to revert commit "c998da0d67091 usb:
> Change power-on / scanning timeout handling" for my problematic Kingston
> USB stick to work.
> 
> So feel free to add:
> 
> Tested-by: Dinh Nguyen 

Good for you, bad for me ;-) If we don't fix this USB horror before
ELCE, you can expect a nice gift :)

> Dinh
> 


-- 
Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] usb: dwc2: Init desc_before_addr

2016-04-27 Thread Dinh Nguyen
On 04/25/2016 08:08 PM, Marek Vasut wrote:
> Initialize desc_before_addr, otherwise the USB core won't send the
> first 64B Get Device Descriptor request in common/usb.c function
> usb_setup_descriptor() . There are some USB devices which expect
> this sequence and otherwise can misbehave.
> 
> Signed-off-by: Marek Vasut 
> Cc: Dinh Nguyen 
> Cc: Tom Rini 
> ---
>  drivers/usb/host/dwc2.c | 3 +++
>  1 file changed, 3 insertions(+)
> ---
> NOTE: I checked this with TotalPhase Beagle USB480 and it does what it is
>   supposed to do now. It would be wonderful to get this into rc3.
> 
> diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
> index b2f4bc6..559c43f 100644
> --- a/drivers/usb/host/dwc2.c
> +++ b/drivers/usb/host/dwc2.c
> @@ -1182,6 +1182,9 @@ static int dwc2_usb_ofdata_to_platdata(struct udevice 
> *dev)
>  static int dwc2_usb_probe(struct udevice *dev)
>  {
>   struct dwc2_priv *priv = dev_get_priv(dev);
> + struct usb_bus_priv *bus_priv = dev_get_uclass_priv(dev);
> +
> + bus_priv->desc_before_addr = true;
>  
>   return dwc2_init_common(priv);
>  }
> 

With this patch, I no longer have to revert commit "c998da0d67091 usb:
Change power-on / scanning timeout handling" for my problematic Kingston
USB stick to work.

So feel free to add:

Tested-by: Dinh Nguyen 

Dinh
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] usb: dwc2: Init desc_before_addr

2016-04-25 Thread Marek Vasut
On 04/26/2016 03:08 AM, Marek Vasut wrote:
> Initialize desc_before_addr, otherwise the USB core won't send the
> first 64B Get Device Descriptor request in common/usb.c function
> usb_setup_descriptor() . There are some USB devices which expect
> this sequence and otherwise can misbehave.
> 
> Signed-off-by: Marek Vasut 
> Cc: Dinh Nguyen 
> Cc: Tom Rini 
> ---
>  drivers/usb/host/dwc2.c | 3 +++
>  1 file changed, 3 insertions(+)
> ---
> NOTE: I checked this with TotalPhase Beagle USB480 and it does what it is
>   supposed to do now. It would be wonderful to get this into rc3.

Oh, before anyone asks if this fixes USB problem on SoCFPGA, no, it does
not. There is more weird stuff to go, I have certain hypothesis,
but let's see.

> diff --git a/drivers/usb/host/dwc2.c b/drivers/usb/host/dwc2.c
> index b2f4bc6..559c43f 100644
> --- a/drivers/usb/host/dwc2.c
> +++ b/drivers/usb/host/dwc2.c
> @@ -1182,6 +1182,9 @@ static int dwc2_usb_ofdata_to_platdata(struct udevice 
> *dev)
>  static int dwc2_usb_probe(struct udevice *dev)
>  {
>   struct dwc2_priv *priv = dev_get_priv(dev);
> + struct usb_bus_priv *bus_priv = dev_get_uclass_priv(dev);
> +
> + bus_priv->desc_before_addr = true;
>  
>   return dwc2_init_common(priv);
>  }
> 


-- 
Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot