Dear support,
Up to now, I did not need more than 4 DMA channels to be allocated and following the answers from the following post, I got my four channels (http://e2e.ti.com/support/embedded/bios/f/355/t/242609.aspx) and I was happy,
Now I need more. I am confident that I know how to modify sample_c6670_cfg.c to make the adjustments that I want but I would like answers to a few questions that are confusing me. After reading (multiple time) section 1.1.1 of the user guide, I am quite confuse how this driver should be used across cores. I am confuse between the driver instance and the shadow register. Perhaps you could provide a bit more information.
On the C6670, I have 3 DMA controllers. See Table 7-33 EDMA3 Channel Controller Configuration of the reference guide.
Therefore the EDMA driver defines three instances of the driver. Each instance of the driver is configured following the hardware in sampleEdma3GblCfgParams
Then the resources for each driver are configured per shadow region. So if I take the specific case of the C6670, first instance.
for reg0: Ch0 and ch1 are reserved for hardware, then ch2 and ch3 for the sw
for reg1: Ch4 and ch5 are reserved for hardware, then ch6 and ch7 for the sw
for reg2: Ch8 and ch9 are reserved for hardware, then ch10 and ch11 for the sw
for reg3: Ch12 and ch13 are reserved for hardware, then ch14 and ch15 for the sw
And now my 16 channels are allocated.
In the concept of using the same driver library in all cores.
1) where is the memory of the driver being stored? Internal L2
2) How the C6670 use the EDMA driver?
a) The manual seems to suggest for each master to use a different instance of the driver, however,. I have four cores and three instances of the driver?
b) Should each core use a different shadow region of the same instance of the driver? driver
c) I can do whatever I want as long as I undserstand what I am doing?
If answer C is the provided one, can you guarantee that there will not be conflict accessing the data structures stored in memory?
Thanks in advance for a bit of clarification
Aymeric