CC27xxDriverLibrary
copylist.h
Go to the documentation of this file.
1
/******************************************************************************
2
* Copyright (c) 2022-2024 Texas Instruments Incorporated. All rights reserved.
3
*
4
* Redistribution and use in source and binary forms, with or without
5
* modification, are permitted provided that the following conditions are met:
6
*
7
* 1) Redistributions of source code must retain the above copyright notice,
8
* this list of conditions and the following disclaimer.
9
*
10
* 2) Redistributions in binary form must reproduce the above copyright notice,
11
* this list of conditions and the following disclaimer in the documentation
12
* and/or other materials provided with the distribution.
13
*
14
* 3) Neither the name of the copyright holder nor the names of its contributors
15
* may be used to endorse or promote products derived from this software
16
* without specific prior written permission.
17
*
18
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28
* POSSIBILITY OF SUCH DAMAGE.
29
******************************************************************************
30
* \file copylist.h
31
*
32
* \brief Copy list format used to apply FCFG, CCFG, and standby wakeup
33
* configurations.
34
*
35
******************************************************************************/
36
37
#ifndef __COPYLIST_H__
38
#define __COPYLIST_H__
39
40
#include <stdint.h>
41
#include "../inc/hw_types.h"
42
#include "
hapi.h
"
43
44
//*****************************************************************************
45
//
56
//
57
//*****************************************************************************
58
#define CopyList_EOL 0U
59
60
//*****************************************************************************
61
//
69
//
70
//*****************************************************************************
71
#define CopyList_NOP CopyList_WAIT(0U)
72
73
//*****************************************************************************
74
//
84
//
85
//*****************************************************************************
86
#define CopyList_WAIT(n) (0x10000000U | (((uint32_t)n << 2U) & 0xFFFFCU))
87
88
//*****************************************************************************
89
//
104
//
105
//*****************************************************************************
106
#define CopyList_COPY(address) ((uint32_t)address | 0x1U)
107
108
//*****************************************************************************
109
//
129
//
130
//*****************************************************************************
131
#define CopyList_COPY_MULTI(address, n) (((uint32_t)address & 0xF00FFFFCU) | (((uint32_t)n << 20U) & 0xFF00000U))
132
133
//*****************************************************************************
134
//
147
//
148
//*****************************************************************************
149
#define CopyList_JUMP(address) ((uint32_t)address | 0x2U)
150
151
//*****************************************************************************
152
//
166
//
167
//*****************************************************************************
168
#define CopyList_CALL(address) ((uint32_t)address | 0x3U)
169
170
#ifndef DRIVERLIB_NS
171
//*****************************************************************************
172
//
173
// Below functions will only be compiled into the driverlib.a library and not
174
// the driverlib_ns.a library.
175
// Non-secure applications might be able to access some/all of these functions
176
// through veneers declared further below in the #else case.
177
//
178
//*****************************************************************************
179
180
//*****************************************************************************
181
//
204
//
205
//*****************************************************************************
206
__STATIC_INLINE
void
CopyList_apply
(
const
uint32_t *list)
207
{
208
HapiApplyCopyList
(list);
209
}
210
211
#else
212
//*****************************************************************************
213
//
214
// Secure-only API functions available from non-secure context through
215
// veneers.
216
//
217
// These functions must be linked in from from the secure veneer library.
218
//
219
//*****************************************************************************
220
221
// No veneers
222
223
#endif
224
225
#endif //__COPYLIST_H__
hapi.h
CopyList_apply
__STATIC_INLINE void CopyList_apply(const uint32_t *list)
Process copy list Processes a copy list in a flexible CopyList format. Used by trims in FCFG...
Definition:
copylist.h:206
__STATIC_INLINE
#define __STATIC_INLINE
Definition:
cmsis_gcc.h:47
HapiApplyCopyList
#define HapiApplyCopyList(list)
Process copy list Processes a copy list in a flexible CopyList format. Used by trims in FCFG...
Definition:
hapi.h:203
source
ti
devices
cc27xx
driverlib
copylist.h