arnavsharma990 opened a new issue, #20200:
URL: https://github.com/apache/nuttx/issues/20200

   ### Is your feature request related to a problem? Please describe.
   
   
   
   The NuttX DMA driver documentation is currently incomplete. The [[DMA 
Drivers](https://nuttx.apache.org/docs/latest/components/drivers/special/dma.html)](https://nuttx.apache.org/docs/latest/components/drivers/special/dma.html)
 page does not document the common DMA driver framework, including its 
architecture, interfaces, DMA links, channel/transfer lifecycle, and usage by 
peripheral drivers.
   
   The common DMA driver model was introduced in 
[[#8773](https://github.com/apache/nuttx/pull/8773)](https://github.com/apache/nuttx/pull/8773),
 but the framework remains largely undocumented. This makes it difficult for 
developers implementing new DMA controllers or integrating DMA into peripheral 
drivers to understand and correctly use the existing interfaces.
   
   Relevant ongoing work demonstrating the need for this documentation: 
[[#19815](https://github.com/apache/nuttx/pull/19815)](https://github.com/apache/nuttx/pull/19815).
   
   
   ### Describe the solution you'd like
   
   Expand the DMA documentation to provide a clear overview of the common DMA 
driver framework, including:
   
   * DMA upper-half/lower-half architecture
   * DMA controller interface and relevant APIs
   * Channel allocation and lifecycle
   * Transfer configuration and execution
   * Callbacks and completion handling
   * DMA link mechanism
   * Guidance for implementing DMA controller drivers
   * Guidance for using DMA from peripheral drivers
   * References to existing DMA implementations as examples
   
   
   
   ### Describe alternatives you've considered
   
   The existing source code and implementations can be used directly as 
references, but this requires developers to inspect multiple files and infer 
the intended architecture and API usage themselves.
   
   Adding comprehensive documentation to the existing DMA documentation page 
would provide a centralized reference without requiring changes to the 
underlying DMA framework.
   
   ### Verification
   
   - [x] I have verified before submitting the report.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to