TDA4VM: USS application udma demo configuration settings

Part Number: TDA4VM

Tool/software:

Hi TI expert:

   i am studying udma usage from https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1168499/tda4vm-gpio-udma-for-uss-capture , and got some question:

1. for App_setupL2G() and App_setUdmaIntAMap(),  what local event value come from? eg, i want connect a GPIO bank interrupt to udma,  how to calculator the local event value. the sample code  "gIntAggrLeviEvtId" is hard code and dont know how it came from.

2. for  register CSL_NAVSS0_UDMASS_INTA0_CFG_L2G_BASE(0x31100000), the mode bit  and GPIO interrupt , is that mean GPIO falling edge interrrupt can't trigger, only rising and both edges   map to  this register mode mode bit: 0/1?  thanks.

  • Hi,

    1. for App_setupL2G() and App_setUdmaIntAMap(),  what local event value come from? eg, i want connect a GPIO bank interrupt to udma,  how to calculator the local event value. the sample code  "gIntAggrLeviEvtId" is hard code and dont know how it came from.

    Local event is essentially GPIO event, which gets converted into UDMA event. 

    2. for  register CSL_NAVSS0_UDMASS_INTA0_CFG_L2G_BASE(0x31100000), the mode bit  and GPIO interrupt , is that mean GPIO falling edge interrrupt can't trigger, only rising and both edges   map to  this register mode mode bit: 0/1?  thanks.

    No, the control of rising event or falling event is still within GPIO. GPIO generates event, which can be rising edge, falling edge or both, and which gets converted into DMA event for the triggering DMA engine. 

    For the Bank Interrupt, there is just a small change required in the existing demo. Instead of using individual GPIO interrupt in the GPIOMUX IR configuration, we need to use Bank interrupt. There is no other change required in the application. 

    Regards,

    Brijesh

  • Hi,

       for this application , https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1168499/tda4vm-gpio-udma-for-uss-capture,   it seems that the GPIO interrupt should use pin interrupt ,not bank interrupt, since for bank interrupt, the GPT timer value cant correspond to a pin ?

       since PSDK GPIO driver using bank interrupt, is that means i need to implement the interrupt App_setupGpioMuxIr() and HwiP_create() myself, and not using the PSDK interrupt part code?

  • Well, this FAQ shows how to enable individual GPIO interrupt, which is not possible in the current PDK driver. If you require bank interrupt, that also is possible. Yes, you would just need to change App_setupGpioMuxIr.  Do you need this interrupt on the core also? If not, then no need to create Hwip_create.. 

    Regards,

    Brijesh