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