4 Replies Latest reply on Jul 12, 2018 6:07 AM by BhoomilChavda

    How to detect BULK IN endpoint read request from Linux driver inside FX3 firmware?

    BhoomilChavda

      Hi All,

      I'm new at FX3 USB controller. I have developed my own USB device driver to control FX3 controller. This driver is derived from well known https://elixir.bootlin.com/linux/latest/source/drivers/usb/usb-skeleton.c .

       

      Now I have one question at FX3 firmware side,

      In all examples provided with EZ-USB-SDK, AppStart() function will call from USB event callback function(case SET_CONFIG or SET_INTERFACE). It will create socket and manual or auto channel between producer and consumer. And start transfer data on BULK-IN /OUT or ISO-IN/OUT or INTERRUPT-IN/OUT either in DMA callback function or inside RTOS thread with forever loop.

       

      So on POR, controller always start the stream in or out based on logic flashed in memory. how to control such loop using host driver?

       

      Generally USB master will ask to device about data transfer. For example usb_bulk_msg() or usb_submit_urb() will perform data transfer request and then from/to device we can get/set data .

       

      How can I control FX3 firmware readout on BULK IN pipe using Linux device driver?

       

      Regards,

      Bhoomil C.