1 /**
2 ******************************************************************************
3 * @file stm32u5xx_ll_pwr.c
4 * @author MCD Application Team
5 * @brief PWR LL module driver.
6 ******************************************************************************
7 * @attention
8 *
9 * Copyright (c) 2021 STMicroelectronics.
10 * All rights reserved.
11 *
12 * This software is licensed under terms that can be found in the LICENSE file
13 * in the root directory of this software component.
14 * If no LICENSE file comes with this software, it is provided AS-IS.
15 *
16 ******************************************************************************
17 */
18
19 #if defined (USE_FULL_LL_DRIVER)
20
21 /* Includes ------------------------------------------------------------------*/
22 #include "stm32u5xx_ll_pwr.h"
23
24 /** @addtogroup STM32U5xx_LL_Driver
25 * @{
26 */
27
28 #if defined (PWR)
29
30 /** @defgroup PWR_LL PWR
31 * @{
32 */
33
34 /* Private types -------------------------------------------------------------*/
35 /* Private variables ---------------------------------------------------------*/
36 /* Private constants ---------------------------------------------------------*/
37 /* Private macros ------------------------------------------------------------*/
38 /* Private function prototypes -----------------------------------------------*/
39 /* Exported functions --------------------------------------------------------*/
40
41 /** @addtogroup PWR_LL_Exported_Functions
42 * @{
43 */
44
45 /** @addtogroup PWR_LL_EF_Init
46 * @{
47 */
48
49 /**
50 * @brief De-initialize the PWR registers to their default reset values.
51 * @retval An ErrorStatus enumeration value:
52 * - SUCCESS : PWR registers are de-initialized.
53 * - ERROR : not applicable.
54 */
LL_PWR_DeInit(void)55 ErrorStatus LL_PWR_DeInit(void)
56 {
57 /* Clear PWR low power flags */
58 LL_PWR_ClearFlag_STOP();
59
60 /* Clear PWR wake up flags */
61 LL_PWR_ClearFlag_WU();
62
63 /* Reset privilege attribute for nsecure attribute */
64 LL_PWR_DisableNSecurePrivilege();
65
66 #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
67 /* Reset privilege attribute for nsecure attribute */
68 LL_PWR_DisableSecurePrivilege();
69
70 /* Reset secure attribute */
71 LL_PWR_ConfigSecure(0);
72 #endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */
73
74 return SUCCESS;
75 }
76
77 /**
78 * @}
79 */
80
81 /**
82 * @}
83 */
84
85 /**
86 * @}
87 */
88 #endif /* defined(PWR) */
89 /**
90 * @}
91 */
92
93 #endif /* defined (USE_FULL_LL_DRIVER) */
94