This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

What is RCPPICOMPPTR.RDBK_MODE in USB for ?

What is RCPPICOMPPTR.RDBK_MODE in USB for ?

I infer the DMA controller asserts DESC_ADDR with RDBK_MODE=1 and then software obtains DESC_ADDR with RDBK_MODE=0 and write it back directly to clear the interrupt.

  • Unfortunately there does not appear to be collateral outside of the description in the USB User's Guide copied below.

    SPRUFH9a said:
    RDBK_MODE

    Readback / Compare Mode

    0 Compare Mode. Indicates that the value that is presented on bits 31:2 of the read data
    should be compared against the value that is currently contained in bits 31:2 of this location.
    If the two match, the interrupt bit corresponding to this Receive Queue should be deasserted.

    1 Readback Mode. Indicates that the value that is presented on bits 31:2 of the read data
    should be read from this location and the interrupt for this Receive Queue should be
    asserted. This bit is read as zero.

    Which particular device are you using? Also I am curious why you are interested in the low level controls of the USB peripheral? Generally the USB is supported through the provided Linux driver.

     

  • It is a 216MHz DM355.  Please refer to http://e2e.ti.com/forums/t/12944.aspx.

    We have a reference code (USB device, from TI or DVSDK) that has this bit set.

    From the USB User's Guide, I still don't see the need/physical effect for the software to set this bit.

  • Yulin,

    From you other post I assume you are porting your USB stack on DM3xx platform.  Pl. refer to the USB driver under Aarago USB GIT for reference.

    We will continue to update and enhance the USB driver and the updates can be obtained in the Aarago GIT repository.  Pl. refer to "drivers/usb/musb" for the related updates and reference code on the USB driver.

    The write back mode you refer to is typically used during a descriptor tear down.  Beyond that we also use the compare mode for normal DMA descriptor processing.

    Also pl. note that the Linux USB driver has all the sequences and oprations stabilized (over a long period of time now) and hence is a better reference when compared to the documentation.

    regards

    swami