Configuring USB FIFOs

Forums Devices OSD32MP15x Configuring USB FIFOs

Tagged: 

Viewing 1 reply thread
  • Author
    Posts
    • #11467
      Rishi Bhanotrishi@smufsbio.com
      Participant

        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

      • #11614
        Neeraj Dantu
        Moderator

          Rishi,

          This question may be better suited for STM32MP1 forum as it involves core driver setup and ST’s team would be better able to answer.

          From our side, we would suggest taking a look at the driver source code: https://github.com/STMicroelectronics/linux/tree/v5.10-stm32mp/drivers/usb/dwc2/, although the documentation on this driver is not great. Enabling traces would also give you more debug messaging to understand where the setup is failing: https://wiki.st.com/stm32mpu/wiki/USB_overview.

          Best,

          Neeraj

      Viewing 1 reply thread
      • You must be logged in to reply to this topic.