CC23x0r2DriverLibrary
ull.h
Go to the documentation of this file.
1
/******************************************************************************
2
* Filename: ull.h
3
*
4
* Description: Defines and prototypes for the ULL instruction wrapper
5
* functions.
6
*
7
* Copyright (c) 2024 Texas Instruments Incorporated
8
*
9
* Redistribution and use in source and binary forms, with or without
10
* modification, are permitted provided that the following conditions are met:
11
*
12
* 1) Redistributions of source code must retain the above copyright notice,
13
* this list of conditions and the following disclaimer.
14
*
15
* 2) Redistributions in binary form must reproduce the above copyright notice,
16
* this list of conditions and the following disclaimer in the documentation
17
* and/or other materials provided with the distribution.
18
*
19
* 3) Neither the name of the copyright holder nor the names of its
20
* contributors may be used to endorse or promote products derived from this
21
* software without specific prior written permission.
22
*
23
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
24
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
27
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33
* POSSIBILITY OF SUCH DAMAGE.
34
*
35
******************************************************************************/
36
37
#ifndef __ULL_H__
38
#define __ULL_H__
39
40
//*****************************************************************************
41
//
46
//
47
//*****************************************************************************
48
49
//*****************************************************************************
50
//
51
// If building with a C++ compiler, make all of the definitions in this header
52
// have a C binding.
53
//
54
//*****************************************************************************
55
#ifdef __cplusplus
56
extern
"C"
{
57
#endif
58
59
#include <stdbool.h>
60
#include <stdint.h>
61
62
#include "../inc/hw_types.h"
63
#include "../inc/hw_memmap.h"
64
#include "../inc/hw_rtc.h"
65
66
//*****************************************************************************
67
//
68
// API Functions and prototypes
69
//
70
//*****************************************************************************
71
72
//*****************************************************************************
73
//
87
//
88
//*****************************************************************************
89
__STATIC_INLINE
void
ULLSync
(
void
)
90
{
91
// Read an RTC register to ensure that previous ULL writes have taken effect
92
HWREG(RTC_BASE + RTC_O_DESC);
93
}
94
95
//*****************************************************************************
96
//
97
// Mark the end of the C bindings section for C++ compilers.
98
//
99
//*****************************************************************************
100
#ifdef __cplusplus
101
}
102
#endif
103
104
//*****************************************************************************
105
//
109
//
110
//*****************************************************************************
111
112
#endif // __ULL_H__
ULLSync
__STATIC_INLINE void ULLSync(void)
Sync all writes to registers in the ULL domain.
Definition:
ull.h:89
__STATIC_INLINE
#define __STATIC_INLINE
Definition:
cmsis_gcc.h:47
source
ti
devices
cc23x0r2
driverlib
ull.h