RTEMS | bsp/aarch64/raspberrypi: Add support for DMA (!662)
Shaunak Datar (@skdatar)
gitlab at rtems.org
Wed Aug 20 07:08:28 UTC 2025
Shaunak Datar commented on a discussion on bsps/aarch64/raspberrypi/include/bsp/raspberrypi-dma.h: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/662#note_129083
> + * Allocates and prepares the channel-specific control block, performs required
> + * cache maintenance (flush control block and source; invalidate destination),
> + * issues CS reset/abort, and writes CONBLK_AD (with DMA4 address packing via
> + * DMA4_AD_SHIFT). This function does **not** start the transfer; call
> + * ::rpi_dma_start_transfer() and then ::rpi_dma_wait().
> + *
> + * @param channel DMA channel to use (0–6 noarmal DMA, 7–10 lite, 11–14 DMA4).
> + * @param source_address Source buffer (must be CPU_CACHE_LINE_BYTES aligned).
> + * @param destination_address Destination buffer (must be CPU_CACHE_LINE_BYTES aligned).
> + * @param transfer_length Number of bytes to copy.
> + * @retval RTEMS_SUCCESSFUL on success.
> + * @retval RTEMS_INVALID_NUMBER if @a channel is invalid/unsupported or has no base address.
> + * @retval RTEMS_INVALID_ADDRESS if @a source_address or @a destination_address are misaligned.
> + * @retval RTEMS_NO_MEMORY if control block allocation failed.
> + */
> +rtems_status_code rpi_dma_mem_to_mem_init( rpi_dma_channel channel, void *source_address, void *destination_address, uint32_t transfer_length );
Changed the formatting to pass the pipeline, without warning
--
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/662#note_129083
You're receiving this email because of your account on gitlab.rtems.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20250820/d74e2980/attachment-0001.htm>
More information about the bugs
mailing list