HPM SDK
HPMicro Software Development Kit
hpm_dmamux_regs.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 
9 #ifndef HPM_DMAMUX_H
10 #define HPM_DMAMUX_H
11 
12 typedef struct {
13  __W uint32_t MUXCFG[64]; /* 0x0 - 0xFC: HDMA MUX0 Configuration */
14 } DMAMUX_Type;
15 
16 
17 /* Bitfield definition for register array: MUXCFG */
18 /*
19  * ENABLE (WO)
20  *
21  * DMA Mux Channel Enable
22  * Enables the channel for DMA Mux. The DMA has separate channel enables/disables, which should be
23  * used to disable or reconfigure a DMA channel.
24  * 0b - DMA Mux channel is disabled
25  * 1b - DMA Mux channel is enabled
26  */
27 #define DMAMUX_MUXCFG_ENABLE_MASK (0x80000000UL)
28 #define DMAMUX_MUXCFG_ENABLE_SHIFT (31U)
29 #define DMAMUX_MUXCFG_ENABLE_SET(x) (((uint32_t)(x) << DMAMUX_MUXCFG_ENABLE_SHIFT) & DMAMUX_MUXCFG_ENABLE_MASK)
30 #define DMAMUX_MUXCFG_ENABLE_GET(x) (((uint32_t)(x) & DMAMUX_MUXCFG_ENABLE_MASK) >> DMAMUX_MUXCFG_ENABLE_SHIFT)
31 
32 /*
33  * SOURCE (WO)
34  *
35  * DMA Channel Source
36  * Specifies which DMA source, if any, is routed to a particular DMA channel. See the "DMA MUX Mapping"
37  */
38 #define DMAMUX_MUXCFG_SOURCE_MASK (0x7FU)
39 #define DMAMUX_MUXCFG_SOURCE_SHIFT (0U)
40 #define DMAMUX_MUXCFG_SOURCE_SET(x) (((uint32_t)(x) << DMAMUX_MUXCFG_SOURCE_SHIFT) & DMAMUX_MUXCFG_SOURCE_MASK)
41 #define DMAMUX_MUXCFG_SOURCE_GET(x) (((uint32_t)(x) & DMAMUX_MUXCFG_SOURCE_MASK) >> DMAMUX_MUXCFG_SOURCE_SHIFT)
42 
43 
44 
45 /* MUXCFG register group index macro definition */
46 #define DMAMUX_MUXCFG_HDMA_MUX0 (0UL)
47 #define DMAMUX_MUXCFG_HDMA_MUX1 (1UL)
48 #define DMAMUX_MUXCFG_HDMA_MUX2 (2UL)
49 #define DMAMUX_MUXCFG_HDMA_MUX3 (3UL)
50 #define DMAMUX_MUXCFG_HDMA_MUX4 (4UL)
51 #define DMAMUX_MUXCFG_HDMA_MUX5 (5UL)
52 #define DMAMUX_MUXCFG_HDMA_MUX6 (6UL)
53 #define DMAMUX_MUXCFG_HDMA_MUX7 (7UL)
54 #define DMAMUX_MUXCFG_HDMA_MUX8 (8UL)
55 #define DMAMUX_MUXCFG_HDMA_MUX9 (9UL)
56 #define DMAMUX_MUXCFG_HDMA_MUX10 (10UL)
57 #define DMAMUX_MUXCFG_HDMA_MUX11 (11UL)
58 #define DMAMUX_MUXCFG_HDMA_MUX12 (12UL)
59 #define DMAMUX_MUXCFG_HDMA_MUX13 (13UL)
60 #define DMAMUX_MUXCFG_HDMA_MUX14 (14UL)
61 #define DMAMUX_MUXCFG_HDMA_MUX15 (15UL)
62 #define DMAMUX_MUXCFG_HDMA_MUX16 (16UL)
63 #define DMAMUX_MUXCFG_HDMA_MUX17 (17UL)
64 #define DMAMUX_MUXCFG_HDMA_MUX18 (18UL)
65 #define DMAMUX_MUXCFG_HDMA_MUX19 (19UL)
66 #define DMAMUX_MUXCFG_HDMA_MUX20 (20UL)
67 #define DMAMUX_MUXCFG_HDMA_MUX21 (21UL)
68 #define DMAMUX_MUXCFG_HDMA_MUX22 (22UL)
69 #define DMAMUX_MUXCFG_HDMA_MUX23 (23UL)
70 #define DMAMUX_MUXCFG_HDMA_MUX24 (24UL)
71 #define DMAMUX_MUXCFG_HDMA_MUX25 (25UL)
72 #define DMAMUX_MUXCFG_HDMA_MUX26 (26UL)
73 #define DMAMUX_MUXCFG_HDMA_MUX27 (27UL)
74 #define DMAMUX_MUXCFG_HDMA_MUX28 (28UL)
75 #define DMAMUX_MUXCFG_HDMA_MUX29 (29UL)
76 #define DMAMUX_MUXCFG_HDMA_MUX30 (30UL)
77 #define DMAMUX_MUXCFG_HDMA_MUX31 (31UL)
78 #define DMAMUX_MUXCFG_XDMA_MUX0 (32UL)
79 #define DMAMUX_MUXCFG_XDMA_MUX1 (33UL)
80 #define DMAMUX_MUXCFG_XDMA_MUX2 (34UL)
81 #define DMAMUX_MUXCFG_XDMA_MUX3 (35UL)
82 #define DMAMUX_MUXCFG_XDMA_MUX4 (36UL)
83 #define DMAMUX_MUXCFG_XDMA_MUX5 (37UL)
84 #define DMAMUX_MUXCFG_XDMA_MUX6 (38UL)
85 #define DMAMUX_MUXCFG_XDMA_MUX7 (39UL)
86 #define DMAMUX_MUXCFG_XDMA_MUX8 (40UL)
87 #define DMAMUX_MUXCFG_XDMA_MUX9 (41UL)
88 #define DMAMUX_MUXCFG_XDMA_MUX10 (42UL)
89 #define DMAMUX_MUXCFG_XDMA_MUX11 (43UL)
90 #define DMAMUX_MUXCFG_XDMA_MUX12 (44UL)
91 #define DMAMUX_MUXCFG_XDMA_MUX13 (45UL)
92 #define DMAMUX_MUXCFG_XDMA_MUX14 (46UL)
93 #define DMAMUX_MUXCFG_XDMA_MUX15 (47UL)
94 #define DMAMUX_MUXCFG_XDMA_MUX16 (48UL)
95 #define DMAMUX_MUXCFG_XDMA_MUX17 (49UL)
96 #define DMAMUX_MUXCFG_XDMA_MUX18 (50UL)
97 #define DMAMUX_MUXCFG_XDMA_MUX19 (51UL)
98 #define DMAMUX_MUXCFG_XDMA_MUX20 (52UL)
99 #define DMAMUX_MUXCFG_XDMA_MUX21 (53UL)
100 #define DMAMUX_MUXCFG_XDMA_MUX22 (54UL)
101 #define DMAMUX_MUXCFG_XDMA_MUX23 (55UL)
102 #define DMAMUX_MUXCFG_XDMA_MUX24 (56UL)
103 #define DMAMUX_MUXCFG_XDMA_MUX25 (57UL)
104 #define DMAMUX_MUXCFG_XDMA_MUX26 (58UL)
105 #define DMAMUX_MUXCFG_XDMA_MUX27 (59UL)
106 #define DMAMUX_MUXCFG_XDMA_MUX28 (60UL)
107 #define DMAMUX_MUXCFG_XDMA_MUX29 (61UL)
108 #define DMAMUX_MUXCFG_XDMA_MUX30 (62UL)
109 #define DMAMUX_MUXCFG_XDMA_MUX31 (63UL)
110 
111 
112 #endif /* HPM_DMAMUX_H */
Definition: hpm_dmamux_regs.h:12