Zephyr Project API 3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
infineon-xmc4xxx-dma.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2022 Andriy Gelman <andriy.gelman@gmail.com>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_DMA_INFINEON_XMC4XXX_DMA_H_
8#define ZEPHYR_INCLUDE_DT_BINDINGS_DMA_INFINEON_XMC4XXX_DMA_H_
9
10#define XMC4XXX_DMA_REQUEST_SOURCE_POS 0
11#define XMC4XXX_DMA_REQUEST_SOURCE_MASK 0xf
12
13#define XMC4XXX_DMA_LINE_POS 4
14#define XMC4XXX_DMA_LINE_MASK 0xf
15
16#define XMC4XXX_DMA_GET_REQUEST_SOURCE(mx) \
17 ((mx >> XMC4XXX_DMA_REQUEST_SOURCE_POS) & XMC4XXX_DMA_REQUEST_SOURCE_MASK)
18
19#define XMC4XXX_DMA_GET_LINE(mx) ((mx >> XMC4XXX_DMA_LINE_POS) & XMC4XXX_DMA_LINE_MASK)
20
21#define XMC4XXX_SET_CONFIG(line, rs) \
22 ((line) << XMC4XXX_DMA_LINE_POS | (rs) << XMC4XXX_DMA_REQUEST_SOURCE_POS)
23
24#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_DMA_INFINEON_XMC4XXX_DMA_H_ */