Open danielb-tkjcy3rq opened 12 months ago
Hi @danielb-tkjcy3rq! We appreciate you submitting your first issue for our open-source project. 🌟
Even though I'm a bot, I can assure you that the whole community is genuinely grateful for your time and effort. 🤖💙
I think this is partially possible with the dma slot being used by the edma driver, see https://github.com/zephyrproject-rtos/zephyr/blob/main/drivers/dma/dma_mcux_edma.c#L324
The meaning is pretty clear from the sdk doc comment https://github.com/nxp-mcuxpresso/mcux-sdk/blob/main/drivers/dmamux/fsl_dmamux.h#L107
It's unclear how this would be done in a sort of abstract way though, in saying device X is the trigger source (in this case a PIT instance).
Reassigned to David Leach who is the lead for NXP as he might have better insights or have someone in mind with better insights on how this might be accomplished with Zephyr or how to best use the mcux sdk with Zephyr to bypass the Zephyr APIs.
Is your feature request related to a problem? Please describe. I'm currently writing an application to generate custom waveform using iMXRT 1160. Outsize Zephyr, I would use NXP SDK to periodically trigger DMA to transfer data from memory to peripheral (GPIO) using a timer (PIT). I'm now hoping to use Zephyr in my next project but I can't see a way of doing this using the current DMA API. One option is to include the correct haders in hal/nxp in my application and write my code that way, but I feel like that isn't the best way to do it.
Describe the solution you'd like Ideal solution would be for the DMA API to allow the user to choose periodic hardware triggering.
Describe alternatives you've considered An alternative would be to include the vendor SDK in my zephyr application and drive the hardware directly to achieve the periodic triggering.
Additional context Add any other context or graphics (drag-and-drop an image) about the feature request here.