Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
dma_bee.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2026, Realtek Semiconductor Corporation
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
16
17#ifndef ZEPHYR_INCLUDE_DRIVERS_DMA_BEE_H_
18#define ZEPHYR_INCLUDE_DRIVERS_DMA_BEE_H_
19
26
34#define BEE_DMA_CTLR(id, dir) DT_INST_DMAS_CTLR_BY_NAME(id, dir)
35
43#define BEE_DMA_CHANNEL_CONFIG(id, dir) DT_INST_DMAS_CELL_BY_NAME(id, dir, config)
44
45/* -------------------------------------------------------------------------- */
46/* Channel Configuration Extraction Macros */
47/* -------------------------------------------------------------------------- */
48
60#define BEE_DMA_CONFIG_DIRECTION(config) ((config >> 0) & 0x3)
61
73#define BEE_DMA_CONFIG_SOURCE_ADDR_INC(config) ((config >> 2) & 0x3)
74
86#define BEE_DMA_CONFIG_DESTINATION_ADDR_INC(config) ((config >> 4) & 0x3)
87
99#define BEE_DMA_CONFIG_SOURCE_DATA_SIZE(config) (1 << ((config >> 6) & 0x3))
100
112#define BEE_DMA_CONFIG_DESTINATION_DATA_SIZE(config) (1 << ((config >> 8) & 0x3))
113
131#define BEE_DMA_CONFIG_SOURCE_MSIZE(config) \
132 ((1 << (((config >> 10) & 0x7) + 1)) - (((config >> 10) & 0x7) == 0 ? 1 : 0))
133
151#define BEE_DMA_CONFIG_DESTINATION_MSIZE(config) \
152 ((1 << (((config >> 13) & 0x7) + 1)) - (((config >> 13) & 0x7) == 0 ? 1 : 0))
153
163#define BEE_DMA_CONFIG_PRIORITY(config) ((config >> 16) & 0x1f)
164 /* End of dma_bee_macros group */
166
167#endif /* ZEPHYR_INCLUDE_DRIVERS_DMA_BEE_H_ */