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.

DMA problem

DAM problem
1:in core2's project ,core2 want to write 512 Bytes at 0x1086ffff which is in core0 LL2RAM.
  only use following program to set dstAddr can achieve this .
 myParamSetup.dstAddr = (Uint)(0x1086ffff);
so ,in core's project ,how can i define a reserved space of 512B to hold the data core2 transmit?

2: in core2's project ,  how can i define my own function which can be automaticlly perfromd  after DMA finished
   except using that polling IPR/IPRH?


3:every time i create a new CCS project ,i must add ti.csl.ae66 and ti.csl.intc.ae66 to the new project.
   how  can i avoid this borthering adding operation? everytiem a project is created ,it can automaticlly load the lib files.
thank you for you reply .

  • Jian Zong,

    Which Keystone device are you using?
    Which version of CCS are you using?
    Have you installed the MCSDK (MultiCore Software Development Kit) for your device? Which version have you installed?

    1. The MCSDK set of tools includes descriptions and methods for sharing memory between multiple cores. Someone else may be a better expert on those tools who can explain in better detail than I can. The linker .cmd file or the XDC .cfg file can receive commands that allocate space at fixed addresses. Or you can allocate space and then look at the linker .map file to determine the linked address. You may then use that address for Core0 to use as a destination address.

    2. For EDMA3 transfers and support, please use the EDMA3 LLD (Low Level Drivers). These are provided as part of the MCSDK. The EDMA3 LLD includes an example folder that has projects that implement callback functions. These are how to accomplish what you are asking: using interrupts instead of polling.

    3. You may want to ask this third question on the Code Composer Forum since it is specifically a question about the CCS application and not about the Keystone device. There is probably an advanced method that can be developed in Eclipse to do what you ask, or a way to make your own example project template that can be used when you want to use that set of libraries. You can import a copy of another project, then remove the parts you do not want to use, but that may be more of a bother to you that the adding. All I ever do is to do the adding each time.

    Regards,
    RandyP