![]() |
RT-Thread RTOS
An open source embedded real-time operating system
|
#include <dma.h>
Public Member Functions | |
| RT_BITMAP_DECLARE (dir_cap, RT_DMA_DIR_MAX) | |
Data Fields | |
| rt_list_t | list |
| struct rt_device * | dev |
| rt_uint64_t | addr_mask |
| const struct rt_dma_controller_ops * | ops |
| rt_list_t | channels_nodes |
| struct rt_mutex | mutex |
DMA controller descriptor.
Represents a single DMA controller instance. Each controller has a set of operations (ops), supported transfer directions (dir_cap), an address mask for validating transfer addresses, and a list of currently allocated channels.
| rt_dma_controller::RT_BITMAP_DECLARE | ( | dir_cap | , |
| RT_DMA_DIR_MAX | |||
| ) |
Bitmap of supported transfer directions
| rt_list_t rt_dma_controller::list |
Node in the global controller list
| struct rt_device* rt_dma_controller::dev |
Owning platform device
| rt_uint64_t rt_dma_controller::addr_mask |
Compute DMA address mask from bit width (e.g., RT_DMA_ADDR_MASK(32) = 0xFFFFFFFF)
Address mask: bits outside this mask are invalid for DMA
| const struct rt_dma_controller_ops* rt_dma_controller::ops |
Controller-specific operations
| rt_list_t rt_dma_controller::channels_nodes |
List of currently allocated channels
| struct rt_mutex rt_dma_controller::mutex |
Mutex for controller-level operations