MAX32665 SDK Documentation  0.2
Software Development Kit Overview and API Documentation
lp.h
1 
6 /* ****************************************************************************
7  * Copyright (C) 2017 Maxim Integrated Products, Inc., All Rights Reserved.
8  *
9  * Permission is hereby granted, free of charge, to any person obtaining a
10  * copy of this software and associated documentation files (the "Software"),
11  * to deal in the Software without restriction, including without limitation
12  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
13  * and/or sell copies of the Software, and to permit persons to whom the
14  * Software is furnished to do so, subject to the following conditions:
15  *
16  * The above copyright notice and this permission notice shall be included
17  * in all copies or substantial portions of the Software.
18  *
19  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
22  * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
23  * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
24  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
25  * OTHER DEALINGS IN THE SOFTWARE.
26  *
27  * Except as contained in this notice, the name of Maxim Integrated
28  * Products, Inc. shall not be used except as stated in the Maxim Integrated
29  * Products, Inc. Branding Policy.
30  *
31  * The mere transfer of this software does not imply any licenses
32  * of trade secrets, proprietary technology, copyrights, patents,
33  * trademarks, maskwork rights, or any other form of intellectual
34  * property whatsoever. Maxim Integrated Products, Inc. retains all
35  * ownership rights.
36  *
37  * $Date: 2019-04-16 17:23:34 -0500 (Tue, 16 Apr 2019) $
38  * $Revision: 42623 $
39  *
40  *************************************************************************** */
41 
42 /* Define to prevent redundant inclusion */
43 #ifndef _LP_H_
44 #define _LP_H_
45 
46 /* **** Includes **** */
47 #include "gpio.h"
48 #include "pwrseq_regs.h"
49 
50 #ifdef __cplusplus
51 extern "C" {
52 #endif
53 
60 typedef enum {
61  RETAIN_NONE= MXC_S_PWRSEQ_LPCN_RAMRET_DIS,
62  RETAIN_32k = MXC_S_PWRSEQ_LPCN_RAMRET_EN1,
63  RETAIN_64k = MXC_S_PWRSEQ_LPCN_RAMRET_EN2,
64  RETAIN_ALL = MXC_S_PWRSEQ_LPCN_RAMRET_EN3,
65 } ram_retained_t;
66 
74 void LP_EnableGPIOWakeup(gpio_cfg_t *wu_pins);
75 
82 void LP_DisableGPIOWakeup(gpio_cfg_t *wu_pins);
83 
87 void LP_EnableRTCAlarmWakeup(void);
88 
92 void LP_DisableRTCAlarmWakeup(void);
93 
97 void LP_SysRam0LightSleep(void);
98 
102 void LP_SysRam1LightSleep(void);
103 
107 void LP_SysRam2LightSleep(void);
108 
112 void LP_SysRam3LightSleep(void);
113 
117 void LP_SysRam4LightSleep(void);
118 
122 void LP_SysRam5LightSleep(void);
123 
127 void LP_SysRam0Shutdown(void);
128 
132 void LP_SysRam0Wakeup(void);
133 
137 void LP_SysRam1Shutdown(void);
138 
142 void LP_SysRam1Wakeup(void);
143 
147 void LP_SysRam2Shutdown(void);
148 
152 void LP_SysRam2Wakeup(void);
153 
157 void LP_SysRam3Shutdown(void);
158 
162 void LP_SysRam3Wakeup(void);
163 
167 void LP_SysRam4Shutdown(void);
168 
172 void LP_SysRam4Wakeup(void);
173 
177 void LP_SysRam5Shutdown(void);
178 
182 void LP_SysRam5Wakeup(void);
183 
187 void LP_ICacheShutdown(void);
188 
192 void LP_ICacheWakeup(void);
193 
197 void LP_ICacheXIPShutdown(void);
198 
202 void LP_ICacheXIPWakeup(void);
203 
207 void LP_CryptoShutdown(void);
208 
212 void LP_CryptoWakeup(void);
213 
217 void LP_USBFIFOShutdown(void);
218 
222 void LP_USBFIFOWakeup(void);
223 
227 void LP_ROMShutdown(void);
228 
232 void LP_ROMWakeup(void);
233 
237 void LP_ROM1Shutdown(void);
238 
242 void LP_ROM1Wakeup(void);
243 
247 void LP_ICache1Shutdown(void);
248 
252 void LP_ICache1Wakeup(void);
253 
257 void LP_SysCacheShutdown(void);
258 
262 void LP_SysCacheWakeup(void);
263 
267 void LP_USBSWLPDisable(void);
268 
272 void LP_USBSWLPEnable(void);
273 
277 void LP_VDD2PowerDown(void);
278 
282 void LP_VDD2PowerUp(void);
283 
287 void LP_VDD3PowerDown(void);
288 
292 void LP_VDD3PowerUp(void);
293 
297 void LP_VDD4PowerDown(void);
298 
302 void LP_VDD4PowerUp(void);
303 
307 void LP_VDD5PowerDown(void);
308 
312 void LP_VDD5PowerUp(void);
313 
317 void LP_SIMOVregBPowerDown(void);
318 
322 void LP_SIMOVregBPowerUp(void);
323 
327 void LP_SIMOVregDPowerDown(void);
328 
332 void LP_SIMOVregDPowerUp(void);
333 
337 void LP_FastWakeupEnable(void);
338 
342 void LP_FastWakeupDisable(void);
343 
347 void LP_PowerFailMonitorEnable(void);
348 
352 void LP_PowerFailMonitorDisable(void);
353 
358 void LP_SetRAMRetention(ram_retained_t ramRetained);
359 
363 void LP_EnterSleepMode(void);
364 
368 void LP_EnterDeepSleepMode(void);
369 
378 void LP_EnterBackupMode(void* func(void));
379 
384 void LP_EnterShutDownMode(void);
385 
386 #ifdef __cplusplus
387 }
388 #endif
389 
390 #endif /* _LP_H_ */
void LP_SIMOVregDPowerUp(void)
Power Up SIMOV regD.
Structure type for configuring a GPIO port.
Definition: gpio.h:138
void LP_EnterBackupMode(void *func(void))
Places the device into BACKUP mode.
void LP_USBSWLPDisable(void)
Disable USB Software Low Power.
void LP_SysRam1Shutdown(void)
Shutdown System Ram 1.
void LP_SysRam2Shutdown(void)
Shutdown System Ram 2.
void LP_USBFIFOWakeup(void)
Wakeup USB FIFO.
void LP_DisableRTCAlarmWakeup(void)
Disables the RTC alarm from waking up the device.
void LP_ICacheXIPWakeup(void)
Wakeup Internal Cache XIP.
void LP_CryptoShutdown(void)
Shutdown Crypto.
#define MXC_S_PWRSEQ_LPCN_RAMRET_EN3
LPCN_RAMRET_EN3 Setting.
Definition: pwrseq_regs.h:151
void LP_EnterShutDownMode(void)
Places the device into Shutdown mode.
void LP_SysRam5Wakeup(void)
Wakeup System Ram 5.
void LP_FastWakeupEnable(void)
Enable Fast Wakeup.
void LP_SIMOVregBPowerUp(void)
Power Up SIMOV regB.
void LP_SIMOVregBPowerDown(void)
Power Down SIMOV regB.
void LP_EnterSleepMode(void)
Places the device into SLEEP mode.
void LP_SysRam3Wakeup(void)
Wakeup System Ram 3.
void LP_SysCacheShutdown(void)
Shutdown System Cache.
void LP_VDD4PowerDown(void)
Power Down VDD4.
void LP_SysRam4Wakeup(void)
Wakeup System Ram 4.
void LP_SysRam0LightSleep(void)
Puts System Ram 0 in light sleep.
void LP_USBSWLPEnable(void)
Enable USB Software Low Power.
void LP_SysRam1Wakeup(void)
Wakeup System Ram 1.
void LP_SysCacheWakeup(void)
Wakeup System Cache.
void LP_SysRam3Shutdown(void)
Shutdown System Ram 3.
void LP_SysRam2LightSleep(void)
Puts System Ram 2 in light sleep.
void LP_ICacheWakeup(void)
Wakeup Internal Cache.
void LP_FastWakeupDisable(void)
Disable Fast Wakeup.
void LP_ROMWakeup(void)
Wakeup ROM.
void LP_SetRAMRetention(ram_retained_t ramRetained)
Enables the selected amount of RAM retention in backup mode Using any RAM retention removes the abili...
void LP_PowerFailMonitorDisable(void)
Disable Power Fail Monitor.
void LP_SysRam5LightSleep(void)
Puts System Ram 5 in light sleep.
void LP_SysRam1LightSleep(void)
Puts System Ram 1 in light sleep.
void LP_EnableRTCAlarmWakeup(void)
Enables the RTC alarm to wake up the device from any low power mode.
void LP_VDD2PowerUp(void)
Power up VDD2.
void LP_ICache1Wakeup(void)
Wakeup Internal Cache 1.
void LP_SysRam5Shutdown(void)
Shutdown System Ram 5.
void LP_ROM1Wakeup(void)
Wakeup ROM 1.
void LP_USBFIFOShutdown(void)
Shutdown USB FIFO.
void LP_VDD4PowerUp(void)
Power Up VDD4.
void LP_ROMShutdown(void)
Shutdown ROM.
void LP_VDD2PowerDown(void)
Power Down VDD2.
void LP_SysRam4LightSleep(void)
Puts System Ram 4 in light sleep.
void LP_SysRam4Shutdown(void)
Shutdown System Ram 4.
void LP_VDD3PowerDown(void)
Power Down VDD3.
void LP_EnableGPIOWakeup(gpio_cfg_t *wu_pins)
Enables the selected GPIO port and its selected pins to wake up the device from any low power mode...
void LP_ICacheShutdown(void)
Shutdown Internal Cache.
void LP_VDD5PowerUp(void)
Power Up VDD5.
#define MXC_S_PWRSEQ_LPCN_RAMRET_DIS
LPCN_RAMRET_DIS Setting.
Definition: pwrseq_regs.h:145
void LP_SIMOVregDPowerDown(void)
Power Down SIMOV regD.
void LP_ROM1Shutdown(void)
Shutdown ROM 1.
void LP_SysRam3LightSleep(void)
Puts System Ram 3 in light sleep.
void LP_EnterDeepSleepMode(void)
Places the device into DEEPSLEEP mode.
void LP_ICacheXIPShutdown(void)
Shutdown Internal Cache XIP.
void LP_VDD5PowerDown(void)
Power Down VDD5.
void LP_DisableGPIOWakeup(gpio_cfg_t *wu_pins)
Disables the selected GPIO port and its selected pins as a wake up source.
void LP_CryptoWakeup(void)
Wakeup Crypto.
void LP_VDD3PowerUp(void)
Power Up VDD3.
void LP_SysRam0Wakeup(void)
Wakeup System Ram 0.
void LP_ICache1Shutdown(void)
Shutdown Internal Cache 1.
void LP_SysRam2Wakeup(void)
Wakeup System Ram 2.
void LP_SysRam0Shutdown(void)
Shutdown System Ram 0.
void LP_PowerFailMonitorEnable(void)
Enable Power Fail Monitor.
#define MXC_S_PWRSEQ_LPCN_RAMRET_EN1
LPCN_RAMRET_EN1 Setting.
Definition: pwrseq_regs.h:147
#define MXC_S_PWRSEQ_LPCN_RAMRET_EN2
LPCN_RAMRET_EN2 Setting.
Definition: pwrseq_regs.h:149