[PATCH] ARM: dts: bcm283x: Fix fifo size for EP 6,7

Stefan Wahren stefan.wahren at i2se.com
Tue Oct 31 01:43:01 PDT 2017

Hi Eric,

> Eric Anholt <eric at anholt.net> hat am 31. Oktober 2017 um 01:40 geschrieben:
> Stefan Wahren <stefan.wahren at i2se.com> writes:
> >> Stefan Wahren <stefan.wahren at i2se.com> hat am 7. Oktober 2017 um 12:16 geschrieben:
> >> 
> >> 
> >> In case the RPi Zero has at least a device connected to the OTG port
> >> at boot time, the upper limit of tx fifo size for endpoint 6 and 7 is
> >> also reduced to 512 bytes. So fix this accordingly.
> >> 
> >> Signed-off-by: Stefan Wahren <stefan.wahren at i2se.com>
> >> Fixes: 1aa1d858f582 ("ARM: dts: bcm283x: Add dtsi for OTG mode")
> >
> > gentle ping ...
> I've tried to make sense of this a couple of times, but I don't get it:
> why does EP 6/7 get reduced to 512 bytes in this case?

i cannot give you an answer for this specific case.

Since the dwc2 databook isn't public, i started a thread on linux-usb [1] about proper fifo size configuration. But i didn't get any reply.

The problem here is there different contraints:
* the sum of all fifo values must not exceed 3776 bytes
* each slot have its individual upper limit (available in the BCM2835 datasheet)

During my tests for OTG mode i missed the specific case above. Now my determined limits of 512 for EP 6 and 7 are contrary to the BCM2835 datasheet. Maybe the Synopsys guys have an answer?

Btw the values in the downstream tree also violate the contraints. 

[1] - https://www.spinics.net/lists/linux-usb/msg157200.html

More information about the linux-rpi-kernel mailing list