CC26xx Driver Library |

- Main Page
- Related Pages
- CC26xx APIs
- Register Descriptions
- Online Resources

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
aon_wuc.h
Go to the documentation of this file.
1 /******************************************************************************
2 * Filename: aon_wuc.h
3 * Revised: 2015-01-14 12:12:44 +0100 (on, 14 jan 2015)
4 * Revision: 42373
5 *
6 * Description: Defines and prototypes for the AON Wake-Up Controller
7 *
8 * Copyright (c) 2015, Texas Instruments Incorporated
9 * All rights reserved.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions are met:
13 *
14 * 1) Redistributions of source code must retain the above copyright notice,
15 * this list of conditions and the following disclaimer.
16 *
17 * 2) Redistributions in binary form must reproduce the above copyright notice,
18 * this list of conditions and the following disclaimer in the documentation
19 * and/or other materials provided with the distribution.
20 *
21 * 3) Neither the name of the ORGANIZATION nor the names of its contributors may
22 * be used to endorse or promote products derived from this software without
23 * specific prior written permission.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
29 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 * POSSIBILITY OF SUCH DAMAGE.
36 *
37 ******************************************************************************/
38
39 //*****************************************************************************
40 //
43 //
44 //*****************************************************************************
45
46 #ifndef __AON_WUC_H__
47 #define __AON_WUC_H__
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 {
58 #endif
59
60 #include <stdbool.h>
61 #include <stdint.h>
62 #include <inc/hw_types.h>
63 #include <inc/hw_memmap.h>
64 #include <inc/hw_ints.h>
65 #include <inc/hw_aon_wuc.h>
66 #include <inc/hw_aon_rtc.h>
67 #include <driverlib/interrupt.h>
68 #include <driverlib/debug.h>
69
70 //*****************************************************************************
71 //
72 // Support for DriverLib in ROM:
73 // This section renames all functions that are not "static inline", so that
74 // calling these functions will default to implementation in flash. At the end
75 // of this file a second renaming will change the defaults to implementation in
76 // ROM for available functions.
77 //
78 // To force use of the implementation in flash, e.g. for debugging:
79 // - Globally: Define DRIVERLIB_NOROM at project level
80 // - Per function: Use prefix "NOROM_" when calling the function
81 //
82 // Do not define DRIVERLIB_GENERATE_ROM!
83 //
84 //*****************************************************************************
85 #ifndef DRIVERLIB_GENERATE_ROM
86 #define AONWUCAuxClockConfigSet NOROM_AONWUCAuxClockConfigSet
87 #define AONWUCAuxSRamConfig NOROM_AONWUCAuxSRamConfig
88 #define AONWUCAuxWakeupEvent NOROM_AONWUCAuxWakeupEvent
89 #define AONWUCAuxReset NOROM_AONWUCAuxReset
90 #define AONWUCRechargeCtrlConfigSet NOROM_AONWUCRechargeCtrlConfigSet
91 #define AONWUCOscConfig NOROM_AONWUCOscConfig
92 #endif
93
94 //*****************************************************************************
95 //
96 // Defines the possible clock source for the MCU and AUX domain.
97 //
98 //*****************************************************************************
99 #define AONWUC_CLOCK_SRC_HF 0x00000003 // System clock high frequency -
100 // 48 MHz.
101 #define AONWUC_CLOCK_SRC_MF 0x00000002 // System clock medium frequency -
102 // 512 kHz.
103 #define AONWUC_CLOCK_SRC_LF 0x00000001 // System clock low frequency -
104 // 32 kHz.
105 #define AONWUC_NO_CLOCK 0x00000000 // System clock low frequency -
106 // 32 kHz.
107
108 //*****************************************************************************
109 //
110 // Defines the possible clock division factors for the AUX domain.
111 //
112 //*****************************************************************************
113 #define AUX_CLOCK_DIV_2 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV2 )
114 #define AUX_CLOCK_DIV_4 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV4 )
115 #define AUX_CLOCK_DIV_8 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV8 )
116 #define AUX_CLOCK_DIV_16 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV16 )
117 #define AUX_CLOCK_DIV_32 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV32 )
118 #define AUX_CLOCK_DIV_64 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV64 )
119 #define AUX_CLOCK_DIV_128 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV128 )
120 #define AUX_CLOCK_DIV_256 ( AON_WUC_AUXCLK_SCLK_HF_DIV_DIV256 )
121 #define AUX_CLOCK_DIV_UNUSED ( AON_WUC_AUXCLK_SCLK_HF_DIV_M + ( 1 << AON_WUC_AUXCLK_SCLK_HF_DIV_S ))
122 #define AUX_CLOCK_DIV_M ( AON_WUC_AUXCLK_SCLK_HF_DIV_M )
123
124 //*****************************************************************************
125 //
126 // Defines used for configuring the power-off and wake up procedure.
127 //
128 //*****************************************************************************
129 #define MCU_VIRT_PWOFF_DISABLE 0x00000000
130 #define MCU_VIRT_PWOFF_ENABLE 0x00020000
131 #define MCU_IMM_WAKE_UP 0x00000000
132 #define MCU_FIXED_WAKE_UP 0x00010000
133 #define AUX_VIRT_PWOFF_DISABLE 0x00000000
134 #define AUX_VIRT_PWOFF_ENABLE 0x00020000
135 #define AUX_IMM_WAKE_UP 0x00000000
136 #define AUX_FIXED_WAKE_UP 0x00010000
137
138 //*****************************************************************************
139 //
140 // Defines that can be be used to enable/disable the entire SRAM and the
141 // retention on the SRAM in both the MCU and the AUX domain.
142 //
143 //*****************************************************************************
144 #define MCU_RAM0_RETENTION 0x00000001
145 #define MCU_RAM1_RETENTION 0x00000002
146 #define MCU_RAM2_RETENTION 0x00000004
147 #define MCU_RAM3_RETENTION 0x00000008
148 #define MCU_RAM_BLOCK_RETENTION 0x0000000F
149 #define MCU_AUX_RET_ENABLE 0x00000001
150
151 //*****************************************************************************
152 //
153 // Defines for different wake up modes for AUX domain which can be set using
154 // AONWUCAuxWakeUpEvent() .
155 //
156 //*****************************************************************************
157 #define AONWUC_AUX_WAKEUP_SWEVT 0x00000002
158 #define AONWUC_AUX_WAKEUP 0x00000001
159 #define AONWUC_AUX_ALLOW_SLEEP 0x00000000
160
161 //*****************************************************************************
162 //
163 // Defines for all the different power modes available through
164 // AONWUCPowerStatusGet() .
165 //
166 //*****************************************************************************
167 #define AONWUC_OSC_GBIAS_REQ 0x00400000 // OSC is requesting GBias
168 #define AONWUC_AUX_GBIAS_REQ 0x00200000 // AUX is requesting GBias
169 #define AONWUC_MCU_GBIAS_REQ 0x00100000 // MCU is requesting GBias
170 #define AONWUC_OSC_BGAP_REQ 0x00040000 // OSC is requesting BGap
171 #define AONWUC_AUX_BGAP_REQ 0x00020000 // AUX is requesting BGap
172 #define AONWUC_MCU_BGAP_REQ 0x00010000 // MCU is requesting BGap
173 #define AONWUC_GBIAS_ON 0x00002000 // Global Bias is on
174 #define AONWUC_BGAP_ON 0x00001000 // Band Gap is on
175 #define AONWUC_AUX_POWER_DOWN 0x00000200 // AUX is in powerdown mode
176 #define AONWUC_MCU_POWER_DOWN 0x00000100 // MCU is in powerdown mode
177 #define AONWUC_JTAG_POWER_ON 0x00000040 // JTAG is powered on
178 #define AONWUC_AUX_POWER_ON 0x00000020 // AUX is powered on
179 #define AONWUC_MCU_POWER_ON 0x00000010 // MCU is powered on
180 #define AONWUC_SPLY_POWER_DOWN 0x00000001 // Power supply is in power down
181
182 //*****************************************************************************
183 //
184 // Defines for the different configuration options for the JTAG domain that can
185 // be passed to AONWUCJTagConfig() .
186 //
187 //*****************************************************************************
188 #define AONWUC_JTAG_FORCE_ON 0x00000100
189 #define AONWUC_JTAG_ICE 0x00000000
190 #define AONWUC_JTAG_PBIST2TAP 0x00000040
191 #define AONWUC_JTAG_PBIST1TAP 0x00000020
192 #define AONWUC_JTAG_EFUSETAP 0x00000010
193 #define AONWUC_JTAG_TESTTAP 0x00000008
194 #define AONWUC_JTAG_WUCTAP 0x00000004
195 #define AONWUC_JTAG_PRCMTAP 0x00000002
196 #define AONWUC_JTAG_CPUDAP 0x00000001
197 #define AONWUC_JTAG_MASK 0x0000007F
198
199 //*****************************************************************************
200 //
201 // RAM repair status bits. Values are returned by AOXWUCRamRepairStatusGet() .
202 //
203 //*****************************************************************************
204 #define MCU_RAMREPAIR_DONE 0x00000001
205 #define AUX_RAMREPAIR_DONE 0x00000002
206
207 //*****************************************************************************
208
209 //*****************************************************************************
210 #define RC_RATE_MAX 768 // Maximum recharge rate for the
211 // recharge controller.
212 #define RC_RATE_MIN 2 // Minimum recharge rate for the
213 // recharge controller.
214
215 //*****************************************************************************
216 #define AONWUC_TOTAL_FLASH_ERASE \
217 0x00000200 // A total flash erase includes the
218 // Customer Configuration Area
219 #define AONWUC_FULL_FLASH_ERASE 0x00000100 // A full flash erase excludes the
220 // the customer configuration area
221 #define AONWUC_MCU_RESET_SRC 0x00000002 // MCU reset source can be SW or
222 // JTAG
223 #define AONWUC_MCU_RESET_TYPE 0x00000001 // MCU reset type and can be warm
224 // or not warm.
225
226 //*****************************************************************************
227 //
228 // API Functions and prototypes
229 //
230 //*****************************************************************************
231
232 //*****************************************************************************
233 //
251 //
252 //*****************************************************************************
253 __STATIC_INLINE void
254 AONWUCMcuPowerDownConfig(uint32_t ui32ClkSrc)
255 {
256 uint32_t ui32Reg;
257
258 //
259 // Check the arguments.
260 //
261 ASSERT((ui32ClkSrc == AONWUC_NO_CLOCK) ||
262 (ui32ClkSrc == AONWUC_CLOCK_SRC_MF) ||
263 (ui32ClkSrc == AONWUC_CLOCK_SRC_LF));
264
265 //
266 // Set the clock source for the MCU domain when in power down.
267 //
268 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_MCUCLK);
269 ui32Reg &= ~AON_WUC_MCUCLK_PWR_DWN_SRC_M;
270 HWREG(AON_WUC_BASE + AON_WUC_O_MCUCLK) = ui32Reg |
271 (ui32ClkSrc <<
272 AON_WUC_MCUCLK_PWR_DWN_SRC_S);
273 }
274
275 //*****************************************************************************
276 //
291 //
292 //*****************************************************************************
293 __STATIC_INLINE void
294 AONWUCMcuPowerOffConfig(uint32_t ui32Mode)
295 {
296 uint32_t ui32Reg;
297
298 //
299 // Check the arguments.
300 //
301 ASSERT((ui32Mode == MCU_VIRT_PWOFF_ENABLE) ||
302 (ui32Mode == MCU_VIRT_PWOFF_DISABLE));
303
304 //
305 // Set the powerdown mode.
306 //
307 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_MCUCFG);
308 ui32Reg &= ~AON_WUC_MCUCFG_VIRT_OFF_M;
309 HWREG(AON_WUC_BASE + AON_WUC_O_MCUCFG) = ui32Reg | ui32Mode;
310 }
311
312 //*****************************************************************************
313 //
328 //
329 //*****************************************************************************
330 __STATIC_INLINE void
331 AONWUCMcuWakeUpConfig(uint32_t ui32WakeUp)
332 {
333 uint32_t ui32Reg;
334
335 //
336 // Check the arguments.
337 //
338 ASSERT((ui32WakeUp == MCU_IMM_WAKE_UP) ||
339 (ui32WakeUp == MCU_FIXED_WAKE_UP));
340
341 //
342 // Configure the wake up procedure.
343 //
344 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_MCUCFG);
345 ui32Reg &= ~AON_WUC_MCUCFG_FIXED_WU_EN;
346 HWREG(AON_WUC_BASE + AON_WUC_O_MCUCFG) = ui32Reg | ui32WakeUp;
347 }
348
349 //*****************************************************************************
350 //
373 //
374 //*****************************************************************************
375 __STATIC_INLINE void
376 AONWUCMcuSRamConfig(uint32_t ui32Retention)
377 {
378 uint32_t ui32Reg;
379
380 //
381 // Check the arguments.
382 //
383 ASSERT(ui32Retention & MCU_RAM_BLOCK_RETENTION);
384 ASSERT(!(ui32Retention & ~MCU_RAM_BLOCK_RETENTION));
385
386 //
387 // Configure the retention.
388 //
389 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_MCUCFG) & ~MCU_RAM_BLOCK_RETENTION;
390 ui32Reg |= ui32Retention;
391 HWREG(AON_WUC_BASE + AON_WUC_O_MCUCFG) = ui32Reg;
392 }
393
394 //*****************************************************************************
395 //
424 //
425 //*****************************************************************************
426 extern void AONWUCAuxClockConfigSet(uint32_t ui32ClkSrc, uint32_t ui32ClkDiv);
427
428 //*****************************************************************************
429 //
447 //
448 //*****************************************************************************
449 __STATIC_INLINE uint32_t
450 AONWUCAuxClockConfigGet(void)
451 {
452 //
453 // Return the clock divider value.
454 //
455 return ((HWREG(AON_WUC_BASE + AON_WUC_O_AUXCLK) &
456 AON_WUC_AUXCLK_SCLK_HF_DIV_M) >>
457 AON_WUC_AUXCLK_SCLK_HF_DIV_S);
458 }
459
460 //*****************************************************************************
461 //
477 //
478 //*****************************************************************************
479 __STATIC_INLINE void
480 AONWUCAuxPowerDownConfig(uint32_t ui32ClkSrc)
481 {
482 uint32_t ui32Reg;
483
484 //
485 // Check the arguments.
486 //
487 ASSERT((ui32ClkSrc == AONWUC_NO_CLOCK) ||
488 (ui32ClkSrc == AONWUC_CLOCK_SRC_MF) ||
489 (ui32ClkSrc == AONWUC_CLOCK_SRC_LF));
490
491 //
492 // Set the clock source for the AUX domain when in power down.
493 //
494 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_AUXCLK);
495 ui32Reg &= ~AON_WUC_AUXCLK_PWR_DWN_SRC_M;
496 HWREG(AON_WUC_BASE + AON_WUC_O_AUXCLK) = ui32Reg |
497 (ui32ClkSrc <<
498 AON_WUC_AUXCLK_PWR_DWN_SRC_S);
499 }
500
501 //*****************************************************************************
502 //
516 //
517 //*****************************************************************************
518 __STATIC_INLINE void
519 AONWUCAuxPowerOffConfig(uint32_t ui32Mode)
520 {
521 uint32_t ui32Reg;
522
523 //
524 // Check the arguments.
525 //
526 ASSERT((ui32Mode == AUX_VIRT_PWOFF_ENABLE) ||
527 (ui32Mode == AUX_VIRT_PWOFF_DISABLE));
528
529 //
530 // Set the poweroff mode.
531 //
532 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_AUXCFG);
533 ui32Reg &= ~AON_WUC_AUXCFG_VIRT_OFF;
534 HWREG(AON_WUC_BASE + AON_WUC_O_AUXCFG) = ui32Mode | ui32Reg;
535 }
536
537 //*****************************************************************************
538 //
553 //
554 //*****************************************************************************
555 __STATIC_INLINE void
556 AONWUCAuxWakeUpConfig(uint32_t ui32WakeUp)
557 {
558 uint32_t ui32Reg;
559
560 //
561 // Check the arguments.
562 //
563 ASSERT((ui32WakeUp == AUX_IMM_WAKE_UP) || (ui32WakeUp == AUX_FIXED_WAKE_UP));
564
565 //
566 // Configure the wake up procedure.
567 //
568 ui32Reg = HWREG(AON_WUC_BASE + AON_WUC_O_AUXCFG);
569 ui32Reg &= ~AON_WUC_AUXCFG_FIXED_WU_EN_M;
570 HWREG(AON_WUC_BASE + AON_WUC_O_AUXCFG) = ui32Reg | ui32WakeUp;
571 }
572
573 //*****************************************************************************
574 //
588 //
589 //*****************************************************************************
590 extern void AONWUCAuxSRamConfig(uint32_t ui32Retention);
591
592 //*****************************************************************************
593 //
607 //
619 //
620 //*****************************************************************************
621 extern void AONWUCAuxWakeupEvent(uint32_t ui32Mode);
622
623 //*****************************************************************************
624 //
636 //
637 //*****************************************************************************
638 extern void AONWUCAuxReset(void);
639
640 //*****************************************************************************
641 //
648 //
649 //*****************************************************************************
650 __STATIC_INLINE void
651 AONWUCAuxImageValid(void)
652 {
653 //
654 // Tell the AUX controller that the iamge in memory is invalid.
655 //
656 HWREG(AON_WUC_BASE + AON_WUC_O_AUXCTL) |= AON_WUC_AUXCTL_SCE_RUN_EN;
657 }
658
659 //*****************************************************************************
660 //
667 //
668 //*****************************************************************************
669 __STATIC_INLINE void
670 AONWUCAuxImageInvalid(void)
671 {
672 //
673 // Tell the AUX controller that the iamge in memory is invalid.
674 //
675 HWREG(AON_WUC_BASE + AON_WUC_O_AUXCTL) &= ~AON_WUC_AUXCTL_SCE_RUN_EN;
676 }
677
678 //*****************************************************************************
679 //
704 //
705 //*****************************************************************************
706 __STATIC_INLINE uint32_t
707 AONWUCPowerStatus(void)
708 {
709 //
710 // Return the power status.
711 //
712 return (HWREG(AON_WUC_BASE + AON_WUC_O_PWRSTAT));
713 }
714
715 //*****************************************************************************
716 //
729 //
730 //*****************************************************************************
731 __STATIC_INLINE void
732 AONWUCShutDownEnable(void)
733 {
734 //
735 // Ensure the JTAG domain is turned off;
736 // otherwise MCU domain can't be turned off.
737 //
738 HWREG(AON_WUC_BASE + AON_WUC_O_JTAGCFG) = 0;
739
740 //
741 // Enable shutdown of the device.
742 //
743 HWREG(AON_WUC_BASE + AON_WUC_O_CTL0) &= ~AON_WUC_CTL0_PWR_DWN_DIS;
744 HWREG(AON_WUC_BASE + AON_WUC_O_SHUTDOWN) = AON_WUC_SHUTDOWN_EN;
745 }
746
747 //*****************************************************************************
748 //
757 //
758 //*****************************************************************************
759 __STATIC_INLINE void
760 AONWUCDomainPowerDownEnable(void)
761 {
762 //
763 // Ensure the JTAG domain is turned off;
764 // otherwise MCU domain can't be turned off.
765 //
766 HWREG(AON_WUC_BASE + AON_WUC_O_JTAGCFG) = 0;
767
768 //
769 // Enable power down mode.
770 //
771 HWREG(AON_WUC_BASE + AON_WUC_O_CTL0) &= ~AON_WUC_CTL0_PWR_DWN_DIS;
772 }
773
774 //*****************************************************************************
775 //
783 //
784 //*****************************************************************************
785 __STATIC_INLINE void
786 AONWUCDomainPowerDownDisable(void)
787 {
788 //
789 // Disable power down mode.
790 //
791 HWREG(AON_WUC_BASE + AON_WUC_O_CTL0) |= AON_WUC_CTL0_PWR_DWN_DIS;
792 }
793
794 //*****************************************************************************
795 //
816 //
817 //*****************************************************************************
818 __STATIC_INLINE void
819 AONWUCMcuResetClear(uint32_t ui32Status)
820 {
821 //
822 // Check the arguments.
823 //
824 ASSERT((ui32Status & AONWUC_TOTAL_FLASH_ERASE) ||
825 (ui32Status & AONWUC_FULL_FLASH_ERASE) ||
826 (ui32Status & AONWUC_MCU_RESET_SRC) ||
827 (ui32Status & AONWUC_MCU_RESET_TYPE));
828
829 //
830 // Clear the status bits.
831 //
832 HWREG(AON_WUC_BASE + AON_WUC_O_CTL1) = ui32Status;
833 }
834
835 //*****************************************************************************
836 //
842 //
843 //*****************************************************************************
844 __STATIC_INLINE uint32_t
845 AONWUCMcuResetStatus(void)
846 {
847 //
848 // Return the current status.
849 //
850 return (HWREG(AON_WUC_BASE + AON_WUC_O_CTL1));
851 }
852
853 //*****************************************************************************
854 //
861
872
887 //
905 //*****************************************************************************
906 extern void AONWUCRechargeCtrlConfigSet(bool bAdaptEnable,
907 uint32_t ui32AdaptRate,
908 uint32_t ui32Period,
909 uint32_t ui32MaxPeriod);
910
911 //*****************************************************************************
912 //
918 //
919 //*****************************************************************************
920 __STATIC_INLINE uint32_t
921 AONWUCRechargeCtrlConfigGet(void)
922 {
923 //
924 // Return the current configuration.
925 //
926 return(HWREG(AON_WUC_BASE + AON_WUC_O_RECHARGECFG));
927 }
928
929 //*****************************************************************************
930 //
938
945 //
962 //*****************************************************************************
963 extern void AONWUCOscConfig(uint32_t ui32Period);
964
965 //*****************************************************************************
966 //
978 //
979 //*****************************************************************************
980 __STATIC_INLINE void
981 AONWUCJtagPowerOff(void)
982 {
983 //
984 // Request the power off of the Jtag domain
985 //
986 HWREG(AON_WUC_BASE + AON_WUC_O_JTAGCFG) = 0;
987 }
988
989
990 //*****************************************************************************
991 //
992 // Support for DriverLib in ROM:
993 // Redirect to implementation in ROM when available.
994 //
995 //*****************************************************************************
996 #ifndef DRIVERLIB_NOROM
997 #include <driverlib/rom.h>
998 #ifdef ROM_AONWUCAuxClockConfigSet
999 #undef AONWUCAuxClockConfigSet
1000 #define AONWUCAuxClockConfigSet ROM_AONWUCAuxClockConfigSet
1001 #endif
1002 #ifdef ROM_AONWUCAuxSRamConfig
1003 #undef AONWUCAuxSRamConfig
1004 #define AONWUCAuxSRamConfig ROM_AONWUCAuxSRamConfig
1005 #endif
1006 #ifdef ROM_AONWUCAuxWakeupEvent
1007 #undef AONWUCAuxWakeupEvent
1008 #define AONWUCAuxWakeupEvent ROM_AONWUCAuxWakeupEvent
1009 #endif
1010 #ifdef ROM_AONWUCAuxReset
1011 #undef AONWUCAuxReset
1012 #define AONWUCAuxReset ROM_AONWUCAuxReset
1013 #endif
1014 #ifdef ROM_AONWUCRechargeCtrlConfigSet
1015 #undef AONWUCRechargeCtrlConfigSet
1016 #define AONWUCRechargeCtrlConfigSet ROM_AONWUCRechargeCtrlConfigSet
1017 #endif
1018 #ifdef ROM_AONWUCOscConfig
1019 #undef AONWUCOscConfig
1020 #define AONWUCOscConfig ROM_AONWUCOscConfig
1021 #endif
1022 #endif
1023
1024 //*****************************************************************************
1025 //
1026 // Mark the end of the C bindings section for C++ compilers.
1027 //
1028 //*****************************************************************************
1029 #ifdef __cplusplus
1030 }
1031 #endif
1032
1033 #endif // __AON_WUC_H__
1034
1035 //*****************************************************************************
1036 //
1039 //
1040 //*****************************************************************************
MCU_IMM_WAKE_UP
#define MCU_IMM_WAKE_UP
Definition: aon_wuc.h:131
AONWUCJtagPowerOff
__STATIC_INLINE void AONWUCJtagPowerOff(void)
Request power off of the JTAG domain.
Definition: aon_wuc.h:981
AONWUCAuxClockConfigGet
__STATIC_INLINE uint32_t AONWUCAuxClockConfigGet(void)
Return the clock configuration for the AUX domain.
Definition: aon_wuc.h:450
AONWUCAuxSRamConfig
void AONWUCAuxSRamConfig(uint32_t ui32Retention)
Configure the retention on the AUX SRAM.
Definition: aon_wuc.c:136
AONWUCRechargeCtrlConfigGet
__STATIC_INLINE uint32_t AONWUCRechargeCtrlConfigGet(void)
Get the current configuration of the recharge controller.
Definition: aon_wuc.h:921
MCU_VIRT_PWOFF_ENABLE
#define MCU_VIRT_PWOFF_ENABLE
Definition: aon_wuc.h:130
debug.h
AONWUCOscConfig
void AONWUCOscConfig(uint32_t ui32Period)
Configure the interval for oscillator amplitude calibration.
Definition: aon_wuc.c:345
ASSERT
#define ASSERT(expr)
Definition: debug.h:65
AUX_VIRT_PWOFF_DISABLE
#define AUX_VIRT_PWOFF_DISABLE
Definition: aon_wuc.h:133
AUX_VIRT_PWOFF_ENABLE
#define AUX_VIRT_PWOFF_ENABLE
Definition: aon_wuc.h:134
AONWUCAuxReset
void AONWUCAuxReset(void)
Reset the AUX domain.
Definition: aon_wuc.c:192
AONWUCAuxWakeUpConfig
__STATIC_INLINE void AONWUCAuxWakeUpConfig(uint32_t ui32WakeUp)
Configure the wake-up procedure for the AUX domain.
Definition: aon_wuc.h:556
AONWUC_CLOCK_SRC_MF
#define AONWUC_CLOCK_SRC_MF
Definition: aon_wuc.h:101
AUX_FIXED_WAKE_UP
#define AUX_FIXED_WAKE_UP
Definition: aon_wuc.h:136
AONWUC_CLOCK_SRC_LF
#define AONWUC_CLOCK_SRC_LF
Definition: aon_wuc.h:103
AONWUCRechargeCtrlConfigSet
void AONWUCRechargeCtrlConfigSet(bool bAdaptEnable, uint32_t ui32AdaptRate, uint32_t ui32Period, uint32_t ui32MaxPeriod)
Configure the recharge controller.
Definition: aon_wuc.c:221
MCU_FIXED_WAKE_UP
#define MCU_FIXED_WAKE_UP
Definition: aon_wuc.h:132
AONWUCMcuResetStatus
__STATIC_INLINE uint32_t AONWUCMcuResetStatus(void)
Return the reset status.
Definition: aon_wuc.h:845
AONWUCMcuWakeUpConfig
__STATIC_INLINE void AONWUCMcuWakeUpConfig(uint32_t ui32WakeUp)
Configure the wake-up procedure for the MCU domain.
Definition: aon_wuc.h:331
AONWUC_MCU_RESET_SRC
#define AONWUC_MCU_RESET_SRC
Definition: aon_wuc.h:221
AONWUC_TOTAL_FLASH_ERASE
#define AONWUC_TOTAL_FLASH_ERASE
Definition: aon_wuc.h:216
AONWUCMcuPowerOffConfig
__STATIC_INLINE void AONWUCMcuPowerOffConfig(uint32_t ui32Mode)
Configure the power down mode for the MCU domain.
Definition: aon_wuc.h:294
AONWUCMcuSRamConfig
__STATIC_INLINE void AONWUCMcuSRamConfig(uint32_t ui32Retention)
Configure the retention on the block RAM in the MCU domain.
Definition: aon_wuc.h:376
AONWUCAuxPowerOffConfig
__STATIC_INLINE void AONWUCAuxPowerOffConfig(uint32_t ui32Mode)
Configure the power off mode for the AUX domain.
Definition: aon_wuc.h:519
AONWUCAuxClockConfigSet
void AONWUCAuxClockConfigSet(uint32_t ui32ClkSrc, uint32_t ui32ClkDiv)
Set the clock source for the AUX domain.
Definition: aon_wuc.c:68
AONWUCAuxWakeupEvent
void AONWUCAuxWakeupEvent(uint32_t ui32Mode)
Control the wake up procedure of the AUX domain.
Definition: aon_wuc.c:158
AONWUCShutDownEnable
__STATIC_INLINE void AONWUCShutDownEnable(void)
Enable shut-down of the device.
Definition: aon_wuc.h:732
AONWUC_NO_CLOCK
#define AONWUC_NO_CLOCK
Definition: aon_wuc.h:105
AONWUCMcuResetClear
__STATIC_INLINE void AONWUCMcuResetClear(uint32_t ui32Status)
Use this function to clear specific status bits.
Definition: aon_wuc.h:819
AONWUCAuxImageInvalid
__STATIC_INLINE void AONWUCAuxImageInvalid(void)
Tells the AUX controller that the image in memory is invalid.
Definition: aon_wuc.h:670
AONWUC_FULL_FLASH_ERASE
#define AONWUC_FULL_FLASH_ERASE
Definition: aon_wuc.h:219
MCU_RAM_BLOCK_RETENTION
#define MCU_RAM_BLOCK_RETENTION
Definition: aon_wuc.h:148
interrupt.h
AONWUCAuxPowerDownConfig
__STATIC_INLINE void AONWUCAuxPowerDownConfig(uint32_t ui32ClkSrc)
Configure the power down mode for the AUX domain.
Definition: aon_wuc.h:480
AONWUCAuxImageValid
__STATIC_INLINE void AONWUCAuxImageValid(void)
Tells the AUX controller that the image in memory is valid.
Definition: aon_wuc.h:651
AUX_IMM_WAKE_UP
#define AUX_IMM_WAKE_UP
Definition: aon_wuc.h:135
MCU_VIRT_PWOFF_DISABLE
#define MCU_VIRT_PWOFF_DISABLE
Definition: aon_wuc.h:129
rom.h
AONWUCDomainPowerDownEnable
__STATIC_INLINE void AONWUCDomainPowerDownEnable(void)
Enable power down mode on AUX and MCU domain.
Definition: aon_wuc.h:760
AONWUCPowerStatus
__STATIC_INLINE uint32_t AONWUCPowerStatus(void)
Get the power status of the device.
Definition: aon_wuc.h:707
AONWUCMcuPowerDownConfig
__STATIC_INLINE void AONWUCMcuPowerDownConfig(uint32_t ui32ClkSrc)
Configure the power down clock for the MCU domain.
Definition: aon_wuc.h:254
AONWUCDomainPowerDownDisable
__STATIC_INLINE void AONWUCDomainPowerDownDisable(void)
Use this function to disable power down mode of the MCU and AUX domain.
Definition: aon_wuc.h:786
AONWUC_MCU_RESET_TYPE
#define AONWUC_MCU_RESET_TYPE
Definition: aon_wuc.h:223