ARM GAS /tmp/ccerSDRQ.s page 1
1 .cpu cortex-m0plus
2 .eabi_attribute 20, 1
3 .eabi_attribute 21, 1
4 .eabi_attribute 23, 3
5 .eabi_attribute 24, 1
6 .eabi_attribute 25, 1
7 .eabi_attribute 26, 1
8 .eabi_attribute 30, 1
9 .eabi_attribute 34, 0
10 .eabi_attribute 18, 4
11 .file "stm32l0xx_hal_pwr_ex.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.HAL_PWREx_GetVoltageRange,"ax",%progbits
16 .align 1
17 .global HAL_PWREx_GetVoltageRange
18 .syntax unified
19 .code 16
20 .thumb_func
21 .fpu softvfp
23 HAL_PWREx_GetVoltageRange:
24 .LFB39:
25 .file 1 "./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c"
1:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
2:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** ******************************************************************************
3:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @file stm32l0xx_hal_pwr_ex.c
4:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @author MCD Application Team
5:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Extended PWR HAL module driver.
6:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * This file provides firmware functions to manage the following
7:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * functionalities of the Power Controller (PWR) peripheral:
8:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * + Extended Initialization and de-initialization functions
9:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * + Extended Peripheral Control functions
10:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
11:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** ******************************************************************************
12:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @attention
13:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
14:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
© COPYRIGHT(c) 2016 STMicroelectronics
15:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
16:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * Redistribution and use in source and binary forms, with or without modification,
17:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * are permitted provided that the following conditions are met:
18:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * 1. Redistributions of source code must retain the above copyright notice,
19:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * this list of conditions and the following disclaimer.
20:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * 2. Redistributions in binary form must reproduce the above copyright notice,
21:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * this list of conditions and the following disclaimer in the documentation
22:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * and/or other materials provided with the distribution.
23:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * 3. Neither the name of STMicroelectronics nor the names of its contributors
24:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * may be used to endorse or promote products derived from this software
25:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * without specific prior written permission.
26:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
27:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
30:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
31:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
33:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
ARM GAS /tmp/ccerSDRQ.s page 2
34:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
35:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
36:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
38:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** ******************************************************************************
39:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
40:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
41:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Includes ------------------------------------------------------------------*/
42:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** #include "stm32l0xx_hal.h"
43:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
44:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** #ifdef HAL_PWR_MODULE_ENABLED
45:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /** @addtogroup STM32L0xx_HAL_Driver
46:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @{
47:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
48:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
49:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /** @addtogroup PWREx
50:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @{
51:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
52:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
53:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /** @addtogroup PWREx_Private
54:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @{
55:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
56:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
57:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /** @defgroup PWR_Extended_TimeOut_Value PWREx Flag Setting Time Out Value
58:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @{
59:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
60:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** #define PWR_FLAG_SETTING_DELAY_US 50U
61:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
62:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @}
63:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
64:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
65:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
66:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @}
67:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
68:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
69:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
70:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /** @addtogroup PWREx_Exported_Functions
71:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Low Power modes configuration functions
72:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** *
73:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** @verbatim
74:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
75:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** ===============================================================================
76:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** ##### Peripheral extended features functions #####
77:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** ===============================================================================
78:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** @endverbatim
79:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @{
80:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
81:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
82:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
83:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Return Voltage Scaling Range.
84:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval VOS bit field (PWR_REGULATOR_VOLTAGE_SCALE1, PWR_REGULATOR_VOLTAGE_SCALE2 or PWR_REGULA
85:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
86:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** uint32_t HAL_PWREx_GetVoltageRange(void)
87:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
26 .loc 1 87 0
27 .cfi_startproc
28 @ args = 0, pretend = 0, frame = 0
ARM GAS /tmp/ccerSDRQ.s page 3
29 @ frame_needed = 0, uses_anonymous_args = 0
30 @ link register save eliminated.
88:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** return (PWR->CR & PWR_CR_VOS);
31 .loc 1 88 0
32 0000 024B ldr r3, .L2
33 0002 1868 ldr r0, [r3]
34 0004 C023 movs r3, #192
35 0006 5B01 lsls r3, r3, #5
36 0008 1840 ands r0, r3
89:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
37 .loc 1 89 0
38 @ sp needed
39 000a 7047 bx lr
40 .L3:
41 .align 2
42 .L2:
43 000c 00700040 .word 1073770496
44 .cfi_endproc
45 .LFE39:
47 .section .text.HAL_PWREx_EnableFastWakeUp,"ax",%progbits
48 .align 1
49 .global HAL_PWREx_EnableFastWakeUp
50 .syntax unified
51 .code 16
52 .thumb_func
53 .fpu softvfp
55 HAL_PWREx_EnableFastWakeUp:
56 .LFB40:
90:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
91:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
92:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
93:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Enables the Fast WakeUp from Ultra Low Power mode.
94:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @note This bit works in conjunction with ULP bit.
95:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * Means, when ULP = 1 and FWU = 1 :VREFINT startup time is ignored when
96:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * exiting from low power mode.
97:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval None
98:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
99:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** void HAL_PWREx_EnableFastWakeUp(void)
100:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
57 .loc 1 100 0
58 .cfi_startproc
59 @ args = 0, pretend = 0, frame = 0
60 @ frame_needed = 0, uses_anonymous_args = 0
61 @ link register save eliminated.
101:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Enable the fast wake up */
102:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** SET_BIT(PWR->CR, PWR_CR_FWU);
62 .loc 1 102 0
63 0000 034A ldr r2, .L5
64 0002 1168 ldr r1, [r2]
65 0004 8023 movs r3, #128
66 0006 DB00 lsls r3, r3, #3
67 0008 0B43 orrs r3, r1
68 000a 1360 str r3, [r2]
103:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
69 .loc 1 103 0
70 @ sp needed
71 000c 7047 bx lr
ARM GAS /tmp/ccerSDRQ.s page 4
72 .L6:
73 000e C046 .align 2
74 .L5:
75 0010 00700040 .word 1073770496
76 .cfi_endproc
77 .LFE40:
79 .section .text.HAL_PWREx_DisableFastWakeUp,"ax",%progbits
80 .align 1
81 .global HAL_PWREx_DisableFastWakeUp
82 .syntax unified
83 .code 16
84 .thumb_func
85 .fpu softvfp
87 HAL_PWREx_DisableFastWakeUp:
88 .LFB41:
104:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
105:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
106:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Disables the Fast WakeUp from Ultra Low Power mode.
107:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval None
108:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
109:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** void HAL_PWREx_DisableFastWakeUp(void)
110:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
89 .loc 1 110 0
90 .cfi_startproc
91 @ args = 0, pretend = 0, frame = 0
92 @ frame_needed = 0, uses_anonymous_args = 0
93 @ link register save eliminated.
111:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Disable the fast wake up */
112:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** CLEAR_BIT(PWR->CR, PWR_CR_FWU);
94 .loc 1 112 0
95 0000 024A ldr r2, .L8
96 0002 1368 ldr r3, [r2]
97 0004 0249 ldr r1, .L8+4
98 0006 0B40 ands r3, r1
99 0008 1360 str r3, [r2]
113:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
100 .loc 1 113 0
101 @ sp needed
102 000a 7047 bx lr
103 .L9:
104 .align 2
105 .L8:
106 000c 00700040 .word 1073770496
107 0010 FFFBFFFF .word -1025
108 .cfi_endproc
109 .LFE41:
111 .section .text.HAL_PWREx_EnableUltraLowPower,"ax",%progbits
112 .align 1
113 .global HAL_PWREx_EnableUltraLowPower
114 .syntax unified
115 .code 16
116 .thumb_func
117 .fpu softvfp
119 HAL_PWREx_EnableUltraLowPower:
120 .LFB42:
114:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
115:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
ARM GAS /tmp/ccerSDRQ.s page 5
116:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Enables the Ultra Low Power mode
117:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval None
118:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
119:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** void HAL_PWREx_EnableUltraLowPower(void)
120:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
121 .loc 1 120 0
122 .cfi_startproc
123 @ args = 0, pretend = 0, frame = 0
124 @ frame_needed = 0, uses_anonymous_args = 0
125 @ link register save eliminated.
121:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Enable the Ultra Low Power mode */
122:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** SET_BIT(PWR->CR, PWR_CR_ULP);
126 .loc 1 122 0
127 0000 034A ldr r2, .L11
128 0002 1168 ldr r1, [r2]
129 0004 8023 movs r3, #128
130 0006 9B00 lsls r3, r3, #2
131 0008 0B43 orrs r3, r1
132 000a 1360 str r3, [r2]
123:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
133 .loc 1 123 0
134 @ sp needed
135 000c 7047 bx lr
136 .L12:
137 000e C046 .align 2
138 .L11:
139 0010 00700040 .word 1073770496
140 .cfi_endproc
141 .LFE42:
143 .section .text.HAL_PWREx_DisableUltraLowPower,"ax",%progbits
144 .align 1
145 .global HAL_PWREx_DisableUltraLowPower
146 .syntax unified
147 .code 16
148 .thumb_func
149 .fpu softvfp
151 HAL_PWREx_DisableUltraLowPower:
152 .LFB43:
124:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
125:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
126:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Disables the Ultra Low Power mode
127:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval None
128:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
129:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** void HAL_PWREx_DisableUltraLowPower(void)
130:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
153 .loc 1 130 0
154 .cfi_startproc
155 @ args = 0, pretend = 0, frame = 0
156 @ frame_needed = 0, uses_anonymous_args = 0
157 @ link register save eliminated.
131:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Disable the Ultra Low Power mode */
132:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** CLEAR_BIT(PWR->CR, PWR_CR_ULP);
158 .loc 1 132 0
159 0000 024A ldr r2, .L14
160 0002 1368 ldr r3, [r2]
161 0004 0249 ldr r1, .L14+4
162 0006 0B40 ands r3, r1
ARM GAS /tmp/ccerSDRQ.s page 6
163 0008 1360 str r3, [r2]
133:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
164 .loc 1 133 0
165 @ sp needed
166 000a 7047 bx lr
167 .L15:
168 .align 2
169 .L14:
170 000c 00700040 .word 1073770496
171 0010 FFFDFFFF .word -513
172 .cfi_endproc
173 .LFE43:
175 .section .text.HAL_PWREx_EnableLowPowerRunMode,"ax",%progbits
176 .align 1
177 .global HAL_PWREx_EnableLowPowerRunMode
178 .syntax unified
179 .code 16
180 .thumb_func
181 .fpu softvfp
183 HAL_PWREx_EnableLowPowerRunMode:
184 .LFB44:
134:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
135:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
136:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Enable the Low Power Run mode.
137:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @note Low power run mode can only be entered when VCORE is in range 2.
138:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * In addition, the dynamic voltage scaling must not be used when Low
139:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * power run mode is selected. Only Stop and Sleep modes with regulator
140:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * configured in Low power mode is allowed when Low power run mode is
141:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * selected.
142:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @note The frequency of the system clock must be decreased to not exceed the
143:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * frequency of RCC_MSIRANGE_1.
144:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @note In Low power run mode, all I/O pins keep the same state as in Run mode.
145:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval None
146:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
147:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** void HAL_PWREx_EnableLowPowerRunMode(void)
148:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
185 .loc 1 148 0
186 .cfi_startproc
187 @ args = 0, pretend = 0, frame = 0
188 @ frame_needed = 0, uses_anonymous_args = 0
189 @ link register save eliminated.
149:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Enters the Low Power Run mode */
150:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** SET_BIT(PWR->CR, PWR_CR_LPSDSR);
190 .loc 1 150 0
191 0000 054B ldr r3, .L17
192 0002 1A68 ldr r2, [r3]
193 0004 0121 movs r1, #1
194 0006 0A43 orrs r2, r1
195 0008 1A60 str r2, [r3]
151:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** SET_BIT(PWR->CR, PWR_CR_LPRUN);
196 .loc 1 151 0
197 000a 1968 ldr r1, [r3]
198 000c 8022 movs r2, #128
199 000e D201 lsls r2, r2, #7
200 0010 0A43 orrs r2, r1
201 0012 1A60 str r2, [r3]
152:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
ARM GAS /tmp/ccerSDRQ.s page 7
202 .loc 1 152 0
203 @ sp needed
204 0014 7047 bx lr
205 .L18:
206 0016 C046 .align 2
207 .L17:
208 0018 00700040 .word 1073770496
209 .cfi_endproc
210 .LFE44:
212 .global __aeabi_uidiv
213 .section .text.HAL_PWREx_DisableLowPowerRunMode,"ax",%progbits
214 .align 1
215 .global HAL_PWREx_DisableLowPowerRunMode
216 .syntax unified
217 .code 16
218 .thumb_func
219 .fpu softvfp
221 HAL_PWREx_DisableLowPowerRunMode:
222 .LFB45:
153:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
154:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /**
155:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @brief Disable the Low Power Run mode.
156:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @note Before HAL_PWREx_DisableLowPowerRunMode() completion, the function checks that
157:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * REGLPF has been properly reset (otherwise, HAL_PWREx_DisableLowPowerRunMode
158:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * returns HAL_TIMEOUT status). The system clock frequency can then be
159:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * increased above 2 MHz.
160:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** * @retval HAL_StatusTypeDef
161:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** */
162:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** HAL_StatusTypeDef HAL_PWREx_DisableLowPowerRunMode(void)
163:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
223 .loc 1 163 0
224 .cfi_startproc
225 @ args = 0, pretend = 0, frame = 0
226 @ frame_needed = 0, uses_anonymous_args = 0
227 0000 10B5 push {r4, lr}
228 .LCFI0:
229 .cfi_def_cfa_offset 8
230 .cfi_offset 4, -8
231 .cfi_offset 14, -4
232 .LVL0:
164:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** uint32_t wait_loop_index = 0U;
165:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
166:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Exit the Low Power Run mode */
167:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** CLEAR_BIT(PWR->CR, PWR_CR_LPRUN);
233 .loc 1 167 0
234 0002 104B ldr r3, .L26
235 0004 1A68 ldr r2, [r3]
236 0006 1049 ldr r1, .L26+4
237 0008 0A40 ands r2, r1
238 000a 1A60 str r2, [r3]
168:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** CLEAR_BIT(PWR->CR, PWR_CR_LPSDSR);
239 .loc 1 168 0
240 000c 1A68 ldr r2, [r3]
241 000e 0121 movs r1, #1
242 0010 8A43 bics r2, r1
243 0012 1A60 str r2, [r3]
169:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
ARM GAS /tmp/ccerSDRQ.s page 8
170:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** /* Wait until REGLPF is reset */
171:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** wait_loop_index = (PWR_FLAG_SETTING_DELAY_US * (SystemCoreClock / 1000000U));
244 .loc 1 171 0
245 0014 0D4B ldr r3, .L26+8
246 0016 1868 ldr r0, [r3]
247 0018 0D49 ldr r1, .L26+12
248 001a FFF7FEFF bl __aeabi_uidiv
249 .LVL1:
250 001e 3223 movs r3, #50
251 0020 5843 muls r0, r3
252 .LVL2:
172:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
173:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** while ((wait_loop_index != 0U) && (HAL_IS_BIT_SET(PWR->CSR, PWR_CSR_REGLPF)))
253 .loc 1 173 0
254 0022 00E0 b .L20
255 .L22:
174:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
175:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** wait_loop_index--;
256 .loc 1 175 0
257 0024 0138 subs r0, r0, #1
258 .LVL3:
259 .L20:
173:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
260 .loc 1 173 0
261 0026 0028 cmp r0, #0
262 0028 03D0 beq .L21
173:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
263 .loc 1 173 0 is_stmt 0 discriminator 1
264 002a 064B ldr r3, .L26
265 002c 5B68 ldr r3, [r3, #4]
266 002e 9B06 lsls r3, r3, #26
267 0030 F8D4 bmi .L22
268 .L21:
176:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
177:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
178:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** if (HAL_IS_BIT_SET(PWR->CSR, PWR_CSR_REGLPF))
269 .loc 1 178 0 is_stmt 1
270 0032 044B ldr r3, .L26
271 0034 5B68 ldr r3, [r3, #4]
272 0036 9B06 lsls r3, r3, #26
273 0038 01D4 bmi .L25
179:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** {
180:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** return HAL_TIMEOUT;
181:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
182:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c ****
183:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** return HAL_OK;
274 .loc 1 183 0
275 003a 0020 movs r0, #0
276 .LVL4:
277 .L23:
184:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
278 .loc 1 184 0
279 @ sp needed
280 003c 10BD pop {r4, pc}
281 .LVL5:
282 .L25:
180:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_pwr_ex.c **** }
ARM GAS /tmp/ccerSDRQ.s page 9
283 .loc 1 180 0
284 003e 0320 movs r0, #3
285 .LVL6:
286 0040 FCE7 b .L23
287 .L27:
288 0042 C046 .align 2
289 .L26:
290 0044 00700040 .word 1073770496
291 0048 FFBFFFFF .word -16385
292 004c 00000000 .word SystemCoreClock
293 0050 40420F00 .word 1000000
294 .cfi_endproc
295 .LFE45:
297 .text
298 .Letext0:
299 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
300 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h"
301 .file 4 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/system_stm32l0xx.h"
302 .file 5 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/stm32l073xx.h"
303 .file 6 "/usr/arm-none-eabi/include/sys/lock.h"
304 .file 7 "/usr/arm-none-eabi/include/sys/_types.h"
305 .file 8 "/usr/lib/gcc/arm-none-eabi/7.2.0/include/stddef.h"
306 .file 9 "/usr/arm-none-eabi/include/sys/reent.h"
307 .file 10 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/stm32l0xx.h"
308 .file 11 "Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_hal_def.h"
ARM GAS /tmp/ccerSDRQ.s page 10
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32l0xx_hal_pwr_ex.c
/tmp/ccerSDRQ.s:16 .text.HAL_PWREx_GetVoltageRange:0000000000000000 $t
/tmp/ccerSDRQ.s:23 .text.HAL_PWREx_GetVoltageRange:0000000000000000 HAL_PWREx_GetVoltageRange
/tmp/ccerSDRQ.s:43 .text.HAL_PWREx_GetVoltageRange:000000000000000c $d
/tmp/ccerSDRQ.s:48 .text.HAL_PWREx_EnableFastWakeUp:0000000000000000 $t
/tmp/ccerSDRQ.s:55 .text.HAL_PWREx_EnableFastWakeUp:0000000000000000 HAL_PWREx_EnableFastWakeUp
/tmp/ccerSDRQ.s:75 .text.HAL_PWREx_EnableFastWakeUp:0000000000000010 $d
/tmp/ccerSDRQ.s:80 .text.HAL_PWREx_DisableFastWakeUp:0000000000000000 $t
/tmp/ccerSDRQ.s:87 .text.HAL_PWREx_DisableFastWakeUp:0000000000000000 HAL_PWREx_DisableFastWakeUp
/tmp/ccerSDRQ.s:106 .text.HAL_PWREx_DisableFastWakeUp:000000000000000c $d
/tmp/ccerSDRQ.s:112 .text.HAL_PWREx_EnableUltraLowPower:0000000000000000 $t
/tmp/ccerSDRQ.s:119 .text.HAL_PWREx_EnableUltraLowPower:0000000000000000 HAL_PWREx_EnableUltraLowPower
/tmp/ccerSDRQ.s:139 .text.HAL_PWREx_EnableUltraLowPower:0000000000000010 $d
/tmp/ccerSDRQ.s:144 .text.HAL_PWREx_DisableUltraLowPower:0000000000000000 $t
/tmp/ccerSDRQ.s:151 .text.HAL_PWREx_DisableUltraLowPower:0000000000000000 HAL_PWREx_DisableUltraLowPower
/tmp/ccerSDRQ.s:170 .text.HAL_PWREx_DisableUltraLowPower:000000000000000c $d
/tmp/ccerSDRQ.s:176 .text.HAL_PWREx_EnableLowPowerRunMode:0000000000000000 $t
/tmp/ccerSDRQ.s:183 .text.HAL_PWREx_EnableLowPowerRunMode:0000000000000000 HAL_PWREx_EnableLowPowerRunMode
/tmp/ccerSDRQ.s:208 .text.HAL_PWREx_EnableLowPowerRunMode:0000000000000018 $d
/tmp/ccerSDRQ.s:214 .text.HAL_PWREx_DisableLowPowerRunMode:0000000000000000 $t
/tmp/ccerSDRQ.s:221 .text.HAL_PWREx_DisableLowPowerRunMode:0000000000000000 HAL_PWREx_DisableLowPowerRunMode
/tmp/ccerSDRQ.s:290 .text.HAL_PWREx_DisableLowPowerRunMode:0000000000000044 $d
.debug_frame:0000000000000010 $d
UNDEFINED SYMBOLS
__aeabi_uidiv
SystemCoreClock