gustavonihei opened a new pull request #3119:
URL: https://github.com/apache/incubator-nuttx/pull/3119


   ## Summary
   This PR intends to fix the required buffer length word-alignment for DMA 
transfers.
   
   Currently, the DMA driver contains a DEBUGASSERT macro to prevent the data 
transfer whose length is not a multiple of 4.
   
   But, according to the ESP32 Technical Reference Manual, there is no 
alignment restriction to the **amount of valid data** to be transferred, only 
to the **length of the buffer** that holds the valid data.
   
   
![image](https://user-images.githubusercontent.com/38959758/111838900-bcfddf80-88d8-11eb-946f-18a4c720edf1.png)
   
   ## Impact
   Previously, DMA RX transfers whose size in bytes were not multiple of 4 
would fail on an assertion on DEBUG builds.
   Now, the DEBUGASSERT is removed and there is a new logic for calculating the 
correct buffer length in a given transfer, be it either a TX or RX transfer, 
according to the required word-alignment.
   
   ## Testing
   `esp32-devkic:nsh` with a custom SPI device attached on SPI2.
   


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

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


Reply via email to