AM64x MCU+ SDK  08.02.00
udma_types.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2018-2021 Texas Instruments Incorporated
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *
11  * Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the
14  * distribution.
15  *
16  * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 
47 #ifndef UDMA_TYPES_H_
48 #define UDMA_TYPES_H_
49 
50 /* ========================================================================== */
51 /* Include Files */
52 /* ========================================================================== */
53 
54 /* None */
55 
56 #ifdef __cplusplus
57 extern "C" {
58 #endif
59 
60 /* ========================================================================== */
61 /* Macros & Typedefs */
62 /* ========================================================================== */
63 
65 typedef void * Udma_DrvHandle;
67 typedef void * Udma_ChHandle;
69 typedef void * Udma_EventHandle;
71 typedef void * Udma_RingHandle;
73 typedef void * Udma_FlowHandle;
74 
76 #define UDMA_CACHELINE_ALIGNMENT (128U)
77 
79 #define UDMA_ALIGN_SIZE(x) (((x) + UDMA_CACHELINE_ALIGNMENT) & ~(UDMA_CACHELINE_ALIGNMENT - 1U))
80 
82 #define UDMA_DEFAULT_CH_DISABLE_TIMEOUT (100U)
83 
93 #define UDMA_SOK ( (int32_t) (0))
94 
96 #define UDMA_EFAIL (-(int32_t) (1))
97 
99 #define UDMA_EBADARGS (-(int32_t) (2))
100 
102 #define UDMA_EINVALID_PARAMS (-(int32_t) (3))
103 
106 #define UDMA_ETIMEOUT (-(int32_t) (4))
107 
108 #define UDMA_EALLOC (-(int32_t) (5))
109 
121 #define UDMA_INST_ID_0 (0U)
122 #define UDMA_INST_ID_1 (1U)
123 #define UDMA_INST_ID_2 (2U)
124 #define UDMA_INST_ID_3 (3U)
125 
139 #define UDMA_MAPPED_GROUP0 (0U)
140 #define UDMA_MAPPED_GROUP1 (1U)
141 #define UDMA_MAPPED_GROUP2 (2U)
142 #define UDMA_MAPPED_GROUP3 (3U)
143 #define UDMA_MAPPED_GROUP4 (4U)
144 #define UDMA_MAPPED_GROUP5 (5U)
145 #define UDMA_MAPPED_GROUP6 (6U)
146 #define UDMA_MAPPED_GROUP7 (7U)
147 
149 /* ========================================================================== */
150 /* Structure Declarations */
151 /* ========================================================================== */
152 
153 /* None */
154 
155 /* ========================================================================== */
156 /* Function Declarations */
157 /* ========================================================================== */
158 
159 /* None */
160 
161 /* ========================================================================== */
162 /* Static Function Definitions */
163 /* ========================================================================== */
164 
165 /* None */
166 
167 #ifdef __cplusplus
168 }
169 #endif
170 
171 #endif /* #ifndef UDMA_TYPES_H_ */
172 
Udma_FlowHandle
void * Udma_FlowHandle
UDMA flow handle.
Definition: udma_types.h:73
Udma_ChHandle
void * Udma_ChHandle
UDMA channel handle.
Definition: udma_types.h:67
Udma_RingHandle
void * Udma_RingHandle
UDMA ring handle.
Definition: udma_types.h:71
Udma_EventHandle
void * Udma_EventHandle
UDMA event handle.
Definition: udma_types.h:69
Udma_DrvHandle
void * Udma_DrvHandle
UDMA driver handle.
Definition: udma_types.h:65