Menu

#176 Why are we claiming the DFU interface at all !!

none
invalid
nobody
None
2023-08-09
2023-08-09
No

Hello,

I have a question regarding claiming of DFU interface in case of download functionality.

Why are we claiming the DFU interface at all !!
When all the transfer in bringing out DFU download functionality is done using control transfer, why claiming the DFU interface is really required.
DFU interface doesn't even have any endpoint in case of few MCU chips.
I have tried commenting out all calls of interface claim and release and DFU download still works.

Discussion

  • Tormod Volden

    Tormod Volden - 2023-08-09
    • labels: interface claim -->
    • status: open --> invalid
    • assigned_to: Tormod Volden --> nobody
     
  • Tormod Volden

    Tormod Volden - 2023-08-09

    Claiming of USB interfaces isn't part of the communication, nothing is signaled on the USB bus and the device is not aware of it. It is simply a OS feature, to ensure that only one process is using the given endpoints and so that there is no conflict between processes.

    In the case of DFU, you are correct that there is only a control point involved, which from the OS point of view does not require claiming any interface. However, claiming the DFU interface is a way of reserving the DFU functionality to the active process. Otherwise e.g. multiple dfu-util processes could be running at the same time communicating with the same device and mess things up.

     

Anonymous
Anonymous

Add attachments
Cancel





MongoDB Logo MongoDB