Re: [PATCH 0/3] UAC2 Gadget: feedback endpoint support

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

 



Dne 04. 12. 20 v 15:39 Ruslan Bilovol napsal(a):
> On Thu, Nov 26, 2020 at 3:44 PM Pavel Hofman <pavel.hofman@xxxxxxxxxxx> wrote:
>>
>> Dne 26. 11. 20 v 14:16 Jerome Brunet napsal(a):
>>>
>>>> Maximum data rates that I used were (AFAIR) 8 channel 192kHz/32bit,
>>>> but there is another issue with high data rate if someone uses so many
>>>> channels, very high sampling frequency or sample size that data can't
>>>> fit into allowed (by USB spec) max packet size of endpoint. In this case
>>>> need to decrease bInterval of endpoint.
>>
>> Should anyone test the patches with RPi4 dwc2 as the gadget, please note
>> the recently accepted patch
>> https://patchwork.kernel.org/project/linux-usb/patch/e9e7d070-593c-122f-3a5c-2435bb147ab2@xxxxxxxxxxx/
>> which allows using full 1024 bytes maxpacketsize on EP OUT. It is not an
>> enumeration issue, but the old (= existing) RX FIFO size drops data with
>> packet sizes above 960 bytes.
> 
> Thanks for bringing this to our attention. Does it affect RPi 3 as well?
> I'm going to test feedback feature on this board

It configures the dwc2 IP of the broadcom which IIRC is in all RPis. The
affected files bcm283x-rpi-usb-otg.dtsi and
bcm283x-rpi-usb-peripheral.dtsi do not seem RPi4 specific. But I had
only RPi4 to analyze the problem and check the fix.

Ruslan, please what do you think about the existing behaviour of gaudio
in case of USB stream disconnection? The elapsed-period callback stops
being called and the user space will eventually time out. How about
closing the PCM stream immediately in case of a problem in the USB
layer? E.g. some SPDIF receivers do that in case of change in the
incoming samplerate
https://github.com/torvalds/linux/blob/master/sound/i2c/other/ak4117.c#L503
.

Thanks a lot for the great work.

With regards,

Pavel.



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

  Powered by Linux