Dear staff,
Thank you for your reply.
I think I understand the mechanism of DMAC and Descriptor SRAM area for DMAC.
Probably, the default array of DMA descriptor named "s_dma_descriptor_table0" is
intended to be a kind of "static-link"-ed variable.
My understanding and idea is that those area are to be handled as "dynamic-link"-ed ones
like variable vector base of Cortex-M0+.
By some reasons, such as power-management, and memory resource-management
"on-demand" setting might be expected. User may change it to the most reasonable
SRAM resources on-demand. Of course, those SRAM area candidates are strategically
allocated by employing linker's feature, giving them independent region/sections.
From the software point of view, especially for "prepared API set", the only value every
corresponding code can ever depend would be the DMAC.SRAMBASE,
not a particular array-variables such as "s_dma_descriptor_table0".
This is my confusion and the reason why I asked
> Implementation concept of those APIs do not fit SRAM1 assignment ?
Current "fsl_dma" driver API set seems depending on "s_dma_descriptor_table0",
which is just a particularly-named statically-linked variable and is encapsulated among API set.
Why does the implementer team working on "fsl_dma" chose that way that corresponding
DMA API functions never see the CURRENT content of DMAC.SRAMBSE ?
I don't think it cost much even in run-time.
Probably, the team has its own design/implementation concept, which is not as same as
I have, at least...
I would like to know theirs as an alternative.
Thanks