[PATCH 1/4] usb: dwc2: Fix AHB burst type for bcm2835

John Youn John.Youn at synopsys.com
Wed Nov 16 11:11:11 PST 2016


On 11/16/2016 1:25 AM, Stefan Wahren wrote:
> Hi John,
> 
>> John Youn <johnyoun at synopsys.com> hat am 16. November 2016 um 01:36
>> geschrieben:
>>
>>
>> The ahbcfg param for bcm2835 is specifying a HBSTLEN of 0x8 (0x10 >> 1)
>> which is not a valid value for that field. Remove the param and default
>> to using INCR4.
> 
> i don't have any Synopsys documentation about this IP core. But according to p.
> 204 of the BCM2835 datasheet [1] the register USB_GAHBCFG is different than the
> other implementations:
> 
>   Address 0x 7E98 0008 
>   The USB_GAHBCFG register has been adapted. Bits [4:1] which are marked in the 
>   Synopsys documentation as "Burst Length/Type (HBstLen)" have been used
> differently. 
> 
>   [4]    1 = Wait for all outstanding AXI writes to complete before signalling
> (internally) that 
>              DMA is done.  
>          0 = don't wait.  
>   [3]    Not used 
>   [2:1]  Sets the maximum AXI burst length, but the bits are inverted,  
>          00 = maximum AXI burst length of 4,  
>          01 = maximum AXI burst length of 3, 
>          10 = maximum AXI burst length of 2 
>          11 = maximum AXI burst length of 1
> 
> Did you already take care of that?
> 
> [1] -
> https://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf
> 

Ok, so that explains it. Thanks for reviewing.

Since there is no checking on that value it should be fine to leave
it. I'll revert this change and add a comment.

If we ever get around to removing the ahbcfg parameter, we can
add a special case for it.

Regards,
John



More information about the linux-rpi-kernel mailing list