ARM GAS /tmp/cchbc9tY.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_rcc.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.RCC_SetFlashLatencyFromMSIRange,"ax",%progbits
16 .align 1
17 .syntax unified
18 .code 16
19 .thumb_func
20 .fpu softvfp
22 RCC_SetFlashLatencyFromMSIRange:
23 .LFB52:
24 .file 1 "./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c"
1:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
2:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ******************************************************************************
3:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @file stm32l0xx_hal_rcc.c
4:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @author MCD Application Team
5:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief RCC HAL module driver.
6:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * This file provides firmware functions to manage the following
7:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * functionalities of the Reset and Clock Control (RCC) peripheral:
8:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * + Initialization and de-initialization functions
9:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * + Peripheral Control functions
10:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
11:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @verbatim
12:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ==============================================================================
13:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ##### RCC specific features #####
14:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ==============================================================================
15:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..]
16:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** After reset the device is running from multispeed internal oscillator clock
17:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (MSI 2.097MHz) with Flash 0 wait state and Flash prefetch buffer is disabled,
18:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** and all peripherals are off except internal SRAM, Flash and JTAG.
19:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) There is no prescaler on High speed (AHB) and Low speed (APB) buses;
20:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** all peripherals mapped on these buses are running at MSI speed.
21:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) The clock for all peripherals is switched off, except the SRAM and FLASH.
22:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) All GPIOs are in input floating state, except the JTAG pins which
23:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** are assigned to be used for debug purpose.
24:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..] Once the device started from reset, the user application has to:
25:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) Configure the clock source to be used to drive the System clock
26:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (if the application needs higher frequency/performance)
27:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) Configure the System clock frequency and Flash settings
28:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) Configure the AHB and APB buses prescalers
29:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) Enable the clock for the peripheral(s) to be used
30:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) Configure the clock source(s) for peripherals whose clocks are not
31:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** derived from the System clock (I2S, RTC, ADC, USB OTG FS/SDIO/RNG)
32:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (*) SDIO only for STM32L0xxxD devices
33:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
34:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ##### RCC Limitations #####
ARM GAS /tmp/cchbc9tY.s page 2
35:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ==============================================================================
36:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..]
37:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** A delay between an RCC peripheral clock enable and the effective peripheral
38:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** enabling should be taken into account in order to manage the peripheral read/write
39:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** from/to registers.
40:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+) This delay depends on the peripheral mapping.
41:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (++) AHB & APB peripherals, 1 dummy read is necessary
42:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
43:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..]
44:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** Workarounds:
45:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) For AHB & APB peripherals, a dummy read to the peripheral register has been
46:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** inserted in each __HAL_RCC_PPP_CLK_ENABLE() macro.
47:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
48:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @endverbatim
49:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ******************************************************************************
50:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @attention
51:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
52:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
© COPYRIGHT(c) 2016 STMicroelectronics
53:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
54:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * Redistribution and use in source and binary forms, with or without modification,
55:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * are permitted provided that the following conditions are met:
56:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * 1. Redistributions of source code must retain the above copyright notice,
57:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * this list of conditions and the following disclaimer.
58:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * 2. Redistributions in binary form must reproduce the above copyright notice,
59:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * this list of conditions and the following disclaimer in the documentation
60:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * and/or other materials provided with the distribution.
61:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * 3. Neither the name of STMicroelectronics nor the names of its contributors
62:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * may be used to endorse or promote products derived from this software
63:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * without specific prior written permission.
64:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
65:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
66:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
67:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
68:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
69:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
70:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
71:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
72:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
73:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
74:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
75:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
76:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ******************************************************************************
77:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
78:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
79:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Includes ------------------------------------------------------------------*/
80:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #include "stm32l0xx_hal.h"
81:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
82:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @addtogroup STM32L0xx_HAL_Driver
83:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
84:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
85:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
86:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC RCC
87:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief RCC HAL module driver
88:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
89:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
90:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
91:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #ifdef HAL_RCC_MODULE_ENABLED
ARM GAS /tmp/cchbc9tY.s page 3
92:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
93:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Private typedef -----------------------------------------------------------*/
94:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Private define ------------------------------------------------------------*/
95:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Private_Constants RCC Private Constants
96:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
97:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
98:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Bits position in in the CFGR register */
99:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_CFGR_PLLMUL_BITNUMBER RCC_CFGR_PLLMUL_Pos
100:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_CFGR_PLLDIV_BITNUMBER RCC_CFGR_PLLDIV_Pos
101:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_CFGR_HPRE_BITNUMBER RCC_CFGR_HPRE_Pos
102:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_CFGR_PPRE1_BITNUMBER RCC_CFGR_PPRE1_Pos
103:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_CFGR_PPRE2_BITNUMBER RCC_CFGR_PPRE2_Pos
104:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Bits position in in the ICSCR register */
105:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_ICSCR_MSIRANGE_BITNUMBER RCC_ICSCR_MSIRANGE_Pos
106:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define RCC_ICSCR_MSITRIM_BITNUMBER RCC_ICSCR_MSITRIM_Pos
107:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
108:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
109:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
110:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Private macro -------------------------------------------------------------*/
111:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Private_Macros RCC Private Macros
112:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
113:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
114:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
115:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO1_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE()
116:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO1_GPIO_PORT GPIOA
117:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO1_PIN GPIO_PIN_8
118:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
119:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO2_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE()
120:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO2_GPIO_PORT GPIOA
121:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO2_PIN GPIO_PIN_9
122:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
123:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(STM32L031xx) || defined(STM32L041xx) || defined(STM32L073xx) || defined(STM32L083xx) \
124:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** || defined(STM32L072xx) || defined(STM32L082xx) || defined(STM32L071xx) || defined(STM32L081xx)
125:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO3_CLK_ENABLE() __HAL_RCC_GPIOB_CLK_ENABLE()
126:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO3_GPIO_PORT GPIOB
127:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #define MCO3_PIN GPIO_PIN_13
128:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif
129:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
130:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
131:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
132:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
133:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
134:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Private variables ---------------------------------------------------------*/
135:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Private_Variables RCC Private Variables
136:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
137:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
138:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** extern const uint8_t PLLMulTable[]; /* Defined in CMSIS (system_stm32l0xx.c)*/
139:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
140:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
141:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
142:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
143:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Private function prototypes -----------------------------------------------*/
144:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Private_Functions RCC Private Functions
145:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
146:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
147:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** static HAL_StatusTypeDef RCC_SetFlashLatencyFromMSIRange(uint32_t MSIrange);
148:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
ARM GAS /tmp/cchbc9tY.s page 4
149:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
150:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
151:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
152:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Exported functions ---------------------------------------------------------*/
153:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
154:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Exported_Functions RCC Exported Functions
155:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
156:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
157:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
158:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Exported_Functions_Group1 Initialization and de-initialization functions
159:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Initialization and Configuration functions
160:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
161:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @verbatim
162:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ===============================================================================
163:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ##### Initialization and de-initialization functions #####
164:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ===============================================================================
165:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..]
166:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** This section provides functions allowing to configure the internal/external oscillators
167:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (MSI, HSE, HSI, LSE, LSI, PLL, CSS and MCO) and the System buses clocks (SYSCLK, AHB, APB1
168:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** and APB2).
169:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
170:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..] Internal/external clock and PLL configuration
171:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) MSI (Multispeed internal), Seven frequency ranges are available: 65.536 kHz,
172:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** 131.072 kHz, 262.144 kHz, 524.288 kHz, 1.048 MHz, 2.097 MHz (default value) and 4.194 MHz
173:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
174:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) HSI (high-speed internal), 16 MHz factory-trimmed RC used directly or through
175:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** the PLL as System clock source.
176:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) LSI (low-speed internal), ~37 KHz low consumption RC used as IWDG and/or RTC
177:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** clock source.
178:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
179:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) HSE (high-speed external), 1 to 24 MHz crystal oscillator used directly or
180:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** through the PLL as System clock source. Can be used also as RTC clock source.
181:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
182:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) LSE (low-speed external), 32 KHz oscillator used as RTC clock source.
183:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
184:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) PLL (clocked by HSI or HSE), featuring different output clocks:
185:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (++) The first output is used to generate the high speed system clock (up to 32 MHz)
186:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (++) The second output is used to generate the clock for the USB OTG FS (48 MHz)
187:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
188:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) CSS (Clock security system), once enable using the macro __HAL_RCC_CSS_ENABLE()
189:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** and if a HSE clock failure occurs(HSE used directly or through PLL as System
190:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** clock source), the System clocks automatically switched to MSI and an interrupt
191:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** is generated if enabled. The interrupt is linked to the Cortex-M0+ NMI
192:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (Non-Maskable Interrupt) exception vector.
193:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
194:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) MCO1/MCO2/MCO3 (microcontroller clock output), used to output SYSCLK, HSI, LSI, MSI, LSE,
195:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HSE, HSI48 or PLL clock (through a configurable prescaler) on PA8/PA9/PB13 pins.
196:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
197:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..] System, AHB and APB buses clocks configuration
198:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) Several clock sources can be used to drive the System clock (SYSCLK): MSI, HSI,
199:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HSE and PLL.
200:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** The AHB clock (HCLK) is derived from System clock through configurable
201:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** prescaler and used to clock the CPU, memory and peripherals mapped
202:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** on AHB bus (DMA, GPIO...). APB1 (PCLK1) and APB2 (PCLK2) clocks are derived
203:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** from AHB clock through configurable prescalers and used to clock
204:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** the peripherals mapped on these buses. You can use
205:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** "@ref HAL_RCC_GetSysClockFreq()" function to retrieve the frequencies of these clocks.
ARM GAS /tmp/cchbc9tY.s page 5
206:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
207:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** -@- All the peripheral clocks are derived from the System clock (SYSCLK) except:
208:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+@) RTC: RTC clock can be derived either from the LSI, LSE or HSE clock
209:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** divided by 2 to 16. You have to use @ref __HAL_RCC_RTC_CONFIG() and @ref __HAL_RCC_RT
210:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** macros to configure this clock.
211:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+@) LCD: LCD clock can be derived either from the LSI, LSE or HSE clock
212:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** divided by 2 to 16. You have to use @ref __HAL_RCC_LCD_CONFIG()
213:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** macros to configure this clock.
214:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+@) USB FS and RNG: USB FS require a frequency equal to 48 MHz to work correctly.
215:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** This clock is derived of the main PLL through PLL Multiplier or HSI48 RC oscillator.
216:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
217:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (+@) IWDG clock which is always the LSI clock.
218:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
219:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (#) The maximum frequency of the SYSCLK and HCLK is 32 MHz, PCLK2 32 MHz
220:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** and PCLK1 32 MHz. Depending on the device voltage range, the maximum
221:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** frequency should be adapted accordingly.
222:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @endverbatim
223:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
224:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
225:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
226:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*
227:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** Additional consideration on the HCLK based on Latency settings:
228:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** +----------------------------------------------------------------------+
229:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | Latency | HCLK clock frequency (MHz) |
230:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | |------------------------------------------------------|
231:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | | voltage range 1 | voltage range 2 | voltage range 3 |
232:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | | 1.8 V | 1.5 V | 1.2 V |
233:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |---------------|------------------|-----------------|-----------------|
234:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |0WS(1CPU cycle)| 0 < HCLK <= 16 | 0 < HCLK <= 8 | 0 < HCLK <= 2 |
235:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |---------------|------------------|-----------------|-----------------|
236:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |1WS(2CPU cycle)| 16 < HCLK <= 32 | 8 < HCLK <= 16 | 2 < HCLK <= 4 |
237:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** +----------------------------------------------------------------------+
238:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
239:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** The following table gives the different clock source frequencies depending on the product
240:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** voltage range:
241:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** +------------------------------------------------------------------------------------------+
242:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | Product voltage | Clock frequency |
243:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | |------------------|-----------------------------|-----------------------|
244:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | range | MSI | HSI | HSE | PLL |
245:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |-----------------|---------|--------|-----------------------------|-----------------------|
246:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | Range 1 (1.8 V) | 4.2 MHz | 16 MHz | HSE 32 MHz (external clock) | 32 MHz |
247:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | | | | or 24 MHz (crystal) | (PLLVCO max = 96 MHz) |
248:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |-----------------|---------|--------|-----------------------------|-----------------------|
249:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | Range 2 (1.5 V) | 4.2 MHz | 16 MHz | 16 MHz | 16 MHz |
250:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | | | | | (PLLVCO max = 48 MHz) |
251:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** |-----------------|---------|--------|-----------------------------|-----------------------|
252:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | Range 3 (1.2 V) | 4.2 MHz | NA | 8 MHz | 4 MHz |
253:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | | | | | (PLLVCO max = 24 MHz) |
254:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** +------------------------------------------------------------------------------------------+
255:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
256:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
257:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
258:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Resets the RCC clock configuration to the default reset state.
259:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The default reset state of the clock configuration is given below:
260:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - MSI ON and used as system clock source
261:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - HSI, HSE and PLL OFF
262:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - AHB, APB1 and APB2 prescaler set to 1.
ARM GAS /tmp/cchbc9tY.s page 6
263:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - CSS and MCO1/MCO2/MCO3 OFF
264:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - All interrupts disabled
265:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note This function does not modify the configuration of the
266:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - Peripheral clocks
267:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - LSI, LSE and RTC clocks
268:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * - HSI48 clock
269:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval None
270:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
271:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** void HAL_RCC_DeInit(void)
272:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
273:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __IO uint32_t tmpreg;
274:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
275:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set MSION bit */
276:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SET_BIT(RCC->CR, RCC_CR_MSION);
277:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
278:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Switch SYSCLK to MSI*/
279:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_BIT(RCC->CFGR, RCC_CFGR_SW);
280:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
281:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Reset HSE, HSI, CSS, PLL */
282:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(RCC_CR_CSSHSEON) && defined(RCC_CR_HSIOUTEN)
283:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_BIT(RCC->CR, RCC_CR_HSION| RCC_CR_HSIKERON| RCC_CR_HSIDIVEN | RCC_CR_HSIOUTEN | \
284:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_CR_HSEON | RCC_CR_CSSHSEON | RCC_CR_PLLON);
285:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #elif !defined(RCC_CR_CSSHSEON) && defined(RCC_CR_HSIOUTEN)
286:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_BIT(RCC->CR, RCC_CR_HSION| RCC_CR_HSIKERON| RCC_CR_HSIDIVEN | RCC_CR_HSIOUTEN | \
287:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_CR_HSEON | RCC_CR_PLLON);
288:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #elif defined(RCC_CR_CSSHSEON) && !defined(RCC_CR_HSIOUTEN)
289:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_BIT(RCC->CR, RCC_CR_HSION| RCC_CR_HSIKERON| RCC_CR_HSIDIVEN | \
290:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_CR_HSEON | RCC_CR_CSSHSEON | RCC_CR_PLLON);
291:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif
292:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
293:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Delay after an RCC peripheral clock */ \
294:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tmpreg = READ_BIT(RCC->CR, RCC_CR_HSEON); \
295:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** UNUSED(tmpreg);
296:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
297:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Reset HSEBYP bit */
298:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP);
299:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
300:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Reset CFGR register */
301:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_REG(RCC->CFGR);
302:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
303:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set MSIClockRange & MSITRIM[4:0] bits to the reset value */
304:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MODIFY_REG(RCC->ICSCR, (RCC_ICSCR_MSIRANGE | RCC_ICSCR_MSITRIM), (((uint32_t)0 << RCC_ICSCR_MSITR
305:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
306:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set HSITRIM bits to the reset value */
307:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MODIFY_REG(RCC->ICSCR, RCC_ICSCR_HSITRIM, ((uint32_t)0x10 << 8));
308:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
309:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable all interrupts */
310:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** CLEAR_REG(RCC->CIER);
311:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
312:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Update the SystemCoreClock global variable */
313:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SystemCoreClock = MSI_VALUE;
314:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
315:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
316:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
317:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Initializes the RCC Oscillators according to the specified parameters in the
318:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * RCC_OscInitTypeDef.
319:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_OscInitStruct pointer to an RCC_OscInitTypeDef structure that
ARM GAS /tmp/cchbc9tY.s page 7
320:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * contains the configuration information for the RCC Oscillators.
321:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The PLL is not disabled when used as system clock.
322:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Transitions LSE Bypass to LSE On and LSE On to LSE Bypass are not
323:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * supported by this macro. User should request a transition to LSE Off
324:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * first and then LSE On or LSE Bypass.
325:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Transition HSE Bypass to HSE On and HSE On to HSE Bypass are not
326:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * supported by this macro. User should request a transition to HSE Off
327:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * first and then HSE On or HSE Bypass.
328:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval HAL status
329:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
330:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
331:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
332:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t tickstart = 0U;
333:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
334:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
335:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(RCC_OscInitStruct != NULL);
336:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_OSCILLATORTYPE(RCC_OscInitStruct->OscillatorType));
337:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
338:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*------------------------------- HSE Configuration ------------------------*/
339:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE)
340:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
341:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
342:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_HSE(RCC_OscInitStruct->HSEState));
343:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
344:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* When the HSE is used as system clock or clock source for PLL in these cases it is not allowe
345:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSE)
346:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_
347:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
348:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_
349:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
350:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
351:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
352:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
353:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
354:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
355:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set the new HSE configuration ---------------------------------------*/
356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState);
357:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
358:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
359:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the HSE State */
360:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->HSEState != RCC_HSE_OFF)
361:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
362:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
363:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
364:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
365:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till HSE is ready */
366:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET)
367:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
368:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > HSE_TIMEOUT_VALUE)
369:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
370:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
371:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
372:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
373:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
374:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
375:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
376:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
ARM GAS /tmp/cchbc9tY.s page 8
377:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
378:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
379:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till HSE is disabled */
380:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET)
381:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
382:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > HSE_TIMEOUT_VALUE)
383:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
384:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
385:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
386:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
387:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
388:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
389:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
390:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*----------------------------- HSI Configuration --------------------------*/
391:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI)
392:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
393:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
394:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_HSI(RCC_OscInitStruct->HSIState));
395:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_CALIBRATION_VALUE(RCC_OscInitStruct->HSICalibrationValue));
396:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
397:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check if HSI is used as system clock or as PLL source when PLL is selected as system clock *
398:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSI)
399:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_
400:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
401:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* When HSI is used as system clock it will not disabled */
402:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_
403:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
404:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
405:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
406:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Otherwise, just the calibration is allowed */
407:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
408:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
409:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/
410:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue);
411:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
412:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
413:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
414:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
415:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the HSI State */
416:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->HSIState != RCC_HSI_OFF)
417:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
418:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Enable the Internal High Speed oscillator (HSI or HSIdiv4) */
419:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSI_CONFIG(RCC_OscInitStruct->HSIState);
420:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
421:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
422:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
423:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
424:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till HSI is ready */
425:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET)
426:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
427:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > HSI_TIMEOUT_VALUE)
428:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
429:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
430:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
431:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
432:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
433:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/
ARM GAS /tmp/cchbc9tY.s page 9
434:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue);
435:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
436:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
437:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
438:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable the Internal High Speed oscillator (HSI). */
439:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSI_DISABLE();
440:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
441:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
442:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
443:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
444:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till HSI is disabled */
445:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET)
446:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
447:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > HSI_TIMEOUT_VALUE)
448:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
449:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
450:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
451:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
452:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
453:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
454:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
455:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*----------------------------- MSI Configuration --------------------------*/
456:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_MSI) == RCC_OSCILLATORTYPE_MSI)
457:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
458:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* When the MSI is used as system clock it will not be disabled */
459:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_CFGR_SWS_MSI) )
460:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
461:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((__HAL_RCC_GET_FLAG(RCC_FLAG_MSIRDY) != RESET) && (RCC_OscInitStruct->MSIState == RCC_MSI_
462:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
463:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
464:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
465:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Otherwise, just the calibration and MSI range change are allowed */
466:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
467:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
468:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check MSICalibrationValue and MSIClockRange input parameters */
469:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MSICALIBRATION_VALUE(RCC_OscInitStruct->MSICalibrationValue));
470:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MSI_CLOCK_RANGE(RCC_OscInitStruct->MSIClockRange));
471:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
472:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* To correctly read data from FLASH memory, the number of wait states (LATENCY)
473:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** must be correctly programmed according to the frequency of the CPU clock
474:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (HCLK) and the supply voltage of the device. */
475:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->MSIClockRange > __HAL_RCC_GET_MSI_RANGE())
476:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
477:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* First increase number of wait states update if necessary */
478:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_SetFlashLatencyFromMSIRange(RCC_OscInitStruct->MSIClockRange) != HAL_OK)
479:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
480:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
481:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
482:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
483:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Selects the Multiple Speed oscillator (MSI) clock range .*/
484:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_RANGE_CONFIG(RCC_OscInitStruct->MSIClockRange);
485:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Multiple Speed oscillator (MSI) calibration value.*/
486:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->MSICalibrationValue);
487:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
488:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
489:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
490:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Else, keep current flash latency while decreasing applies */
ARM GAS /tmp/cchbc9tY.s page 10
491:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Selects the Multiple Speed oscillator (MSI) clock range .*/
492:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_RANGE_CONFIG(RCC_OscInitStruct->MSIClockRange);
493:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Multiple Speed oscillator (MSI) calibration value.*/
494:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->MSICalibrationValue);
495:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
496:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Decrease number of wait states update if necessary */
497:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_SetFlashLatencyFromMSIRange(RCC_OscInitStruct->MSIClockRange) != HAL_OK)
498:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
499:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
500:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
501:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
502:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
503:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Update the SystemCoreClock global variable */
504:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SystemCoreClock = (32768U * (1U << ((RCC_OscInitStruct->MSIClockRange >> RCC_ICSCR_MSIRANG
505:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** >> AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_BITNUMBER
506:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
507:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Configure the source of time base considering new system clocks settings*/
508:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_InitTick (TICK_INT_PRIORITY);
509:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
510:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
511:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
512:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
513:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check MSI State */
514:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MSI(RCC_OscInitStruct->MSIState));
515:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
516:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the MSI State */
517:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->MSIState != RCC_MSI_OFF)
518:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
519:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Enable the Multi Speed oscillator (MSI). */
520:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_ENABLE();
521:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
522:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
523:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
524:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
525:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till MSI is ready */
526:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_MSIRDY) == RESET)
527:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
528:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart) > MSI_TIMEOUT_VALUE)
529:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
530:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
531:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
532:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
533:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check MSICalibrationValue and MSIClockRange input parameters */
534:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MSICALIBRATION_VALUE(RCC_OscInitStruct->MSICalibrationValue));
535:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MSI_CLOCK_RANGE(RCC_OscInitStruct->MSIClockRange));
536:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
537:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Selects the Multiple Speed oscillator (MSI) clock range .*/
538:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_RANGE_CONFIG(RCC_OscInitStruct->MSIClockRange);
539:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Multiple Speed oscillator (MSI) calibration value.*/
540:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->MSICalibrationValue);
541:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
542:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
543:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
544:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
545:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable the Multi Speed oscillator (MSI). */
546:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MSI_DISABLE();
547:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
ARM GAS /tmp/cchbc9tY.s page 11
548:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
549:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
550:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
551:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till MSI is ready */
552:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_MSIRDY) != RESET)
553:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
554:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart) > MSI_TIMEOUT_VALUE)
555:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
556:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
557:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
558:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
559:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
560:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
561:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
562:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*------------------------------ LSI Configuration -------------------------*/
563:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI)
564:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
565:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
566:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState));
567:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
568:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSI State */
569:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->LSIState != RCC_LSI_OFF)
570:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
571:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Enable the Internal Low Speed oscillator (LSI). */
572:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_LSI_ENABLE();
573:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
574:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
575:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
576:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
577:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till LSI is ready */
578:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET)
579:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
580:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > LSI_TIMEOUT_VALUE)
581:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
582:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
583:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
584:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
585:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
586:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
587:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
588:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable the Internal Low Speed oscillator (LSI). */
589:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_LSI_DISABLE();
590:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
591:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
592:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
593:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
594:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till LSI is disabled */
595:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET)
596:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
597:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > LSI_TIMEOUT_VALUE)
598:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
599:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
600:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
601:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
602:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
603:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
604:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*------------------------------ LSE Configuration -------------------------*/
ARM GAS /tmp/cchbc9tY.s page 12
605:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE)
606:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
607:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** FlagStatus pwrclkchanged = RESET;
608:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
609:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
610:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_LSE(RCC_OscInitStruct->LSEState));
611:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
612:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Update LSE configuration in Backup Domain control register */
613:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Requires to enable write access to Backup Domain of necessary */
614:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_PWR_IS_CLK_DISABLED())
615:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
616:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PWR_CLK_ENABLE();
617:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** pwrclkchanged = SET;
618:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
619:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
620:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP))
621:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
622:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Enable write access to Backup domain */
623:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SET_BIT(PWR->CR, PWR_CR_DBP);
624:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
625:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait for Backup domain Write protection disable */
626:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
627:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
628:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP))
629:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
630:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE)
631:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
632:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
633:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
634:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
635:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
636:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
637:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set the new LSE configuration -----------------------------------------*/
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState);
639:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
640:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->LSEState != RCC_LSE_OFF)
641:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
642:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
643:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
644:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
645:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till LSE is ready */
646:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET)
647:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
648:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > RCC_LSE_TIMEOUT_VALUE)
649:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
650:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
651:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
652:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
653:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
654:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
655:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
656:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
657:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
658:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
659:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till LSE is disabled */
660:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET)
661:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
ARM GAS /tmp/cchbc9tY.s page 13
662:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > RCC_LSE_TIMEOUT_VALUE)
663:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
664:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
665:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
666:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
667:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
668:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
669:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Require to disable power clock if necessary */
670:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(pwrclkchanged == SET)
671:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
672:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PWR_CLK_DISABLE();
673:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
674:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
675:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
676:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(RCC_HSI48_SUPPORT)
677:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*----------------------------- HSI48 Configuration --------------------------*/
678:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI48) == RCC_OSCILLATORTYPE_HSI48)
679:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
680:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
681:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_HSI48(RCC_OscInitStruct->HSI48State));
682:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
683:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the HSI48 State */
684:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_OscInitStruct->HSI48State != RCC_HSI48_OFF)
685:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
686:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Enable the Internal High Speed oscillator (HSI48). */
687:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSI48_ENABLE();
688:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
689:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
690:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
691:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
692:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till HSI48 is ready */
693:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSI48RDY) == RESET)
694:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
695:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart) > HSI48_TIMEOUT_VALUE)
696:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
697:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
698:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
699:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
700:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
701:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
702:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
703:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable the Internal High Speed oscillator (HSI48). */
704:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_HSI48_DISABLE();
705:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
706:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
707:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
708:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
709:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till HSI48 is ready */
710:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSI48RDY) != RESET)
711:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
712:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart) > HSI48_TIMEOUT_VALUE)
713:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
714:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
715:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
716:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
717:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
718:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
ARM GAS /tmp/cchbc9tY.s page 14
719:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSI48_SUPPORT */
720:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
721:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*-------------------------------- PLL Configuration -----------------------*/
722:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
723:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_PLL(RCC_OscInitStruct->PLL.PLLState));
724:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if ((RCC_OscInitStruct->PLL.PLLState) != RCC_PLL_NONE)
725:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
726:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check if the PLL is used as system clock or not */
727:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_PLLCLK)
728:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
729:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON)
730:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
731:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
732:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_PLLSOURCE(RCC_OscInitStruct->PLL.PLLSource));
733:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_PLL_MUL(RCC_OscInitStruct->PLL.PLLMUL));
734:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_PLL_DIV(RCC_OscInitStruct->PLL.PLLDIV));
735:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
736:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable the main PLL. */
737:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PLL_DISABLE();
738:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
739:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
740:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
741:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
742:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till PLL is disabled */
743:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET)
744:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
745:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > PLL_TIMEOUT_VALUE)
746:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
747:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
748:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
749:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
750:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
751:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Configure the main PLL clock source, multiplication and division factors. */
752:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource,
753:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLMUL,
754:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLDIV);
755:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Enable the main PLL. */
756:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PLL_ENABLE();
757:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
758:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
759:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
760:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
761:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till PLL is ready */
762:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET)
763:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
764:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > PLL_TIMEOUT_VALUE)
765:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
766:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
767:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
768:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
769:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
770:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
771:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
772:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Disable the main PLL. */
773:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PLL_DISABLE();
774:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
775:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
ARM GAS /tmp/cchbc9tY.s page 15
776:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
777:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
778:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Wait till PLL is disabled */
779:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET)
780:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
781:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > PLL_TIMEOUT_VALUE)
782:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
783:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
784:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
785:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
786:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
787:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
788:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
789:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
790:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
791:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
792:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
793:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
794:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_OK;
795:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
796:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
797:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
798:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Initializes the CPU, AHB and APB buses clocks according to the specified
799:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * parameters in the RCC_ClkInitStruct.
800:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_ClkInitStruct pointer to an RCC_OscInitTypeDef structure that
801:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * contains the configuration information for the RCC peripheral.
802:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param FLatency FLASH Latency
803:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * The value of this parameter depend on device used within the same series
804:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The SystemCoreClock CMSIS variable is used to store System Clock Frequency
805:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * and updated by @ref HAL_RCC_GetHCLKFreq() function called within this function
806:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
807:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The MSI is used (enabled by hardware) as system clock source after
808:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * start-up from Reset, wake-up from STOP and STANDBY mode, or in case
809:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * of failure of the HSE used directly or indirectly as system clock
810:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * (if the Clock Security System CSS is enabled).
811:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
812:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note A switch from one clock source to another occurs only if the target
813:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * clock source is ready (clock stable after start-up delay or PLL locked).
814:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * If a clock source which is not yet ready is selected, the switch will
815:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * occur when the clock source will be ready.
816:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * You can use @ref HAL_RCC_GetClockConfig() function to know which clock is
817:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * currently used as system clock source.
818:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Depending on the device voltage range, the software has to set correctly
819:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * HPRE[3:0] bits to ensure that HCLK not exceed the maximum allowed frequency
820:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * (for more details refer to section above "Initialization/de-initialization functions")
821:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval HAL status
822:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
823:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
824:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
825:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t tickstart = 0U;
826:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
827:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
828:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(RCC_ClkInitStruct != NULL);
829:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_CLOCKTYPE(RCC_ClkInitStruct->ClockType));
830:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_FLASH_LATENCY(FLatency));
831:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
832:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* To correctly read data from FLASH memory, the number of wait states (LATENCY)
ARM GAS /tmp/cchbc9tY.s page 16
833:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** must be correctly programmed according to the frequency of the CPU clock
834:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** (HCLK) and the supply voltage of the device. */
835:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
836:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Increasing the number of wait states because of higher CPU frequency */
837:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(FLatency > (FLASH->ACR & FLASH_ACR_LATENCY))
838:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
839:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
840:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_FLASH_SET_LATENCY(FLatency);
841:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
842:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check that the new number of wait states is taken into account to access the Flash
843:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** memory by reading the FLASH_ACR register */
844:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((FLASH->ACR & FLASH_ACR_LATENCY) != FLatency)
845:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
846:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
847:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
848:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
849:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
850:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*-------------------------- HCLK Configuration --------------------------*/
851:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK)
852:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
853:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider));
854:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MODIFY_REG(RCC->CFGR, RCC_CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider);
855:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
856:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
857:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*------------------------- SYSCLK Configuration ---------------------------*/
858:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK)
859:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
860:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource));
861:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
862:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* HSE is selected as System Clock Source */
863:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE)
864:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
865:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the HSE ready flag */
866:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET)
867:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
868:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
869:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
870:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
871:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* PLL is selected as System Clock Source */
872:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK)
873:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
874:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the PLL ready flag */
875:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET)
876:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
877:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
878:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
879:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
880:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* HSI is selected as System Clock Source */
881:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSI)
882:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
883:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the HSI ready flag */
884:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET)
885:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
886:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
887:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
888:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
889:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* MSI is selected as System Clock Source */
ARM GAS /tmp/cchbc9tY.s page 17
890:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
891:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
892:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the MSI ready flag */
893:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_GET_FLAG(RCC_FLAG_MSIRDY) == RESET)
894:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
895:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
896:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
897:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
898:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_SYSCLK_CONFIG(RCC_ClkInitStruct->SYSCLKSource);
899:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
900:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get Start Tick */
901:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tickstart = HAL_GetTick();
902:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
903:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE)
904:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
905:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_HSE)
906:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
907:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > CLOCKSWITCH_TIMEOUT_VALUE)
908:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
909:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
910:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
911:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
912:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
913:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK)
914:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
915:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_PLLCLK)
916:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
917:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > CLOCKSWITCH_TIMEOUT_VALUE)
918:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
919:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
920:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
921:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
922:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
923:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSI)
924:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
925:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_HSI)
926:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
927:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > CLOCKSWITCH_TIMEOUT_VALUE)
928:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
929:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
930:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
931:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
932:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
933:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
934:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
935:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** while(__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_MSI)
936:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
937:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((HAL_GetTick() - tickstart ) > CLOCKSWITCH_TIMEOUT_VALUE)
938:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
939:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_TIMEOUT;
940:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
941:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
942:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
943:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
944:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Decreasing the number of wait states because of lower CPU frequency */
945:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(FLatency < (FLASH->ACR & FLASH_ACR_LATENCY))
946:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
ARM GAS /tmp/cchbc9tY.s page 18
947:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
948:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_FLASH_SET_LATENCY(FLatency);
949:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
950:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check that the new number of wait states is taken into account to access the Flash
951:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** memory by reading the FLASH_ACR register */
952:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((FLASH->ACR & FLASH_ACR_LATENCY) != FLatency)
953:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
954:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
955:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
956:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
957:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
958:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*-------------------------- PCLK1 Configuration ---------------------------*/
959:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
960:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
961:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB1CLKDivider));
962:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_ClkInitStruct->APB1CLKDivider);
963:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
964:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
965:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /*-------------------------- PCLK2 Configuration ---------------------------*/
966:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
967:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
968:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB2CLKDivider));
969:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, ((RCC_ClkInitStruct->APB2CLKDivider) << 3));
970:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
971:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
972:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Update the SystemCoreClock global variable */
973:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE)>> RCC_CF
974:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
975:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Configure the source of time base considering new system clocks settings*/
976:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_InitTick (TICK_INT_PRIORITY);
977:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
978:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_OK;
979:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
980:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
981:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
982:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
983:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
984:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
985:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @defgroup RCC_Exported_Functions_Group2 Peripheral Control functions
986:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief RCC clocks control functions
987:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
988:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @verbatim
989:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ===============================================================================
990:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ##### Peripheral Control functions #####
991:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** ===============================================================================
992:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** [..]
993:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** This subsection provides a set of functions allowing to control the RCC Clocks
994:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** frequencies.
995:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
996:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @endverbatim
997:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
998:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
999:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1000:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1001:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Selects the clock source to output on MCO pin.
1002:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note MCO pin should be configured in alternate function mode.
1003:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_MCOx specifies the output direction for the clock source.
ARM GAS /tmp/cchbc9tY.s page 19
1004:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * This parameter can be one of the following values:
1005:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1 Clock source to output on MCO1 pin(PA8).
1006:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO2 Clock source to output on MCO2 pin(PA9).
1007:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @if STM32L031xx
1008:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1009:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L041xx
1010:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1011:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L073xx
1012:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1013:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L083xx
1014:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1015:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L072xx
1016:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1017:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L082xx
1018:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1019:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L071xx
1020:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1021:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L081xx
1022:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO3 Clock source to output on MCO3 pin(PB13)
1023:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @endif
1024:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_MCOSource specifies the clock source to output.
1025:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * This parameter can be one of the following values:
1026:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock
1027:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock selected as MCO clock
1028:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock
1029:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock
1030:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_MSI MSI oscillator clock selected as MCO clock
1031:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock selected as MCO clock
1032:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_LSI LSI clock selected as MCO clock
1033:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_LSE LSE clock selected as MCO clock
1034:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @if STM32L052xx
1035:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1036:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L053xx
1037:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1038:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L062xx
1039:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1040:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L063xx
1041:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1042:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L072xx
1043:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1044:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L073xx
1045:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1046:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L082xx
1047:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1048:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @elseif STM32L083xx
1049:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCO1SOURCE_HSI48 HSI48 clock selected as MCO clock
1050:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** @endif
1051:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_MCODiv specifies the MCO DIV.
1052:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * This parameter can be one of the following values:
1053:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCODIV_1 no division applied to MCO clock
1054:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCODIV_2 division by 2 applied to MCO clock
1055:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCODIV_4 division by 4 applied to MCO clock
1056:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCODIV_8 division by 8 applied to MCO clock
1057:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @arg @ref RCC_MCODIV_16 division by 16 applied to MCO clock
1058:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval None
1059:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1060:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv)
ARM GAS /tmp/cchbc9tY.s page 20
1061:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1062:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** GPIO_InitTypeDef gpio = {0};
1063:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1064:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
1065:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MCO(RCC_MCOx));
1066:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MCODIV(RCC_MCODiv));
1067:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(IS_RCC_MCO1SOURCE(RCC_MCOSource));
1068:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1069:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Configure the MCO1 pin in alternate function mode */
1070:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Mode = GPIO_MODE_AF_PP;
1071:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Speed = GPIO_SPEED_FREQ_HIGH;
1072:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Pull = GPIO_NOPULL;
1073:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(RCC_MCOx == RCC_MCO1)
1074:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1075:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Pin = MCO1_PIN;
1076:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Alternate = GPIO_AF0_MCO;
1077:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1078:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* MCO1 Clock Enable */
1079:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MCO1_CLK_ENABLE();
1080:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_GPIO_Init(MCO1_GPIO_PORT, &gpio);
1081:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1082:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(STM32L031xx) || defined(STM32L041xx) || defined(STM32L073xx) || defined(STM32L083xx) \
1083:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** || defined(STM32L072xx) || defined(STM32L082xx) || defined(STM32L071xx) || defined(STM32L081xx)
1084:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if (RCC_MCOx == RCC_MCO3)
1085:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1086:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Pin = MCO3_PIN;
1087:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Alternate = GPIO_AF2_MCO;
1088:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1089:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* MCO3 Clock Enable */
1090:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MCO3_CLK_ENABLE();
1091:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_GPIO_Init(MCO3_GPIO_PORT, &gpio);
1092:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1093:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif
1094:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1095:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1096:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Pin = MCO2_PIN;
1097:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Alternate = GPIO_AF0_MCO;
1098:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1099:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* MCO2 Clock Enable */
1100:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** MCO2_CLK_ENABLE();
1101:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_GPIO_Init(MCO2_GPIO_PORT, &gpio);
1102:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1103:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1104:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Configure the MCO clock source */
1105:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_MCO1_CONFIG(RCC_MCOSource, RCC_MCODiv);
1106:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1107:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1108:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(RCC_HSECSS_SUPPORT)
1109:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1110:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Enables the Clock Security System.
1111:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note If a failure is detected on the HSE oscillator clock, this oscillator
1112:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * is automatically disabled and an interrupt is generated to inform the
1113:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * software about the failure (Clock Security System Interrupt, CSSI),
1114:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * allowing the MCU to perform rescue operations. The CSSI is linked to
1115:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * the Cortex-M0+ NMI (Non-Maskable Interrupt) exception vector.
1116:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval None
1117:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
ARM GAS /tmp/cchbc9tY.s page 21
1118:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** void HAL_RCC_EnableCSS(void)
1119:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1120:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SET_BIT(RCC->CR, RCC_CR_CSSON) ;
1121:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1122:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1123:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSECSS_SUPPORT */
1124:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1125:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Returns the SYSCLK frequency
1126:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The system frequency computed by this function is not the real
1127:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * frequency in the chip. It is calculated based on the predefined
1128:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * constant and the selected clock source:
1129:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note If SYSCLK source is MSI, function returns a value based on MSI
1130:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * Value as defined by the MSI range.
1131:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note If SYSCLK source is HSI, function returns values based on HSI_VALUE(*)
1132:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note If SYSCLK source is HSE, function returns a value based on HSE_VALUE(**)
1133:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note If SYSCLK source is PLL, function returns a value based on HSE_VALUE(**)
1134:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * or HSI_VALUE(*) multiplied/divided by the PLL factors.
1135:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note (*) HSI_VALUE is a constant defined in stm32l0xx_hal_conf.h file (default value
1136:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * 16 MHz) but the real value may vary depending on the variations
1137:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * in voltage and temperature.
1138:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note (**) HSE_VALUE is a constant defined in stm32l0xx_hal_conf.h file (default value
1139:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * 8 MHz), user has to ensure that HSE_VALUE is same as the real
1140:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * frequency of the crystal used. Otherwise, this function may
1141:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * have wrong result.
1142:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
1143:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The result of this function could be not correct when using fractional
1144:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * value for HSE crystal.
1145:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
1146:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note This function can be used by the user application to compute the
1147:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * baud-rate for the communication peripherals or configure other parameters.
1148:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
1149:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Each time SYSCLK changes, this function must be called to update the
1150:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * right SYSCLK value. Otherwise, any configuration based on this function will be incorre
1151:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
1152:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval SYSCLK frequency
1153:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1154:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t HAL_RCC_GetSysClockFreq(void)
1155:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1156:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t tmpreg = 0, pllm = 0, plld = 0, pllvco = 0, msiclkrange = 0;
1157:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t sysclockfreq = 0;
1158:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1159:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** tmpreg = RCC->CFGR;
1160:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1161:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get SYSCLK source -------------------------------------------------------*/
1162:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** switch (tmpreg & RCC_CFGR_SWS)
1163:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1164:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** case RCC_SYSCLKSOURCE_STATUS_HSI: /* HSI used as system clock source */
1165:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1166:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if ((RCC->CR & RCC_CR_HSIDIVF) != 0)
1167:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1168:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** sysclockfreq = (HSI_VALUE >> 2);
1169:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1170:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1171:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1172:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** sysclockfreq = HSI_VALUE;
1173:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1174:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** break;
ARM GAS /tmp/cchbc9tY.s page 22
1175:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1176:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** case RCC_SYSCLKSOURCE_STATUS_HSE: /* HSE used as system clock */
1177:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1178:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** sysclockfreq = HSE_VALUE;
1179:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** break;
1180:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1181:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** case RCC_SYSCLKSOURCE_STATUS_PLLCLK: /* PLL used as system clock */
1182:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1183:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** pllm = PLLMulTable[(uint32_t)(tmpreg & RCC_CFGR_PLLMUL) >> RCC_CFGR_PLLMUL_BITNUMBER];
1184:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** plld = ((uint32_t)(tmpreg & RCC_CFGR_PLLDIV) >> RCC_CFGR_PLLDIV_BITNUMBER) + 1;
1185:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if (__HAL_RCC_GET_PLL_OSCSOURCE() != RCC_PLLSOURCE_HSI)
1186:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1187:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* HSE used as PLL clock source */
1188:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** pllvco = (HSE_VALUE * pllm) / plld;
1189:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1190:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1191:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1192:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if ((RCC->CR & RCC_CR_HSIDIVF) != 0)
1193:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1194:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** pllvco = ((HSI_VALUE >> 2) * pllm) / plld;
1195:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1196:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1197:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1198:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** pllvco = (HSI_VALUE * pllm) / plld;
1199:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1200:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1201:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** sysclockfreq = pllvco;
1202:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** break;
1203:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1204:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** case RCC_SYSCLKSOURCE_STATUS_MSI: /* MSI used as system clock source */
1205:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** default: /* MSI used as system clock */
1206:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1207:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** msiclkrange = (RCC->ICSCR & RCC_ICSCR_MSIRANGE ) >> RCC_ICSCR_MSIRANGE_BITNUMBER;
1208:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** sysclockfreq = (32768 * (1 << (msiclkrange + 1)));
1209:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** break;
1210:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1211:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1212:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return sysclockfreq;
1213:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1214:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1215:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1216:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Returns the HCLK frequency
1217:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Each time HCLK changes, this function must be called to update the
1218:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * right HCLK value. Otherwise, any configuration based on this function will be incorrect
1219:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *
1220:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note The SystemCoreClock CMSIS variable is used to store System Clock Frequency
1221:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * and updated within this function
1222:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval HCLK frequency
1223:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1224:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t HAL_RCC_GetHCLKFreq(void)
1225:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1226:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return SystemCoreClock;
1227:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1228:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1229:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1230:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Returns the PCLK1 frequency
1231:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Each time PCLK1 changes, this function must be called to update the
ARM GAS /tmp/cchbc9tY.s page 23
1232:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * right PCLK1 value. Otherwise, any configuration based on this function will be incorrec
1233:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval PCLK1 frequency
1234:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1235:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t HAL_RCC_GetPCLK1Freq(void)
1236:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1237:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/
1238:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return (HAL_RCC_GetHCLKFreq() >> APBPrescTable[(RCC->CFGR & RCC_CFGR_PPRE1) >> RCC_CFGR_PPRE1_BIT
1239:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1240:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1241:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1242:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Returns the PCLK2 frequency
1243:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note Each time PCLK2 changes, this function must be called to update the
1244:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * right PCLK2 value. Otherwise, any configuration based on this function will be incorrec
1245:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval PCLK2 frequency
1246:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1247:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t HAL_RCC_GetPCLK2Freq(void)
1248:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1249:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get HCLK source and Compute PCLK2 frequency ---------------------------*/
1250:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return (HAL_RCC_GetHCLKFreq()>> APBPrescTable[(RCC->CFGR & RCC_CFGR_PPRE2) >> RCC_CFGR_PPRE2_BITN
1251:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1252:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1253:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1254:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Configures the RCC_OscInitStruct according to the internal
1255:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * RCC configuration registers.
1256:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_OscInitStruct pointer to an RCC_OscInitTypeDef structure that
1257:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * will be configured.
1258:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval None
1259:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1260:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
1261:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1262:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
1263:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(RCC_OscInitStruct != NULL);
1264:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1265:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set all possible values for the Oscillator type parameter ---------------*/
1266:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->OscillatorType = RCC_OSCILLATORTYPE_HSE | RCC_OSCILLATORTYPE_HSI \
1267:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** | RCC_OSCILLATORTYPE_LSE | RCC_OSCILLATORTYPE_LSI | RCC_OSCILLATORTYPE_MSI;
1268:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(RCC_HSI48_SUPPORT)
1269:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->OscillatorType |= RCC_OSCILLATORTYPE_HSI48;
1270:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSI48_SUPPORT */
1271:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1272:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1273:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the HSE configuration -----------------------------------------------*/
1274:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC->CR &RCC_CR_HSEBYP) == RCC_CR_HSEBYP)
1275:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1276:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS;
1277:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1278:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if((RCC->CR &RCC_CR_HSEON) == RCC_CR_HSEON)
1279:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1280:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSEState = RCC_HSE_ON;
1281:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1282:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1283:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1284:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSEState = RCC_HSE_OFF;
1285:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1286:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1287:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the HSI configuration -----------------------------------------------*/
1288:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC->CR &RCC_CR_HSION) == RCC_CR_HSION)
ARM GAS /tmp/cchbc9tY.s page 24
1289:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1290:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSIState = RCC_HSI_ON;
1291:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1292:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1293:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1294:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSIState = RCC_HSI_OFF;
1295:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1296:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1297:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSICalibrationValue = (uint32_t)((RCC->ICSCR & RCC_ICSCR_HSITRIM) >> 8);
1298:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1299:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the MSI configuration -----------------------------------------------*/
1300:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC->CR &RCC_CR_MSION) == RCC_CR_MSION)
1301:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1302:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->MSIState = RCC_MSI_ON;
1303:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1304:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1305:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1306:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->MSIState = RCC_MSI_OFF;
1307:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1308:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1309:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->MSICalibrationValue = (uint32_t)((RCC->ICSCR & RCC_ICSCR_MSITRIM) >> RCC_ICSCR
1310:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->MSIClockRange = (uint32_t)((RCC->ICSCR & RCC_ICSCR_MSIRANGE));
1311:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1312:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the LSE configuration -----------------------------------------------*/
1313:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC->CSR &RCC_CSR_LSEBYP) == RCC_CSR_LSEBYP)
1314:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1315:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS;
1316:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1317:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else if((RCC->CSR &RCC_CSR_LSEON) == RCC_CSR_LSEON)
1318:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1319:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->LSEState = RCC_LSE_ON;
1320:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1321:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1322:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1323:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->LSEState = RCC_LSE_OFF;
1324:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1325:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1326:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the LSI configuration -----------------------------------------------*/
1327:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC->CSR &RCC_CSR_LSION) == RCC_CSR_LSION)
1328:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1329:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->LSIState = RCC_LSI_ON;
1330:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1331:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1332:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1333:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->LSIState = RCC_LSI_OFF;
1334:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1335:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1336:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(RCC_HSI48_SUPPORT)
1337:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the HSI48 configuration if any-----------------------------------------*/
1338:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->HSI48State = __HAL_RCC_GET_HSI48_STATE();
1339:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSI48_SUPPORT */
1340:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1341:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the PLL configuration -----------------------------------------------*/
1342:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((RCC->CR &RCC_CR_PLLON) == RCC_CR_PLLON)
1343:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1344:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLState = RCC_PLL_ON;
1345:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
ARM GAS /tmp/cchbc9tY.s page 25
1346:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1347:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1348:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLState = RCC_PLL_OFF;
1349:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1350:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLSource = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLSRC);
1351:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLMUL = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLMUL);
1352:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLDIV = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLDIV);
1353:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1354:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1355:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Get the RCC_ClkInitStruct according to the internal
1357:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * RCC configuration registers.
1358:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param RCC_ClkInitStruct pointer to an RCC_ClkInitTypeDef structure that
1359:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * contains the current clock configuration.
1360:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param pFLatency Pointer on the Flash Latency.
1361:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval None
1362:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1363:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency)
1364:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1365:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
1366:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(RCC_ClkInitStruct != NULL);
1367:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** assert_param(pFLatency != NULL);
1368:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1369:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Set all possible values for the Clock type parameter --------------------*/
1370:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_ClkInitStruct->ClockType = RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 |
1371:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1372:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the SYSCLK configuration --------------------------------------------*/
1373:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_ClkInitStruct->SYSCLKSource = (uint32_t)(RCC->CFGR & RCC_CFGR_SW);
1374:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1375:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the HCLK configuration ----------------------------------------------*/
1376:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_ClkInitStruct->AHBCLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_HPRE);
1377:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1378:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the APB1 configuration ----------------------------------------------*/
1379:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_ClkInitStruct->APB1CLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_PPRE1);
1380:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1381:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the APB2 configuration ----------------------------------------------*/
1382:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_ClkInitStruct->APB2CLKDivider = (uint32_t)((RCC->CFGR & RCC_CFGR_PPRE2) >> 3);
1383:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1384:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get the Flash Wait State (Latency) configuration ------------------------*/
1385:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** *pFLatency = (uint32_t)(FLASH->ACR & FLASH_ACR_LATENCY);
1386:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1387:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1388:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #if defined(RCC_HSECSS_SUPPORT)
1389:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1390:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief This function handles the RCC CSS interrupt request.
1391:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @note This API should be called under the NMI_Handler().
1392:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval None
1393:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1394:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** void HAL_RCC_NMI_IRQHandler(void)
1395:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1396:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check RCC CSSF flag */
1397:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_GET_IT(RCC_IT_CSS))
1398:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1399:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* RCC Clock Security System interrupt user callback */
1400:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_RCC_CSSCallback();
1401:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1402:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Clear RCC CSS pending bit */
ARM GAS /tmp/cchbc9tY.s page 26
1403:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_CLEAR_IT(RCC_IT_CSS);
1404:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1405:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1406:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1407:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1408:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief RCC Clock Security System interrupt callback
1409:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval none
1410:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1411:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __weak void HAL_RCC_CSSCallback(void)
1412:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1413:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* NOTE : This function Should not be modified, when the callback is needed,
1414:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** the HAL_RCC_CSSCallback could be implemented in the user file
1415:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1416:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1417:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1418:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSECSS_SUPPORT */
1419:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1420:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
1421:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1422:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1423:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1424:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @}
1425:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1426:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1427:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Private function prototypes -----------------------------------------------*/
1428:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /** @addtogroup RCC_Private_Functions
1429:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @{
1430:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1431:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /**
1432:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @brief Update number of Flash wait states in line with MSI range and current
1433:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** voltage range
1434:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @param MSIrange MSI range value from RCC_MSIRANGE_0 to RCC_MSIRANGE_6
1435:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** * @retval HAL status
1436:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** */
1437:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** static HAL_StatusTypeDef RCC_SetFlashLatencyFromMSIRange(uint32_t MSIrange)
1438:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
25 .loc 1 1438 0
26 .cfi_startproc
27 @ args = 0, pretend = 0, frame = 0
28 @ frame_needed = 0, uses_anonymous_args = 0
29 .LVL0:
30 0000 30B5 push {r4, r5, lr}
31 .LCFI0:
32 .cfi_def_cfa_offset 12
33 .cfi_offset 4, -12
34 .cfi_offset 5, -8
35 .cfi_offset 14, -4
36 .LVL1:
1439:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t vos = 0;
1440:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t latency = FLASH_LATENCY_0; /* default value 0WS */
1441:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1442:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* HCLK can reach 4 MHz only if AHB prescaler = 1 */
1443:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if (READ_BIT(RCC->CFGR, RCC_CFGR_HPRE) == RCC_SYSCLK_DIV1)
37 .loc 1 1443 0
38 0002 1B4B ldr r3, .L9
39 0004 DB68 ldr r3, [r3, #12]
40 0006 F022 movs r2, #240
ARM GAS /tmp/cchbc9tY.s page 27
41 0008 1340 ands r3, r2
42 000a 22D1 bne .L6
1444:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1445:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if(__HAL_RCC_PWR_IS_CLK_ENABLED())
43 .loc 1 1445 0
44 000c 184A ldr r2, .L9
45 000e 926B ldr r2, [r2, #56]
46 0010 D200 lsls r2, r2, #3
47 0012 0ED5 bpl .L3
1446:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1447:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** vos = READ_BIT(PWR->CR, PWR_CR_VOS);
48 .loc 1 1447 0
49 0014 174A ldr r2, .L9+4
50 0016 1268 ldr r2, [r2]
51 0018 C021 movs r1, #192
52 001a 4901 lsls r1, r1, #5
53 001c 0A40 ands r2, r1
54 .LVL2:
55 .L4:
1448:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1449:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** else
1450:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1451:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PWR_CLK_ENABLE();
1452:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** vos = READ_BIT(PWR->CR, PWR_CR_VOS);
1453:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PWR_CLK_DISABLE();
1454:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1455:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1456:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check if need to set latency 1 only for Range 3 & HCLK = 4MHz */
1457:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((vos == PWR_REGULATOR_VOLTAGE_SCALE3) && (MSIrange == RCC_MSIRANGE_6))
56 .loc 1 1457 0
57 001e C021 movs r1, #192
58 0020 4901 lsls r1, r1, #5
59 0022 8A42 cmp r2, r1
60 0024 16D1 bne .L2
61 .loc 1 1457 0 is_stmt 0 discriminator 1
62 0026 C022 movs r2, #192
63 .LVL3:
64 0028 1202 lsls r2, r2, #8
65 002a 9042 cmp r0, r2
66 002c 12D1 bne .L2
1458:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1459:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** latency = FLASH_LATENCY_1; /* 1WS */
67 .loc 1 1459 0 is_stmt 1
68 002e 0123 movs r3, #1
69 0030 10E0 b .L2
70 .LVL4:
71 .L3:
1451:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** vos = READ_BIT(PWR->CR, PWR_CR_VOS);
72 .loc 1 1451 0
73 0032 0F49 ldr r1, .L9
74 0034 8C6B ldr r4, [r1, #56]
75 0036 8022 movs r2, #128
76 0038 5205 lsls r2, r2, #21
77 003a 2243 orrs r2, r4
78 003c 8A63 str r2, [r1, #56]
1452:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_RCC_PWR_CLK_DISABLE();
79 .loc 1 1452 0
ARM GAS /tmp/cchbc9tY.s page 28
80 003e 0D4A ldr r2, .L9+4
81 0040 1268 ldr r2, [r2]
82 0042 C024 movs r4, #192
83 0044 6401 lsls r4, r4, #5
84 0046 2240 ands r2, r4
85 .LVL5:
1453:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
86 .loc 1 1453 0
87 0048 8C6B ldr r4, [r1, #56]
88 004a 0B4D ldr r5, .L9+8
89 004c 2C40 ands r4, r5
90 004e 8C63 str r4, [r1, #56]
91 0050 E5E7 b .L4
92 .LVL6:
93 .L6:
1440:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
94 .loc 1 1440 0
95 0052 0023 movs r3, #0
96 .LVL7:
97 .L2:
1460:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1461:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1462:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1463:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __HAL_FLASH_SET_LATENCY(latency);
98 .loc 1 1463 0
99 0054 0948 ldr r0, .L9+12
100 .LVL8:
101 0056 0268 ldr r2, [r0]
102 0058 0121 movs r1, #1
103 005a 8A43 bics r2, r1
104 005c 1A43 orrs r2, r3
105 005e 0260 str r2, [r0]
1464:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1465:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check that the new number of wait states is taken into account to access the Flash
1466:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** memory by reading the FLASH_ACR register */
1467:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if((FLASH->ACR & FLASH_ACR_LATENCY) != latency)
106 .loc 1 1467 0
107 0060 0268 ldr r2, [r0]
108 0062 1140 ands r1, r2
109 0064 9942 cmp r1, r3
110 0066 01D0 beq .L8
1468:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1469:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_ERROR;
111 .loc 1 1469 0
112 0068 0120 movs r0, #1
113 .L5:
1470:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1471:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1472:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return HAL_OK;
1473:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
114 .loc 1 1473 0
115 @ sp needed
116 006a 30BD pop {r4, r5, pc}
117 .L8:
1472:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
118 .loc 1 1472 0
119 006c 0020 movs r0, #0
ARM GAS /tmp/cchbc9tY.s page 29
120 006e FCE7 b .L5
121 .L10:
122 .align 2
123 .L9:
124 0070 00100240 .word 1073876992
125 0074 00700040 .word 1073770496
126 0078 FFFFFFEF .word -268435457
127 007c 00200240 .word 1073881088
128 .cfi_endproc
129 .LFE52:
131 .section .text.HAL_RCC_DeInit,"ax",%progbits
132 .align 1
133 .global HAL_RCC_DeInit
134 .syntax unified
135 .code 16
136 .thumb_func
137 .fpu softvfp
139 HAL_RCC_DeInit:
140 .LFB39:
272:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** __IO uint32_t tmpreg;
141 .loc 1 272 0
142 .cfi_startproc
143 @ args = 0, pretend = 0, frame = 8
144 @ frame_needed = 0, uses_anonymous_args = 0
145 @ link register save eliminated.
146 0000 82B0 sub sp, sp, #8
147 .LCFI1:
148 .cfi_def_cfa_offset 8
276:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
149 .loc 1 276 0
150 0002 174B ldr r3, .L12
151 0004 1968 ldr r1, [r3]
152 0006 8022 movs r2, #128
153 0008 5200 lsls r2, r2, #1
154 000a 0A43 orrs r2, r1
155 000c 1A60 str r2, [r3]
279:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
156 .loc 1 279 0
157 000e DA68 ldr r2, [r3, #12]
158 0010 0321 movs r1, #3
159 0012 8A43 bics r2, r1
160 0014 DA60 str r2, [r3, #12]
283:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_CR_HSEON | RCC_CR_CSSHSEON | RCC_CR_PLLON);
161 .loc 1 283 0
162 0016 1A68 ldr r2, [r3]
163 0018 1249 ldr r1, .L12+4
164 001a 0A40 ands r2, r1
165 001c 1A60 str r2, [r3]
294:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** UNUSED(tmpreg);
166 .loc 1 294 0
167 001e 1A68 ldr r2, [r3]
168 0020 8021 movs r1, #128
169 0022 4902 lsls r1, r1, #9
170 0024 0A40 ands r2, r1
171 0026 0192 str r2, [sp, #4]
295:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
172 .loc 1 295 0
ARM GAS /tmp/cchbc9tY.s page 30
173 0028 019A ldr r2, [sp, #4]
298:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
174 .loc 1 298 0
175 002a 1A68 ldr r2, [r3]
176 002c 0E49 ldr r1, .L12+8
177 002e 0A40 ands r2, r1
178 0030 1A60 str r2, [r3]
301:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
179 .loc 1 301 0
180 0032 0020 movs r0, #0
181 0034 D860 str r0, [r3, #12]
304:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
182 .loc 1 304 0
183 0036 5A68 ldr r2, [r3, #4]
184 0038 0C49 ldr r1, .L12+12
185 003a 1140 ands r1, r2
186 003c A022 movs r2, #160
187 003e 1202 lsls r2, r2, #8
188 0040 0A43 orrs r2, r1
189 0042 5A60 str r2, [r3, #4]
307:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
190 .loc 1 307 0
191 0044 5A68 ldr r2, [r3, #4]
192 0046 0A49 ldr r1, .L12+16
193 0048 1140 ands r1, r2
194 004a 8022 movs r2, #128
195 004c 5201 lsls r2, r2, #5
196 004e 0A43 orrs r2, r1
197 0050 5A60 str r2, [r3, #4]
310:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
198 .loc 1 310 0
199 0052 1861 str r0, [r3, #16]
313:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
200 .loc 1 313 0
201 0054 074B ldr r3, .L12+20
202 0056 084A ldr r2, .L12+24
203 0058 1A60 str r2, [r3]
314:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
204 .loc 1 314 0
205 005a 02B0 add sp, sp, #8
206 @ sp needed
207 005c 7047 bx lr
208 .L13:
209 005e C046 .align 2
210 .L12:
211 0060 00100240 .word 1073876992
212 0064 D4FFF6FE .word -17367084
213 0068 FFFFFBFF .word -262145
214 006c FF1FFF00 .word 16719871
215 0070 FFE0FFFF .word -7937
216 0074 00000000 .word SystemCoreClock
217 0078 80841E00 .word 2000000
218 .cfi_endproc
219 .LFE39:
221 .section .text.HAL_RCC_OscConfig,"ax",%progbits
222 .align 1
223 .global HAL_RCC_OscConfig
ARM GAS /tmp/cchbc9tY.s page 31
224 .syntax unified
225 .code 16
226 .thumb_func
227 .fpu softvfp
229 HAL_RCC_OscConfig:
230 .LFB40:
331:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t tickstart = 0U;
231 .loc 1 331 0
232 .cfi_startproc
233 @ args = 0, pretend = 0, frame = 8
234 @ frame_needed = 0, uses_anonymous_args = 0
235 .LVL9:
236 0000 70B5 push {r4, r5, r6, lr}
237 .LCFI2:
238 .cfi_def_cfa_offset 16
239 .cfi_offset 4, -16
240 .cfi_offset 5, -12
241 .cfi_offset 6, -8
242 .cfi_offset 14, -4
243 0002 82B0 sub sp, sp, #8
244 .LCFI3:
245 .cfi_def_cfa_offset 24
246 0004 0400 movs r4, r0
247 .LVL10:
339:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
248 .loc 1 339 0
249 0006 0368 ldr r3, [r0]
250 0008 DB07 lsls r3, r3, #31
251 000a 41D5 bpl .L15
345:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_
252 .loc 1 345 0
253 000c BB4B ldr r3, .L119
254 000e DA68 ldr r2, [r3, #12]
255 0010 0C23 movs r3, #12
256 0012 1340 ands r3, r2
257 0014 082B cmp r3, #8
258 0016 33D0 beq .L16
346:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
259 .loc 1 346 0
260 0018 B84B ldr r3, .L119
261 001a DA68 ldr r2, [r3, #12]
262 001c 0C23 movs r3, #12
263 001e 1340 ands r3, r2
264 0020 0C2B cmp r3, #12
265 0022 29D0 beq .L104
266 .L17:
267 .LBB6:
356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
268 .loc 1 356 0
269 0024 6368 ldr r3, [r4, #4]
270 0026 8022 movs r2, #128
271 0028 5202 lsls r2, r2, #9
272 002a 9342 cmp r3, r2
273 002c 58D0 beq .L105
356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
274 .loc 1 356 0 is_stmt 0 discriminator 2
275 002e A022 movs r2, #160
ARM GAS /tmp/cchbc9tY.s page 32
276 0030 D202 lsls r2, r2, #11
277 0032 9342 cmp r3, r2
278 0034 5BD0 beq .L106
356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
279 .loc 1 356 0 discriminator 4
280 0036 B14B ldr r3, .L119
281 0038 1A68 ldr r2, [r3]
282 003a B149 ldr r1, .L119+4
283 003c 0A40 ands r2, r1
284 003e 1A60 str r2, [r3]
285 0040 1A68 ldr r2, [r3]
286 0042 8021 movs r1, #128
287 0044 4902 lsls r1, r1, #9
288 0046 0A40 ands r2, r1
289 0048 0192 str r2, [sp, #4]
290 004a 019A ldr r2, [sp, #4]
291 004c 1A68 ldr r2, [r3]
292 004e AD49 ldr r1, .L119+8
293 0050 0A40 ands r2, r1
294 0052 1A60 str r2, [r3]
295 .L20:
296 .LBE6:
360:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
297 .loc 1 360 0 is_stmt 1
298 0054 6368 ldr r3, [r4, #4]
299 0056 002B cmp r3, #0
300 0058 55D0 beq .L22
363:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
301 .loc 1 363 0
302 005a FFF7FEFF bl HAL_GetTick
303 .LVL11:
304 005e 0500 movs r5, r0
305 .LVL12:
306 .L23:
366:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
307 .loc 1 366 0
308 0060 A64B ldr r3, .L119
309 0062 1B68 ldr r3, [r3]
310 0064 9B03 lsls r3, r3, #14
311 0066 13D4 bmi .L15
368:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
312 .loc 1 368 0
313 0068 FFF7FEFF bl HAL_GetTick
314 .LVL13:
315 006c 401B subs r0, r0, r5
316 006e A64B ldr r3, .L119+12
317 0070 9842 cmp r0, r3
318 0072 F5D9 bls .L23
370:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
319 .loc 1 370 0
320 0074 0320 movs r0, #3
321 0076 69E2 b .L18
322 .LVL14:
323 .L104:
346:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
324 .loc 1 346 0 discriminator 1
325 0078 A04B ldr r3, .L119
ARM GAS /tmp/cchbc9tY.s page 33
326 007a DB68 ldr r3, [r3, #12]
327 007c DB03 lsls r3, r3, #15
328 007e D1D5 bpl .L17
329 .L16:
348:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
330 .loc 1 348 0
331 0080 9E4B ldr r3, .L119
332 0082 1B68 ldr r3, [r3]
333 0084 9B03 lsls r3, r3, #14
334 0086 03D5 bpl .L15
348:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
335 .loc 1 348 0 is_stmt 0 discriminator 1
336 0088 6368 ldr r3, [r4, #4]
337 008a 002B cmp r3, #0
338 008c 00D1 bne .LCB296
339 008e 56E2 b .L107 @long jump
340 .LCB296:
341 .LVL15:
342 .L15:
391:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
343 .loc 1 391 0 is_stmt 1
344 0090 2368 ldr r3, [r4]
345 0092 9B07 lsls r3, r3, #30
346 0094 5BD5 bpl .L27
398:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_
347 .loc 1 398 0
348 0096 994B ldr r3, .L119
349 0098 DA68 ldr r2, [r3, #12]
350 009a 0C23 movs r3, #12
351 009c 1340 ands r3, r2
352 009e 042B cmp r3, #4
353 00a0 44D0 beq .L28
399:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
354 .loc 1 399 0
355 00a2 964B ldr r3, .L119
356 00a4 DA68 ldr r2, [r3, #12]
357 00a6 0C23 movs r3, #12
358 00a8 1340 ands r3, r2
359 00aa 0C2B cmp r3, #12
360 00ac 3AD0 beq .L108
361 .L29:
416:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
362 .loc 1 416 0
363 00ae E368 ldr r3, [r4, #12]
364 00b0 002B cmp r3, #0
365 00b2 00D1 bne .LCB321
366 00b4 AEE0 b .L31 @long jump
367 .LCB321:
419:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
368 .loc 1 419 0
369 00b6 9149 ldr r1, .L119
370 00b8 0A68 ldr r2, [r1]
371 00ba 0920 movs r0, #9
372 00bc 8243 bics r2, r0
373 00be 1343 orrs r3, r2
374 00c0 0B60 str r3, [r1]
422:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
ARM GAS /tmp/cchbc9tY.s page 34
375 .loc 1 422 0
376 00c2 FFF7FEFF bl HAL_GetTick
377 .LVL16:
378 00c6 0500 movs r5, r0
379 .LVL17:
380 .L32:
425:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
381 .loc 1 425 0
382 00c8 8C4B ldr r3, .L119
383 00ca 1B68 ldr r3, [r3]
384 00cc 5B07 lsls r3, r3, #29
385 00ce 00D5 bpl .LCB340
386 00d0 97E0 b .L109 @long jump
387 .LCB340:
427:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
388 .loc 1 427 0
389 00d2 FFF7FEFF bl HAL_GetTick
390 .LVL18:
391 00d6 401B subs r0, r0, r5
392 00d8 0228 cmp r0, #2
393 00da F5D9 bls .L32
429:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
394 .loc 1 429 0
395 00dc 0320 movs r0, #3
396 00de 35E2 b .L18
397 .LVL19:
398 .L105:
399 .LBB7:
356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
400 .loc 1 356 0 discriminator 1
401 00e0 864A ldr r2, .L119
402 00e2 1168 ldr r1, [r2]
403 00e4 8023 movs r3, #128
404 00e6 5B02 lsls r3, r3, #9
405 00e8 0B43 orrs r3, r1
406 00ea 1360 str r3, [r2]
407 00ec B2E7 b .L20
408 .L106:
356:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
409 .loc 1 356 0 is_stmt 0 discriminator 3
410 00ee 834B ldr r3, .L119
411 00f0 1968 ldr r1, [r3]
412 00f2 8022 movs r2, #128
413 00f4 D202 lsls r2, r2, #11
414 00f6 0A43 orrs r2, r1
415 00f8 1A60 str r2, [r3]
416 00fa 1968 ldr r1, [r3]
417 00fc 8022 movs r2, #128
418 00fe 5202 lsls r2, r2, #9
419 0100 0A43 orrs r2, r1
420 0102 1A60 str r2, [r3]
421 0104 A6E7 b .L20
422 .L22:
423 .LBE7:
377:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
424 .loc 1 377 0 is_stmt 1
425 0106 FFF7FEFF bl HAL_GetTick
ARM GAS /tmp/cchbc9tY.s page 35
426 .LVL20:
427 010a 0500 movs r5, r0
428 .LVL21:
429 .L25:
380:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
430 .loc 1 380 0
431 010c 7B4B ldr r3, .L119
432 010e 1B68 ldr r3, [r3]
433 0110 9B03 lsls r3, r3, #14
434 0112 BDD5 bpl .L15
382:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
435 .loc 1 382 0
436 0114 FFF7FEFF bl HAL_GetTick
437 .LVL22:
438 0118 401B subs r0, r0, r5
439 011a 7B4B ldr r3, .L119+12
440 011c 9842 cmp r0, r3
441 011e F5D9 bls .L25
384:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
442 .loc 1 384 0
443 0120 0320 movs r0, #3
444 0122 13E2 b .L18
445 .LVL23:
446 .L108:
399:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
447 .loc 1 399 0 discriminator 1
448 0124 754B ldr r3, .L119
449 0126 DB68 ldr r3, [r3, #12]
450 0128 DB03 lsls r3, r3, #15
451 012a C0D4 bmi .L29
452 .L28:
402:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
453 .loc 1 402 0
454 012c 734B ldr r3, .L119
455 012e 1B68 ldr r3, [r3]
456 0130 5B07 lsls r3, r3, #29
457 0132 04D5 bpl .L30
402:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
458 .loc 1 402 0 is_stmt 0 discriminator 1
459 0134 E368 ldr r3, [r4, #12]
460 0136 012B cmp r3, #1
461 0138 01D0 beq .L30
404:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
462 .loc 1 404 0 is_stmt 1
463 013a 0120 movs r0, #1
464 013c 06E2 b .L18
465 .L30:
410:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
466 .loc 1 410 0
467 013e 6F49 ldr r1, .L119
468 0140 4B68 ldr r3, [r1, #4]
469 0142 724A ldr r2, .L119+16
470 0144 1340 ands r3, r2
471 0146 2269 ldr r2, [r4, #16]
472 0148 1202 lsls r2, r2, #8
473 014a 1343 orrs r3, r2
474 014c 4B60 str r3, [r1, #4]
ARM GAS /tmp/cchbc9tY.s page 36
475 .L27:
456:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
476 .loc 1 456 0
477 014e 2368 ldr r3, [r4]
478 0150 DB06 lsls r3, r3, #27
479 0152 3BD5 bpl .L36
459:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
480 .loc 1 459 0
481 0154 694B ldr r3, .L119
482 0156 DB68 ldr r3, [r3, #12]
483 0158 0C22 movs r2, #12
484 015a 1A42 tst r2, r3
485 015c 00D0 beq .LCB454
486 015e 80E0 b .L37 @long jump
487 .LCB454:
461:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
488 .loc 1 461 0
489 0160 664B ldr r3, .L119
490 0162 1B68 ldr r3, [r3]
491 0164 9B05 lsls r3, r3, #22
492 0166 03D5 bpl .L38
461:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
493 .loc 1 461 0 is_stmt 0 discriminator 1
494 0168 E369 ldr r3, [r4, #28]
495 016a 002B cmp r3, #0
496 016c 00D1 bne .LCB464
497 016e E8E1 b .L86 @long jump
498 .LCB464:
499 .L38:
475:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
500 .loc 1 475 0 is_stmt 1
501 0170 606A ldr r0, [r4, #36]
502 0172 624B ldr r3, .L119
503 0174 5B68 ldr r3, [r3, #4]
504 0176 E022 movs r2, #224
505 0178 1202 lsls r2, r2, #8
506 017a 1340 ands r3, r2
507 017c 9842 cmp r0, r3
508 017e 5CD9 bls .L39
478:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
509 .loc 1 478 0
510 0180 FFF7FEFF bl RCC_SetFlashLatencyFromMSIRange
511 .LVL24:
512 0184 0028 cmp r0, #0
513 0186 00D0 beq .LCB477
514 0188 DDE1 b .L87 @long jump
515 .LCB477:
484:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Multiple Speed oscillator (MSI) calibration value.*/
516 .loc 1 484 0
517 018a 5C4A ldr r2, .L119
518 018c 5368 ldr r3, [r2, #4]
519 018e 6049 ldr r1, .L119+20
520 0190 0B40 ands r3, r1
521 0192 616A ldr r1, [r4, #36]
522 0194 0B43 orrs r3, r1
523 0196 5360 str r3, [r2, #4]
486:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
ARM GAS /tmp/cchbc9tY.s page 37
524 .loc 1 486 0
525 0198 5368 ldr r3, [r2, #4]
526 019a 1B02 lsls r3, r3, #8
527 019c 1B0A lsrs r3, r3, #8
528 019e 216A ldr r1, [r4, #32]
529 01a0 0906 lsls r1, r1, #24
530 01a2 0B43 orrs r3, r1
531 01a4 5360 str r3, [r2, #4]
532 .L40:
504:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** >> AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_BITNUMBER
533 .loc 1 504 0
534 01a6 636A ldr r3, [r4, #36]
535 01a8 5A0B lsrs r2, r3, #13
536 01aa 0132 adds r2, r2, #1
537 01ac 8023 movs r3, #128
538 01ae 1B02 lsls r3, r3, #8
539 01b0 9340 lsls r3, r3, r2
505:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
540 .loc 1 505 0
541 01b2 524A ldr r2, .L119
542 01b4 D168 ldr r1, [r2, #12]
543 01b6 0909 lsrs r1, r1, #4
544 01b8 0F22 movs r2, #15
545 01ba 0A40 ands r2, r1
546 01bc 5549 ldr r1, .L119+24
547 01be 8A5C ldrb r2, [r1, r2]
548 01c0 D340 lsrs r3, r3, r2
504:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** >> AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_BITNUMBER
549 .loc 1 504 0
550 01c2 554A ldr r2, .L119+28
551 01c4 1360 str r3, [r2]
508:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
552 .loc 1 508 0
553 01c6 0320 movs r0, #3
554 01c8 FFF7FEFF bl HAL_InitTick
555 .LVL25:
556 .L36:
563:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
557 .loc 1 563 0
558 01cc 2368 ldr r3, [r4]
559 01ce 1B07 lsls r3, r3, #28
560 01d0 00D4 bmi .LCB524
561 01d2 A5E0 b .L46 @long jump
562 .LCB524:
569:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
563 .loc 1 569 0
564 01d4 6369 ldr r3, [r4, #20]
565 01d6 002B cmp r3, #0
566 01d8 7CD0 beq .L47
572:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
567 .loc 1 572 0
568 01da 484A ldr r2, .L119
569 01dc 136D ldr r3, [r2, #80]
570 01de 0121 movs r1, #1
571 01e0 0B43 orrs r3, r1
572 01e2 1365 str r3, [r2, #80]
575:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
ARM GAS /tmp/cchbc9tY.s page 38
573 .loc 1 575 0
574 01e4 FFF7FEFF bl HAL_GetTick
575 .LVL26:
576 01e8 0500 movs r5, r0
577 .LVL27:
578 .L48:
578:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
579 .loc 1 578 0
580 01ea 444B ldr r3, .L119
581 01ec 1B6D ldr r3, [r3, #80]
582 01ee 9B07 lsls r3, r3, #30
583 01f0 00D5 bpl .LCB546
584 01f2 95E0 b .L46 @long jump
585 .LCB546:
580:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
586 .loc 1 580 0
587 01f4 FFF7FEFF bl HAL_GetTick
588 .LVL28:
589 01f8 401B subs r0, r0, r5
590 01fa 0228 cmp r0, #2
591 01fc F5D9 bls .L48
582:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
592 .loc 1 582 0
593 01fe 0320 movs r0, #3
594 0200 A4E1 b .L18
595 .L109:
434:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
596 .loc 1 434 0
597 0202 3E49 ldr r1, .L119
598 0204 4B68 ldr r3, [r1, #4]
599 0206 414A ldr r2, .L119+16
600 0208 1340 ands r3, r2
601 020a 2269 ldr r2, [r4, #16]
602 020c 1202 lsls r2, r2, #8
603 020e 1343 orrs r3, r2
604 0210 4B60 str r3, [r1, #4]
605 0212 9CE7 b .L27
606 .LVL29:
607 .L31:
439:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
608 .loc 1 439 0
609 0214 394A ldr r2, .L119
610 0216 1368 ldr r3, [r2]
611 0218 0121 movs r1, #1
612 021a 8B43 bics r3, r1
613 021c 1360 str r3, [r2]
442:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
614 .loc 1 442 0
615 021e FFF7FEFF bl HAL_GetTick
616 .LVL30:
617 0222 0500 movs r5, r0
618 .LVL31:
619 .L34:
445:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
620 .loc 1 445 0
621 0224 354B ldr r3, .L119
622 0226 1B68 ldr r3, [r3]
ARM GAS /tmp/cchbc9tY.s page 39
623 0228 5B07 lsls r3, r3, #29
624 022a 90D5 bpl .L27
447:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
625 .loc 1 447 0
626 022c FFF7FEFF bl HAL_GetTick
627 .LVL32:
628 0230 401B subs r0, r0, r5
629 0232 0228 cmp r0, #2
630 0234 F6D9 bls .L34
449:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
631 .loc 1 449 0
632 0236 0320 movs r0, #3
633 0238 88E1 b .L18
634 .LVL33:
635 .L39:
492:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Multiple Speed oscillator (MSI) calibration value.*/
636 .loc 1 492 0
637 023a 304A ldr r2, .L119
638 023c 5368 ldr r3, [r2, #4]
639 023e 3449 ldr r1, .L119+20
640 0240 0B40 ands r3, r1
641 0242 1843 orrs r0, r3
642 0244 5060 str r0, [r2, #4]
494:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
643 .loc 1 494 0
644 0246 5368 ldr r3, [r2, #4]
645 0248 1B02 lsls r3, r3, #8
646 024a 1B0A lsrs r3, r3, #8
647 024c 216A ldr r1, [r4, #32]
648 024e 0906 lsls r1, r1, #24
649 0250 0B43 orrs r3, r1
650 0252 5360 str r3, [r2, #4]
497:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
651 .loc 1 497 0
652 0254 606A ldr r0, [r4, #36]
653 0256 FFF7FEFF bl RCC_SetFlashLatencyFromMSIRange
654 .LVL34:
655 025a 0028 cmp r0, #0
656 025c A3D0 beq .L40
499:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
657 .loc 1 499 0
658 025e 0120 movs r0, #1
659 0260 74E1 b .L18
660 .L37:
517:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
661 .loc 1 517 0
662 0262 E369 ldr r3, [r4, #28]
663 0264 002B cmp r3, #0
664 0266 22D0 beq .L41
520:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
665 .loc 1 520 0
666 0268 244A ldr r2, .L119
667 026a 1168 ldr r1, [r2]
668 026c 8023 movs r3, #128
669 026e 5B00 lsls r3, r3, #1
670 0270 0B43 orrs r3, r1
671 0272 1360 str r3, [r2]
ARM GAS /tmp/cchbc9tY.s page 40
523:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
672 .loc 1 523 0
673 0274 FFF7FEFF bl HAL_GetTick
674 .LVL35:
675 0278 0500 movs r5, r0
676 .LVL36:
677 .L42:
526:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
678 .loc 1 526 0
679 027a 204B ldr r3, .L119
680 027c 1B68 ldr r3, [r3]
681 027e 9B05 lsls r3, r3, #22
682 0280 06D4 bmi .L110
528:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
683 .loc 1 528 0
684 0282 FFF7FEFF bl HAL_GetTick
685 .LVL37:
686 0286 401B subs r0, r0, r5
687 0288 0228 cmp r0, #2
688 028a F6D9 bls .L42
530:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
689 .loc 1 530 0
690 028c 0320 movs r0, #3
691 028e 5DE1 b .L18
692 .L110:
538:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Adjusts the Multiple Speed oscillator (MSI) calibration value.*/
693 .loc 1 538 0
694 0290 1A4A ldr r2, .L119
695 0292 5368 ldr r3, [r2, #4]
696 0294 1E49 ldr r1, .L119+20
697 0296 0B40 ands r3, r1
698 0298 616A ldr r1, [r4, #36]
699 029a 0B43 orrs r3, r1
700 029c 5360 str r3, [r2, #4]
540:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
701 .loc 1 540 0
702 029e 5368 ldr r3, [r2, #4]
703 02a0 1B02 lsls r3, r3, #8
704 02a2 1B0A lsrs r3, r3, #8
705 02a4 216A ldr r1, [r4, #32]
706 02a6 0906 lsls r1, r1, #24
707 02a8 0B43 orrs r3, r1
708 02aa 5360 str r3, [r2, #4]
709 02ac 8EE7 b .L36
710 .LVL38:
711 .L41:
546:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
712 .loc 1 546 0
713 02ae 134A ldr r2, .L119
714 02b0 1368 ldr r3, [r2]
715 02b2 1A49 ldr r1, .L119+32
716 02b4 0B40 ands r3, r1
717 02b6 1360 str r3, [r2]
549:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
718 .loc 1 549 0
719 02b8 FFF7FEFF bl HAL_GetTick
720 .LVL39:
ARM GAS /tmp/cchbc9tY.s page 41
721 02bc 0500 movs r5, r0
722 .LVL40:
723 .L44:
552:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
724 .loc 1 552 0
725 02be 0F4B ldr r3, .L119
726 02c0 1B68 ldr r3, [r3]
727 02c2 9B05 lsls r3, r3, #22
728 02c4 82D5 bpl .L36
554:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
729 .loc 1 554 0
730 02c6 FFF7FEFF bl HAL_GetTick
731 .LVL41:
732 02ca 401B subs r0, r0, r5
733 02cc 0228 cmp r0, #2
734 02ce F6D9 bls .L44
556:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
735 .loc 1 556 0
736 02d0 0320 movs r0, #3
737 02d2 3BE1 b .L18
738 .LVL42:
739 .L47:
589:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
740 .loc 1 589 0
741 02d4 094A ldr r2, .L119
742 02d6 136D ldr r3, [r2, #80]
743 02d8 0121 movs r1, #1
744 02da 8B43 bics r3, r1
745 02dc 1365 str r3, [r2, #80]
592:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
746 .loc 1 592 0
747 02de FFF7FEFF bl HAL_GetTick
748 .LVL43:
749 02e2 0500 movs r5, r0
750 .LVL44:
751 .L50:
595:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
752 .loc 1 595 0
753 02e4 054B ldr r3, .L119
754 02e6 1B6D ldr r3, [r3, #80]
755 02e8 9B07 lsls r3, r3, #30
756 02ea 19D5 bpl .L46
597:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
757 .loc 1 597 0
758 02ec FFF7FEFF bl HAL_GetTick
759 .LVL45:
760 02f0 401B subs r0, r0, r5
761 02f2 0228 cmp r0, #2
762 02f4 F6D9 bls .L50
599:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
763 .loc 1 599 0
764 02f6 0320 movs r0, #3
765 02f8 28E1 b .L18
766 .L120:
767 02fa C046 .align 2
768 .L119:
769 02fc 00100240 .word 1073876992
ARM GAS /tmp/cchbc9tY.s page 42
770 0300 FFFFFEFF .word -65537
771 0304 FFFFFBFF .word -262145
772 0308 88130000 .word 5000
773 030c FFE0FFFF .word -7937
774 0310 FF1FFFFF .word -57345
775 0314 00000000 .word AHBPrescTable
776 0318 00000000 .word SystemCoreClock
777 031c FFFEFFFF .word -257
778 .LVL46:
779 .L46:
605:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
780 .loc 1 605 0
781 0320 2368 ldr r3, [r4]
782 0322 5B07 lsls r3, r3, #29
783 0324 78D5 bpl .L52
784 .LVL47:
785 .LBB8:
614:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
786 .loc 1 614 0
787 0326 8B4B ldr r3, .L121
788 0328 9B6B ldr r3, [r3, #56]
789 032a DB00 lsls r3, r3, #3
790 032c 1BD4 bmi .L93
616:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** pwrclkchanged = SET;
791 .loc 1 616 0
792 032e 894A ldr r2, .L121
793 0330 916B ldr r1, [r2, #56]
794 0332 8023 movs r3, #128
795 0334 5B05 lsls r3, r3, #21
796 0336 0B43 orrs r3, r1
797 0338 9363 str r3, [r2, #56]
798 .LVL48:
617:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
799 .loc 1 617 0
800 033a 0125 movs r5, #1
801 .LVL49:
802 .L53:
620:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
803 .loc 1 620 0
804 033c 864B ldr r3, .L121+4
805 033e 1B68 ldr r3, [r3]
806 0340 DB05 lsls r3, r3, #23
807 0342 12D5 bpl .L111
808 .L54:
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
809 .loc 1 638 0
810 0344 A368 ldr r3, [r4, #8]
811 0346 8022 movs r2, #128
812 0348 5200 lsls r2, r2, #1
813 034a 9342 cmp r3, r2
814 034c 21D0 beq .L112
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
815 .loc 1 638 0 is_stmt 0 discriminator 2
816 034e 002B cmp r3, #0
817 0350 37D1 bne .L59
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
818 .loc 1 638 0 discriminator 3
ARM GAS /tmp/cchbc9tY.s page 43
819 0352 804B ldr r3, .L121
820 0354 1A6D ldr r2, [r3, #80]
821 0356 8149 ldr r1, .L121+8
822 0358 0A40 ands r2, r1
823 035a 1A65 str r2, [r3, #80]
824 035c 1A6D ldr r2, [r3, #80]
825 035e 8049 ldr r1, .L121+12
826 0360 0A40 ands r2, r1
827 0362 1A65 str r2, [r3, #80]
828 0364 1BE0 b .L58
829 .LVL50:
830 .L93:
607:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
831 .loc 1 607 0 is_stmt 1
832 0366 0025 movs r5, #0
833 0368 E8E7 b .L53
834 .LVL51:
835 .L111:
623:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
836 .loc 1 623 0
837 036a 7B4A ldr r2, .L121+4
838 036c 1168 ldr r1, [r2]
839 036e 8023 movs r3, #128
840 0370 5B00 lsls r3, r3, #1
841 0372 0B43 orrs r3, r1
842 0374 1360 str r3, [r2]
626:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
843 .loc 1 626 0
844 0376 FFF7FEFF bl HAL_GetTick
845 .LVL52:
846 037a 0600 movs r6, r0
847 .LVL53:
848 .L55:
628:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
849 .loc 1 628 0
850 037c 764B ldr r3, .L121+4
851 037e 1B68 ldr r3, [r3]
852 0380 DB05 lsls r3, r3, #23
853 0382 DFD4 bmi .L54
630:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
854 .loc 1 630 0
855 0384 FFF7FEFF bl HAL_GetTick
856 .LVL54:
857 0388 801B subs r0, r0, r6
858 038a 6428 cmp r0, #100
859 038c F6D9 bls .L55
632:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
860 .loc 1 632 0
861 038e 0320 movs r0, #3
862 0390 DCE0 b .L18
863 .LVL55:
864 .L112:
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
865 .loc 1 638 0 discriminator 1
866 0392 704A ldr r2, .L121
867 0394 116D ldr r1, [r2, #80]
868 0396 8023 movs r3, #128
ARM GAS /tmp/cchbc9tY.s page 44
869 0398 5B00 lsls r3, r3, #1
870 039a 0B43 orrs r3, r1
871 039c 1365 str r3, [r2, #80]
872 .L58:
640:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
873 .loc 1 640 0
874 039e A368 ldr r3, [r4, #8]
875 03a0 002B cmp r3, #0
876 03a2 28D0 beq .L61
643:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
877 .loc 1 643 0
878 03a4 FFF7FEFF bl HAL_GetTick
879 .LVL56:
880 03a8 0600 movs r6, r0
881 .LVL57:
882 .L62:
646:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
883 .loc 1 646 0
884 03aa 6A4B ldr r3, .L121
885 03ac 1B6D ldr r3, [r3, #80]
886 03ae 9B05 lsls r3, r3, #22
887 03b0 30D4 bmi .L64
648:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
888 .loc 1 648 0
889 03b2 FFF7FEFF bl HAL_GetTick
890 .LVL58:
891 03b6 801B subs r0, r0, r6
892 03b8 6A4B ldr r3, .L121+16
893 03ba 9842 cmp r0, r3
894 03bc F5D9 bls .L62
650:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
895 .loc 1 650 0
896 03be 0320 movs r0, #3
897 03c0 C4E0 b .L18
898 .LVL59:
899 .L59:
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
900 .loc 1 638 0 discriminator 4
901 03c2 A022 movs r2, #160
902 03c4 D200 lsls r2, r2, #3
903 03c6 9342 cmp r3, r2
904 03c8 09D0 beq .L113
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
905 .loc 1 638 0 is_stmt 0 discriminator 6
906 03ca 624B ldr r3, .L121
907 03cc 1A6D ldr r2, [r3, #80]
908 03ce 6349 ldr r1, .L121+8
909 03d0 0A40 ands r2, r1
910 03d2 1A65 str r2, [r3, #80]
911 03d4 1A6D ldr r2, [r3, #80]
912 03d6 6249 ldr r1, .L121+12
913 03d8 0A40 ands r2, r1
914 03da 1A65 str r2, [r3, #80]
915 03dc DFE7 b .L58
916 .L113:
638:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the LSE State */
917 .loc 1 638 0 discriminator 5
ARM GAS /tmp/cchbc9tY.s page 45
918 03de 5D4B ldr r3, .L121
919 03e0 196D ldr r1, [r3, #80]
920 03e2 013A subs r2, r2, #1
921 03e4 FF3A subs r2, r2, #255
922 03e6 0A43 orrs r2, r1
923 03e8 1A65 str r2, [r3, #80]
924 03ea 196D ldr r1, [r3, #80]
925 03ec 8022 movs r2, #128
926 03ee 5200 lsls r2, r2, #1
927 03f0 0A43 orrs r2, r1
928 03f2 1A65 str r2, [r3, #80]
929 03f4 D3E7 b .L58
930 .L61:
657:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
931 .loc 1 657 0 is_stmt 1
932 03f6 FFF7FEFF bl HAL_GetTick
933 .LVL60:
934 03fa 0600 movs r6, r0
935 .LVL61:
936 .L65:
660:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
937 .loc 1 660 0
938 03fc 554B ldr r3, .L121
939 03fe 1B6D ldr r3, [r3, #80]
940 0400 9B05 lsls r3, r3, #22
941 0402 07D5 bpl .L64
662:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
942 .loc 1 662 0
943 0404 FFF7FEFF bl HAL_GetTick
944 .LVL62:
945 0408 801B subs r0, r0, r6
946 040a 564B ldr r3, .L121+16
947 040c 9842 cmp r0, r3
948 040e F5D9 bls .L65
664:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
949 .loc 1 664 0
950 0410 0320 movs r0, #3
951 0412 9BE0 b .L18
952 .L64:
670:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
953 .loc 1 670 0
954 0414 012D cmp r5, #1
955 0416 21D0 beq .L114
956 .LVL63:
957 .L52:
958 .LBE8:
678:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
959 .loc 1 678 0
960 0418 2368 ldr r3, [r4]
961 041a 9B06 lsls r3, r3, #26
962 041c 3CD5 bpl .L67
684:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
963 .loc 1 684 0
964 041e A369 ldr r3, [r4, #24]
965 0420 002B cmp r3, #0
966 0422 21D0 beq .L68
687:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
ARM GAS /tmp/cchbc9tY.s page 46
967 .loc 1 687 0
968 0424 4B4B ldr r3, .L121
969 0426 9968 ldr r1, [r3, #8]
970 0428 0120 movs r0, #1
971 042a 0143 orrs r1, r0
972 042c 9960 str r1, [r3, #8]
973 042e 5A6B ldr r2, [r3, #52]
974 0430 0243 orrs r2, r0
975 0432 5A63 str r2, [r3, #52]
976 0434 4C4A ldr r2, .L121+20
977 0436 116A ldr r1, [r2, #32]
978 0438 8023 movs r3, #128
979 043a 9B01 lsls r3, r3, #6
980 043c 0B43 orrs r3, r1
981 043e 1362 str r3, [r2, #32]
690:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
982 .loc 1 690 0
983 0440 FFF7FEFF bl HAL_GetTick
984 .LVL64:
985 0444 0500 movs r5, r0
986 .LVL65:
987 .L69:
693:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
988 .loc 1 693 0
989 0446 434B ldr r3, .L121
990 0448 9B68 ldr r3, [r3, #8]
991 044a 9B07 lsls r3, r3, #30
992 044c 24D4 bmi .L67
695:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
993 .loc 1 695 0
994 044e FFF7FEFF bl HAL_GetTick
995 .LVL66:
996 0452 401B subs r0, r0, r5
997 0454 0228 cmp r0, #2
998 0456 F6D9 bls .L69
697:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
999 .loc 1 697 0
1000 0458 0320 movs r0, #3
1001 045a 77E0 b .L18
1002 .LVL67:
1003 .L114:
1004 .LBB9:
672:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1005 .loc 1 672 0
1006 045c 3D4A ldr r2, .L121
1007 045e 936B ldr r3, [r2, #56]
1008 0460 4249 ldr r1, .L121+24
1009 0462 0B40 ands r3, r1
1010 0464 9363 str r3, [r2, #56]
1011 0466 D7E7 b .L52
1012 .LVL68:
1013 .L68:
1014 .LBE9:
704:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1015 .loc 1 704 0
1016 0468 3A4A ldr r2, .L121
1017 046a 9368 ldr r3, [r2, #8]
ARM GAS /tmp/cchbc9tY.s page 47
1018 046c 0121 movs r1, #1
1019 046e 8B43 bics r3, r1
1020 0470 9360 str r3, [r2, #8]
1021 0472 3D4A ldr r2, .L121+20
1022 0474 136A ldr r3, [r2, #32]
1023 0476 3E49 ldr r1, .L121+28
1024 0478 0B40 ands r3, r1
1025 047a 1362 str r3, [r2, #32]
707:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1026 .loc 1 707 0
1027 047c FFF7FEFF bl HAL_GetTick
1028 .LVL69:
1029 0480 0500 movs r5, r0
1030 .LVL70:
1031 .L71:
710:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1032 .loc 1 710 0
1033 0482 344B ldr r3, .L121
1034 0484 9B68 ldr r3, [r3, #8]
1035 0486 9B07 lsls r3, r3, #30
1036 0488 06D5 bpl .L67
712:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1037 .loc 1 712 0
1038 048a FFF7FEFF bl HAL_GetTick
1039 .LVL71:
1040 048e 401B subs r0, r0, r5
1041 0490 0228 cmp r0, #2
1042 0492 F6D9 bls .L71
714:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1043 .loc 1 714 0
1044 0494 0320 movs r0, #3
1045 0496 59E0 b .L18
1046 .LVL72:
1047 .L67:
724:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1048 .loc 1 724 0
1049 0498 A36A ldr r3, [r4, #40]
1050 049a 002B cmp r3, #0
1051 049c 55D0 beq .L99
727:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1052 .loc 1 727 0
1053 049e 2D4A ldr r2, .L121
1054 04a0 D168 ldr r1, [r2, #12]
1055 04a2 0C22 movs r2, #12
1056 04a4 0A40 ands r2, r1
1057 04a6 0C2A cmp r2, #12
1058 04a8 52D0 beq .L100
729:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1059 .loc 1 729 0
1060 04aa 022B cmp r3, #2
1061 04ac 12D0 beq .L115
773:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1062 .loc 1 773 0
1063 04ae 294A ldr r2, .L121
1064 04b0 1368 ldr r3, [r2]
1065 04b2 3049 ldr r1, .L121+32
1066 04b4 0B40 ands r3, r1
ARM GAS /tmp/cchbc9tY.s page 48
1067 04b6 1360 str r3, [r2]
776:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1068 .loc 1 776 0
1069 04b8 FFF7FEFF bl HAL_GetTick
1070 .LVL73:
1071 04bc 0400 movs r4, r0
1072 .LVL74:
1073 .L78:
779:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1074 .loc 1 779 0
1075 04be 254B ldr r3, .L121
1076 04c0 1B68 ldr r3, [r3]
1077 04c2 9B01 lsls r3, r3, #6
1078 04c4 39D5 bpl .L116
781:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1079 .loc 1 781 0
1080 04c6 FFF7FEFF bl HAL_GetTick
1081 .LVL75:
1082 04ca 001B subs r0, r0, r4
1083 04cc 0228 cmp r0, #2
1084 04ce F6D9 bls .L78
783:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1085 .loc 1 783 0
1086 04d0 0320 movs r0, #3
1087 04d2 3BE0 b .L18
1088 .LVL76:
1089 .L115:
737:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1090 .loc 1 737 0
1091 04d4 1F4A ldr r2, .L121
1092 04d6 1368 ldr r3, [r2]
1093 04d8 2649 ldr r1, .L121+32
1094 04da 0B40 ands r3, r1
1095 04dc 1360 str r3, [r2]
740:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1096 .loc 1 740 0
1097 04de FFF7FEFF bl HAL_GetTick
1098 .LVL77:
1099 04e2 0500 movs r5, r0
1100 .LVL78:
1101 .L74:
743:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1102 .loc 1 743 0
1103 04e4 1B4B ldr r3, .L121
1104 04e6 1B68 ldr r3, [r3]
1105 04e8 9B01 lsls r3, r3, #6
1106 04ea 06D5 bpl .L117
745:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1107 .loc 1 745 0
1108 04ec FFF7FEFF bl HAL_GetTick
1109 .LVL79:
1110 04f0 401B subs r0, r0, r5
1111 04f2 0228 cmp r0, #2
1112 04f4 F6D9 bls .L74
747:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1113 .loc 1 747 0
1114 04f6 0320 movs r0, #3
ARM GAS /tmp/cchbc9tY.s page 49
1115 04f8 28E0 b .L18
1116 .L117:
752:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLMUL,
1117 .loc 1 752 0
1118 04fa 1649 ldr r1, .L121
1119 04fc CB68 ldr r3, [r1, #12]
1120 04fe 1E4A ldr r2, .L121+36
1121 0500 1340 ands r3, r2
1122 0502 E26A ldr r2, [r4, #44]
1123 0504 206B ldr r0, [r4, #48]
1124 0506 0243 orrs r2, r0
1125 0508 606B ldr r0, [r4, #52]
1126 050a 0243 orrs r2, r0
1127 050c 1343 orrs r3, r2
1128 050e CB60 str r3, [r1, #12]
756:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1129 .loc 1 756 0
1130 0510 0A68 ldr r2, [r1]
1131 0512 8023 movs r3, #128
1132 0514 5B04 lsls r3, r3, #17
1133 0516 1343 orrs r3, r2
1134 0518 0B60 str r3, [r1]
759:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1135 .loc 1 759 0
1136 051a FFF7FEFF bl HAL_GetTick
1137 .LVL80:
1138 051e 0400 movs r4, r0
1139 .LVL81:
1140 .L76:
762:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1141 .loc 1 762 0
1142 0520 0C4B ldr r3, .L121
1143 0522 1B68 ldr r3, [r3]
1144 0524 9B01 lsls r3, r3, #6
1145 0526 06D4 bmi .L118
764:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1146 .loc 1 764 0
1147 0528 FFF7FEFF bl HAL_GetTick
1148 .LVL82:
1149 052c 001B subs r0, r0, r4
1150 052e 0228 cmp r0, #2
1151 0530 F6D9 bls .L76
766:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1152 .loc 1 766 0
1153 0532 0320 movs r0, #3
1154 0534 0AE0 b .L18
1155 .L118:
794:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1156 .loc 1 794 0
1157 0536 0020 movs r0, #0
1158 0538 08E0 b .L18
1159 .L116:
1160 053a 0020 movs r0, #0
1161 053c 06E0 b .L18
1162 .LVL83:
1163 .L107:
350:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
ARM GAS /tmp/cchbc9tY.s page 50
1164 .loc 1 350 0
1165 053e 0120 movs r0, #1
1166 .LVL84:
1167 0540 04E0 b .L18
1168 .LVL85:
1169 .L86:
463:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1170 .loc 1 463 0
1171 0542 0120 movs r0, #1
1172 0544 02E0 b .L18
1173 .L87:
480:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1174 .loc 1 480 0
1175 0546 0120 movs r0, #1
1176 0548 00E0 b .L18
1177 .L99:
794:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1178 .loc 1 794 0
1179 054a 0020 movs r0, #0
1180 .LVL86:
1181 .L18:
795:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1182 .loc 1 795 0
1183 054c 02B0 add sp, sp, #8
1184 @ sp needed
1185 054e 70BD pop {r4, r5, r6, pc}
1186 .LVL87:
1187 .L100:
790:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1188 .loc 1 790 0
1189 0550 0120 movs r0, #1
1190 0552 FBE7 b .L18
1191 .L122:
1192 .align 2
1193 .L121:
1194 0554 00100240 .word 1073876992
1195 0558 00700040 .word 1073770496
1196 055c FFFEFFFF .word -257
1197 0560 FFFBFFFF .word -1025
1198 0564 88130000 .word 5000
1199 0568 00000140 .word 1073807360
1200 056c FFFFFFEF .word -268435457
1201 0570 FFDFFFFF .word -8193
1202 0574 FFFFFFFE .word -16777217
1203 0578 FFFF02FF .word -16580609
1204 .cfi_endproc
1205 .LFE40:
1207 .section .text.HAL_RCC_MCOConfig,"ax",%progbits
1208 .align 1
1209 .global HAL_RCC_MCOConfig
1210 .syntax unified
1211 .code 16
1212 .thumb_func
1213 .fpu softvfp
1215 HAL_RCC_MCOConfig:
1216 .LFB42:
1061:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** GPIO_InitTypeDef gpio = {0};
ARM GAS /tmp/cchbc9tY.s page 51
1217 .loc 1 1061 0
1218 .cfi_startproc
1219 @ args = 0, pretend = 0, frame = 32
1220 @ frame_needed = 0, uses_anonymous_args = 0
1221 .LVL88:
1222 0000 70B5 push {r4, r5, r6, lr}
1223 .LCFI4:
1224 .cfi_def_cfa_offset 16
1225 .cfi_offset 4, -16
1226 .cfi_offset 5, -12
1227 .cfi_offset 6, -8
1228 .cfi_offset 14, -4
1229 0002 88B0 sub sp, sp, #32
1230 .LCFI5:
1231 .cfi_def_cfa_offset 48
1232 0004 0500 movs r5, r0
1233 0006 0C00 movs r4, r1
1234 0008 1600 movs r6, r2
1062:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1235 .loc 1 1062 0
1236 000a 1422 movs r2, #20
1237 .LVL89:
1238 000c 0021 movs r1, #0
1239 .LVL90:
1240 000e 03A8 add r0, sp, #12
1241 .LVL91:
1242 0010 FFF7FEFF bl memset
1243 .LVL92:
1070:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Speed = GPIO_SPEED_FREQ_HIGH;
1244 .loc 1 1070 0
1245 0014 0223 movs r3, #2
1246 0016 0493 str r3, [sp, #16]
1071:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Pull = GPIO_NOPULL;
1247 .loc 1 1071 0
1248 0018 0693 str r3, [sp, #24]
1073:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1249 .loc 1 1073 0
1250 001a 002D cmp r5, #0
1251 001c 1BD0 beq .L127
1084:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1252 .loc 1 1084 0
1253 001e 022D cmp r5, #2
1254 0020 2AD0 beq .L128
1096:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Alternate = GPIO_AF0_MCO;
1255 .loc 1 1096 0
1256 0022 8023 movs r3, #128
1257 0024 9B00 lsls r3, r3, #2
1258 0026 0393 str r3, [sp, #12]
1259 .LBB10:
1100:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_GPIO_Init(MCO2_GPIO_PORT, &gpio);
1260 .loc 1 1100 0
1261 0028 1C4A ldr r2, .L129
1262 002a D16A ldr r1, [r2, #44]
1263 002c 0123 movs r3, #1
1264 002e 1943 orrs r1, r3
1265 0030 D162 str r1, [r2, #44]
1266 0032 D26A ldr r2, [r2, #44]
ARM GAS /tmp/cchbc9tY.s page 52
1267 0034 1340 ands r3, r2
1268 0036 0293 str r3, [sp, #8]
1269 0038 029B ldr r3, [sp, #8]
1270 .LBE10:
1101:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1271 .loc 1 1101 0
1272 003a A020 movs r0, #160
1273 003c 03A9 add r1, sp, #12
1274 003e C005 lsls r0, r0, #23
1275 0040 FFF7FEFF bl HAL_GPIO_Init
1276 .LVL93:
1277 .L125:
1105:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1278 .loc 1 1105 0
1279 0044 154B ldr r3, .L129
1280 0046 DA68 ldr r2, [r3, #12]
1281 0048 1549 ldr r1, .L129+4
1282 004a 0A40 ands r2, r1
1283 004c 3443 orrs r4, r6
1284 .LVL94:
1285 004e 2243 orrs r2, r4
1286 0050 DA60 str r2, [r3, #12]
1106:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1287 .loc 1 1106 0
1288 0052 08B0 add sp, sp, #32
1289 @ sp needed
1290 .LVL95:
1291 .LVL96:
1292 0054 70BD pop {r4, r5, r6, pc}
1293 .LVL97:
1294 .L127:
1075:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Alternate = GPIO_AF0_MCO;
1295 .loc 1 1075 0
1296 0056 FE33 adds r3, r3, #254
1297 0058 0393 str r3, [sp, #12]
1298 .LBB11:
1079:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_GPIO_Init(MCO1_GPIO_PORT, &gpio);
1299 .loc 1 1079 0
1300 005a 104A ldr r2, .L129
1301 005c D16A ldr r1, [r2, #44]
1302 005e FF3B subs r3, r3, #255
1303 0060 1943 orrs r1, r3
1304 0062 D162 str r1, [r2, #44]
1305 0064 D26A ldr r2, [r2, #44]
1306 0066 1340 ands r3, r2
1307 0068 0093 str r3, [sp]
1308 006a 009B ldr r3, [sp]
1309 .LBE11:
1080:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1310 .loc 1 1080 0
1311 006c A020 movs r0, #160
1312 006e 03A9 add r1, sp, #12
1313 0070 C005 lsls r0, r0, #23
1314 0072 FFF7FEFF bl HAL_GPIO_Init
1315 .LVL98:
1316 0076 E5E7 b .L125
1317 .L128:
ARM GAS /tmp/cchbc9tY.s page 53
1086:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** gpio.Alternate = GPIO_AF2_MCO;
1318 .loc 1 1086 0
1319 0078 8023 movs r3, #128
1320 007a 9B01 lsls r3, r3, #6
1321 007c 0393 str r3, [sp, #12]
1087:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1322 .loc 1 1087 0
1323 007e 0223 movs r3, #2
1324 0080 0793 str r3, [sp, #28]
1325 .LBB12:
1090:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** HAL_GPIO_Init(MCO3_GPIO_PORT, &gpio);
1326 .loc 1 1090 0
1327 0082 064A ldr r2, .L129
1328 0084 D16A ldr r1, [r2, #44]
1329 0086 1943 orrs r1, r3
1330 0088 D162 str r1, [r2, #44]
1331 008a D26A ldr r2, [r2, #44]
1332 008c 1340 ands r3, r2
1333 008e 0193 str r3, [sp, #4]
1334 0090 019B ldr r3, [sp, #4]
1335 .LBE12:
1091:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1336 .loc 1 1091 0
1337 0092 03A9 add r1, sp, #12
1338 0094 0348 ldr r0, .L129+8
1339 0096 FFF7FEFF bl HAL_GPIO_Init
1340 .LVL99:
1341 009a D3E7 b .L125
1342 .L130:
1343 .align 2
1344 .L129:
1345 009c 00100240 .word 1073876992
1346 00a0 FFFFFF80 .word -2130706433
1347 00a4 00040050 .word 1342178304
1348 .cfi_endproc
1349 .LFE42:
1351 .section .text.HAL_RCC_EnableCSS,"ax",%progbits
1352 .align 1
1353 .global HAL_RCC_EnableCSS
1354 .syntax unified
1355 .code 16
1356 .thumb_func
1357 .fpu softvfp
1359 HAL_RCC_EnableCSS:
1360 .LFB43:
1119:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** SET_BIT(RCC->CR, RCC_CR_CSSON) ;
1361 .loc 1 1119 0
1362 .cfi_startproc
1363 @ args = 0, pretend = 0, frame = 0
1364 @ frame_needed = 0, uses_anonymous_args = 0
1365 @ link register save eliminated.
1120:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1366 .loc 1 1120 0
1367 0000 034A ldr r2, .L132
1368 0002 1168 ldr r1, [r2]
1369 0004 8023 movs r3, #128
1370 0006 1B03 lsls r3, r3, #12
ARM GAS /tmp/cchbc9tY.s page 54
1371 0008 0B43 orrs r3, r1
1372 000a 1360 str r3, [r2]
1121:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1373 .loc 1 1121 0
1374 @ sp needed
1375 000c 7047 bx lr
1376 .L133:
1377 000e C046 .align 2
1378 .L132:
1379 0010 00100240 .word 1073876992
1380 .cfi_endproc
1381 .LFE43:
1383 .global __aeabi_uidiv
1384 .section .text.HAL_RCC_GetSysClockFreq,"ax",%progbits
1385 .align 1
1386 .global HAL_RCC_GetSysClockFreq
1387 .syntax unified
1388 .code 16
1389 .thumb_func
1390 .fpu softvfp
1392 HAL_RCC_GetSysClockFreq:
1393 .LFB44:
1155:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t tmpreg = 0, pllm = 0, plld = 0, pllvco = 0, msiclkrange = 0;
1394 .loc 1 1155 0
1395 .cfi_startproc
1396 @ args = 0, pretend = 0, frame = 0
1397 @ frame_needed = 0, uses_anonymous_args = 0
1398 0000 10B5 push {r4, lr}
1399 .LCFI6:
1400 .cfi_def_cfa_offset 8
1401 .cfi_offset 4, -8
1402 .cfi_offset 14, -4
1403 .LVL100:
1159:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1404 .loc 1 1159 0
1405 0002 264B ldr r3, .L146
1406 0004 D968 ldr r1, [r3, #12]
1407 .LVL101:
1162:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1408 .loc 1 1162 0
1409 0006 0C23 movs r3, #12
1410 0008 0B40 ands r3, r1
1411 000a 082B cmp r3, #8
1412 000c 42D0 beq .L141
1413 000e 0C2B cmp r3, #12
1414 0010 11D0 beq .L137
1415 0012 042B cmp r3, #4
1416 0014 09D0 beq .L144
1207:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** sysclockfreq = (32768 * (1 << (msiclkrange + 1)));
1417 .loc 1 1207 0
1418 0016 214B ldr r3, .L146
1419 0018 5A68 ldr r2, [r3, #4]
1420 001a 520B lsrs r2, r2, #13
1421 001c 0723 movs r3, #7
1422 001e 1340 ands r3, r2
1423 .LVL102:
1208:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** break;
ARM GAS /tmp/cchbc9tY.s page 55
1424 .loc 1 1208 0
1425 0020 0133 adds r3, r3, #1
1426 .LVL103:
1427 0022 8020 movs r0, #128
1428 0024 0002 lsls r0, r0, #8
1429 0026 9840 lsls r0, r0, r3
1430 .LVL104:
1431 .L134:
1213:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1432 .loc 1 1213 0
1433 @ sp needed
1434 0028 10BD pop {r4, pc}
1435 .LVL105:
1436 .L144:
1166:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1437 .loc 1 1166 0
1438 002a 1C4B ldr r3, .L146
1439 002c 1B68 ldr r3, [r3]
1440 002e DB06 lsls r3, r3, #27
1441 0030 32D5 bpl .L142
1168:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1442 .loc 1 1168 0
1443 0032 1B48 ldr r0, .L146+4
1444 0034 F8E7 b .L134
1445 .L137:
1183:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** plld = ((uint32_t)(tmpreg & RCC_CFGR_PLLDIV) >> RCC_CFGR_PLLDIV_BITNUMBER) + 1;
1446 .loc 1 1183 0
1447 0036 8A0C lsrs r2, r1, #18
1448 0038 0F23 movs r3, #15
1449 003a 1340 ands r3, r2
1450 003c 194A ldr r2, .L146+8
1451 003e D05C ldrb r0, [r2, r3]
1452 .LVL106:
1184:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** if (__HAL_RCC_GET_PLL_OSCSOURCE() != RCC_PLLSOURCE_HSI)
1453 .loc 1 1184 0
1454 0040 890D lsrs r1, r1, #22
1455 .LVL107:
1456 0042 0322 movs r2, #3
1457 0044 1140 ands r1, r2
1458 0046 0131 adds r1, r1, #1
1459 .LVL108:
1185:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1460 .loc 1 1185 0
1461 0048 144B ldr r3, .L146
1462 004a DB68 ldr r3, [r3, #12]
1463 004c DB03 lsls r3, r3, #15
1464 004e 0DD4 bmi .L145
1192:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1465 .loc 1 1192 0
1466 0050 124B ldr r3, .L146
1467 0052 1B68 ldr r3, [r3]
1468 0054 DB06 lsls r3, r3, #27
1469 0056 13D5 bpl .L140
1194:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1470 .loc 1 1194 0
1471 0058 4201 lsls r2, r0, #5
1472 005a 121A subs r2, r2, r0
ARM GAS /tmp/cchbc9tY.s page 56
1473 005c 9301 lsls r3, r2, #6
1474 005e 9B1A subs r3, r3, r2
1475 0060 DB00 lsls r3, r3, #3
1476 0062 1B18 adds r3, r3, r0
1477 0064 1802 lsls r0, r3, #8
1478 .LVL109:
1479 0066 FFF7FEFF bl __aeabi_uidiv
1480 .LVL110:
1481 006a DDE7 b .L134
1482 .LVL111:
1483 .L145:
1188:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1484 .loc 1 1188 0
1485 006c 4201 lsls r2, r0, #5
1486 006e 121A subs r2, r2, r0
1487 0070 9301 lsls r3, r2, #6
1488 0072 9B1A subs r3, r3, r2
1489 0074 DB00 lsls r3, r3, #3
1490 0076 1B18 adds r3, r3, r0
1491 0078 5802 lsls r0, r3, #9
1492 .LVL112:
1493 007a FFF7FEFF bl __aeabi_uidiv
1494 .LVL113:
1495 007e D3E7 b .L134
1496 .LVL114:
1497 .L140:
1198:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1498 .loc 1 1198 0
1499 0080 4201 lsls r2, r0, #5
1500 0082 121A subs r2, r2, r0
1501 0084 9301 lsls r3, r2, #6
1502 0086 9B1A subs r3, r3, r2
1503 0088 DB00 lsls r3, r3, #3
1504 008a 1B18 adds r3, r3, r0
1505 008c 9802 lsls r0, r3, #10
1506 .LVL115:
1507 008e FFF7FEFF bl __aeabi_uidiv
1508 .LVL116:
1509 0092 C9E7 b .L134
1510 .LVL117:
1511 .L141:
1178:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** break;
1512 .loc 1 1178 0
1513 0094 0448 ldr r0, .L146+12
1514 0096 C7E7 b .L134
1515 .L142:
1172:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1516 .loc 1 1172 0
1517 0098 0448 ldr r0, .L146+16
1518 .LVL118:
1212:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1519 .loc 1 1212 0
1520 009a C5E7 b .L134
1521 .L147:
1522 .align 2
1523 .L146:
1524 009c 00100240 .word 1073876992
ARM GAS /tmp/cchbc9tY.s page 57
1525 00a0 00093D00 .word 4000000
1526 00a4 00000000 .word PLLMulTable
1527 00a8 00127A00 .word 8000000
1528 00ac 0024F400 .word 16000000
1529 .cfi_endproc
1530 .LFE44:
1532 .section .text.HAL_RCC_ClockConfig,"ax",%progbits
1533 .align 1
1534 .global HAL_RCC_ClockConfig
1535 .syntax unified
1536 .code 16
1537 .thumb_func
1538 .fpu softvfp
1540 HAL_RCC_ClockConfig:
1541 .LFB41:
824:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** uint32_t tickstart = 0U;
1542 .loc 1 824 0
1543 .cfi_startproc
1544 @ args = 0, pretend = 0, frame = 0
1545 @ frame_needed = 0, uses_anonymous_args = 0
1546 .LVL119:
1547 0000 70B5 push {r4, r5, r6, lr}
1548 .LCFI7:
1549 .cfi_def_cfa_offset 16
1550 .cfi_offset 4, -16
1551 .cfi_offset 5, -12
1552 .cfi_offset 6, -8
1553 .cfi_offset 14, -4
1554 0002 0400 movs r4, r0
1555 0004 0D00 movs r5, r1
1556 .LVL120:
837:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1557 .loc 1 837 0
1558 0006 5F4B ldr r3, .L186
1559 0008 1A68 ldr r2, [r3]
1560 000a 0123 movs r3, #1
1561 000c 1340 ands r3, r2
1562 000e 8B42 cmp r3, r1
1563 0010 0BD2 bcs .L149
840:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1564 .loc 1 840 0
1565 0012 5C49 ldr r1, .L186
1566 .LVL121:
1567 0014 0B68 ldr r3, [r1]
1568 0016 0122 movs r2, #1
1569 0018 9343 bics r3, r2
1570 001a 2B43 orrs r3, r5
1571 001c 0B60 str r3, [r1]
844:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1572 .loc 1 844 0
1573 001e 0B68 ldr r3, [r1]
1574 0020 1A40 ands r2, r3
1575 0022 AA42 cmp r2, r5
1576 0024 01D0 beq .L149
846:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1577 .loc 1 846 0
1578 0026 0120 movs r0, #1
ARM GAS /tmp/cchbc9tY.s page 58
1579 .LVL122:
1580 .L150:
979:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1581 .loc 1 979 0
1582 @ sp needed
1583 .LVL123:
1584 .LVL124:
1585 0028 70BD pop {r4, r5, r6, pc}
1586 .LVL125:
1587 .L149:
851:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1588 .loc 1 851 0
1589 002a 2368 ldr r3, [r4]
1590 002c 9B07 lsls r3, r3, #30
1591 002e 06D5 bpl .L151
854:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1592 .loc 1 854 0
1593 0030 554A ldr r2, .L186+4
1594 0032 D368 ldr r3, [r2, #12]
1595 0034 F021 movs r1, #240
1596 0036 8B43 bics r3, r1
1597 0038 A168 ldr r1, [r4, #8]
1598 003a 0B43 orrs r3, r1
1599 003c D360 str r3, [r2, #12]
1600 .L151:
858:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1601 .loc 1 858 0
1602 003e 2368 ldr r3, [r4]
1603 0040 DB07 lsls r3, r3, #31
1604 0042 64D5 bpl .L152
863:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1605 .loc 1 863 0
1606 0044 6368 ldr r3, [r4, #4]
1607 0046 022B cmp r3, #2
1608 0048 09D0 beq .L182
872:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1609 .loc 1 872 0
1610 004a 032B cmp r3, #3
1611 004c 29D0 beq .L183
881:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1612 .loc 1 881 0
1613 004e 012B cmp r3, #1
1614 0050 2DD0 beq .L184
893:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1615 .loc 1 893 0
1616 0052 4D4A ldr r2, .L186+4
1617 0054 1268 ldr r2, [r2]
1618 0056 9205 lsls r2, r2, #22
1619 0058 06D4 bmi .L154
895:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1620 .loc 1 895 0
1621 005a 0120 movs r0, #1
1622 .LVL126:
1623 005c E4E7 b .L150
1624 .LVL127:
1625 .L182:
866:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
ARM GAS /tmp/cchbc9tY.s page 59
1626 .loc 1 866 0
1627 005e 4A4A ldr r2, .L186+4
1628 0060 1268 ldr r2, [r2]
1629 0062 9203 lsls r2, r2, #14
1630 0064 00D4 bmi .LCB1665
1631 0066 8AE0 b .L185 @long jump
1632 .LCB1665:
1633 .L154:
898:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1634 .loc 1 898 0
1635 0068 4749 ldr r1, .L186+4
1636 006a CA68 ldr r2, [r1, #12]
1637 006c 0320 movs r0, #3
1638 .LVL128:
1639 006e 8243 bics r2, r0
1640 0070 1343 orrs r3, r2
1641 0072 CB60 str r3, [r1, #12]
901:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1642 .loc 1 901 0
1643 0074 FFF7FEFF bl HAL_GetTick
1644 .LVL129:
1645 0078 0600 movs r6, r0
1646 .LVL130:
903:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1647 .loc 1 903 0
1648 007a 6368 ldr r3, [r4, #4]
1649 007c 022B cmp r3, #2
1650 007e 1CD0 beq .L157
913:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1651 .loc 1 913 0
1652 0080 032B cmp r3, #3
1653 0082 28D0 beq .L160
923:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1654 .loc 1 923 0
1655 0084 012B cmp r3, #1
1656 0086 34D0 beq .L163
1657 .LVL131:
1658 .L164:
935:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1659 .loc 1 935 0
1660 0088 3F4B ldr r3, .L186+4
1661 008a DB68 ldr r3, [r3, #12]
1662 008c 0C22 movs r2, #12
1663 008e 1A42 tst r2, r3
1664 0090 3DD0 beq .L152
937:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1665 .loc 1 937 0
1666 0092 FFF7FEFF bl HAL_GetTick
1667 .LVL132:
1668 0096 801B subs r0, r0, r6
1669 0098 3C4B ldr r3, .L186+8
1670 009a 9842 cmp r0, r3
1671 009c F4D9 bls .L164
939:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1672 .loc 1 939 0
1673 009e 0320 movs r0, #3
1674 00a0 C2E7 b .L150
ARM GAS /tmp/cchbc9tY.s page 60
1675 .LVL133:
1676 .L183:
875:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1677 .loc 1 875 0
1678 00a2 394A ldr r2, .L186+4
1679 00a4 1268 ldr r2, [r2]
1680 00a6 9201 lsls r2, r2, #6
1681 00a8 DED4 bmi .L154
877:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1682 .loc 1 877 0
1683 00aa 0120 movs r0, #1
1684 .LVL134:
1685 00ac BCE7 b .L150
1686 .LVL135:
1687 .L184:
884:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1688 .loc 1 884 0
1689 00ae 364A ldr r2, .L186+4
1690 00b0 1268 ldr r2, [r2]
1691 00b2 5207 lsls r2, r2, #29
1692 00b4 D8D4 bmi .L154
886:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1693 .loc 1 886 0
1694 00b6 0120 movs r0, #1
1695 .LVL136:
1696 00b8 B6E7 b .L150
1697 .LVL137:
1698 .L157:
905:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1699 .loc 1 905 0
1700 00ba 334B ldr r3, .L186+4
1701 00bc DA68 ldr r2, [r3, #12]
1702 00be 0C23 movs r3, #12
1703 00c0 1340 ands r3, r2
1704 00c2 082B cmp r3, #8
1705 00c4 23D0 beq .L152
907:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1706 .loc 1 907 0
1707 00c6 FFF7FEFF bl HAL_GetTick
1708 .LVL138:
1709 00ca 801B subs r0, r0, r6
1710 00cc 2F4B ldr r3, .L186+8
1711 00ce 9842 cmp r0, r3
1712 00d0 F3D9 bls .L157
909:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1713 .loc 1 909 0
1714 00d2 0320 movs r0, #3
1715 00d4 A8E7 b .L150
1716 .L160:
915:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1717 .loc 1 915 0
1718 00d6 2C4B ldr r3, .L186+4
1719 00d8 DA68 ldr r2, [r3, #12]
1720 00da 0C23 movs r3, #12
1721 00dc 1340 ands r3, r2
1722 00de 0C2B cmp r3, #12
1723 00e0 15D0 beq .L152
ARM GAS /tmp/cchbc9tY.s page 61
917:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1724 .loc 1 917 0
1725 00e2 FFF7FEFF bl HAL_GetTick
1726 .LVL139:
1727 00e6 801B subs r0, r0, r6
1728 00e8 284B ldr r3, .L186+8
1729 00ea 9842 cmp r0, r3
1730 00ec F3D9 bls .L160
919:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1731 .loc 1 919 0
1732 00ee 0320 movs r0, #3
1733 00f0 9AE7 b .L150
1734 .L163:
925:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1735 .loc 1 925 0
1736 00f2 254B ldr r3, .L186+4
1737 00f4 DA68 ldr r2, [r3, #12]
1738 00f6 0C23 movs r3, #12
1739 00f8 1340 ands r3, r2
1740 00fa 042B cmp r3, #4
1741 00fc 07D0 beq .L152
927:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1742 .loc 1 927 0
1743 00fe FFF7FEFF bl HAL_GetTick
1744 .LVL140:
1745 0102 801B subs r0, r0, r6
1746 0104 214B ldr r3, .L186+8
1747 0106 9842 cmp r0, r3
1748 0108 F3D9 bls .L163
929:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1749 .loc 1 929 0
1750 010a 0320 movs r0, #3
1751 010c 8CE7 b .L150
1752 .LVL141:
1753 .L152:
945:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1754 .loc 1 945 0
1755 010e 1D4B ldr r3, .L186
1756 0110 1A68 ldr r2, [r3]
1757 0112 0123 movs r3, #1
1758 0114 1340 ands r3, r2
1759 0116 AB42 cmp r3, r5
1760 0118 0BD9 bls .L167
948:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1761 .loc 1 948 0
1762 011a 1A49 ldr r1, .L186
1763 011c 0B68 ldr r3, [r1]
1764 011e 0122 movs r2, #1
1765 0120 9343 bics r3, r2
1766 0122 2B43 orrs r3, r5
1767 0124 0B60 str r3, [r1]
952:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1768 .loc 1 952 0
1769 0126 0B68 ldr r3, [r1]
1770 0128 1A40 ands r2, r3
1771 012a AA42 cmp r2, r5
1772 012c 01D0 beq .L167
ARM GAS /tmp/cchbc9tY.s page 62
954:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1773 .loc 1 954 0
1774 012e 0120 movs r0, #1
1775 0130 7AE7 b .L150
1776 .L167:
959:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1777 .loc 1 959 0
1778 0132 2368 ldr r3, [r4]
1779 0134 5B07 lsls r3, r3, #29
1780 0136 06D5 bpl .L168
962:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1781 .loc 1 962 0
1782 0138 134A ldr r2, .L186+4
1783 013a D368 ldr r3, [r2, #12]
1784 013c 1449 ldr r1, .L186+12
1785 013e 0B40 ands r3, r1
1786 0140 E168 ldr r1, [r4, #12]
1787 0142 0B43 orrs r3, r1
1788 0144 D360 str r3, [r2, #12]
1789 .L168:
966:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1790 .loc 1 966 0
1791 0146 2368 ldr r3, [r4]
1792 0148 1B07 lsls r3, r3, #28
1793 014a 07D5 bpl .L169
969:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1794 .loc 1 969 0
1795 014c 0E49 ldr r1, .L186+4
1796 014e CB68 ldr r3, [r1, #12]
1797 0150 104A ldr r2, .L186+16
1798 0152 1340 ands r3, r2
1799 0154 2269 ldr r2, [r4, #16]
1800 0156 D200 lsls r2, r2, #3
1801 0158 1343 orrs r3, r2
1802 015a CB60 str r3, [r1, #12]
1803 .L169:
973:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1804 .loc 1 973 0
1805 015c FFF7FEFF bl HAL_RCC_GetSysClockFreq
1806 .LVL142:
1807 0160 094B ldr r3, .L186+4
1808 0162 DA68 ldr r2, [r3, #12]
1809 0164 1209 lsrs r2, r2, #4
1810 0166 0F23 movs r3, #15
1811 0168 1340 ands r3, r2
1812 016a 0B4A ldr r2, .L186+20
1813 016c D35C ldrb r3, [r2, r3]
1814 016e D840 lsrs r0, r0, r3
1815 0170 0A4B ldr r3, .L186+24
1816 0172 1860 str r0, [r3]
976:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1817 .loc 1 976 0
1818 0174 0320 movs r0, #3
1819 0176 FFF7FEFF bl HAL_InitTick
1820 .LVL143:
978:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1821 .loc 1 978 0
ARM GAS /tmp/cchbc9tY.s page 63
1822 017a 0020 movs r0, #0
1823 017c 54E7 b .L150
1824 .LVL144:
1825 .L185:
868:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1826 .loc 1 868 0
1827 017e 0120 movs r0, #1
1828 .LVL145:
1829 0180 52E7 b .L150
1830 .L187:
1831 0182 C046 .align 2
1832 .L186:
1833 0184 00200240 .word 1073881088
1834 0188 00100240 .word 1073876992
1835 018c 88130000 .word 5000
1836 0190 FFF8FFFF .word -1793
1837 0194 FFC7FFFF .word -14337
1838 0198 00000000 .word AHBPrescTable
1839 019c 00000000 .word SystemCoreClock
1840 .cfi_endproc
1841 .LFE41:
1843 .section .text.HAL_RCC_GetHCLKFreq,"ax",%progbits
1844 .align 1
1845 .global HAL_RCC_GetHCLKFreq
1846 .syntax unified
1847 .code 16
1848 .thumb_func
1849 .fpu softvfp
1851 HAL_RCC_GetHCLKFreq:
1852 .LFB45:
1225:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** return SystemCoreClock;
1853 .loc 1 1225 0
1854 .cfi_startproc
1855 @ args = 0, pretend = 0, frame = 0
1856 @ frame_needed = 0, uses_anonymous_args = 0
1857 @ link register save eliminated.
1226:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1858 .loc 1 1226 0
1859 0000 014B ldr r3, .L189
1860 0002 1868 ldr r0, [r3]
1227:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1861 .loc 1 1227 0
1862 @ sp needed
1863 0004 7047 bx lr
1864 .L190:
1865 0006 C046 .align 2
1866 .L189:
1867 0008 00000000 .word SystemCoreClock
1868 .cfi_endproc
1869 .LFE45:
1871 .section .text.HAL_RCC_GetPCLK1Freq,"ax",%progbits
1872 .align 1
1873 .global HAL_RCC_GetPCLK1Freq
1874 .syntax unified
1875 .code 16
1876 .thumb_func
1877 .fpu softvfp
ARM GAS /tmp/cchbc9tY.s page 64
1879 HAL_RCC_GetPCLK1Freq:
1880 .LFB46:
1236:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/
1881 .loc 1 1236 0
1882 .cfi_startproc
1883 @ args = 0, pretend = 0, frame = 0
1884 @ frame_needed = 0, uses_anonymous_args = 0
1885 @ link register save eliminated.
1886 .LBB13:
1887 .LBB14:
1226:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1888 .loc 1 1226 0
1889 0000 054B ldr r3, .L192
1890 0002 1868 ldr r0, [r3]
1891 .LBE14:
1892 .LBE13:
1238:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1893 .loc 1 1238 0
1894 0004 054B ldr r3, .L192+4
1895 0006 DA68 ldr r2, [r3, #12]
1896 0008 120A lsrs r2, r2, #8
1897 000a 0723 movs r3, #7
1898 000c 1340 ands r3, r2
1899 000e 044A ldr r2, .L192+8
1900 0010 D35C ldrb r3, [r2, r3]
1901 0012 D840 lsrs r0, r0, r3
1239:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1902 .loc 1 1239 0
1903 @ sp needed
1904 0014 7047 bx lr
1905 .L193:
1906 0016 C046 .align 2
1907 .L192:
1908 0018 00000000 .word SystemCoreClock
1909 001c 00100240 .word 1073876992
1910 0020 00000000 .word APBPrescTable
1911 .cfi_endproc
1912 .LFE46:
1914 .section .text.HAL_RCC_GetPCLK2Freq,"ax",%progbits
1915 .align 1
1916 .global HAL_RCC_GetPCLK2Freq
1917 .syntax unified
1918 .code 16
1919 .thumb_func
1920 .fpu softvfp
1922 HAL_RCC_GetPCLK2Freq:
1923 .LFB47:
1248:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Get HCLK source and Compute PCLK2 frequency ---------------------------*/
1924 .loc 1 1248 0
1925 .cfi_startproc
1926 @ args = 0, pretend = 0, frame = 0
1927 @ frame_needed = 0, uses_anonymous_args = 0
1928 @ link register save eliminated.
1929 .LBB15:
1930 .LBB16:
1226:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1931 .loc 1 1226 0
ARM GAS /tmp/cchbc9tY.s page 65
1932 0000 054B ldr r3, .L195
1933 0002 1868 ldr r0, [r3]
1934 .LBE16:
1935 .LBE15:
1250:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1936 .loc 1 1250 0
1937 0004 054B ldr r3, .L195+4
1938 0006 DA68 ldr r2, [r3, #12]
1939 0008 D20A lsrs r2, r2, #11
1940 000a 0723 movs r3, #7
1941 000c 1340 ands r3, r2
1942 000e 044A ldr r2, .L195+8
1943 0010 D35C ldrb r3, [r2, r3]
1944 0012 D840 lsrs r0, r0, r3
1251:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1945 .loc 1 1251 0
1946 @ sp needed
1947 0014 7047 bx lr
1948 .L196:
1949 0016 C046 .align 2
1950 .L195:
1951 0018 00000000 .word SystemCoreClock
1952 001c 00100240 .word 1073876992
1953 0020 00000000 .word APBPrescTable
1954 .cfi_endproc
1955 .LFE47:
1957 .section .text.HAL_RCC_GetOscConfig,"ax",%progbits
1958 .align 1
1959 .global HAL_RCC_GetOscConfig
1960 .syntax unified
1961 .code 16
1962 .thumb_func
1963 .fpu softvfp
1965 HAL_RCC_GetOscConfig:
1966 .LFB48:
1261:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
1967 .loc 1 1261 0
1968 .cfi_startproc
1969 @ args = 0, pretend = 0, frame = 0
1970 @ frame_needed = 0, uses_anonymous_args = 0
1971 @ link register save eliminated.
1972 .LVL146:
1269:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSI48_SUPPORT */
1973 .loc 1 1269 0
1974 0000 3F23 movs r3, #63
1975 0002 0360 str r3, [r0]
1274:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1976 .loc 1 1274 0
1977 0004 344B ldr r3, .L213
1978 0006 1B68 ldr r3, [r3]
1979 0008 5B03 lsls r3, r3, #13
1980 000a 43D5 bpl .L198
1276:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1981 .loc 1 1276 0
1982 000c A023 movs r3, #160
1983 000e DB02 lsls r3, r3, #11
1984 0010 4360 str r3, [r0, #4]
ARM GAS /tmp/cchbc9tY.s page 66
1985 .L199:
1288:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
1986 .loc 1 1288 0
1987 0012 314B ldr r3, .L213
1988 0014 1B68 ldr r3, [r3]
1989 0016 DB07 lsls r3, r3, #31
1990 0018 47D5 bpl .L201
1290:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
1991 .loc 1 1290 0
1992 001a 0123 movs r3, #1
1993 001c C360 str r3, [r0, #12]
1994 .L202:
1297:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
1995 .loc 1 1297 0
1996 001e 2E49 ldr r1, .L213
1997 0020 4A68 ldr r2, [r1, #4]
1998 0022 120A lsrs r2, r2, #8
1999 0024 1F23 movs r3, #31
2000 0026 1340 ands r3, r2
2001 0028 0361 str r3, [r0, #16]
1300:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2002 .loc 1 1300 0
2003 002a 0B68 ldr r3, [r1]
2004 002c DB05 lsls r3, r3, #23
2005 002e 3FD5 bpl .L203
1302:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2006 .loc 1 1302 0
2007 0030 0123 movs r3, #1
2008 0032 C361 str r3, [r0, #28]
2009 .L204:
1309:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->MSIClockRange = (uint32_t)((RCC->ICSCR & RCC_ICSCR_MSIRANGE));
2010 .loc 1 1309 0
2011 0034 284B ldr r3, .L213
2012 0036 5A68 ldr r2, [r3, #4]
2013 0038 120E lsrs r2, r2, #24
2014 003a 0262 str r2, [r0, #32]
1310:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2015 .loc 1 1310 0
2016 003c 5A68 ldr r2, [r3, #4]
2017 003e E021 movs r1, #224
2018 0040 0902 lsls r1, r1, #8
2019 0042 0A40 ands r2, r1
2020 0044 4262 str r2, [r0, #36]
1313:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2021 .loc 1 1313 0
2022 0046 1B6D ldr r3, [r3, #80]
2023 0048 5B05 lsls r3, r3, #21
2024 004a 34D5 bpl .L205
1315:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2025 .loc 1 1315 0
2026 004c A023 movs r3, #160
2027 004e DB00 lsls r3, r3, #3
2028 0050 8360 str r3, [r0, #8]
2029 .L206:
1327:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2030 .loc 1 1327 0
2031 0052 214B ldr r3, .L213
ARM GAS /tmp/cchbc9tY.s page 67
2032 0054 1B6D ldr r3, [r3, #80]
2033 0056 DB07 lsls r3, r3, #31
2034 0058 38D5 bpl .L208
1329:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2035 .loc 1 1329 0
2036 005a 0123 movs r3, #1
2037 005c 4361 str r3, [r0, #20]
2038 .L209:
1338:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** #endif /* RCC_HSI48_SUPPORT */
2039 .loc 1 1338 0
2040 005e 1E4A ldr r2, .L213
2041 0060 9168 ldr r1, [r2, #8]
2042 0062 0123 movs r3, #1
2043 0064 0B40 ands r3, r1
2044 0066 8361 str r3, [r0, #24]
1342:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2045 .loc 1 1342 0
2046 0068 1368 ldr r3, [r2]
2047 006a DB01 lsls r3, r3, #7
2048 006c 31D4 bmi .L212
1348:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2049 .loc 1 1348 0
2050 006e 0123 movs r3, #1
2051 0070 8362 str r3, [r0, #40]
2052 .L211:
1350:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLMUL = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLMUL);
2053 .loc 1 1350 0
2054 0072 194B ldr r3, .L213
2055 0074 DA68 ldr r2, [r3, #12]
2056 0076 8021 movs r1, #128
2057 0078 4902 lsls r1, r1, #9
2058 007a 0A40 ands r2, r1
2059 007c C262 str r2, [r0, #44]
1351:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** RCC_OscInitStruct->PLL.PLLDIV = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLDIV);
2060 .loc 1 1351 0
2061 007e DA68 ldr r2, [r3, #12]
2062 0080 F021 movs r1, #240
2063 0082 8903 lsls r1, r1, #14
2064 0084 0A40 ands r2, r1
2065 0086 0263 str r2, [r0, #48]
1352:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2066 .loc 1 1352 0
2067 0088 DB68 ldr r3, [r3, #12]
2068 008a C022 movs r2, #192
2069 008c 1204 lsls r2, r2, #16
2070 008e 1340 ands r3, r2
2071 0090 4363 str r3, [r0, #52]
1353:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2072 .loc 1 1353 0
2073 @ sp needed
2074 0092 7047 bx lr
2075 .L198:
1278:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2076 .loc 1 1278 0
2077 0094 104B ldr r3, .L213
2078 0096 1B68 ldr r3, [r3]
2079 0098 DB03 lsls r3, r3, #15
ARM GAS /tmp/cchbc9tY.s page 68
2080 009a 03D5 bpl .L200
1280:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2081 .loc 1 1280 0
2082 009c 8023 movs r3, #128
2083 009e 5B02 lsls r3, r3, #9
2084 00a0 4360 str r3, [r0, #4]
2085 00a2 B6E7 b .L199
2086 .L200:
1284:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2087 .loc 1 1284 0
2088 00a4 0023 movs r3, #0
2089 00a6 4360 str r3, [r0, #4]
2090 00a8 B3E7 b .L199
2091 .L201:
1294:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2092 .loc 1 1294 0
2093 00aa 0023 movs r3, #0
2094 00ac C360 str r3, [r0, #12]
2095 00ae B6E7 b .L202
2096 .L203:
1306:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2097 .loc 1 1306 0
2098 00b0 0023 movs r3, #0
2099 00b2 C361 str r3, [r0, #28]
2100 00b4 BEE7 b .L204
2101 .L205:
1317:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2102 .loc 1 1317 0
2103 00b6 084B ldr r3, .L213
2104 00b8 1B6D ldr r3, [r3, #80]
2105 00ba DB05 lsls r3, r3, #23
2106 00bc 03D5 bpl .L207
1319:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2107 .loc 1 1319 0
2108 00be 8023 movs r3, #128
2109 00c0 5B00 lsls r3, r3, #1
2110 00c2 8360 str r3, [r0, #8]
2111 00c4 C5E7 b .L206
2112 .L207:
1323:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2113 .loc 1 1323 0
2114 00c6 0023 movs r3, #0
2115 00c8 8360 str r3, [r0, #8]
2116 00ca C2E7 b .L206
2117 .L208:
1333:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2118 .loc 1 1333 0
2119 00cc 0023 movs r3, #0
2120 00ce 4361 str r3, [r0, #20]
2121 00d0 C5E7 b .L209
2122 .L212:
1344:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2123 .loc 1 1344 0
2124 00d2 0223 movs r3, #2
2125 00d4 8362 str r3, [r0, #40]
2126 00d6 CCE7 b .L211
2127 .L214:
ARM GAS /tmp/cchbc9tY.s page 69
2128 .align 2
2129 .L213:
2130 00d8 00100240 .word 1073876992
2131 .cfi_endproc
2132 .LFE48:
2134 .section .text.HAL_RCC_GetClockConfig,"ax",%progbits
2135 .align 1
2136 .global HAL_RCC_GetClockConfig
2137 .syntax unified
2138 .code 16
2139 .thumb_func
2140 .fpu softvfp
2142 HAL_RCC_GetClockConfig:
2143 .LFB49:
1364:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check the parameters */
2144 .loc 1 1364 0
2145 .cfi_startproc
2146 @ args = 0, pretend = 0, frame = 0
2147 @ frame_needed = 0, uses_anonymous_args = 0
2148 .LVL147:
2149 0000 30B5 push {r4, r5, lr}
2150 .LCFI8:
2151 .cfi_def_cfa_offset 12
2152 .cfi_offset 4, -12
2153 .cfi_offset 5, -8
2154 .cfi_offset 14, -4
1370:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2155 .loc 1 1370 0
2156 0002 0F23 movs r3, #15
2157 0004 0360 str r3, [r0]
1373:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2158 .loc 1 1373 0
2159 0006 0C4A ldr r2, .L216
2160 0008 D468 ldr r4, [r2, #12]
2161 000a 0C3B subs r3, r3, #12
2162 000c 2340 ands r3, r4
2163 000e 4360 str r3, [r0, #4]
1376:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2164 .loc 1 1376 0
2165 0010 D468 ldr r4, [r2, #12]
2166 0012 F023 movs r3, #240
2167 0014 2340 ands r3, r4
2168 0016 8360 str r3, [r0, #8]
1379:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2169 .loc 1 1379 0
2170 0018 D468 ldr r4, [r2, #12]
2171 001a E025 movs r5, #224
2172 001c ED00 lsls r5, r5, #3
2173 001e 2C40 ands r4, r5
2174 0020 C460 str r4, [r0, #12]
1382:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2175 .loc 1 1382 0
2176 0022 D368 ldr r3, [r2, #12]
2177 0024 DB08 lsrs r3, r3, #3
2178 0026 2B40 ands r3, r5
2179 0028 0361 str r3, [r0, #16]
1385:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
ARM GAS /tmp/cchbc9tY.s page 70
2180 .loc 1 1385 0
2181 002a 044B ldr r3, .L216+4
2182 002c 1A68 ldr r2, [r3]
2183 002e 0123 movs r3, #1
2184 0030 1340 ands r3, r2
2185 0032 0B60 str r3, [r1]
1386:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2186 .loc 1 1386 0
2187 @ sp needed
2188 0034 30BD pop {r4, r5, pc}
2189 .L217:
2190 0036 C046 .align 2
2191 .L216:
2192 0038 00100240 .word 1073876992
2193 003c 00200240 .word 1073881088
2194 .cfi_endproc
2195 .LFE49:
2197 .section .text.HAL_RCC_CSSCallback,"ax",%progbits
2198 .align 1
2199 .weak HAL_RCC_CSSCallback
2200 .syntax unified
2201 .code 16
2202 .thumb_func
2203 .fpu softvfp
2205 HAL_RCC_CSSCallback:
2206 .LFB51:
1412:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* NOTE : This function Should not be modified, when the callback is needed,
2207 .loc 1 1412 0
2208 .cfi_startproc
2209 @ args = 0, pretend = 0, frame = 0
2210 @ frame_needed = 0, uses_anonymous_args = 0
2211 @ link register save eliminated.
1416:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2212 .loc 1 1416 0
2213 @ sp needed
2214 0000 7047 bx lr
2215 .cfi_endproc
2216 .LFE51:
2218 .section .text.HAL_RCC_NMI_IRQHandler,"ax",%progbits
2219 .align 1
2220 .global HAL_RCC_NMI_IRQHandler
2221 .syntax unified
2222 .code 16
2223 .thumb_func
2224 .fpu softvfp
2226 HAL_RCC_NMI_IRQHandler:
2227 .LFB50:
1395:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** /* Check RCC CSSF flag */
2228 .loc 1 1395 0
2229 .cfi_startproc
2230 @ args = 0, pretend = 0, frame = 0
2231 @ frame_needed = 0, uses_anonymous_args = 0
2232 0000 10B5 push {r4, lr}
2233 .LCFI9:
2234 .cfi_def_cfa_offset 8
2235 .cfi_offset 4, -8
2236 .cfi_offset 14, -4
ARM GAS /tmp/cchbc9tY.s page 71
1397:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** {
2237 .loc 1 1397 0
2238 0002 064B ldr r3, .L222
2239 0004 5B69 ldr r3, [r3, #20]
2240 0006 DB05 lsls r3, r3, #23
2241 0008 00D4 bmi .L221
2242 .L219:
1405:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2243 .loc 1 1405 0
2244 @ sp needed
2245 000a 10BD pop {r4, pc}
2246 .L221:
1400:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2247 .loc 1 1400 0
2248 000c FFF7FEFF bl HAL_RCC_CSSCallback
2249 .LVL148:
1403:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c **** }
2250 .loc 1 1403 0
2251 0010 024B ldr r3, .L222
2252 0012 8022 movs r2, #128
2253 0014 5200 lsls r2, r2, #1
2254 0016 9A61 str r2, [r3, #24]
1405:./Drivers/STM32L0xx_HAL_Driver/Src/stm32l0xx_hal_rcc.c ****
2255 .loc 1 1405 0
2256 0018 F7E7 b .L219
2257 .L223:
2258 001a C046 .align 2
2259 .L222:
2260 001c 00100240 .word 1073876992
2261 .cfi_endproc
2262 .LFE50:
2264 .text
2265 .Letext0:
2266 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
2267 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h"
2268 .file 4 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/system_stm32l0xx.h"
2269 .file 5 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/stm32l073xx.h"
2270 .file 6 "Drivers/CMSIS/Device/ST/STM32L0xx/Include/stm32l0xx.h"
2271 .file 7 "/usr/arm-none-eabi/include/sys/lock.h"
2272 .file 8 "/usr/arm-none-eabi/include/sys/_types.h"
2273 .file 9 "/usr/lib/gcc/arm-none-eabi/7.2.0/include/stddef.h"
2274 .file 10 "/usr/arm-none-eabi/include/sys/reent.h"
2275 .file 11 "Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_hal_def.h"
2276 .file 12 "Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_hal_rcc.h"
2277 .file 13 "Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_hal_gpio.h"
2278 .file 14 "Drivers/STM32L0xx_HAL_Driver/Inc/stm32l0xx_hal.h"
2279 .file 15 ""
ARM GAS /tmp/cchbc9tY.s page 72
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32l0xx_hal_rcc.c
/tmp/cchbc9tY.s:16 .text.RCC_SetFlashLatencyFromMSIRange:0000000000000000 $t
/tmp/cchbc9tY.s:22 .text.RCC_SetFlashLatencyFromMSIRange:0000000000000000 RCC_SetFlashLatencyFromMSIRange
/tmp/cchbc9tY.s:124 .text.RCC_SetFlashLatencyFromMSIRange:0000000000000070 $d
/tmp/cchbc9tY.s:132 .text.HAL_RCC_DeInit:0000000000000000 $t
/tmp/cchbc9tY.s:139 .text.HAL_RCC_DeInit:0000000000000000 HAL_RCC_DeInit
/tmp/cchbc9tY.s:211 .text.HAL_RCC_DeInit:0000000000000060 $d
/tmp/cchbc9tY.s:222 .text.HAL_RCC_OscConfig:0000000000000000 $t
/tmp/cchbc9tY.s:229 .text.HAL_RCC_OscConfig:0000000000000000 HAL_RCC_OscConfig
/tmp/cchbc9tY.s:769 .text.HAL_RCC_OscConfig:00000000000002fc $d
/tmp/cchbc9tY.s:781 .text.HAL_RCC_OscConfig:0000000000000320 $t
/tmp/cchbc9tY.s:1194 .text.HAL_RCC_OscConfig:0000000000000554 $d
/tmp/cchbc9tY.s:1208 .text.HAL_RCC_MCOConfig:0000000000000000 $t
/tmp/cchbc9tY.s:1215 .text.HAL_RCC_MCOConfig:0000000000000000 HAL_RCC_MCOConfig
/tmp/cchbc9tY.s:1345 .text.HAL_RCC_MCOConfig:000000000000009c $d
/tmp/cchbc9tY.s:1352 .text.HAL_RCC_EnableCSS:0000000000000000 $t
/tmp/cchbc9tY.s:1359 .text.HAL_RCC_EnableCSS:0000000000000000 HAL_RCC_EnableCSS
/tmp/cchbc9tY.s:1379 .text.HAL_RCC_EnableCSS:0000000000000010 $d
/tmp/cchbc9tY.s:1385 .text.HAL_RCC_GetSysClockFreq:0000000000000000 $t
/tmp/cchbc9tY.s:1392 .text.HAL_RCC_GetSysClockFreq:0000000000000000 HAL_RCC_GetSysClockFreq
/tmp/cchbc9tY.s:1524 .text.HAL_RCC_GetSysClockFreq:000000000000009c $d
/tmp/cchbc9tY.s:1533 .text.HAL_RCC_ClockConfig:0000000000000000 $t
/tmp/cchbc9tY.s:1540 .text.HAL_RCC_ClockConfig:0000000000000000 HAL_RCC_ClockConfig
/tmp/cchbc9tY.s:1833 .text.HAL_RCC_ClockConfig:0000000000000184 $d
/tmp/cchbc9tY.s:1844 .text.HAL_RCC_GetHCLKFreq:0000000000000000 $t
/tmp/cchbc9tY.s:1851 .text.HAL_RCC_GetHCLKFreq:0000000000000000 HAL_RCC_GetHCLKFreq
/tmp/cchbc9tY.s:1867 .text.HAL_RCC_GetHCLKFreq:0000000000000008 $d
/tmp/cchbc9tY.s:1872 .text.HAL_RCC_GetPCLK1Freq:0000000000000000 $t
/tmp/cchbc9tY.s:1879 .text.HAL_RCC_GetPCLK1Freq:0000000000000000 HAL_RCC_GetPCLK1Freq
/tmp/cchbc9tY.s:1908 .text.HAL_RCC_GetPCLK1Freq:0000000000000018 $d
/tmp/cchbc9tY.s:1915 .text.HAL_RCC_GetPCLK2Freq:0000000000000000 $t
/tmp/cchbc9tY.s:1922 .text.HAL_RCC_GetPCLK2Freq:0000000000000000 HAL_RCC_GetPCLK2Freq
/tmp/cchbc9tY.s:1951 .text.HAL_RCC_GetPCLK2Freq:0000000000000018 $d
/tmp/cchbc9tY.s:1958 .text.HAL_RCC_GetOscConfig:0000000000000000 $t
/tmp/cchbc9tY.s:1965 .text.HAL_RCC_GetOscConfig:0000000000000000 HAL_RCC_GetOscConfig
/tmp/cchbc9tY.s:2130 .text.HAL_RCC_GetOscConfig:00000000000000d8 $d
/tmp/cchbc9tY.s:2135 .text.HAL_RCC_GetClockConfig:0000000000000000 $t
/tmp/cchbc9tY.s:2142 .text.HAL_RCC_GetClockConfig:0000000000000000 HAL_RCC_GetClockConfig
/tmp/cchbc9tY.s:2192 .text.HAL_RCC_GetClockConfig:0000000000000038 $d
/tmp/cchbc9tY.s:2198 .text.HAL_RCC_CSSCallback:0000000000000000 $t
/tmp/cchbc9tY.s:2205 .text.HAL_RCC_CSSCallback:0000000000000000 HAL_RCC_CSSCallback
/tmp/cchbc9tY.s:2219 .text.HAL_RCC_NMI_IRQHandler:0000000000000000 $t
/tmp/cchbc9tY.s:2226 .text.HAL_RCC_NMI_IRQHandler:0000000000000000 HAL_RCC_NMI_IRQHandler
/tmp/cchbc9tY.s:2260 .text.HAL_RCC_NMI_IRQHandler:000000000000001c $d
.debug_frame:0000000000000010 $d
UNDEFINED SYMBOLS
SystemCoreClock
HAL_GetTick
HAL_InitTick
AHBPrescTable
memset
HAL_GPIO_Init
__aeabi_uidiv
PLLMulTable
APBPrescTable
ARM GAS /tmp/cchbc9tY.s page 73