Skip to main content
rishi2
Associate II
April 23, 2021
Question

Fifo settings for composite device...

  • April 23, 2021
  • 1 reply
  • 1523 views

Hi there,

I am struggling to understand and achieve a USB gadget with Mass Storage + Serial(cdc-acm) + 1 custom interface with one bulk in and one bulk out though functionfs. Every interface works fine when runs separately. Issue starts when i try to make a composite device because of the fifo configuration.

I understand there is total of 4KB Fifo as described in reference manual and is configurable for each endpoint as needed.

I believe in my case :

MSG = I need 1 BULK IN + 1 BULK OUT

CUSTOM = I need 1 BULK IN and 1 BULK OUT

CDC ACM = needs 1 BULK IN and i BULK OUT + 1 interrupt endpoint

so my requirement is only for np-tx-fifo, is this correct?

But alwasy in composite mode it fails with :

dwc2 49000000.usb-otg: dwc2_hsotg_ep_enable: No suitable fifo found

.. <<from stm32mp151.dtsi>> – and total of entries can be 952 dwords.

g-rx-fifo-size = <128>;

g-np-tx-fifo-size = <512>;

g-tx-fifo-size = <128 128 64 64 64 64 32 32>;

Can somebody please explain how to configure it properly to achieve a composite device ?

Thanks, Rishi

This topic has been closed for replies.

1 reply

Olivier GALLIEN
Technical Moderator
April 27, 2021

Hi @rishi2​ 

Do you know this page of our online documentation : https://wiki.st.com/stm32mpu/wiki/USB_overview ?

I wonder if I cannot provide hints and means to go further in investigation.

Olivier

Olivier GALLIEN In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
ITeo.1
Associate II
October 28, 2021

Is it possible to implement 1x Rndis and 2x com ports (serial ports) with the USB Composite device gadget?

Thanks