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.

EDMA DRV request channel fail

Other Parts Discussed in Thread: TMS320C6748

Hi,

  I am trying to incorporate the EDMA driver into my project because I am seeing some oddities and I believe its because I am using the NDK stack and trying to write the SPI edma drivers.  I have not been using the EDMA driver and just coding the param sets directly.  My problem is that when I call EDMA3_DRV_requestChannel(), I get an error on the return.  I am using the sample app in the edma3 driver folder.  I am using edma3_test as the example for what I am trying to accomplish.  The first thing I do is call edma3init() and it returns a pointer with what appears to be correct parameters inside when I step through the function.  I then put in all the initial values like in the edma3_test function and still everything seems fine.  I then call the EDMA3_requestchannel() and when I step into the function, I fail when I get the drvObject and it is null.  Why is the driver object null when I called edma3init and all the values seem correct?  EDMA3_requestchannel is found in edma3_drv_basic.c. 

THanks,

Will

  • Will Resnick,

    Thanks for your post. I understand that you are going to use EDMA3 driver APIs for your own implementation.
    Please kindly give the below details, which are used by you.
    1. Version of EDMA3_lld
    2. Device name(TI Processor) and
    3. Package name of SPI_EDMA example.


    EDMA3_DRV_requestChannel: ( In edm3_drv_basic.c)
    When you use this API call, you can use constant name "EDMA3_DRV_SOK" for identify the exact error.
    Did you specify the desired queue number for the specific channel while calling the EDMA3_DRV_requestChannel() API.

    I could not find the  "EDMA3_requestchannel" API in edm3_drv_basic.c

  • Hi Pubesh,

     

     EDMA3_LLD: 2_11_04_01

    Processor: TMS320C6748

    SPI_EDMA example: edma3_drv_bios6_c6748_st_sample

      I guess the first question is if I am using the correct library files. I am using

    edma3_lld_drv.a674, path: packages/ti/sdo/edma3/drv/lib/674/debug

    edma3_lld_rm.a674, path: packages/ti/sdo/edma3/rm/lib/generic/674/debug

    edma3_lld_rm_sample.a674, path: packages/ti/sdo/edma3/rm/sample/lib/c6748-evm/674/debug

    Thanks,

    Will

     

  • Will Resnick,

    Thanks for given your working environment software details.
    EDMA3_DRV_requestChannel() API should return the result(EDMA3_DRV_SOK).
    Please can you put the breakpoint(BP) at EDMA3_DRV_requestChannel call and check the passing arguments(like hEdma, chId) through watch-window in CCS.
    Will you share the modified source done by you.