essl_spi_rddma() function
Receive long buffer in segments from the slave through its DMA.
Arguments
spi
SPI device handle representing the slave
out_data
Buffer to hold the received data, strongly suggested to be in the DRAM and aligned to 4
len
Total length of data to receive.
seg_len
Length of each segment, which is not larger than the maximum transaction length allowed for the spi device. Suggested to be multiples of 4. When set < 0, means send all data in one segment (the ``rddma_done`` will still be sent.)
flags
`SPI_TRANS_*` flags to control the transaction mode of the transaction to send.
Return value
- ESP_OK: success - or other return value from :cpp:func:`spi_device_transmit`.
Notes
This function combines several :cpp:func:`essl_spi_rddma_seg` and one :cpp:func:`essl_spi_rddma_done` at the end. Used when the slave is working in segment mode.