-
Notifications
You must be signed in to change notification settings - Fork 6.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
drivers: dma: Introduce driver for NXP's eDMA IP #65671
drivers: dma: Introduce driver for NXP's eDMA IP #65671
Conversation
The following west manifest projects have been modified in this Pull Request:
Note: This message is automatically posted and updated by the Manifest GitHub Action. |
683a914
to
c63a3e7
Compare
c63a3e7
to
9316c00
Compare
I’m ok with having another eDMA, what I did with the designware dma is try to create a common set of functions and reuse them where possible as there are many users of the designware gpdma. It would be nice if eDMA did something similar if possible. Like if there’s common transfer block definitions and configuration registers for example some helpers could be made to reuse between the two. |
ACK. If everyone's ok with this, I'd like to have this in first as-is before making such clean-ups. It would make it a bit easier for me and I'm thinking it would also ease the review process a bit. |
9316c00
to
98392a5
Compare
980eaea
to
d4a1f70
Compare
V4 updates
|
@DerekSnell could you please review this again? Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not think it is efficicient to maintain 2 EDMA drivers if it's not necessary. Can you please be more concrete about why we cannot reuse code for the legacy EDMA versions, because I do not understand from your comments.
removed for internal discussion about edma roadmap
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @LaurentiuM1234,
Thank you for updating this PR. There are still some references to i.MX I want removed, since this driver could be used on other SOCs. But once you remove those, I will remove my block. Thank you
d4a1f70
to
bba5255
Compare
Should be fixed now |
bba5255
to
9b9873c
Compare
Thank you @LaurentiuM1234, for addressing my comments. I have removed my block
Bump up hal_nxp revision to contain the EDMA REV2-related changes from NXP HAL. Signed-off-by: Laurentiu Mihalcea <[email protected]>
This commit introduces a driver for NXP's eDMA IP. The main reasons for introducing a new driver are the following: 1) The HAL EDMA wrappers don't support well different eDMA versions (e.g: i.MX93 and i.MX8QM). As such, a new revision had to be introduced, thus requiring a new Zephyr driver. 2) The eDMA versions found on i.MX93, i.MX8QM, and i.MX8QXP don't use the DMAMUX IP (instead, channel MUX-ing is performed through an eDMA register in the case of i.MX93). Signed-off-by: Laurentiu Mihalcea <[email protected]>
9b9873c
to
7f4b007
Compare
dependency merged, should be good to go as well once CI is green |
Please check commit c63a3e7's description for reason why this driver is used instead of
dma_mcux_edma
.