linguini1 opened a new pull request, #19815:
URL: https://github.com/apache/nuttx/pull/19815

   # NOTE
   
   This PR is a WIP. I am opening it as a draft because:
   * It documents some progress for the last GSoC milestone now that the 
deadline
     is approaching
   * I can get feedback on my use of the DMA upper-half driver, which is 
[entirely
     
undocumented](https://nuttx.apache.org/docs/latest/components/drivers/special/dma.html)
 and used very few times in the kernel (UART16550, DMA audio).
   
   It looks like I had discovered this a while ago on #8773 but never heard back
   from the author. If anyone has used this DMA driver, or anyone at Xiaomi 
might
   be willing to document it/provide a test application to verify correctness 
of my
   driver that would be awesome!
   
   ## Summary
   
   This commit introduces support for the BCM2711's 16 DMA channels, including 
the 4 DMA Lite and 4 DMA4 channels. It uses the NuttX DMA standard upper-half 
for compatibility with other drivers. The intention is for the majority of 
these channels to be used internally by other BCM2711 peripheral drivers. As 
such, each peripheral should be allocated an appropriate channel for its 
exclusive use (i.e. DMA4 channels for intensive peripherals like EMMC, frame 
buffer and networking, DMA Lite for low-data peripherals like a UART console).
   
   ## Impact
   
   Pre-cursor to a network driver (#16953) for the RPi4B Ethernet, which is the 
last milestone for my GSoC contract #18507.
   
   Full support for DMA interfaces which should provide a large speedup for all
   peripherals who later integrate this approach.
   
   ## Testing
   
   N/A, this is still a draft.


-- 
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