Subversion Repositories dashGPS

Rev

Rev 18 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
19 mjames 1
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 1
16 mjames 2
 
3
 
4
   1              		.cpu cortex-m3
5
   2              		.eabi_attribute 20, 1
6
   3              		.eabi_attribute 21, 1
7
   4              		.eabi_attribute 23, 3
8
   5              		.eabi_attribute 24, 1
9
   6              		.eabi_attribute 25, 1
10
   7              		.eabi_attribute 26, 1
11
   8              		.eabi_attribute 30, 1
12
   9              		.eabi_attribute 34, 1
13
  10              		.eabi_attribute 18, 4
14
  11              		.file	"stm32f1xx_hal_flash_ex.c"
15
  12              		.text
16
  13              	.Ltext0:
17
  14              		.cfi_sections	.debug_frame
18
  15              		.section	.text.FLASH_MassErase,"ax",%progbits
19
  16              		.align	1
20
  17              		.arch armv7-m
21
  18              		.syntax unified
22
  19              		.thumb
23
  20              		.thumb_func
24
  21              		.fpu softvfp
25
  23              	FLASH_MassErase:
26
  24              	.LVL0:
27
  25              	.LFB71:
28
  26              		.file 1 "Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c"
29
   1:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
30
   2:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ******************************************************************************
31
   3:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @file    stm32f1xx_hal_flash_ex.c
32
   4:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @author  MCD Application Team
33
   5:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief   Extended FLASH HAL module driver.
34
   6:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *    
35
   7:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *          This file provides firmware functions to manage the following 
36
   8:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *          functionalities of the FLASH peripheral:
37
   9:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *           + Extended Initialization/de-initialization functions
38
  10:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *           + Extended I/O operation functions
39
  11:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *           + Extended Peripheral Control functions 
40
  12:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         
41
  13:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   @verbatim
42
  14:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================
43
  15:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****                ##### Flash peripheral extended features  #####
44
  16:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================
45
  17:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****            
46
  18:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****                       ##### How to use this driver #####
47
  19:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================
48
  20:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   [..] This driver provides functions to configure and program the FLASH memory 
49
  21:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****        of all STM32F1xxx devices. It includes
50
  22:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****        
51
  23:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         (++) Set/Reset the write protection
52
  24:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         (++) Program the user Option Bytes
53
  25:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         (++) Get the Read protection Level
54
  26:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
55
  27:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   @endverbatim
56
  28:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ******************************************************************************
57
  29:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @attention
58
  30:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
59
  31:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * <h2><center>&copy; Copyright (c) 2016 STMicroelectronics.
60
  32:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * All rights reserved.</center></h2>
19 mjames 61
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 2
16 mjames 62
 
63
 
64
  33:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
65
  34:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * This software component is licensed by ST under BSD 3-Clause license,
66
  35:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * the "License"; You may not use this file except in compliance with the
67
  36:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * License. You may obtain a copy of the License at:
68
  37:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *                        opensource.org/licenses/BSD-3-Clause
69
  38:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
70
  39:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ******************************************************************************
71
  40:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
72
  41:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
73
  42:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Includes ------------------------------------------------------------------*/
74
  43:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #include "stm32f1xx_hal.h"
75
  44:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
76
  45:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @addtogroup STM32F1xx_HAL_Driver
77
  46:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
78
  47:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
79
  48:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #ifdef HAL_FLASH_MODULE_ENABLED
80
  49:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
81
  50:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @addtogroup FLASH
82
  51:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
83
  52:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
84
  53:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @addtogroup FLASH_Private_Variables
85
  54:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  * @{
86
  55:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  */
87
  56:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Variables used for Erase pages under interruption*/
88
  57:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** extern FLASH_ProcessTypeDef pFlash;
89
  58:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
90
  59:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
91
  60:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
92
  61:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
93
  62:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
94
  63:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
95
  64:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
96
  65:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
97
  66:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx FLASHEx
98
  67:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief FLASH HAL Extension module driver
99
  68:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
100
  69:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
101
  70:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
102
  71:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Private typedef -----------------------------------------------------------*/
103
  72:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Private define ------------------------------------------------------------*/
104
  73:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx_Private_Constants FLASHEx Private Constants
105
  74:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  * @{
106
  75:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  */
107
  76:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #define FLASH_POSITION_IWDGSW_BIT        FLASH_OBR_IWDG_SW_Pos
108
  77:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #define FLASH_POSITION_OB_USERDATA0_BIT  FLASH_OBR_DATA0_Pos
109
  78:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #define FLASH_POSITION_OB_USERDATA1_BIT  FLASH_OBR_DATA1_Pos
110
  79:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
111
  80:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
112
  81:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
113
  82:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
114
  83:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Private macro -------------------------------------------------------------*/
115
  84:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx_Private_Macros FLASHEx Private Macros
116
  85:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
117
  86:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
118
  87:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
119
  88:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
120
  89:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */ 
19 mjames 121
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 3
16 mjames 122
 
123
 
124
  90:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
125
  91:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Private variables ---------------------------------------------------------*/
126
  92:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Private function prototypes -----------------------------------------------*/
127
  93:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx_Private_Functions FLASHEx Private Functions
128
  94:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  * @{
129
  95:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  */
130
  96:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Erase operations */
131
  97:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static void              FLASH_MassErase(uint32_t Banks);
132
  98:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** void    FLASH_PageErase(uint32_t PageAddress);
133
  99:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
134
 100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Option bytes control */
135
 101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_EnableWRP(uint32_t WriteProtectPage);
136
 102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_DisableWRP(uint32_t WriteProtectPage);
137
 103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_RDP_LevelConfig(uint8_t ReadProtectLevel);
138
 104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_UserConfig(uint8_t UserConfig);
139
 105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_ProgramData(uint32_t Address, uint8_t Data);
140
 106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static uint32_t          FLASH_OB_GetWRP(void);
141
 107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static uint32_t          FLASH_OB_GetRDP(void);
142
 108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static uint8_t           FLASH_OB_GetUser(void);
143
 109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
144
 110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
145
 111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
146
 112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
147
 113:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
148
 114:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /* Exported functions ---------------------------------------------------------*/
149
 115:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx_Exported_Functions FLASHEx Exported Functions
150
 116:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
151
 117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
152
 118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
153
 119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx_Exported_Functions_Group1 FLASHEx Memory Erasing functions
154
 120:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  *  @brief   FLASH Memory Erasing functions
155
 121:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
156
 122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** @verbatim   
157
 123:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================
158
 124:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****                 ##### FLASH Erasing Programming functions ##### 
159
 125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================
160
 126:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
161
 127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     [..] The FLASH Memory Erasing functions, includes the following functions:
162
 128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     (+) @ref HAL_FLASHEx_Erase: return only when erase has been done
163
 129:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     (+) @ref HAL_FLASHEx_Erase_IT: end of erase is done when @ref HAL_FLASH_EndOfOperationCallback 
164
 130:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         is called with parameter 0xFFFFFFFF
165
 131:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
166
 132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     [..] Any operation of erase should follow these steps:
167
 133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     (#) Call the @ref HAL_FLASH_Unlock() function to enable the flash control register and 
168
 134:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         program memory access.
169
 135:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     (#) Call the desired function to erase page.
170
 136:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     (#) Call the @ref HAL_FLASH_Lock() to disable the flash program memory access 
171
 137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****        (recommended to protect the FLASH memory against possible unwanted operation).
172
 138:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
173
 139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** @endverbatim
174
 140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
175
 141:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
176
 142:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
177
 143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
178
 144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
179
 145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Perform a mass erase or erase the specified FLASH memory pages
180
 146:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   To correctly run this function, the @ref HAL_FLASH_Unlock() function
19 mjames 181
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 4
16 mjames 182
 
183
 
184
 147:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         must be called before.
185
 148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         Call the @ref HAL_FLASH_Lock() to disable the flash memory access 
186
 149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         (recommended to protect the FLASH memory against possible unwanted operation)
187
 150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param[in]  pEraseInit pointer to an FLASH_EraseInitTypeDef structure that
188
 151:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         contains the configuration information for the erasing.
189
 152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
190
 153:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param[out]  PageError pointer to variable  that
191
 154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         contains the configuration information on faulty page in case of error
192
 155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         (0xFFFFFFFF means that all the pages have been correctly erased)
193
 156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
194
 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL_StatusTypeDef HAL Status
195
 158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
196
 159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError)
197
 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
198
 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
199
 162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t address = 0U;
200
 163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
201
 164:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Process Locked */
202
 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_LOCK(&pFlash);
203
 166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
204
 167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
205
 168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_FLASH_TYPEERASE(pEraseInit->TypeErase));
206
 169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
207
 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if (pEraseInit->TypeErase == FLASH_TYPEERASE_MASSERASE)
208
 171:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
209
 172:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
210
 173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (pEraseInit->Banks == FLASH_BANK_BOTH)
211
 174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
212
 175:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Mass Erase requested for Bank1 and Bank2 */
213
 176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Wait for last operation to be completed */
214
 177:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if ((FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) && \
215
 178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK))
216
 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
217
 180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /*Mass erase to be done*/
218
 181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         FLASH_MassErase(FLASH_BANK_BOTH);
219
 182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
220
 183:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
221
 184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         if ((FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) && \
222
 185:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK))
223
 186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         {
224
 187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           status = HAL_OK;
225
 188:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         }
226
 189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
227
 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* If the erase operation is completed, disable the MER Bit */
228
 191:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         CLEAR_BIT(FLASH->CR, FLASH_CR_MER);
229
 192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER);
230
 193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
231
 194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
232
 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     else if (pEraseInit->Banks == FLASH_BANK_2)
233
 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
234
 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Mass Erase requested for Bank2 */
235
 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Wait for last operation to be completed */
236
 199:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)
237
 200:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
238
 201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /*Mass erase to be done*/
239
 202:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         FLASH_MassErase(FLASH_BANK_2);
240
 203:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
19 mjames 241
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 5
16 mjames 242
 
243
 
244
 204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
245
 205:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE);
246
 206:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
247
 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* If the erase operation is completed, disable the MER Bit */
248
 208:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER);
249
 209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
250
 210:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
251
 211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     else 
252
 212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
253
 213:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
254
 214:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Mass Erase requested for Bank1 */
255
 215:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Wait for last operation to be completed */
256
 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if (FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)
257
 217:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
258
 218:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /*Mass erase to be done*/
259
 219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         FLASH_MassErase(FLASH_BANK_1);
260
 220:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
261
 221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
262
 222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
263
 223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
264
 224:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* If the erase operation is completed, disable the MER Bit */
265
 225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         CLEAR_BIT(FLASH->CR, FLASH_CR_MER);
266
 226:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
267
 227:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
268
 228:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
269
 229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else
270
 230:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
271
 231:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Page Erase is requested */
272
 232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Check the parameters */
273
 233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_FLASH_PROGRAM_ADDRESS(pEraseInit->PageAddress));
274
 234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages));
275
 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
276
 236:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
277
 237:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Page Erase requested on address located on bank2 */
278
 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if(pEraseInit->PageAddress > FLASH_BANK1_END)
279
 239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {   
280
 240:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Wait for last operation to be completed */
281
 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)
282
 242:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
283
 243:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /*Initialization of PageError variable*/
284
 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         *PageError = 0xFFFFFFFFU;
285
 245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
286
 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Erase by page by page to be done*/
287
 247:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         for(address = pEraseInit->PageAddress;
288
 248:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address < (pEraseInit->PageAddress + (pEraseInit->NbPages)*FLASH_PAGE_SIZE);
289
 249:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address += FLASH_PAGE_SIZE)
290
 250:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         {
291
 251:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           FLASH_PageErase(address);
292
 252:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
293
 253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           /* Wait for last operation to be completed */
294
 254:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           status = FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE);
295
 255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
296
 256:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           /* If the erase operation is completed, disable the PER Bit */
297
 257:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           CLEAR_BIT(FLASH->CR2, FLASH_CR2_PER);
298
 258:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
299
 259:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           if (status != HAL_OK)
300
 260:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           {
19 mjames 301
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 6
16 mjames 302
 
303
 
304
 261:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             /* In case of error, stop erase procedure and return the faulty address */
305
 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             *PageError = address;
306
 263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             break;
307
 264:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           }
308
 265:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         }
309
 266:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
310
 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
311
 268:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     else
312
 269:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
313
 270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****    {
314
 271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Page Erase requested on address located on bank1 */
315
 272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Wait for last operation to be completed */
316
 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if (FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)
317
 274:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
318
 275:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /*Initialization of PageError variable*/
319
 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         *PageError = 0xFFFFFFFFU;
320
 277:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
321
 278:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Erase page by page to be done*/
322
 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         for(address = pEraseInit->PageAddress;
323
 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address < ((pEraseInit->NbPages * FLASH_PAGE_SIZE) + pEraseInit->PageAddress);
324
 281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address += FLASH_PAGE_SIZE)
325
 282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         {
326
 283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           FLASH_PageErase(address);
327
 284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
328
 285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           /* Wait for last operation to be completed */
329
 286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
330
 287:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
331
 288:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           /* If the erase operation is completed, disable the PER Bit */
332
 289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           CLEAR_BIT(FLASH->CR, FLASH_CR_PER);
333
 290:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
334
 291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           if (status != HAL_OK)
335
 292:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           {
336
 293:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             /* In case of error, stop erase procedure and return the faulty address */
337
 294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             *PageError = address;
338
 295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             break;
339
 296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           }
340
 297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         }
341
 298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
342
 299:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
343
 300:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
344
 301:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
345
 302:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Process Unlocked */
346
 303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_UNLOCK(&pFlash);
347
 304:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
348
 305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
349
 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
350
 307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
351
 308:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
352
 309:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Perform a mass erase or erase the specified FLASH memory pages with interrupt enabled
353
 310:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   To correctly run this function, the @ref HAL_FLASH_Unlock() function
354
 311:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         must be called before.
355
 312:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         Call the @ref HAL_FLASH_Lock() to disable the flash memory access 
356
 313:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         (recommended to protect the FLASH memory against possible unwanted operation)
357
 314:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  pEraseInit pointer to an FLASH_EraseInitTypeDef structure that
358
 315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         contains the configuration information for the erasing.
359
 316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
360
 317:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL_StatusTypeDef HAL Status
19 mjames 361
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 7
16 mjames 362
 
363
 
364
 318:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
365
 319:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit)
366
 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
367
 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
368
 322:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
369
 323:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Process Locked */
370
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_LOCK(&pFlash);
371
 325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
372
 326:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* If procedure already ongoing, reject the next one */
373
 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if (pFlash.ProcedureOnGoing != FLASH_PROC_NONE)
374
 328:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
375
 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     return HAL_ERROR;
376
 330:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
377
 331:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
378
 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
379
 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_FLASH_TYPEERASE(pEraseInit->TypeErase));
380
 334:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
381
 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Enable End of FLASH Operation and Error source interrupts */
382
 336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR);
383
 337:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
384
 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
385
 339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Enable End of FLASH Operation and Error source interrupts */
386
 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2);
387
 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
388
 342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif
389
 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if (pEraseInit->TypeErase == FLASH_TYPEERASE_MASSERASE)
390
 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
391
 345:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /*Mass erase to be done*/
392
 346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ProcedureOnGoing = FLASH_PROC_MASSERASE;
393
 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         FLASH_MassErase(pEraseInit->Banks);
394
 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
395
 349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else
396
 350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
397
 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Erase by page to be done*/
398
 352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
399
 353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Check the parameters */
400
 354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_FLASH_PROGRAM_ADDRESS(pEraseInit->PageAddress));
401
 355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages));
402
 356:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
403
 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ProcedureOnGoing = FLASH_PROC_PAGEERASE;
404
 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.DataRemaining = pEraseInit->NbPages;
405
 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.Address = pEraseInit->PageAddress;
406
 360:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
407
 361:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /*Erase 1st page and wait for IT*/
408
 362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     FLASH_PageErase(pEraseInit->PageAddress);
409
 363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
410
 364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
411
 365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
412
 366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
413
 367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
414
 368:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
415
 369:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
416
 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
417
 371:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
418
 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @defgroup FLASHEx_Exported_Functions_Group2 Option Bytes Programming functions
419
 373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  *  @brief   Option Bytes Programming functions
420
 374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
19 mjames 421
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 8
16 mjames 422
 
423
 
424
 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** @verbatim   
425
 376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================
426
 377:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****                 ##### Option Bytes Programming functions ##### 
427
 378:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   ==============================================================================  
428
 379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     [..]
429
 380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     This subsection provides a set of functions allowing to control the FLASH 
430
 381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     option bytes operations.
431
 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
432
 383:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** @endverbatim
433
 384:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
434
 385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
435
 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
436
 387:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
437
 388:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Erases the FLASH option bytes.
438
 389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   This functions erases all option bytes except the Read protection (RDP).
439
 390:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interf
440
 391:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options b
441
 392:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of t
442
 393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         (system reset will occur)
443
 394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL status
444
 395:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
445
 396:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
446
 397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** HAL_StatusTypeDef HAL_FLASHEx_OBErase(void)
447
 398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
448
 399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint8_t rdptmp = OB_RDP_LEVEL_0;
449
 400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
450
 401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
451
 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Get the actual read protection Option Byte value */
452
 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   rdptmp = FLASH_OB_GetRDP();
453
 404:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
454
 405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Wait for last operation to be completed */
455
 406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
456
 407:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
457
 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(status == HAL_OK)
458
 409:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
459
 410:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Clean the error context */
460
 411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
461
 412:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
462
 413:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* If the previous operation is completed, proceed to erase the option bytes */
463
 414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_OPTER);
464
 415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
465
 416:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
466
 417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Wait for last operation to be completed */
467
 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
468
 419:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
469
 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* If the erase operation is completed, disable the OPTER Bit */
470
 421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     CLEAR_BIT(FLASH->CR, FLASH_CR_OPTER);
471
 422:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
472
 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if(status == HAL_OK)
473
 424:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
474
 425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Restore the last read protection Option Byte value */
475
 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       status = FLASH_OB_RDP_LevelConfig(rdptmp);
476
 427:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
477
 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
478
 429:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
479
 430:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Return the erase status */
480
 431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
19 mjames 481
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 9
16 mjames 482
 
483
 
484
 432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
485
 433:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
486
 434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
487
 435:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Program option bytes
488
 436:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interf
489
 437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options b
490
 438:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of t
491
 439:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         (system reset will occur)
492
 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
493
 441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  pOBInit pointer to an FLASH_OBInitStruct structure that
494
 442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         contains the configuration information for the programming.
495
 443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
496
 444:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL_StatusTypeDef HAL Status
497
 445:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
498
 446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit)
499
 447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
500
 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
501
 449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
502
 450:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Process Locked */
503
 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_LOCK(&pFlash);
504
 452:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
505
 453:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
506
 454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OPTIONBYTE(pOBInit->OptionType));
507
 455:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
508
 456:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Write protection configuration */
509
 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if((pOBInit->OptionType & OPTIONBYTE_WRP) == OPTIONBYTE_WRP)
510
 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
511
 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_WRPSTATE(pOBInit->WRPState));
512
 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (pOBInit->WRPState == OB_WRPSTATE_ENABLE)
513
 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
514
 462:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Enable of Write protection on the selected page */
515
 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       status = FLASH_OB_EnableWRP(pOBInit->WRPPage);
516
 464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
517
 465:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     else
518
 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
519
 467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Disable of Write protection on the selected page */
520
 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       status = FLASH_OB_DisableWRP(pOBInit->WRPPage);
521
 469:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
522
 470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
523
 471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
524
 472:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Process Unlocked */
525
 473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       __HAL_UNLOCK(&pFlash);
526
 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
527
 475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
528
 476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
529
 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
530
 478:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Read protection configuration */
531
 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if((pOBInit->OptionType & OPTIONBYTE_RDP) == OPTIONBYTE_RDP)
532
 480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
533
 481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_OB_RDP_LevelConfig(pOBInit->RDPLevel);
534
 482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
535
 483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
536
 484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Process Unlocked */
537
 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       __HAL_UNLOCK(&pFlash);
538
 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
539
 487:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
540
 488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
19 mjames 541
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 10
16 mjames 542
 
543
 
544
 489:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
545
 490:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* USER configuration */
546
 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if((pOBInit->OptionType & OPTIONBYTE_USER) == OPTIONBYTE_USER)
547
 492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
548
 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_OB_UserConfig(pOBInit->USERConfig);
549
 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
550
 495:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
551
 496:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Process Unlocked */
552
 497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       __HAL_UNLOCK(&pFlash);
553
 498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
554
 499:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
555
 500:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
556
 501:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
557
 502:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* DATA configuration*/
558
 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if((pOBInit->OptionType & OPTIONBYTE_DATA) == OPTIONBYTE_DATA)
559
 504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
560
 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_OB_ProgramData(pOBInit->DATAAddress, pOBInit->DATAData);
561
 506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
562
 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
563
 508:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Process Unlocked */
564
 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       __HAL_UNLOCK(&pFlash);
565
 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
566
 511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
567
 512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
568
 513:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
569
 514:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Process Unlocked */
570
 515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   __HAL_UNLOCK(&pFlash);
571
 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
572
 517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
573
 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
574
 519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
575
 520:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
576
 521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Get the Option byte configuration
577
 522:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  pOBInit pointer to an FLASH_OBInitStruct structure that
578
 523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         contains the configuration information for the programming.
579
 524:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
580
 525:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval None
581
 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
582
 527:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit)
583
 528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
584
 529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pOBInit->OptionType = OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER;
585
 530:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
586
 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /*Get WRP*/
587
 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pOBInit->WRPPage = FLASH_OB_GetWRP();
588
 533:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
589
 534:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /*Get RDP Level*/
590
 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pOBInit->RDPLevel = FLASH_OB_GetRDP();
591
 536:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
592
 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /*Get USER*/
593
 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pOBInit->USERConfig = FLASH_OB_GetUser();
594
 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
595
 540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
596
 541:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
597
 542:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Get the Option byte user data
598
 543:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  DATAAdress Address of the option byte DATA
599
 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *          This parameter can be one of the following values:
600
 545:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref OB_DATA_ADDRESS_DATA0
19 mjames 601
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 11
16 mjames 602
 
603
 
604
 546:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref OB_DATA_ADDRESS_DATA1
605
 547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval Value programmed in USER data
606
 548:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
607
 549:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** uint32_t HAL_FLASHEx_OBGetUserData(uint32_t DATAAdress)
608
 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
609
 551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t value = 0;
610
 552:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
611
 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if (DATAAdress == OB_DATA_ADDRESS_DATA0)
612
 554:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
613
 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Get value programmed in OB USER Data0 */
614
 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     value = READ_BIT(FLASH->OBR, FLASH_OBR_DATA0) >> FLASH_POSITION_OB_USERDATA0_BIT;
615
 557:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
616
 558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else
617
 559:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
618
 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Get value programmed in OB USER Data1 */
619
 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     value = READ_BIT(FLASH->OBR, FLASH_OBR_DATA1) >> FLASH_POSITION_OB_USERDATA1_BIT;
620
 562:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
621
 563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
622
 564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return value;
623
 565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
624
 566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
625
 567:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
626
 568:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
627
 569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
628
 570:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
629
 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
630
 572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
631
 573:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
632
 574:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
633
 575:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @addtogroup FLASHEx_Private_Functions
634
 576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  * @{
635
 577:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  */
636
 578:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
637
 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
638
 580:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Full erase of FLASH memory Bank 
639
 581:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  Banks Banks to be erased
640
 582:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *          This parameter can be one of the following values:
641
 583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref FLASH_BANK_1 Bank1 to be erased
642
 584:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   @if STM32F101xG
643
 585:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref FLASH_BANK_2 Bank2 to be erased
644
 586:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref FLASH_BANK_BOTH Bank1 and Bank2 to be erased
645
 587:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   @endif
646
 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   @if STM32F103xG
647
 589:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref FLASH_BANK_2 Bank2 to be erased
648
 590:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref FLASH_BANK_BOTH Bank1 and Bank2 to be erased
649
 591:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   @endif
650
 592:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *
651
 593:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval None
652
 594:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
653
 595:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static void FLASH_MassErase(uint32_t Banks)
654
 596:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
655
  27              		.loc 1 596 1 view -0
656
  28              		.cfi_startproc
657
  29              		@ args = 0, pretend = 0, frame = 0
658
  30              		@ frame_needed = 0, uses_anonymous_args = 0
659
  31              		@ link register save eliminated.
660
 597:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
19 mjames 661
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 12
16 mjames 662
 
663
 
664
 598:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_FLASH_BANK(Banks));
665
  32              		.loc 1 598 3 view .LVU1
666
 599:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
667
 600:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Clean the error context */
668
 601:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
669
  33              		.loc 1 601 3 view .LVU2
670
  34              		.loc 1 601 20 is_stmt 0 view .LVU3
671
  35 0000 064B     		ldr	r3, .L2
672
  36 0002 0022     		movs	r2, #0
673
  37 0004 DA61     		str	r2, [r3, #28]
674
 602:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
675
 603:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
676
 604:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(Banks == FLASH_BANK_BOTH)
677
 605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
678
 606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* bank1 & bank2 will be erased*/
679
 607:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_MER);
680
 608:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR2, FLASH_CR2_MER);
681
 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
682
 610:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR2, FLASH_CR2_STRT);
683
 611:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
684
 612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else if(Banks == FLASH_BANK_2)
685
 613:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
686
 614:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /*Only bank2 will be erased*/
687
 615:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR2, FLASH_CR2_MER);
688
 616:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR2, FLASH_CR2_STRT);
689
 617:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
690
 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else
691
 619:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
692
 620:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
693
 621:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if !defined(FLASH_BANK2_END)
694
 622:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Prevent unused argument(s) compilation warning */
695
 623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   UNUSED(Banks);
696
  38              		.loc 1 623 3 is_stmt 1 view .LVU4
697
 624:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */  
698
 625:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Only bank1 will be erased*/
699
 626:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_MER);
700
  39              		.loc 1 626 5 view .LVU5
701
  40 0006 064B     		ldr	r3, .L2+4
702
  41 0008 1A69     		ldr	r2, [r3, #16]
703
  42 000a 42F00402 		orr	r2, r2, #4
704
  43 000e 1A61     		str	r2, [r3, #16]
705
 627:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
706
  44              		.loc 1 627 5 view .LVU6
707
  45 0010 1A69     		ldr	r2, [r3, #16]
708
  46 0012 42F04002 		orr	r2, r2, #64
709
  47 0016 1A61     		str	r2, [r3, #16]
710
 628:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
711
 629:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
712
 630:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
713
 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
714
  48              		.loc 1 631 1 is_stmt 0 view .LVU7
715
  49 0018 7047     		bx	lr
716
  50              	.L3:
717
  51 001a 00BF     		.align	2
718
  52              	.L2:
719
  53 001c 00000000 		.word	pFlash
720
  54 0020 00200240 		.word	1073881088
19 mjames 721
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 13
16 mjames 722
 
723
 
724
  55              		.cfi_endproc
725
  56              	.LFE71:
726
  58              		.section	.text.FLASH_OB_GetWRP,"ax",%progbits
727
  59              		.align	1
728
  60              		.syntax unified
729
  61              		.thumb
730
  62              		.thumb_func
731
  63              		.fpu softvfp
732
  65              	FLASH_OB_GetWRP:
733
  66              	.LFB77:
734
 632:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
735
 633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
736
 634:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Enable the write protection of the desired pages
737
 635:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   An option byte erase is done automatically in this function. 
738
 636:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   When the memory read protection level is selected (RDP level = 1), 
739
 637:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         it is not possible to program or erase the flash page i if
740
 638:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         debug features are connected or boot code is executed in RAM, even if nWRPi = 1 
741
 639:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * 
742
 640:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  WriteProtectPage specifies the page(s) to be write protected.
743
 641:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The value of this parameter depend on device used within the same series 
744
 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL status 
745
 643:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
746
 644:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_EnableWRP(uint32_t WriteProtectPage)
747
 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
748
 646:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
749
 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP0_Data = 0xFFFF;
750
 648:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP1_WRP1)
751
 649:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP1_Data = 0xFFFF;
752
 650:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP1_WRP1 */
753
 651:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP2_WRP2)
754
 652:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP2_Data = 0xFFFF;
755
 653:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP2_WRP2 */
756
 654:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP3_WRP3)
757
 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP3_Data = 0xFFFF;
758
 656:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP3_WRP3 */
759
 657:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
760
 658:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
761
 659:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_WRP(WriteProtectPage));
762
 660:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
763
 661:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Get current write protected pages and the new pages to be protected ******/
764
 662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WriteProtectPage = (uint32_t)(~((~FLASH_OB_GetWRP()) | WriteProtectPage));
765
 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
766
 664:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES0TO15MASK)
767
 665:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO15MASK);
768
 666:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES0TO31MASK)
769
 667:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO31MASK);
770
 668:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES0TO31MASK */
771
 669:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
772
 670:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES16TO31MASK)
773
 671:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES16TO31MASK) >> 8U);
774
 672:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES32TO63MASK)
775
 673:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO63MASK) >> 8U);
776
 674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO63MASK */
777
 675:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  
778
 676:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES64TO95MASK)
779
 677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES64TO95MASK) >> 16U);
780
 678:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES64TO95MASK */
19 mjames 781
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 14
16 mjames 782
 
783
 
784
 679:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES32TO47MASK)
785
 680:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO47MASK) >> 16U);
786
 681:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO47MASK */
787
 682:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
788
 683:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES96TO127MASK)
789
 684:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES96TO127MASK) >> 24U); 
790
 685:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO255MASK)
791
 686:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO255MASK) >> 24U); 
792
 687:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO511MASK)
793
 688:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO511MASK) >> 24U); 
794
 689:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO127MASK)
795
 690:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO127MASK) >> 24U); 
796
 691:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES96TO127MASK */
797
 692:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
798
 693:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Wait for last operation to be completed */
799
 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
800
 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
801
 696:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(status == HAL_OK)
802
 697:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
803
 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Clean the error context */
804
 699:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
805
 700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
806
 701:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* To be able to write again option byte, need to perform a option byte erase */
807
 702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = HAL_FLASHEx_OBErase();
808
 703:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status == HAL_OK)  
809
 704:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
810
 705:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Enable write protection */
811
 706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       SET_BIT(FLASH->CR, FLASH_CR_OPTPG);
812
 707:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
813
 708:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP0_WRP0)
814
 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if(WRP0_Data != 0xFFU)
815
 710:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
816
 711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP0 &= WRP0_Data;
817
 712:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
818
 713:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
819
 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
820
 715:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
821
 716:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP0_WRP0 */
822
 717:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
823
 718:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP1_WRP1)
824
 719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if((status == HAL_OK) && (WRP1_Data != 0xFFU))
825
 720:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
826
 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP1 &= WRP1_Data;
827
 722:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
828
 723:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
829
 724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
830
 725:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
831
 726:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP1_WRP1 */
832
 727:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
833
 728:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP2_WRP2)
834
 729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if((status == HAL_OK) && (WRP2_Data != 0xFFU))
835
 730:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
836
 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP2 &= WRP2_Data;
837
 732:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
838
 733:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
839
 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
840
 735:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
19 mjames 841
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 15
16 mjames 842
 
843
 
844
 736:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP2_WRP2 */
845
 737:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
846
 738:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP3_WRP3)
847
 739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if((status == HAL_OK) && (WRP3_Data != 0xFFU))
848
 740:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
849
 741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP3 &= WRP3_Data;
850
 742:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
851
 743:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
852
 744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
853
 745:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
854
 746:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP3_WRP3 */
855
 747:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
856
 748:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* if the program operation is completed, disable the OPTPG Bit */
857
 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG);
858
 750:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
859
 751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
860
 752:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
861
 753:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
862
 754:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
863
 755:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
864
 756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
865
 757:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Disable the write protection of the desired pages
866
 758:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   An option byte erase is done automatically in this function. 
867
 759:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   When the memory read protection level is selected (RDP level = 1), 
868
 760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         it is not possible to program or erase the flash page i if   
869
 761:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         debug features are connected or boot code is executed in RAM, even if nWRPi = 1 
870
 762:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * 
871
 763:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  WriteProtectPage specifies the page(s) to be write unprotected.
872
 764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The value of this parameter depend on device used within the same series 
873
 765:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL status 
874
 766:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
875
 767:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_DisableWRP(uint32_t WriteProtectPage)
876
 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
877
 769:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
878
 770:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP0_Data = 0xFFFF;
879
 771:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP1_WRP1)
880
 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP1_Data = 0xFFFF;
881
 773:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP1_WRP1 */
882
 774:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP2_WRP2)
883
 775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP2_Data = 0xFFFF;
884
 776:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP2_WRP2 */
885
 777:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP3_WRP3)
886
 778:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP3_Data = 0xFFFF;
887
 779:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP3_WRP3 */
888
 780:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
889
 781:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
890
 782:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_WRP(WriteProtectPage));
891
 783:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
892
 784:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Get current write protected pages and the new pages to be unprotected ******/
893
 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WriteProtectPage = (FLASH_OB_GetWRP() | WriteProtectPage);
894
 786:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
895
 787:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES0TO15MASK)
896
 788:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO15MASK);
897
 789:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES0TO31MASK)
898
 790:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO31MASK);
899
 791:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES0TO31MASK */
900
 792:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
19 mjames 901
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 16
16 mjames 902
 
903
 
904
 793:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES16TO31MASK)
905
 794:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES16TO31MASK) >> 8U);
906
 795:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES32TO63MASK)
907
 796:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO63MASK) >> 8U);
908
 797:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO63MASK */
909
 798:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  
910
 799:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES64TO95MASK)
911
 800:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES64TO95MASK) >> 16U);
912
 801:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES64TO95MASK */
913
 802:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES32TO47MASK)
914
 803:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO47MASK) >> 16U);
915
 804:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO47MASK */
916
 805:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
917
 806:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(OB_WRP_PAGES96TO127MASK)
918
 807:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES96TO127MASK) >> 24U); 
919
 808:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO255MASK)
920
 809:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO255MASK) >> 24U); 
921
 810:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO511MASK)
922
 811:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO511MASK) >> 24U); 
923
 812:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO127MASK)
924
 813:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO127MASK) >> 24U); 
925
 814:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES96TO127MASK */
926
 815:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
927
 816:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
928
 817:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Wait for last operation to be completed */
929
 818:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
930
 819:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
931
 820:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(status == HAL_OK)
932
 821:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
933
 822:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Clean the error context */
934
 823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
935
 824:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
936
 825:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* To be able to write again option byte, need to perform a option byte erase */
937
 826:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = HAL_FLASHEx_OBErase();
938
 827:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status == HAL_OK)  
939
 828:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
940
 829:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       SET_BIT(FLASH->CR, FLASH_CR_OPTPG);
941
 830:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
942
 831:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP0_WRP0)
943
 832:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if(WRP0_Data != 0xFFU)
944
 833:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
945
 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP0 |= WRP0_Data;
946
 835:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
947
 836:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
948
 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
949
 838:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
950
 839:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP0_WRP0 */
951
 840:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
952
 841:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP1_WRP1)
953
 842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if((status == HAL_OK) && (WRP1_Data != 0xFFU))
954
 843:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
955
 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP1 |= WRP1_Data;
956
 845:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
957
 846:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
958
 847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
959
 848:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
960
 849:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP1_WRP1 */
19 mjames 961
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 17
16 mjames 962
 
963
 
964
 850:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
965
 851:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP2_WRP2)
966
 852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if((status == HAL_OK) && (WRP2_Data != 0xFFU))
967
 853:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
968
 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP2 |= WRP2_Data;
969
 855:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
970
 856:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
971
 857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
972
 858:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
973
 859:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP2_WRP2 */
974
 860:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
975
 861:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP3_WRP3)
976
 862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       if((status == HAL_OK) && (WRP3_Data != 0xFFU))
977
 863:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
978
 864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         OB->WRP3 |= WRP3_Data;
979
 865:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
980
 866:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         /* Wait for last operation to be completed */
981
 867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
982
 868:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
983
 869:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP3_WRP3 */
984
 870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
985
 871:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* if the program operation is completed, disable the OPTPG Bit */
986
 872:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG);
987
 873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
988
 874:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
989
 875:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
990
 876:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
991
 877:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
992
 878:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
993
 879:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Set the read protection level.
994
 880:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  ReadProtectLevel specifies the read protection level.
995
 881:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         This parameter can be one of the following values:
996
 882:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref OB_RDP_LEVEL_0 No protection
997
 883:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref OB_RDP_LEVEL_1 Read protection of the memory
998
 884:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL status
999
 885:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
1000
 886:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_RDP_LevelConfig(uint8_t ReadProtectLevel)
1001
 887:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
1002
 888:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1003
 889:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1004
 890:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
1005
 891:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_RDP_LEVEL(ReadProtectLevel));
1006
 892:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1007
 893:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Wait for last operation to be completed */
1008
 894:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
1009
 895:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1010
 896:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(status == HAL_OK)
1011
 897:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
1012
 898:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Clean the error context */
1013
 899:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
1014
 900:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1015
 901:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* If the previous operation is completed, proceed to erase the option bytes */
1016
 902:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_OPTER);
1017
 903:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
1018
 904:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1019
 905:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Wait for last operation to be completed */
1020
 906:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
19 mjames 1021
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 18
16 mjames 1022
 
1023
 
1024
 907:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1025
 908:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* If the erase operation is completed, disable the OPTER Bit */
1026
 909:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     CLEAR_BIT(FLASH->CR, FLASH_CR_OPTER);
1027
 910:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1028
 911:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if(status == HAL_OK)
1029
 912:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1030
 913:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Enable the Option Bytes Programming operation */
1031
 914:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       SET_BIT(FLASH->CR, FLASH_CR_OPTPG);
1032
 915:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1033
 916:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       WRITE_REG(OB->RDP, ReadProtectLevel);
1034
 917:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1035
 918:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* Wait for last operation to be completed */
1036
 919:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); 
1037
 920:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1038
 921:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       /* if the program operation is completed, disable the OPTPG Bit */
1039
 922:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG);
1040
 923:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1041
 924:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1042
 925:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1043
 926:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
1044
 927:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1045
 928:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1046
 929:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
1047
 930:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Program the FLASH User Option Byte.    
1048
 931:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   Programming of the OB should be performed only after an erase (otherwise PGERR occurs)
1049
 932:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  UserConfig The FLASH User Option Bytes values FLASH_OBR_IWDG_SW(Bit2), 
1050
 933:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         FLASH_OBR_nRST_STOP(Bit3),FLASH_OBR_nRST_STDBY(Bit4).
1051
 934:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         And BFBF2(Bit5) for STM32F101xG and STM32F103xG . 
1052
 935:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL status
1053
 936:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
1054
 937:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_UserConfig(uint8_t UserConfig)
1055
 938:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
1056
 939:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1057
 940:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1058
 941:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
1059
 942:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_IWDG_SOURCE((UserConfig&OB_IWDG_SW)));
1060
 943:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_STOP_SOURCE((UserConfig&OB_STOP_NO_RST)));
1061
 944:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_STDBY_SOURCE((UserConfig&OB_STDBY_NO_RST)));
1062
 945:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
1063
 946:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_BOOT1((UserConfig&OB_BOOT1_SET)));
1064
 947:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
1065
 948:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1066
 949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Wait for last operation to be completed */
1067
 950:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
1068
 951:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1069
 952:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(status == HAL_OK)
1070
 953:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {     
1071
 954:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Clean the error context */
1072
 955:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
1073
 956:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1074
 957:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Enable the Option Bytes Programming operation */
1075
 958:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_OPTPG); 
1076
 959:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  
1077
 960:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
1078
 961:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     OB->USER = (UserConfig | 0xF0U);
1079
 962:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #else
1080
 963:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     OB->USER = (UserConfig | 0x88U);
19 mjames 1081
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 19
16 mjames 1082
 
1083
 
1084
 964:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
1085
 965:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1086
 966:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Wait for last operation to be completed */
1087
 967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
1088
 968:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1089
 969:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* if the program operation is completed, disable the OPTPG Bit */
1090
 970:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG);
1091
 971:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1092
 972:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1093
 973:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status; 
1094
 974:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1095
 975:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1096
 976:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
1097
 977:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Programs a half word at a specified Option Byte Data address.
1098
 978:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @note   The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interf
1099
 979:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options b
1100
 980:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of t
1101
 981:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         (system reset will occur)
1102
 982:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         Programming of the OB should be performed only after an erase (otherwise PGERR occurs)
1103
 983:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  Address specifies the address to be programmed.
1104
 984:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         This parameter can be 0x1FFFF804 or 0x1FFFF806. 
1105
 985:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  Data specifies the data to be programmed.
1106
 986:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval HAL status
1107
 987:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
1108
 988:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static HAL_StatusTypeDef FLASH_OB_ProgramData(uint32_t Address, uint8_t Data)
1109
 989:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
1110
 990:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
1111
 991:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1112
 992:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Check the parameters */
1113
 993:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_DATA_ADDRESS(Address));
1114
 994:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1115
 995:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Wait for last operation to be completed */
1116
 996:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
1117
 997:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1118
 998:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(status == HAL_OK)
1119
 999:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1120
1000:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Clean the error context */
1121
1001:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
1122
1002:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1123
1003:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Enables the Option Bytes Programming operation */
1124
1004:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_OPTPG); 
1125
1005:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     *(__IO uint16_t*)Address = Data;
1126
1006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1127
1007:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Wait for last operation to be completed */
1128
1008:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE);
1129
1009:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1130
1010:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* If the program operation is completed, disable the OPTPG Bit */
1131
1011:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG);
1132
1012:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1133
1013:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Return the Option Byte Data Program Status */
1134
1014:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return status;
1135
1015:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1136
1016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1137
1017:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
1138
1018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Return the FLASH Write Protection Option Bytes value.
1139
1019:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval The FLASH Write Protection Option Bytes value
1140
1020:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
19 mjames 1141
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 20
16 mjames 1142
 
1143
 
1144
1021:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static uint32_t FLASH_OB_GetWRP(void)
1145
1022:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
1146
  67              		.loc 1 1022 1 is_stmt 1 view -0
1147
  68              		.cfi_startproc
1148
  69              		@ args = 0, pretend = 0, frame = 0
1149
  70              		@ frame_needed = 0, uses_anonymous_args = 0
1150
  71              		@ link register save eliminated.
1151
1023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Return the FLASH write protection Register value */
1152
1024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return (uint32_t)(READ_REG(FLASH->WRPR));
1153
  72              		.loc 1 1024 3 view .LVU9
1154
  73              		.loc 1 1024 10 is_stmt 0 view .LVU10
1155
  74 0000 014B     		ldr	r3, .L5
1156
  75 0002 186A     		ldr	r0, [r3, #32]
1157
1025:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1158
  76              		.loc 1 1025 1 view .LVU11
1159
  77 0004 7047     		bx	lr
1160
  78              	.L6:
1161
  79 0006 00BF     		.align	2
1162
  80              	.L5:
1163
  81 0008 00200240 		.word	1073881088
1164
  82              		.cfi_endproc
1165
  83              	.LFE77:
1166
  85              		.section	.text.FLASH_OB_GetRDP,"ax",%progbits
1167
  86              		.align	1
1168
  87              		.syntax unified
1169
  88              		.thumb
1170
  89              		.thumb_func
1171
  90              		.fpu softvfp
1172
  92              	FLASH_OB_GetRDP:
1173
  93              	.LFB78:
1174
1026:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1175
1027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
1176
1028:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Returns the FLASH Read Protection level.
1177
1029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval FLASH RDP level
1178
1030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         This parameter can be one of the following values:
1179
1031:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref OB_RDP_LEVEL_0 No protection
1180
1032:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *            @arg @ref OB_RDP_LEVEL_1 Read protection of the memory
1181
1033:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
1182
1034:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static uint32_t FLASH_OB_GetRDP(void)
1183
1035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
1184
  94              		.loc 1 1035 1 is_stmt 1 view -0
1185
  95              		.cfi_startproc
1186
  96              		@ args = 0, pretend = 0, frame = 0
1187
  97              		@ frame_needed = 0, uses_anonymous_args = 0
1188
  98              		@ link register save eliminated.
1189
1036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t readstatus = OB_RDP_LEVEL_0;
1190
  99              		.loc 1 1036 3 view .LVU13
1191
 100              	.LVL1:
1192
1037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t tmp_reg = 0U;
1193
 101              		.loc 1 1037 3 view .LVU14
1194
1038:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1195
1039:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Read RDP level bits */
1196
1040:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   tmp_reg = READ_BIT(FLASH->OBR, FLASH_OBR_RDPRT);
1197
 102              		.loc 1 1040 3 view .LVU15
1198
 103              		.loc 1 1040 13 is_stmt 0 view .LVU16
1199
 104 0000 044B     		ldr	r3, .L10
1200
 105 0002 DB69     		ldr	r3, [r3, #28]
19 mjames 1201
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 21
16 mjames 1202
 
1203
 
1204
 106              	.LVL2:
1205
1041:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1206
1042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if (tmp_reg == FLASH_OBR_RDPRT)
1207
 107              		.loc 1 1042 3 is_stmt 1 view .LVU17
1208
 108              		.loc 1 1042 6 is_stmt 0 view .LVU18
1209
 109 0004 13F0020F 		tst	r3, #2
1210
 110 0008 01D0     		beq	.L9
1211
1043:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1212
1044:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     readstatus = OB_RDP_LEVEL_1;
1213
 111              		.loc 1 1044 16 view .LVU19
1214
 112 000a 0020     		movs	r0, #0
1215
 113 000c 7047     		bx	lr
1216
 114              	.L9:
1217
1045:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1218
1046:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else 
1219
1047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1220
1048:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     readstatus = OB_RDP_LEVEL_0;
1221
 115              		.loc 1 1048 16 view .LVU20
1222
 116 000e A520     		movs	r0, #165
1223
1049:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1224
1050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1225
1051:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return readstatus;
1226
 117              		.loc 1 1051 3 is_stmt 1 view .LVU21
1227
1052:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1228
 118              		.loc 1 1052 1 is_stmt 0 view .LVU22
1229
 119 0010 7047     		bx	lr
1230
 120              	.L11:
1231
 121 0012 00BF     		.align	2
1232
 122              	.L10:
1233
 123 0014 00200240 		.word	1073881088
1234
 124              		.cfi_endproc
1235
 125              	.LFE78:
1236
 127              		.section	.text.FLASH_OB_GetUser,"ax",%progbits
1237
 128              		.align	1
1238
 129              		.syntax unified
1239
 130              		.thumb
1240
 131              		.thumb_func
1241
 132              		.fpu softvfp
1242
 134              	FLASH_OB_GetUser:
1243
 135              	.LFB79:
1244
1053:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1245
1054:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
1246
1055:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Return the FLASH User Option Byte value.
1247
1056:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval The FLASH User Option Bytes values: FLASH_OBR_IWDG_SW(Bit2), 
1248
1057:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         FLASH_OBR_nRST_STOP(Bit3),FLASH_OBR_nRST_STDBY(Bit4).
1249
1058:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         And FLASH_OBR_BFB2(Bit5) for STM32F101xG and STM32F103xG . 
1250
1059:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
1251
1060:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** static uint8_t FLASH_OB_GetUser(void)
1252
1061:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
1253
 136              		.loc 1 1061 1 is_stmt 1 view -0
1254
 137              		.cfi_startproc
1255
 138              		@ args = 0, pretend = 0, frame = 0
1256
 139              		@ frame_needed = 0, uses_anonymous_args = 0
1257
 140              		@ link register save eliminated.
1258
1062:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Return the User Option Byte */
1259
1063:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   return (uint8_t)((READ_REG(FLASH->OBR) & FLASH_OBR_USER) >> FLASH_POSITION_IWDGSW_BIT);
1260
 141              		.loc 1 1063 3 view .LVU24
19 mjames 1261
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 22
16 mjames 1262
 
1263
 
1264
 142              		.loc 1 1063 21 is_stmt 0 view .LVU25
1265
 143 0000 024B     		ldr	r3, .L13
1266
 144 0002 D869     		ldr	r0, [r3, #28]
1267
1064:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1268
 145              		.loc 1 1064 1 view .LVU26
1269
 146 0004 C0F38200 		ubfx	r0, r0, #2, #3
1270
 147 0008 7047     		bx	lr
1271
 148              	.L14:
1272
 149 000a 00BF     		.align	2
1273
 150              	.L13:
1274
 151 000c 00200240 		.word	1073881088
1275
 152              		.cfi_endproc
1276
 153              	.LFE79:
1277
 155              		.section	.text.FLASH_OB_RDP_LevelConfig,"ax",%progbits
1278
 156              		.align	1
1279
 157              		.syntax unified
1280
 158              		.thumb
1281
 159              		.thumb_func
1282
 160              		.fpu softvfp
1283
 162              	FLASH_OB_RDP_LevelConfig:
1284
 163              	.LVL3:
1285
 164              	.LFB74:
1286
 887:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1287
 165              		.loc 1 887 1 is_stmt 1 view -0
1288
 166              		.cfi_startproc
1289
 167              		@ args = 0, pretend = 0, frame = 0
1290
 168              		@ frame_needed = 0, uses_anonymous_args = 0
1291
 887:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1292
 169              		.loc 1 887 1 is_stmt 0 view .LVU28
1293
 170 0000 38B5     		push	{r3, r4, r5, lr}
1294
 171              	.LCFI0:
1295
 172              		.cfi_def_cfa_offset 16
1296
 173              		.cfi_offset 3, -16
1297
 174              		.cfi_offset 4, -12
1298
 175              		.cfi_offset 5, -8
1299
 176              		.cfi_offset 14, -4
1300
 177 0002 0546     		mov	r5, r0
1301
 888:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1302
 178              		.loc 1 888 3 is_stmt 1 view .LVU29
1303
 179              	.LVL4:
1304
 891:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1305
 180              		.loc 1 891 3 view .LVU30
1306
 894:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1307
 181              		.loc 1 894 3 view .LVU31
1308
 894:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1309
 182              		.loc 1 894 12 is_stmt 0 view .LVU32
1310
 183 0004 4CF25030 		movw	r0, #50000
1311
 184              	.LVL5:
1312
 894:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1313
 185              		.loc 1 894 12 view .LVU33
1314
 186 0008 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1315
 187              	.LVL6:
1316
 896:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
1317
 188              		.loc 1 896 3 is_stmt 1 view .LVU34
1318
 896:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
1319
 189              		.loc 1 896 5 is_stmt 0 view .LVU35
1320
 190 000c 0346     		mov	r3, r0
19 mjames 1321
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 23
16 mjames 1322
 
1323
 
1324
 191 000e 08B1     		cbz	r0, .L18
1325
 192              	.LVL7:
1326
 193              	.L16:
1327
 926:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1328
 194              		.loc 1 926 3 is_stmt 1 view .LVU36
1329
 927:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1330
 195              		.loc 1 927 1 is_stmt 0 view .LVU37
1331
 196 0010 1846     		mov	r0, r3
1332
 197 0012 38BD     		pop	{r3, r4, r5, pc}
1333
 198              	.LVL8:
1334
 199              	.L18:
1335
 899:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1336
 200              		.loc 1 899 5 is_stmt 1 view .LVU38
1337
 899:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1338
 201              		.loc 1 899 22 is_stmt 0 view .LVU39
1339
 202 0014 134B     		ldr	r3, .L19
1340
 203 0016 0022     		movs	r2, #0
1341
 204 0018 DA61     		str	r2, [r3, #28]
1342
 902:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
1343
 205              		.loc 1 902 5 is_stmt 1 view .LVU40
1344
 206 001a 134C     		ldr	r4, .L19+4
1345
 207 001c 2369     		ldr	r3, [r4, #16]
1346
 208 001e 43F02003 		orr	r3, r3, #32
1347
 209 0022 2361     		str	r3, [r4, #16]
1348
 903:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1349
 210              		.loc 1 903 5 view .LVU41
1350
 211 0024 2369     		ldr	r3, [r4, #16]
1351
 212 0026 43F04003 		orr	r3, r3, #64
1352
 213 002a 2361     		str	r3, [r4, #16]
1353
 906:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1354
 214              		.loc 1 906 5 view .LVU42
1355
 906:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1356
 215              		.loc 1 906 14 is_stmt 0 view .LVU43
1357
 216 002c 4CF25030 		movw	r0, #50000
1358
 217              	.LVL9:
1359
 906:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1360
 218              		.loc 1 906 14 view .LVU44
1361
 219 0030 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1362
 220              	.LVL10:
1363
 909:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1364
 221              		.loc 1 909 5 is_stmt 1 view .LVU45
1365
 222 0034 2369     		ldr	r3, [r4, #16]
1366
 223 0036 23F02003 		bic	r3, r3, #32
1367
 224 003a 2361     		str	r3, [r4, #16]
1368
 911:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1369
 225              		.loc 1 911 5 view .LVU46
1370
 911:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1371
 226              		.loc 1 911 7 is_stmt 0 view .LVU47
1372
 227 003c 0346     		mov	r3, r0
1373
 228 003e 0028     		cmp	r0, #0
1374
 229 0040 E6D1     		bne	.L16
1375
 914:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1376
 230              		.loc 1 914 7 is_stmt 1 view .LVU48
1377
 231 0042 2369     		ldr	r3, [r4, #16]
1378
 232 0044 43F01003 		orr	r3, r3, #16
1379
 233 0048 2361     		str	r3, [r4, #16]
1380
 916:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
19 mjames 1381
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 24
16 mjames 1382
 
1383
 
1384
 234              		.loc 1 916 7 view .LVU49
1385
 235 004a ADB2     		uxth	r5, r5
1386
 236 004c 074B     		ldr	r3, .L19+8
1387
 237 004e 1D80     		strh	r5, [r3]	@ movhi
1388
 919:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1389
 238              		.loc 1 919 7 view .LVU50
1390
 919:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1391
 239              		.loc 1 919 16 is_stmt 0 view .LVU51
1392
 240 0050 4CF25030 		movw	r0, #50000
1393
 241              	.LVL11:
1394
 919:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       
1395
 242              		.loc 1 919 16 view .LVU52
1396
 243 0054 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1397
 244              	.LVL12:
1398
 245 0058 0346     		mov	r3, r0
1399
 246              	.LVL13:
1400
 922:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1401
 247              		.loc 1 922 7 is_stmt 1 view .LVU53
1402
 248 005a 2269     		ldr	r2, [r4, #16]
1403
 249 005c 22F01002 		bic	r2, r2, #16
1404
 250 0060 2261     		str	r2, [r4, #16]
1405
 251 0062 D5E7     		b	.L16
1406
 252              	.L20:
1407
 253              		.align	2
1408
 254              	.L19:
1409
 255 0064 00000000 		.word	pFlash
1410
 256 0068 00200240 		.word	1073881088
1411
 257 006c 00F8FF1F 		.word	536868864
1412
 258              		.cfi_endproc
1413
 259              	.LFE74:
1414
 261              		.section	.text.FLASH_OB_UserConfig,"ax",%progbits
1415
 262              		.align	1
1416
 263              		.syntax unified
1417
 264              		.thumb
1418
 265              		.thumb_func
1419
 266              		.fpu softvfp
1420
 268              	FLASH_OB_UserConfig:
1421
 269              	.LVL14:
1422
 270              	.LFB75:
1423
 938:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1424
 271              		.loc 1 938 1 view -0
1425
 272              		.cfi_startproc
1426
 273              		@ args = 0, pretend = 0, frame = 0
1427
 274              		@ frame_needed = 0, uses_anonymous_args = 0
1428
 938:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1429
 275              		.loc 1 938 1 is_stmt 0 view .LVU55
1430
 276 0000 38B5     		push	{r3, r4, r5, lr}
1431
 277              	.LCFI1:
1432
 278              		.cfi_def_cfa_offset 16
1433
 279              		.cfi_offset 3, -16
1434
 280              		.cfi_offset 4, -12
1435
 281              		.cfi_offset 5, -8
1436
 282              		.cfi_offset 14, -4
1437
 283 0002 0446     		mov	r4, r0
1438
 939:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1439
 284              		.loc 1 939 3 is_stmt 1 view .LVU56
1440
 285              	.LVL15:
19 mjames 1441
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 25
16 mjames 1442
 
1443
 
1444
 942:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_STOP_SOURCE((UserConfig&OB_STOP_NO_RST)));
1445
 286              		.loc 1 942 3 view .LVU57
1446
 943:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   assert_param(IS_OB_STDBY_SOURCE((UserConfig&OB_STDBY_NO_RST)));
1447
 287              		.loc 1 943 3 view .LVU58
1448
 944:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
1449
 288              		.loc 1 944 3 view .LVU59
1450
 950:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1451
 289              		.loc 1 950 3 view .LVU60
1452
 950:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1453
 290              		.loc 1 950 12 is_stmt 0 view .LVU61
1454
 291 0004 4CF25030 		movw	r0, #50000
1455
 292              	.LVL16:
1456
 950:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1457
 293              		.loc 1 950 12 view .LVU62
1458
 294 0008 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1459
 295              	.LVL17:
1460
 952:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {     
1461
 296              		.loc 1 952 3 is_stmt 1 view .LVU63
1462
 952:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {     
1463
 297              		.loc 1 952 5 is_stmt 0 view .LVU64
1464
 298 000c 0346     		mov	r3, r0
1465
 299 000e 08B1     		cbz	r0, .L24
1466
 300              	.LVL18:
1467
 301              	.L22:
1468
 973:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1469
 302              		.loc 1 973 3 is_stmt 1 view .LVU65
1470
 974:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1471
 303              		.loc 1 974 1 is_stmt 0 view .LVU66
1472
 304 0010 1846     		mov	r0, r3
1473
 305 0012 38BD     		pop	{r3, r4, r5, pc}
1474
 306              	.LVL19:
1475
 307              	.L24:
1476
 955:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1477
 308              		.loc 1 955 5 is_stmt 1 view .LVU67
1478
 955:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1479
 309              		.loc 1 955 22 is_stmt 0 view .LVU68
1480
 310 0014 0A4B     		ldr	r3, .L25
1481
 311 0016 0022     		movs	r2, #0
1482
 312 0018 DA61     		str	r2, [r3, #28]
1483
 958:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  
1484
 313              		.loc 1 958 5 is_stmt 1 view .LVU69
1485
 314 001a 0A4D     		ldr	r5, .L25+4
1486
 315 001c 2B69     		ldr	r3, [r5, #16]
1487
 316 001e 43F01003 		orr	r3, r3, #16
1488
 317 0022 2B61     		str	r3, [r5, #16]
1489
 963:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
1490
 318              		.loc 1 963 5 view .LVU70
1491
 963:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
1492
 319              		.loc 1 963 14 is_stmt 0 view .LVU71
1493
 320 0024 44F08804 		orr	r4, r4, #136
1494
 321 0028 074B     		ldr	r3, .L25+8
1495
 322 002a 5C80     		strh	r4, [r3, #2]	@ movhi
1496
 967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1497
 323              		.loc 1 967 5 is_stmt 1 view .LVU72
1498
 967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1499
 324              		.loc 1 967 14 is_stmt 0 view .LVU73
1500
 325 002c 4CF25030 		movw	r0, #50000
19 mjames 1501
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 26
16 mjames 1502
 
1503
 
1504
 326              	.LVL20:
1505
 967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1506
 327              		.loc 1 967 14 view .LVU74
1507
 328 0030 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1508
 329              	.LVL21:
1509
 330 0034 0346     		mov	r3, r0
1510
 331              	.LVL22:
1511
 970:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1512
 332              		.loc 1 970 5 is_stmt 1 view .LVU75
1513
 333 0036 2A69     		ldr	r2, [r5, #16]
1514
 334 0038 22F01002 		bic	r2, r2, #16
1515
 335 003c 2A61     		str	r2, [r5, #16]
1516
 336 003e E7E7     		b	.L22
1517
 337              	.L26:
1518
 338              		.align	2
1519
 339              	.L25:
1520
 340 0040 00000000 		.word	pFlash
1521
 341 0044 00200240 		.word	1073881088
1522
 342 0048 00F8FF1F 		.word	536868864
1523
 343              		.cfi_endproc
1524
 344              	.LFE75:
1525
 346              		.section	.text.FLASH_OB_ProgramData,"ax",%progbits
1526
 347              		.align	1
1527
 348              		.syntax unified
1528
 349              		.thumb
1529
 350              		.thumb_func
1530
 351              		.fpu softvfp
1531
 353              	FLASH_OB_ProgramData:
1532
 354              	.LVL23:
1533
 355              	.LFB76:
1534
 989:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
1535
 356              		.loc 1 989 1 view -0
1536
 357              		.cfi_startproc
1537
 358              		@ args = 0, pretend = 0, frame = 0
1538
 359              		@ frame_needed = 0, uses_anonymous_args = 0
1539
 989:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
1540
 360              		.loc 1 989 1 is_stmt 0 view .LVU77
1541
 361 0000 70B5     		push	{r4, r5, r6, lr}
1542
 362              	.LCFI2:
1543
 363              		.cfi_def_cfa_offset 16
1544
 364              		.cfi_offset 4, -16
1545
 365              		.cfi_offset 5, -12
1546
 366              		.cfi_offset 6, -8
1547
 367              		.cfi_offset 14, -4
1548
 368 0002 0646     		mov	r6, r0
1549
 369 0004 0C46     		mov	r4, r1
1550
 990:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1551
 370              		.loc 1 990 3 is_stmt 1 view .LVU78
1552
 371              	.LVL24:
1553
 993:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1554
 372              		.loc 1 993 3 view .LVU79
1555
 996:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1556
 373              		.loc 1 996 3 view .LVU80
1557
 996:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1558
 374              		.loc 1 996 12 is_stmt 0 view .LVU81
1559
 375 0006 4CF25030 		movw	r0, #50000
1560
 376              	.LVL25:
19 mjames 1561
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 27
16 mjames 1562
 
1563
 
1564
 996:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1565
 377              		.loc 1 996 12 view .LVU82
1566
 378 000a FFF7FEFF 		bl	FLASH_WaitForLastOperation
1567
 379              	.LVL26:
1568
 998:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1569
 380              		.loc 1 998 3 is_stmt 1 view .LVU83
1570
 998:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1571
 381              		.loc 1 998 5 is_stmt 0 view .LVU84
1572
 382 000e 0346     		mov	r3, r0
1573
 383 0010 08B1     		cbz	r0, .L30
1574
 384              	.LVL27:
1575
 385              	.L28:
1576
1014:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1577
 386              		.loc 1 1014 3 is_stmt 1 view .LVU85
1578
1015:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1579
 387              		.loc 1 1015 1 is_stmt 0 view .LVU86
1580
 388 0012 1846     		mov	r0, r3
1581
 389 0014 70BD     		pop	{r4, r5, r6, pc}
1582
 390              	.LVL28:
1583
 391              	.L30:
1584
1001:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1585
 392              		.loc 1 1001 5 is_stmt 1 view .LVU87
1586
1001:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1587
 393              		.loc 1 1001 22 is_stmt 0 view .LVU88
1588
 394 0016 0A4B     		ldr	r3, .L31
1589
 395 0018 0022     		movs	r2, #0
1590
 396 001a DA61     		str	r2, [r3, #28]
1591
1004:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     *(__IO uint16_t*)Address = Data;
1592
 397              		.loc 1 1004 5 is_stmt 1 view .LVU89
1593
 398 001c 094D     		ldr	r5, .L31+4
1594
 399 001e 2B69     		ldr	r3, [r5, #16]
1595
 400 0020 43F01003 		orr	r3, r3, #16
1596
 401 0024 2B61     		str	r3, [r5, #16]
1597
1005:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1598
 402              		.loc 1 1005 5 view .LVU90
1599
1005:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1600
 403              		.loc 1 1005 30 is_stmt 0 view .LVU91
1601
 404 0026 A4B2     		uxth	r4, r4
1602
 405 0028 3480     		strh	r4, [r6]	@ movhi
1603
1008:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1604
 406              		.loc 1 1008 5 is_stmt 1 view .LVU92
1605
1008:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1606
 407              		.loc 1 1008 14 is_stmt 0 view .LVU93
1607
 408 002a 4CF25030 		movw	r0, #50000
1608
 409              	.LVL29:
1609
1008:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1610
 410              		.loc 1 1008 14 view .LVU94
1611
 411 002e FFF7FEFF 		bl	FLASH_WaitForLastOperation
1612
 412              	.LVL30:
1613
 413 0032 0346     		mov	r3, r0
1614
 414              	.LVL31:
1615
1011:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
1616
 415              		.loc 1 1011 5 is_stmt 1 view .LVU95
1617
 416 0034 2A69     		ldr	r2, [r5, #16]
1618
 417 0036 22F01002 		bic	r2, r2, #16
1619
 418 003a 2A61     		str	r2, [r5, #16]
1620
 419 003c E9E7     		b	.L28
19 mjames 1621
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 28
16 mjames 1622
 
1623
 
1624
 420              	.L32:
1625
 421 003e 00BF     		.align	2
1626
 422              	.L31:
1627
 423 0040 00000000 		.word	pFlash
1628
 424 0044 00200240 		.word	1073881088
1629
 425              		.cfi_endproc
1630
 426              	.LFE76:
1631
 428              		.section	.text.HAL_FLASHEx_OBErase,"ax",%progbits
1632
 429              		.align	1
1633
 430              		.global	HAL_FLASHEx_OBErase
1634
 431              		.syntax unified
1635
 432              		.thumb
1636
 433              		.thumb_func
1637
 434              		.fpu softvfp
1638
 436              	HAL_FLASHEx_OBErase:
1639
 437              	.LFB67:
1640
 398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint8_t rdptmp = OB_RDP_LEVEL_0;
1641
 438              		.loc 1 398 1 view -0
1642
 439              		.cfi_startproc
1643
 440              		@ args = 0, pretend = 0, frame = 0
1644
 441              		@ frame_needed = 0, uses_anonymous_args = 0
1645
 442 0000 38B5     		push	{r3, r4, r5, lr}
1646
 443              	.LCFI3:
1647
 444              		.cfi_def_cfa_offset 16
1648
 445              		.cfi_offset 3, -16
1649
 446              		.cfi_offset 4, -12
1650
 447              		.cfi_offset 5, -8
1651
 448              		.cfi_offset 14, -4
1652
 399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
1653
 449              		.loc 1 399 3 view .LVU97
1654
 450              	.LVL32:
1655
 400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1656
 451              		.loc 1 400 3 view .LVU98
1657
 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1658
 452              		.loc 1 403 3 view .LVU99
1659
 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1660
 453              		.loc 1 403 12 is_stmt 0 view .LVU100
1661
 454 0002 FFF7FEFF 		bl	FLASH_OB_GetRDP
1662
 455              	.LVL33:
1663
 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1664
 456              		.loc 1 403 10 view .LVU101
1665
 457 0006 C5B2     		uxtb	r5, r0
1666
 458              	.LVL34:
1667
 406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1668
 459              		.loc 1 406 3 is_stmt 1 view .LVU102
1669
 406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1670
 460              		.loc 1 406 12 is_stmt 0 view .LVU103
1671
 461 0008 4CF25030 		movw	r0, #50000
1672
 462 000c FFF7FEFF 		bl	FLASH_WaitForLastOperation
1673
 463              	.LVL35:
1674
 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1675
 464              		.loc 1 408 3 is_stmt 1 view .LVU104
1676
 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
1677
 465              		.loc 1 408 5 is_stmt 0 view .LVU105
1678
 466 0010 0346     		mov	r3, r0
1679
 467 0012 08B1     		cbz	r0, .L36
1680
 468              	.LVL36:
19 mjames 1681
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 29
16 mjames 1682
 
1683
 
1684
 469              	.L34:
1685
 431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1686
 470              		.loc 1 431 3 is_stmt 1 view .LVU106
1687
 432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1688
 471              		.loc 1 432 1 is_stmt 0 view .LVU107
1689
 472 0014 1846     		mov	r0, r3
1690
 473 0016 38BD     		pop	{r3, r4, r5, pc}
1691
 474              	.LVL37:
1692
 475              	.L36:
1693
 411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1694
 476              		.loc 1 411 5 is_stmt 1 view .LVU108
1695
 411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1696
 477              		.loc 1 411 22 is_stmt 0 view .LVU109
1697
 478 0018 0D4B     		ldr	r3, .L37
1698
 479 001a 0022     		movs	r2, #0
1699
 480 001c DA61     		str	r2, [r3, #28]
1700
 414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
1701
 481              		.loc 1 414 5 is_stmt 1 view .LVU110
1702
 482 001e 0D4C     		ldr	r4, .L37+4
1703
 483 0020 2369     		ldr	r3, [r4, #16]
1704
 484 0022 43F02003 		orr	r3, r3, #32
1705
 485 0026 2361     		str	r3, [r4, #16]
1706
 415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1707
 486              		.loc 1 415 5 view .LVU111
1708
 487 0028 2369     		ldr	r3, [r4, #16]
1709
 488 002a 43F04003 		orr	r3, r3, #64
1710
 489 002e 2361     		str	r3, [r4, #16]
1711
 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1712
 490              		.loc 1 418 5 view .LVU112
1713
 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1714
 491              		.loc 1 418 14 is_stmt 0 view .LVU113
1715
 492 0030 4CF25030 		movw	r0, #50000
1716
 493              	.LVL38:
1717
 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1718
 494              		.loc 1 418 14 view .LVU114
1719
 495 0034 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1720
 496              	.LVL39:
1721
 421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1722
 497              		.loc 1 421 5 is_stmt 1 view .LVU115
1723
 498 0038 2369     		ldr	r3, [r4, #16]
1724
 499 003a 23F02003 		bic	r3, r3, #32
1725
 500 003e 2361     		str	r3, [r4, #16]
1726
 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1727
 501              		.loc 1 423 5 view .LVU116
1728
 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1729
 502              		.loc 1 423 7 is_stmt 0 view .LVU117
1730
 503 0040 0346     		mov	r3, r0
1731
 504 0042 0028     		cmp	r0, #0
1732
 505 0044 E6D1     		bne	.L34
1733
 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1734
 506              		.loc 1 426 7 is_stmt 1 view .LVU118
1735
 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1736
 507              		.loc 1 426 16 is_stmt 0 view .LVU119
1737
 508 0046 2846     		mov	r0, r5
1738
 509              	.LVL40:
1739
 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1740
 510              		.loc 1 426 16 view .LVU120
19 mjames 1741
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 30
16 mjames 1742
 
1743
 
1744
 511 0048 FFF7FEFF 		bl	FLASH_OB_RDP_LevelConfig
1745
 512              	.LVL41:
1746
 513 004c 0346     		mov	r3, r0
1747
 514              	.LVL42:
1748
 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1749
 515              		.loc 1 426 16 view .LVU121
1750
 516 004e E1E7     		b	.L34
1751
 517              	.L38:
1752
 518              		.align	2
1753
 519              	.L37:
1754
 520 0050 00000000 		.word	pFlash
1755
 521 0054 00200240 		.word	1073881088
1756
 522              		.cfi_endproc
1757
 523              	.LFE67:
1758
 525              		.section	.text.FLASH_OB_EnableWRP,"ax",%progbits
1759
 526              		.align	1
1760
 527              		.syntax unified
1761
 528              		.thumb
1762
 529              		.thumb_func
1763
 530              		.fpu softvfp
1764
 532              	FLASH_OB_EnableWRP:
1765
 533              	.LVL43:
1766
 534              	.LFB72:
1767
 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1768
 535              		.loc 1 645 1 is_stmt 1 view -0
1769
 536              		.cfi_startproc
1770
 537              		@ args = 0, pretend = 0, frame = 0
1771
 538              		@ frame_needed = 0, uses_anonymous_args = 0
1772
 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
1773
 539              		.loc 1 645 1 is_stmt 0 view .LVU123
1774
 540 0000 F8B5     		push	{r3, r4, r5, r6, r7, lr}
1775
 541              	.LCFI4:
1776
 542              		.cfi_def_cfa_offset 24
1777
 543              		.cfi_offset 3, -24
1778
 544              		.cfi_offset 4, -20
1779
 545              		.cfi_offset 5, -16
1780
 546              		.cfi_offset 6, -12
1781
 547              		.cfi_offset 7, -8
1782
 548              		.cfi_offset 14, -4
1783
 549 0002 0446     		mov	r4, r0
1784
 646:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP0_Data = 0xFFFF;
1785
 550              		.loc 1 646 3 is_stmt 1 view .LVU124
1786
 551              	.LVL44:
1787
 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP1_WRP1)
1788
 552              		.loc 1 647 3 view .LVU125
1789
 649:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP1_WRP1 */
1790
 553              		.loc 1 649 3 view .LVU126
1791
 652:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP2_WRP2 */
1792
 554              		.loc 1 652 3 view .LVU127
1793
 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP3_WRP3 */
1794
 555              		.loc 1 655 3 view .LVU128
1795
 659:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
1796
 556              		.loc 1 659 3 view .LVU129
1797
 662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1798
 557              		.loc 1 662 3 view .LVU130
1799
 662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1800
 558              		.loc 1 662 37 is_stmt 0 view .LVU131
19 mjames 1801
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 31
16 mjames 1802
 
1803
 
1804
 559 0004 FFF7FEFF 		bl	FLASH_OB_GetWRP
1805
 560              	.LVL45:
1806
 662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
1807
 561              		.loc 1 662 20 view .LVU132
1808
 562 0008 20EA0404 		bic	r4, r0, r4
1809
 563              	.LVL46:
1810
 667:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES0TO31MASK */
1811
 564              		.loc 1 667 3 is_stmt 1 view .LVU133
1812
 673:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO63MASK */
1813
 565              		.loc 1 673 3 view .LVU134
1814
 673:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO63MASK */
1815
 566              		.loc 1 673 13 is_stmt 0 view .LVU135
1816
 567 000c C4F30727 		ubfx	r7, r4, #8, #8
1817
 568              	.LVL47:
1818
 677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES64TO95MASK */
1819
 569              		.loc 1 677 3 is_stmt 1 view .LVU136
1820
 677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES64TO95MASK */
1821
 570              		.loc 1 677 13 is_stmt 0 view .LVU137
1822
 571 0010 C4F30746 		ubfx	r6, r4, #16, #8
1823
 572              	.LVL48:
1824
 684:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO255MASK)
1825
 573              		.loc 1 684 3 is_stmt 1 view .LVU138
1826
 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1827
 574              		.loc 1 694 3 view .LVU139
1828
 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1829
 575              		.loc 1 694 12 is_stmt 0 view .LVU140
1830
 576 0014 4CF25030 		movw	r0, #50000
1831
 577 0018 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1832
 578              	.LVL49:
1833
 696:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
1834
 579              		.loc 1 696 3 is_stmt 1 view .LVU141
1835
 696:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
1836
 580              		.loc 1 696 5 is_stmt 0 view .LVU142
1837
 581 001c 0346     		mov	r3, r0
1838
 582 001e 08B1     		cbz	r0, .L46
1839
 583              	.LVL50:
1840
 584              	.L40:
1841
 753:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
1842
 585              		.loc 1 753 3 is_stmt 1 view .LVU143
1843
 754:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1844
 586              		.loc 1 754 1 is_stmt 0 view .LVU144
1845
 587 0020 1846     		mov	r0, r3
1846
 588 0022 F8BD     		pop	{r3, r4, r5, r6, r7, pc}
1847
 589              	.LVL51:
1848
 590              	.L46:
1849
 754:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1850
 591              		.loc 1 754 1 view .LVU145
1851
 592 0024 E5B2     		uxtb	r5, r4
1852
 593 0026 240E     		lsrs	r4, r4, #24
1853
 594              	.LVL52:
1854
 699:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1855
 595              		.loc 1 699 5 is_stmt 1 view .LVU146
1856
 699:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1857
 596              		.loc 1 699 22 is_stmt 0 view .LVU147
1858
 597 0028 224B     		ldr	r3, .L51
1859
 598 002a 0022     		movs	r2, #0
1860
 599 002c DA61     		str	r2, [r3, #28]
19 mjames 1861
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 32
16 mjames 1862
 
1863
 
1864
 702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status == HAL_OK)  
1865
 600              		.loc 1 702 5 is_stmt 1 view .LVU148
1866
 702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status == HAL_OK)  
1867
 601              		.loc 1 702 14 is_stmt 0 view .LVU149
1868
 602 002e FFF7FEFF 		bl	HAL_FLASHEx_OBErase
1869
 603              	.LVL53:
1870
 703:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1871
 604              		.loc 1 703 5 is_stmt 1 view .LVU150
1872
 703:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
1873
 605              		.loc 1 703 8 is_stmt 0 view .LVU151
1874
 606 0032 0346     		mov	r3, r0
1875
 607 0034 0028     		cmp	r0, #0
1876
 608 0036 F3D1     		bne	.L40
1877
 706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
1878
 609              		.loc 1 706 7 is_stmt 1 view .LVU152
1879
 610 0038 1F49     		ldr	r1, .L51+4
1880
 611 003a 0A69     		ldr	r2, [r1, #16]
1881
 612 003c 42F01002 		orr	r2, r2, #16
1882
 613 0040 0A61     		str	r2, [r1, #16]
1883
 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1884
 614              		.loc 1 709 7 view .LVU153
1885
 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1886
 615              		.loc 1 709 9 is_stmt 0 view .LVU154
1887
 616 0042 FF2D     		cmp	r5, #255
1888
 617 0044 0ED1     		bne	.L47
1889
 618              	.LVL54:
1890
 619              	.L41:
1891
 719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1892
 620              		.loc 1 719 7 is_stmt 1 view .LVU155
1893
 719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1894
 621              		.loc 1 719 9 is_stmt 0 view .LVU156
1895
 622 0046 0BB9     		cbnz	r3, .L42
1896
 719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1897
 623              		.loc 1 719 29 discriminator 1 view .LVU157
1898
 624 0048 FF2F     		cmp	r7, #255
1899
 625 004a 15D1     		bne	.L48
1900
 626              	.LVL55:
1901
 627              	.L42:
1902
 729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1903
 628              		.loc 1 729 7 is_stmt 1 view .LVU158
1904
 729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1905
 629              		.loc 1 729 9 is_stmt 0 view .LVU159
1906
 630 004c 0BB9     		cbnz	r3, .L43
1907
 729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1908
 631              		.loc 1 729 29 discriminator 1 view .LVU160
1909
 632 004e FF2E     		cmp	r6, #255
1910
 633 0050 1CD1     		bne	.L49
1911
 634              	.LVL56:
1912
 635              	.L43:
1913
 739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1914
 636              		.loc 1 739 7 is_stmt 1 view .LVU161
1915
 739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1916
 637              		.loc 1 739 9 is_stmt 0 view .LVU162
1917
 638 0052 0BB9     		cbnz	r3, .L44
1918
 739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
1919
 639              		.loc 1 739 29 discriminator 1 view .LVU163
1920
 640 0054 FF2C     		cmp	r4, #255
19 mjames 1921
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 33
16 mjames 1922
 
1923
 
1924
 641 0056 23D1     		bne	.L50
1925
 642              	.L44:
1926
 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
1927
 643              		.loc 1 749 7 is_stmt 1 view .LVU164
1928
 644 0058 1749     		ldr	r1, .L51+4
1929
 645 005a 0A69     		ldr	r2, [r1, #16]
1930
 646 005c 22F01002 		bic	r2, r2, #16
1931
 647 0060 0A61     		str	r2, [r1, #16]
1932
 648 0062 DDE7     		b	.L40
1933
 649              	.LVL57:
1934
 650              	.L47:
1935
 711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1936
 651              		.loc 1 711 9 view .LVU165
1937
 711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1938
 652              		.loc 1 711 18 is_stmt 0 view .LVU166
1939
 653 0064 154B     		ldr	r3, .L51+8
1940
 654 0066 1A89     		ldrh	r2, [r3, #8]
1941
 655 0068 1540     		ands	r5, r5, r2
1942
 656              	.LVL58:
1943
 711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1944
 657              		.loc 1 711 18 view .LVU167
1945
 658 006a 1D81     		strh	r5, [r3, #8]	@ movhi
1946
 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1947
 659              		.loc 1 714 9 is_stmt 1 view .LVU168
1948
 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1949
 660              		.loc 1 714 18 is_stmt 0 view .LVU169
1950
 661 006c 4CF25030 		movw	r0, #50000
1951
 662              	.LVL59:
1952
 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1953
 663              		.loc 1 714 18 view .LVU170
1954
 664 0070 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1955
 665              	.LVL60:
1956
 666 0074 0346     		mov	r3, r0
1957
 667              	.LVL61:
1958
 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1959
 668              		.loc 1 714 18 view .LVU171
1960
 669 0076 E6E7     		b	.L41
1961
 670              	.L48:
1962
 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1963
 671              		.loc 1 721 9 is_stmt 1 view .LVU172
1964
 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1965
 672              		.loc 1 721 18 is_stmt 0 view .LVU173
1966
 673 0078 104B     		ldr	r3, .L51+8
1967
 674              	.LVL62:
1968
 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1969
 675              		.loc 1 721 18 view .LVU174
1970
 676 007a 5A89     		ldrh	r2, [r3, #10]
1971
 677 007c 1740     		ands	r7, r7, r2
1972
 678              	.LVL63:
1973
 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1974
 679              		.loc 1 721 18 view .LVU175
1975
 680 007e 5F81     		strh	r7, [r3, #10]	@ movhi
1976
 724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1977
 681              		.loc 1 724 9 is_stmt 1 view .LVU176
1978
 724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1979
 682              		.loc 1 724 18 is_stmt 0 view .LVU177
1980
 683 0080 4CF25030 		movw	r0, #50000
19 mjames 1981
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 34
16 mjames 1982
 
1983
 
1984
 684 0084 FFF7FEFF 		bl	FLASH_WaitForLastOperation
1985
 685              	.LVL64:
1986
 686 0088 0346     		mov	r3, r0
1987
 687              	.LVL65:
1988
 724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
1989
 688              		.loc 1 724 18 view .LVU178
1990
 689 008a DFE7     		b	.L42
1991
 690              	.L49:
1992
 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1993
 691              		.loc 1 731 9 is_stmt 1 view .LVU179
1994
 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1995
 692              		.loc 1 731 18 is_stmt 0 view .LVU180
1996
 693 008c 0B4B     		ldr	r3, .L51+8
1997
 694              	.LVL66:
1998
 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
1999
 695              		.loc 1 731 18 view .LVU181
2000
 696 008e 9A89     		ldrh	r2, [r3, #12]
2001
 697 0090 1640     		ands	r6, r6, r2
2002
 698              	.LVL67:
2003
 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2004
 699              		.loc 1 731 18 view .LVU182
2005
 700 0092 9E81     		strh	r6, [r3, #12]	@ movhi
2006
 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2007
 701              		.loc 1 734 9 is_stmt 1 view .LVU183
2008
 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2009
 702              		.loc 1 734 18 is_stmt 0 view .LVU184
2010
 703 0094 4CF25030 		movw	r0, #50000
2011
 704 0098 FFF7FEFF 		bl	FLASH_WaitForLastOperation
2012
 705              	.LVL68:
2013
 706 009c 0346     		mov	r3, r0
2014
 707              	.LVL69:
2015
 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2016
 708              		.loc 1 734 18 view .LVU185
2017
 709 009e D8E7     		b	.L43
2018
 710              	.L50:
2019
 741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2020
 711              		.loc 1 741 9 is_stmt 1 view .LVU186
2021
 741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2022
 712              		.loc 1 741 18 is_stmt 0 view .LVU187
2023
 713 00a0 064B     		ldr	r3, .L51+8
2024
 714              	.LVL70:
2025
 741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2026
 715              		.loc 1 741 18 view .LVU188
2027
 716 00a2 D889     		ldrh	r0, [r3, #14]
2028
 717 00a4 2040     		ands	r0, r0, r4
2029
 718 00a6 D881     		strh	r0, [r3, #14]	@ movhi
2030
 744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2031
 719              		.loc 1 744 9 is_stmt 1 view .LVU189
2032
 744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2033
 720              		.loc 1 744 18 is_stmt 0 view .LVU190
2034
 721 00a8 4CF25030 		movw	r0, #50000
2035
 722 00ac FFF7FEFF 		bl	FLASH_WaitForLastOperation
2036
 723              	.LVL71:
2037
 724 00b0 0346     		mov	r3, r0
2038
 725              	.LVL72:
2039
 744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2040
 726              		.loc 1 744 18 view .LVU191
19 mjames 2041
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 35
16 mjames 2042
 
2043
 
2044
 727 00b2 D1E7     		b	.L44
2045
 728              	.L52:
2046
 729              		.align	2
2047
 730              	.L51:
2048
 731 00b4 00000000 		.word	pFlash
2049
 732 00b8 00200240 		.word	1073881088
2050
 733 00bc 00F8FF1F 		.word	536868864
2051
 734              		.cfi_endproc
2052
 735              	.LFE72:
2053
 737              		.section	.text.FLASH_OB_DisableWRP,"ax",%progbits
2054
 738              		.align	1
2055
 739              		.syntax unified
2056
 740              		.thumb
2057
 741              		.thumb_func
2058
 742              		.fpu softvfp
2059
 744              	FLASH_OB_DisableWRP:
2060
 745              	.LVL73:
2061
 746              	.LFB73:
2062
 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
2063
 747              		.loc 1 768 1 is_stmt 1 view -0
2064
 748              		.cfi_startproc
2065
 749              		@ args = 0, pretend = 0, frame = 0
2066
 750              		@ frame_needed = 0, uses_anonymous_args = 0
2067
 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
2068
 751              		.loc 1 768 1 is_stmt 0 view .LVU193
2069
 752 0000 F8B5     		push	{r3, r4, r5, r6, r7, lr}
2070
 753              	.LCFI5:
2071
 754              		.cfi_def_cfa_offset 24
2072
 755              		.cfi_offset 3, -24
2073
 756              		.cfi_offset 4, -20
2074
 757              		.cfi_offset 5, -16
2075
 758              		.cfi_offset 6, -12
2076
 759              		.cfi_offset 7, -8
2077
 760              		.cfi_offset 14, -4
2078
 761 0002 0446     		mov	r4, r0
2079
 769:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint16_t WRP0_Data = 0xFFFF;
2080
 762              		.loc 1 769 3 is_stmt 1 view .LVU194
2081
 763              	.LVL74:
2082
 770:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_WRP1_WRP1)
2083
 764              		.loc 1 770 3 view .LVU195
2084
 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP1_WRP1 */
2085
 765              		.loc 1 772 3 view .LVU196
2086
 775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP2_WRP2 */
2087
 766              		.loc 1 775 3 view .LVU197
2088
 778:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_WRP3_WRP3 */
2089
 767              		.loc 1 778 3 view .LVU198
2090
 782:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2091
 768              		.loc 1 782 3 view .LVU199
2092
 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2093
 769              		.loc 1 785 3 view .LVU200
2094
 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2095
 770              		.loc 1 785 23 is_stmt 0 view .LVU201
2096
 771 0004 FFF7FEFF 		bl	FLASH_OB_GetWRP
2097
 772              	.LVL75:
2098
 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2099
 773              		.loc 1 785 20 view .LVU202
2100
 774 0008 0443     		orrs	r4, r4, r0
19 mjames 2101
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 36
16 mjames 2102
 
2103
 
2104
 775              	.LVL76:
2105
 790:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES0TO31MASK */
2106
 776              		.loc 1 790 3 is_stmt 1 view .LVU203
2107
 796:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO63MASK */
2108
 777              		.loc 1 796 3 view .LVU204
2109
 796:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES32TO63MASK */
2110
 778              		.loc 1 796 13 is_stmt 0 view .LVU205
2111
 779 000a C4F30727 		ubfx	r7, r4, #8, #8
2112
 780              	.LVL77:
2113
 800:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES64TO95MASK */
2114
 781              		.loc 1 800 3 is_stmt 1 view .LVU206
2115
 800:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* OB_WRP_PAGES64TO95MASK */
2116
 782              		.loc 1 800 13 is_stmt 0 view .LVU207
2117
 783 000e C4F30746 		ubfx	r6, r4, #16, #8
2118
 784              	.LVL78:
2119
 807:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #elif defined(OB_WRP_PAGES48TO255MASK)
2120
 785              		.loc 1 807 3 is_stmt 1 view .LVU208
2121
 818:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2122
 786              		.loc 1 818 3 view .LVU209
2123
 818:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2124
 787              		.loc 1 818 12 is_stmt 0 view .LVU210
2125
 788 0012 4CF25030 		movw	r0, #50000
2126
 789 0016 FFF7FEFF 		bl	FLASH_WaitForLastOperation
2127
 790              	.LVL79:
2128
 820:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
2129
 791              		.loc 1 820 3 is_stmt 1 view .LVU211
2130
 820:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
2131
 792              		.loc 1 820 5 is_stmt 0 view .LVU212
2132
 793 001a 0346     		mov	r3, r0
2133
 794 001c 08B1     		cbz	r0, .L60
2134
 795              	.LVL80:
2135
 796              	.L54:
2136
 875:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2137
 797              		.loc 1 875 3 is_stmt 1 view .LVU213
2138
 876:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2139
 798              		.loc 1 876 1 is_stmt 0 view .LVU214
2140
 799 001e 1846     		mov	r0, r3
2141
 800 0020 F8BD     		pop	{r3, r4, r5, r6, r7, pc}
2142
 801              	.LVL81:
2143
 802              	.L60:
2144
 876:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2145
 803              		.loc 1 876 1 view .LVU215
2146
 804 0022 E5B2     		uxtb	r5, r4
2147
 805 0024 240E     		lsrs	r4, r4, #24
2148
 806              	.LVL82:
2149
 823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2150
 807              		.loc 1 823 5 is_stmt 1 view .LVU216
2151
 823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2152
 808              		.loc 1 823 22 is_stmt 0 view .LVU217
2153
 809 0026 234B     		ldr	r3, .L65
2154
 810 0028 0022     		movs	r2, #0
2155
 811 002a DA61     		str	r2, [r3, #28]
2156
 826:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status == HAL_OK)  
2157
 812              		.loc 1 826 5 is_stmt 1 view .LVU218
2158
 826:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status == HAL_OK)  
2159
 813              		.loc 1 826 14 is_stmt 0 view .LVU219
2160
 814 002c FFF7FEFF 		bl	HAL_FLASHEx_OBErase
19 mjames 2161
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 37
16 mjames 2162
 
2163
 
2164
 815              	.LVL83:
2165
 827:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2166
 816              		.loc 1 827 5 is_stmt 1 view .LVU220
2167
 827:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2168
 817              		.loc 1 827 8 is_stmt 0 view .LVU221
2169
 818 0030 0346     		mov	r3, r0
2170
 819 0032 0028     		cmp	r0, #0
2171
 820 0034 F3D1     		bne	.L54
2172
 829:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2173
 821              		.loc 1 829 7 is_stmt 1 view .LVU222
2174
 822 0036 2049     		ldr	r1, .L65+4
2175
 823 0038 0A69     		ldr	r2, [r1, #16]
2176
 824 003a 42F01002 		orr	r2, r2, #16
2177
 825 003e 0A61     		str	r2, [r1, #16]
2178
 832:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2179
 826              		.loc 1 832 7 view .LVU223
2180
 832:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2181
 827              		.loc 1 832 9 is_stmt 0 view .LVU224
2182
 828 0040 FF2D     		cmp	r5, #255
2183
 829 0042 0ED1     		bne	.L61
2184
 830              	.LVL84:
2185
 831              	.L55:
2186
 842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2187
 832              		.loc 1 842 7 is_stmt 1 view .LVU225
2188
 842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2189
 833              		.loc 1 842 9 is_stmt 0 view .LVU226
2190
 834 0044 0BB9     		cbnz	r3, .L56
2191
 842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2192
 835              		.loc 1 842 29 discriminator 1 view .LVU227
2193
 836 0046 FF2F     		cmp	r7, #255
2194
 837 0048 15D1     		bne	.L62
2195
 838              	.LVL85:
2196
 839              	.L56:
2197
 852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2198
 840              		.loc 1 852 7 is_stmt 1 view .LVU228
2199
 852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2200
 841              		.loc 1 852 9 is_stmt 0 view .LVU229
2201
 842 004a 0BB9     		cbnz	r3, .L57
2202
 852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2203
 843              		.loc 1 852 29 discriminator 1 view .LVU230
2204
 844 004c FF2E     		cmp	r6, #255
2205
 845 004e 1CD1     		bne	.L63
2206
 846              	.LVL86:
2207
 847              	.L57:
2208
 862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2209
 848              		.loc 1 862 7 is_stmt 1 view .LVU231
2210
 862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2211
 849              		.loc 1 862 9 is_stmt 0 view .LVU232
2212
 850 0050 0BB9     		cbnz	r3, .L58
2213
 862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2214
 851              		.loc 1 862 29 discriminator 1 view .LVU233
2215
 852 0052 FF2C     		cmp	r4, #255
2216
 853 0054 23D1     		bne	.L64
2217
 854              	.L58:
2218
 872:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2219
 855              		.loc 1 872 7 is_stmt 1 view .LVU234
2220
 856 0056 1849     		ldr	r1, .L65+4
19 mjames 2221
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 38
16 mjames 2222
 
2223
 
2224
 857 0058 0A69     		ldr	r2, [r1, #16]
2225
 858 005a 22F01002 		bic	r2, r2, #16
2226
 859 005e 0A61     		str	r2, [r1, #16]
2227
 860 0060 DDE7     		b	.L54
2228
 861              	.LVL87:
2229
 862              	.L61:
2230
 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2231
 863              		.loc 1 834 9 view .LVU235
2232
 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2233
 864              		.loc 1 834 18 is_stmt 0 view .LVU236
2234
 865 0062 164B     		ldr	r3, .L65+8
2235
 866 0064 1A89     		ldrh	r2, [r3, #8]
2236
 867 0066 1543     		orrs	r5, r5, r2
2237
 868              	.LVL88:
2238
 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2239
 869              		.loc 1 834 18 view .LVU237
2240
 870 0068 1D81     		strh	r5, [r3, #8]	@ movhi
2241
 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2242
 871              		.loc 1 837 9 is_stmt 1 view .LVU238
2243
 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2244
 872              		.loc 1 837 18 is_stmt 0 view .LVU239
2245
 873 006a 4CF25030 		movw	r0, #50000
2246
 874              	.LVL89:
2247
 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2248
 875              		.loc 1 837 18 view .LVU240
2249
 876 006e FFF7FEFF 		bl	FLASH_WaitForLastOperation
2250
 877              	.LVL90:
2251
 878 0072 0346     		mov	r3, r0
2252
 879              	.LVL91:
2253
 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2254
 880              		.loc 1 837 18 view .LVU241
2255
 881 0074 E6E7     		b	.L55
2256
 882              	.L62:
2257
 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2258
 883              		.loc 1 844 9 is_stmt 1 view .LVU242
2259
 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2260
 884              		.loc 1 844 18 is_stmt 0 view .LVU243
2261
 885 0076 114B     		ldr	r3, .L65+8
2262
 886              	.LVL92:
2263
 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2264
 887              		.loc 1 844 18 view .LVU244
2265
 888 0078 5A89     		ldrh	r2, [r3, #10]
2266
 889 007a 1743     		orrs	r7, r7, r2
2267
 890              	.LVL93:
2268
 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2269
 891              		.loc 1 844 18 view .LVU245
2270
 892 007c 5F81     		strh	r7, [r3, #10]	@ movhi
2271
 847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2272
 893              		.loc 1 847 9 is_stmt 1 view .LVU246
2273
 847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2274
 894              		.loc 1 847 18 is_stmt 0 view .LVU247
2275
 895 007e 4CF25030 		movw	r0, #50000
2276
 896 0082 FFF7FEFF 		bl	FLASH_WaitForLastOperation
2277
 897              	.LVL94:
2278
 898 0086 0346     		mov	r3, r0
2279
 899              	.LVL95:
2280
 847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
19 mjames 2281
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 39
16 mjames 2282
 
2283
 
2284
 900              		.loc 1 847 18 view .LVU248
2285
 901 0088 DFE7     		b	.L56
2286
 902              	.L63:
2287
 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2288
 903              		.loc 1 854 9 is_stmt 1 view .LVU249
2289
 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2290
 904              		.loc 1 854 18 is_stmt 0 view .LVU250
2291
 905 008a 0C4B     		ldr	r3, .L65+8
2292
 906              	.LVL96:
2293
 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2294
 907              		.loc 1 854 18 view .LVU251
2295
 908 008c 9A89     		ldrh	r2, [r3, #12]
2296
 909 008e 1643     		orrs	r6, r6, r2
2297
 910              	.LVL97:
2298
 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2299
 911              		.loc 1 854 18 view .LVU252
2300
 912 0090 9E81     		strh	r6, [r3, #12]	@ movhi
2301
 857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2302
 913              		.loc 1 857 9 is_stmt 1 view .LVU253
2303
 857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2304
 914              		.loc 1 857 18 is_stmt 0 view .LVU254
2305
 915 0092 4CF25030 		movw	r0, #50000
2306
 916 0096 FFF7FEFF 		bl	FLASH_WaitForLastOperation
2307
 917              	.LVL98:
2308
 918 009a 0346     		mov	r3, r0
2309
 919              	.LVL99:
2310
 857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2311
 920              		.loc 1 857 18 view .LVU255
2312
 921 009c D8E7     		b	.L57
2313
 922              	.L64:
2314
 864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2315
 923              		.loc 1 864 9 is_stmt 1 view .LVU256
2316
 864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2317
 924              		.loc 1 864 18 is_stmt 0 view .LVU257
2318
 925 009e 074B     		ldr	r3, .L65+8
2319
 926              	.LVL100:
2320
 864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2321
 927              		.loc 1 864 18 view .LVU258
2322
 928 00a0 D889     		ldrh	r0, [r3, #14]
2323
 929 00a2 2043     		orrs	r0, r0, r4
2324
 930 00a4 D881     		strh	r0, [r3, #14]	@ movhi
2325
 867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2326
 931              		.loc 1 867 9 is_stmt 1 view .LVU259
2327
 867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2328
 932              		.loc 1 867 18 is_stmt 0 view .LVU260
2329
 933 00a6 4CF25030 		movw	r0, #50000
2330
 934 00aa FFF7FEFF 		bl	FLASH_WaitForLastOperation
2331
 935              	.LVL101:
2332
 936 00ae 0346     		mov	r3, r0
2333
 937              	.LVL102:
2334
 867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
2335
 938              		.loc 1 867 18 view .LVU261
2336
 939 00b0 D1E7     		b	.L58
2337
 940              	.L66:
2338
 941 00b2 00BF     		.align	2
2339
 942              	.L65:
2340
 943 00b4 00000000 		.word	pFlash
19 mjames 2341
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 40
16 mjames 2342
 
2343
 
2344
 944 00b8 00200240 		.word	1073881088
2345
 945 00bc 00F8FF1F 		.word	536868864
2346
 946              		.cfi_endproc
2347
 947              	.LFE73:
2348
 949              		.section	.text.HAL_FLASHEx_OBProgram,"ax",%progbits
2349
 950              		.align	1
2350
 951              		.global	HAL_FLASHEx_OBProgram
2351
 952              		.syntax unified
2352
 953              		.thumb
2353
 954              		.thumb_func
2354
 955              		.fpu softvfp
2355
 957              	HAL_FLASHEx_OBProgram:
2356
 958              	.LVL103:
2357
 959              	.LFB68:
2358
 447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
2359
 960              		.loc 1 447 1 is_stmt 1 view -0
2360
 961              		.cfi_startproc
2361
 962              		@ args = 0, pretend = 0, frame = 0
2362
 963              		@ frame_needed = 0, uses_anonymous_args = 0
2363
 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2364
 964              		.loc 1 448 3 view .LVU263
2365
 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2366
 965              		.loc 1 451 3 view .LVU264
2367
 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2368
 966              		.loc 1 451 3 view .LVU265
2369
 967 0000 284B     		ldr	r3, .L85
2370
 968 0002 1B7E     		ldrb	r3, [r3, #24]	@ zero_extendqisi2
2371
 969 0004 012B     		cmp	r3, #1
2372
 970 0006 4AD0     		beq	.L75
2373
 447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
2374
 971              		.loc 1 447 1 is_stmt 0 discriminator 2 view .LVU266
2375
 972 0008 10B5     		push	{r4, lr}
2376
 973              	.LCFI6:
2377
 974              		.cfi_def_cfa_offset 8
2378
 975              		.cfi_offset 4, -8
2379
 976              		.cfi_offset 14, -4
2380
 977 000a 0446     		mov	r4, r0
2381
 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2382
 978              		.loc 1 451 3 is_stmt 1 discriminator 2 view .LVU267
2383
 979 000c 254B     		ldr	r3, .L85
2384
 980 000e 0122     		movs	r2, #1
2385
 981 0010 1A76     		strb	r2, [r3, #24]
2386
 454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2387
 982              		.loc 1 454 3 discriminator 2 view .LVU268
2388
 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2389
 983              		.loc 1 457 3 discriminator 2 view .LVU269
2390
 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2391
 984              		.loc 1 457 14 is_stmt 0 discriminator 2 view .LVU270
2392
 985 0012 0368     		ldr	r3, [r0]
2393
 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2394
 986              		.loc 1 457 5 discriminator 2 view .LVU271
2395
 987 0014 13F0010F 		tst	r3, #1
2396
 988 0018 10D0     		beq	.L76
2397
 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (pOBInit->WRPState == OB_WRPSTATE_ENABLE)
2398
 989              		.loc 1 459 5 is_stmt 1 view .LVU272
2399
 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2400
 990              		.loc 1 460 5 view .LVU273
19 mjames 2401
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 41
16 mjames 2402
 
2403
 
2404
 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2405
 991              		.loc 1 460 16 is_stmt 0 view .LVU274
2406
 992 001a 4368     		ldr	r3, [r0, #4]
2407
 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2408
 993              		.loc 1 460 8 view .LVU275
2409
 994 001c 9342     		cmp	r3, r2
2410
 995 001e 08D0     		beq	.L81
2411
 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2412
 996              		.loc 1 468 7 is_stmt 1 view .LVU276
2413
 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2414
 997              		.loc 1 468 16 is_stmt 0 view .LVU277
2415
 998 0020 8068     		ldr	r0, [r0, #8]
2416
 999              	.LVL104:
2417
 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2418
 1000              		.loc 1 468 16 view .LVU278
2419
 1001 0022 FFF7FEFF 		bl	FLASH_OB_DisableWRP
2420
 1002              	.LVL105:
2421
 1003 0026 0346     		mov	r3, r0
2422
 1004              	.LVL106:
2423
 1005              	.L71:
2424
 470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2425
 1006              		.loc 1 470 5 is_stmt 1 view .LVU279
2426
 470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2427
 1007              		.loc 1 470 8 is_stmt 0 view .LVU280
2428
 1008 0028 4BB1     		cbz	r3, .L69
2429
 473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2430
 1009              		.loc 1 473 7 is_stmt 1 view .LVU281
2431
 473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2432
 1010              		.loc 1 473 7 view .LVU282
2433
 1011 002a 1E4A     		ldr	r2, .L85
2434
 1012 002c 0021     		movs	r1, #0
2435
 1013 002e 1176     		strb	r1, [r2, #24]
2436
 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2437
 1014              		.loc 1 474 7 view .LVU283
2438
 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2439
 1015              		.loc 1 474 14 is_stmt 0 view .LVU284
2440
 1016 0030 14E0     		b	.L68
2441
 1017              	.LVL107:
2442
 1018              	.L81:
2443
 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2444
 1019              		.loc 1 463 7 is_stmt 1 view .LVU285
2445
 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2446
 1020              		.loc 1 463 16 is_stmt 0 view .LVU286
2447
 1021 0032 8068     		ldr	r0, [r0, #8]
2448
 1022              	.LVL108:
2449
 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2450
 1023              		.loc 1 463 16 view .LVU287
2451
 1024 0034 FFF7FEFF 		bl	FLASH_OB_EnableWRP
2452
 1025              	.LVL109:
2453
 1026 0038 0346     		mov	r3, r0
2454
 1027              	.LVL110:
2455
 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2456
 1028              		.loc 1 463 16 view .LVU288
2457
 1029 003a F5E7     		b	.L71
2458
 1030              	.LVL111:
2459
 1031              	.L76:
2460
 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
19 mjames 2461
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 42
16 mjames 2462
 
2463
 
2464
 1032              		.loc 1 448 21 view .LVU289
2465
 1033 003c 0123     		movs	r3, #1
2466
 1034              	.LVL112:
2467
 1035              	.L69:
2468
 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2469
 1036              		.loc 1 479 3 is_stmt 1 view .LVU290
2470
 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2471
 1037              		.loc 1 479 14 is_stmt 0 view .LVU291
2472
 1038 003e 2268     		ldr	r2, [r4]
2473
 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2474
 1039              		.loc 1 479 5 view .LVU292
2475
 1040 0040 12F0020F 		tst	r2, #2
2476
 1041 0044 0CD1     		bne	.L82
2477
 1042              	.LVL113:
2478
 1043              	.L72:
2479
 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2480
 1044              		.loc 1 491 3 is_stmt 1 view .LVU293
2481
 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2482
 1045              		.loc 1 491 14 is_stmt 0 view .LVU294
2483
 1046 0046 2268     		ldr	r2, [r4]
2484
 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2485
 1047              		.loc 1 491 5 view .LVU295
2486
 1048 0048 12F0040F 		tst	r2, #4
2487
 1049 004c 12D1     		bne	.L83
2488
 1050              	.LVL114:
2489
 1051              	.L73:
2490
 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2491
 1052              		.loc 1 503 3 is_stmt 1 view .LVU296
2492
 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2493
 1053              		.loc 1 503 14 is_stmt 0 view .LVU297
2494
 1054 004e 2268     		ldr	r2, [r4]
2495
 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2496
 1055              		.loc 1 503 5 view .LVU298
2497
 1056 0050 12F0080F 		tst	r2, #8
2498
 1057 0054 18D1     		bne	.L84
2499
 1058              	.LVL115:
2500
 1059              	.L74:
2501
 515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2502
 1060              		.loc 1 515 3 is_stmt 1 view .LVU299
2503
 515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2504
 1061              		.loc 1 515 3 view .LVU300
2505
 1062 0056 134A     		ldr	r2, .L85
2506
 1063 0058 0021     		movs	r1, #0
2507
 1064 005a 1176     		strb	r1, [r2, #24]
2508
 517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2509
 1065              		.loc 1 517 3 view .LVU301
2510
 1066              	.LVL116:
2511
 1067              	.L68:
2512
 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2513
 1068              		.loc 1 518 1 is_stmt 0 view .LVU302
2514
 1069 005c 1846     		mov	r0, r3
2515
 1070 005e 10BD     		pop	{r4, pc}
2516
 1071              	.LVL117:
2517
 1072              	.L82:
2518
 481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
2519
 1073              		.loc 1 481 5 is_stmt 1 view .LVU303
2520
 481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
19 mjames 2521
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 43
16 mjames 2522
 
2523
 
2524
 1074              		.loc 1 481 14 is_stmt 0 view .LVU304
2525
 1075 0060 207C     		ldrb	r0, [r4, #16]	@ zero_extendqisi2
2526
 1076 0062 FFF7FEFF 		bl	FLASH_OB_RDP_LevelConfig
2527
 1077              	.LVL118:
2528
 482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2529
 1078              		.loc 1 482 5 is_stmt 1 view .LVU305
2530
 482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2531
 1079              		.loc 1 482 8 is_stmt 0 view .LVU306
2532
 1080 0066 0346     		mov	r3, r0
2533
 1081 0068 0028     		cmp	r0, #0
2534
 1082 006a ECD0     		beq	.L72
2535
 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2536
 1083              		.loc 1 485 7 is_stmt 1 view .LVU307
2537
 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2538
 1084              		.loc 1 485 7 view .LVU308
2539
 1085 006c 0D4A     		ldr	r2, .L85
2540
 1086 006e 0021     		movs	r1, #0
2541
 1087 0070 1176     		strb	r1, [r2, #24]
2542
 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2543
 1088              		.loc 1 486 7 view .LVU309
2544
 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2545
 1089              		.loc 1 486 14 is_stmt 0 view .LVU310
2546
 1090 0072 F3E7     		b	.L68
2547
 1091              	.LVL119:
2548
 1092              	.L83:
2549
 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
2550
 1093              		.loc 1 493 5 is_stmt 1 view .LVU311
2551
 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
2552
 1094              		.loc 1 493 14 is_stmt 0 view .LVU312
2553
 1095 0074 607C     		ldrb	r0, [r4, #17]	@ zero_extendqisi2
2554
 1096 0076 FFF7FEFF 		bl	FLASH_OB_UserConfig
2555
 1097              	.LVL120:
2556
 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2557
 1098              		.loc 1 494 5 is_stmt 1 view .LVU313
2558
 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2559
 1099              		.loc 1 494 8 is_stmt 0 view .LVU314
2560
 1100 007a 0346     		mov	r3, r0
2561
 1101 007c 0028     		cmp	r0, #0
2562
 1102 007e E6D0     		beq	.L73
2563
 497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2564
 1103              		.loc 1 497 7 is_stmt 1 view .LVU315
2565
 497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2566
 1104              		.loc 1 497 7 view .LVU316
2567
 1105 0080 084A     		ldr	r2, .L85
2568
 1106 0082 0021     		movs	r1, #0
2569
 1107 0084 1176     		strb	r1, [r2, #24]
2570
 498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2571
 1108              		.loc 1 498 7 view .LVU317
2572
 498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2573
 1109              		.loc 1 498 14 is_stmt 0 view .LVU318
2574
 1110 0086 E9E7     		b	.L68
2575
 1111              	.LVL121:
2576
 1112              	.L84:
2577
 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
2578
 1113              		.loc 1 505 5 is_stmt 1 view .LVU319
2579
 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     if (status != HAL_OK)
2580
 1114              		.loc 1 505 14 is_stmt 0 view .LVU320
19 mjames 2581
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 44
16 mjames 2582
 
2583
 
2584
 1115 0088 217E     		ldrb	r1, [r4, #24]	@ zero_extendqisi2
2585
 1116 008a 6069     		ldr	r0, [r4, #20]
2586
 1117 008c FFF7FEFF 		bl	FLASH_OB_ProgramData
2587
 1118              	.LVL122:
2588
 506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2589
 1119              		.loc 1 506 5 is_stmt 1 view .LVU321
2590
 506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     {
2591
 1120              		.loc 1 506 8 is_stmt 0 view .LVU322
2592
 1121 0090 0346     		mov	r3, r0
2593
 1122 0092 0028     		cmp	r0, #0
2594
 1123 0094 DFD0     		beq	.L74
2595
 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2596
 1124              		.loc 1 509 7 is_stmt 1 view .LVU323
2597
 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       return status;
2598
 1125              		.loc 1 509 7 view .LVU324
2599
 1126 0096 034A     		ldr	r2, .L85
2600
 1127 0098 0021     		movs	r1, #0
2601
 1128 009a 1176     		strb	r1, [r2, #24]
2602
 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2603
 1129              		.loc 1 510 7 view .LVU325
2604
 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     }
2605
 1130              		.loc 1 510 14 is_stmt 0 view .LVU326
2606
 1131 009c DEE7     		b	.L68
2607
 1132              	.LVL123:
2608
 1133              	.L75:
2609
 1134              	.LCFI7:
2610
 1135              		.cfi_def_cfa_offset 0
2611
 1136              		.cfi_restore 4
2612
 1137              		.cfi_restore 14
2613
 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2614
 1138              		.loc 1 451 3 view .LVU327
2615
 1139 009e 0223     		movs	r3, #2
2616
 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2617
 1140              		.loc 1 518 1 view .LVU328
2618
 1141 00a0 1846     		mov	r0, r3
2619
 1142              	.LVL124:
2620
 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2621
 1143              		.loc 1 518 1 view .LVU329
2622
 1144 00a2 7047     		bx	lr
2623
 1145              	.L86:
2624
 1146              		.align	2
2625
 1147              	.L85:
2626
 1148 00a4 00000000 		.word	pFlash
2627
 1149              		.cfi_endproc
2628
 1150              	.LFE68:
2629
 1152              		.section	.text.HAL_FLASHEx_OBGetConfig,"ax",%progbits
2630
 1153              		.align	1
2631
 1154              		.global	HAL_FLASHEx_OBGetConfig
2632
 1155              		.syntax unified
2633
 1156              		.thumb
2634
 1157              		.thumb_func
2635
 1158              		.fpu softvfp
2636
 1160              	HAL_FLASHEx_OBGetConfig:
2637
 1161              	.LVL125:
2638
 1162              	.LFB69:
2639
 528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pOBInit->OptionType = OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER;
2640
 1163              		.loc 1 528 1 is_stmt 1 view -0
19 mjames 2641
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 45
16 mjames 2642
 
2643
 
2644
 1164              		.cfi_startproc
2645
 1165              		@ args = 0, pretend = 0, frame = 0
2646
 1166              		@ frame_needed = 0, uses_anonymous_args = 0
2647
 528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pOBInit->OptionType = OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER;
2648
 1167              		.loc 1 528 1 is_stmt 0 view .LVU331
2649
 1168 0000 10B5     		push	{r4, lr}
2650
 1169              	.LCFI8:
2651
 1170              		.cfi_def_cfa_offset 8
2652
 1171              		.cfi_offset 4, -8
2653
 1172              		.cfi_offset 14, -4
2654
 1173 0002 0446     		mov	r4, r0
2655
 529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2656
 1174              		.loc 1 529 3 is_stmt 1 view .LVU332
2657
 529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2658
 1175              		.loc 1 529 23 is_stmt 0 view .LVU333
2659
 1176 0004 0723     		movs	r3, #7
2660
 1177 0006 0360     		str	r3, [r0]
2661
 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2662
 1178              		.loc 1 532 3 is_stmt 1 view .LVU334
2663
 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2664
 1179              		.loc 1 532 22 is_stmt 0 view .LVU335
2665
 1180 0008 FFF7FEFF 		bl	FLASH_OB_GetWRP
2666
 1181              	.LVL126:
2667
 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2668
 1182              		.loc 1 532 20 view .LVU336
2669
 1183 000c A060     		str	r0, [r4, #8]
2670
 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2671
 1184              		.loc 1 535 3 is_stmt 1 view .LVU337
2672
 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2673
 1185              		.loc 1 535 23 is_stmt 0 view .LVU338
2674
 1186 000e FFF7FEFF 		bl	FLASH_OB_GetRDP
2675
 1187              	.LVL127:
2676
 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2677
 1188              		.loc 1 535 21 view .LVU339
2678
 1189 0012 2074     		strb	r0, [r4, #16]
2679
 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2680
 1190              		.loc 1 538 3 is_stmt 1 view .LVU340
2681
 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2682
 1191              		.loc 1 538 25 is_stmt 0 view .LVU341
2683
 1192 0014 FFF7FEFF 		bl	FLASH_OB_GetUser
2684
 1193              	.LVL128:
2685
 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2686
 1194              		.loc 1 538 23 view .LVU342
2687
 1195 0018 6074     		strb	r0, [r4, #17]
2688
 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2689
 1196              		.loc 1 539 1 view .LVU343
2690
 1197 001a 10BD     		pop	{r4, pc}
2691
 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2692
 1198              		.loc 1 539 1 view .LVU344
2693
 1199              		.cfi_endproc
2694
 1200              	.LFE69:
2695
 1202              		.section	.text.HAL_FLASHEx_OBGetUserData,"ax",%progbits
2696
 1203              		.align	1
2697
 1204              		.global	HAL_FLASHEx_OBGetUserData
2698
 1205              		.syntax unified
2699
 1206              		.thumb
2700
 1207              		.thumb_func
19 mjames 2701
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 46
16 mjames 2702
 
2703
 
2704
 1208              		.fpu softvfp
2705
 1210              	HAL_FLASHEx_OBGetUserData:
2706
 1211              	.LVL129:
2707
 1212              	.LFB70:
2708
 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t value = 0;
2709
 1213              		.loc 1 550 1 is_stmt 1 view -0
2710
 1214              		.cfi_startproc
2711
 1215              		@ args = 0, pretend = 0, frame = 0
2712
 1216              		@ frame_needed = 0, uses_anonymous_args = 0
2713
 1217              		@ link register save eliminated.
2714
 551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   
2715
 1218              		.loc 1 551 3 view .LVU346
2716
 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2717
 1219              		.loc 1 553 3 view .LVU347
2718
 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2719
 1220              		.loc 1 553 6 is_stmt 0 view .LVU348
2720
 1221 0000 064B     		ldr	r3, .L93
2721
 1222 0002 9842     		cmp	r0, r3
2722
 1223 0004 04D0     		beq	.L92
2723
 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2724
 1224              		.loc 1 561 5 is_stmt 1 view .LVU349
2725
 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2726
 1225              		.loc 1 561 13 is_stmt 0 view .LVU350
2727
 1226 0006 064B     		ldr	r3, .L93+4
2728
 1227 0008 D869     		ldr	r0, [r3, #28]
2729
 1228              	.LVL130:
2730
 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2731
 1229              		.loc 1 561 11 view .LVU351
2732
 1230 000a C0F38740 		ubfx	r0, r0, #18, #8
2733
 1231              	.LVL131:
2734
 564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2735
 1232              		.loc 1 564 3 is_stmt 1 view .LVU352
2736
 565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2737
 1233              		.loc 1 565 1 is_stmt 0 view .LVU353
2738
 1234 000e 7047     		bx	lr
2739
 1235              	.LVL132:
2740
 1236              	.L92:
2741
 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2742
 1237              		.loc 1 556 5 is_stmt 1 view .LVU354
2743
 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2744
 1238              		.loc 1 556 13 is_stmt 0 view .LVU355
2745
 1239 0010 034B     		ldr	r3, .L93+4
2746
 1240 0012 D869     		ldr	r0, [r3, #28]
2747
 1241              	.LVL133:
2748
 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2749
 1242              		.loc 1 556 11 view .LVU356
2750
 1243 0014 C0F38720 		ubfx	r0, r0, #10, #8
2751
 1244              	.LVL134:
2752
 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2753
 1245              		.loc 1 556 11 view .LVU357
2754
 1246 0018 7047     		bx	lr
2755
 1247              	.L94:
2756
 1248 001a 00BF     		.align	2
2757
 1249              	.L93:
2758
 1250 001c 04F8FF1F 		.word	536868868
2759
 1251 0020 00200240 		.word	1073881088
2760
 1252              		.cfi_endproc
19 mjames 2761
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 47
16 mjames 2762
 
2763
 
2764
 1253              	.LFE70:
2765
 1255              		.section	.text.FLASH_PageErase,"ax",%progbits
2766
 1256              		.align	1
2767
 1257              		.global	FLASH_PageErase
2768
 1258              		.syntax unified
2769
 1259              		.thumb
2770
 1260              		.thumb_func
2771
 1261              		.fpu softvfp
2772
 1263              	FLASH_PageErase:
2773
 1264              	.LVL135:
2774
 1265              	.LFB80:
2775
1065:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2776
1066:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
2777
1067:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
2778
1068:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
2779
1069:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2780
1070:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
2781
1071:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @}
2782
1072:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
2783
1073:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2784
1074:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @addtogroup FLASH
2785
1075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @{
2786
1076:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
2787
1077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2788
1078:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /** @addtogroup FLASH_Private_Functions
2789
1079:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  * @{
2790
1080:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****  */
2791
1081:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2792
1082:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** /**
2793
1083:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @brief  Erase the specified FLASH memory page
2794
1084:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @param  PageAddress FLASH page to erase
2795
1085:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   *         The value of this parameter depend on device used within the same series      
2796
1086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * 
2797
1087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   * @retval None
2798
1088:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   */
2799
1089:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** void FLASH_PageErase(uint32_t PageAddress)
2800
1090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** {
2801
 1266              		.loc 1 1090 1 is_stmt 1 view -0
2802
 1267              		.cfi_startproc
2803
 1268              		@ args = 0, pretend = 0, frame = 0
2804
 1269              		@ frame_needed = 0, uses_anonymous_args = 0
2805
 1270              		@ link register save eliminated.
2806
1091:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   /* Clean the error context */
2807
1092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   pFlash.ErrorCode = HAL_FLASH_ERROR_NONE;
2808
 1271              		.loc 1 1092 3 view .LVU359
2809
 1272              		.loc 1 1092 20 is_stmt 0 view .LVU360
2810
 1273 0000 064B     		ldr	r3, .L96
2811
 1274 0002 0022     		movs	r2, #0
2812
 1275 0004 DA61     		str	r2, [r3, #28]
2813
1093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2814
1094:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
2815
1095:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   if(PageAddress > FLASH_BANK1_END)
2816
1096:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   { 
2817
1097:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Proceed to erase the page */
2818
1098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR2, FLASH_CR2_PER);
2819
1099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     WRITE_REG(FLASH->AR2, PageAddress);
2820
1100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR2, FLASH_CR2_STRT);
19 mjames 2821
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 48
16 mjames 2822
 
2823
 
2824
1101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2825
1102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   else
2826
1103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2827
1104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
2828
1105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     /* Proceed to erase the page */
2829
1106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_PER);
2830
 1276              		.loc 1 1106 5 is_stmt 1 view .LVU361
2831
 1277 0006 064B     		ldr	r3, .L96+4
2832
 1278 0008 1A69     		ldr	r2, [r3, #16]
2833
 1279 000a 42F00202 		orr	r2, r2, #2
2834
 1280 000e 1A61     		str	r2, [r3, #16]
2835
1107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     WRITE_REG(FLASH->AR, PageAddress);
2836
 1281              		.loc 1 1107 5 view .LVU362
2837
 1282 0010 5861     		str	r0, [r3, #20]
2838
1108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     SET_BIT(FLASH->CR, FLASH_CR_STRT);
2839
 1283              		.loc 1 1108 5 view .LVU363
2840
 1284 0012 1A69     		ldr	r2, [r3, #16]
2841
 1285 0014 42F04002 		orr	r2, r2, #64
2842
 1286 0018 1A61     		str	r2, [r3, #16]
2843
1109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #if defined(FLASH_BANK2_END)
2844
1110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
2845
1111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** #endif /* FLASH_BANK2_END */
2846
1112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
2847
 1287              		.loc 1 1112 1 is_stmt 0 view .LVU364
2848
 1288 001a 7047     		bx	lr
2849
 1289              	.L97:
2850
 1290              		.align	2
2851
 1291              	.L96:
2852
 1292 001c 00000000 		.word	pFlash
2853
 1293 0020 00200240 		.word	1073881088
2854
 1294              		.cfi_endproc
2855
 1295              	.LFE80:
2856
 1297              		.section	.text.HAL_FLASHEx_Erase,"ax",%progbits
2857
 1298              		.align	1
2858
 1299              		.global	HAL_FLASHEx_Erase
2859
 1300              		.syntax unified
2860
 1301              		.thumb
2861
 1302              		.thumb_func
2862
 1303              		.fpu softvfp
2863
 1305              	HAL_FLASHEx_Erase:
2864
 1306              	.LVL136:
2865
 1307              	.LFB65:
2866
 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
2867
 1308              		.loc 1 160 1 is_stmt 1 view -0
2868
 1309              		.cfi_startproc
2869
 1310              		@ args = 0, pretend = 0, frame = 0
2870
 1311              		@ frame_needed = 0, uses_anonymous_args = 0
2871
 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t address = 0U;
2872
 1312              		.loc 1 161 3 view .LVU366
2873
 162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2874
 1313              		.loc 1 162 3 view .LVU367
2875
 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2876
 1314              		.loc 1 165 3 view .LVU368
2877
 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2878
 1315              		.loc 1 165 3 view .LVU369
2879
 1316 0000 264B     		ldr	r3, .L115
2880
 1317 0002 1B7E     		ldrb	r3, [r3, #24]	@ zero_extendqisi2
19 mjames 2881
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 49
16 mjames 2882
 
2883
 
2884
 1318 0004 012B     		cmp	r3, #1
2885
 1319 0006 46D0     		beq	.L105
2886
 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_ERROR;
2887
 1320              		.loc 1 160 1 is_stmt 0 discriminator 2 view .LVU370
2888
 1321 0008 70B5     		push	{r4, r5, r6, lr}
2889
 1322              	.LCFI9:
2890
 1323              		.cfi_def_cfa_offset 16
2891
 1324              		.cfi_offset 4, -16
2892
 1325              		.cfi_offset 5, -12
2893
 1326              		.cfi_offset 6, -8
2894
 1327              		.cfi_offset 14, -4
2895
 1328 000a 0E46     		mov	r6, r1
2896
 1329 000c 0546     		mov	r5, r0
2897
 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2898
 1330              		.loc 1 165 3 is_stmt 1 discriminator 2 view .LVU371
2899
 1331 000e 234B     		ldr	r3, .L115
2900
 1332 0010 0122     		movs	r2, #1
2901
 1333 0012 1A76     		strb	r2, [r3, #24]
2902
 168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
2903
 1334              		.loc 1 168 3 discriminator 2 view .LVU372
2904
 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2905
 1335              		.loc 1 170 3 discriminator 2 view .LVU373
2906
 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2907
 1336              		.loc 1 170 17 is_stmt 0 discriminator 2 view .LVU374
2908
 1337 0014 0368     		ldr	r3, [r0]
2909
 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
2910
 1338              		.loc 1 170 6 discriminator 2 view .LVU375
2911
 1339 0016 022B     		cmp	r3, #2
2912
 1340 0018 20D0     		beq	.L112
2913
 233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages));
2914
 1341              		.loc 1 233 5 is_stmt 1 view .LVU376
2915
 234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     
2916
 1342              		.loc 1 234 5 view .LVU377
2917
 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2918
 1343              		.loc 1 273 7 view .LVU378
2919
 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2920
 1344              		.loc 1 273 11 is_stmt 0 view .LVU379
2921
 1345 001a 4CF25030 		movw	r0, #50000
2922
 1346              	.LVL137:
2923
 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2924
 1347              		.loc 1 273 11 view .LVU380
2925
 1348 001e FFF7FEFF 		bl	FLASH_WaitForLastOperation
2926
 1349              	.LVL138:
2927
 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2928
 1350              		.loc 1 273 10 view .LVU381
2929
 1351 0022 90BB     		cbnz	r0, .L107
2930
 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2931
 1352              		.loc 1 276 9 is_stmt 1 view .LVU382
2932
 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
2933
 1353              		.loc 1 276 20 is_stmt 0 view .LVU383
2934
 1354 0024 4FF0FF33 		mov	r3, #-1
2935
 1355 0028 3360     		str	r3, [r6]
2936
 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address < ((pEraseInit->NbPages * FLASH_PAGE_SIZE) + pEraseInit->PageAddress);
2937
 1356              		.loc 1 279 9 is_stmt 1 view .LVU384
2938
 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address < ((pEraseInit->NbPages * FLASH_PAGE_SIZE) + pEraseInit->PageAddress);
2939
 1357              		.loc 1 279 21 is_stmt 0 view .LVU385
2940
 1358 002a AC68     		ldr	r4, [r5, #8]
19 mjames 2941
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 50
16 mjames 2942
 
2943
 
2944
 1359              	.LVL139:
2945
 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t address = 0U;
2946
 1360              		.loc 1 161 21 view .LVU386
2947
 1361 002c 0121     		movs	r1, #1
2948
 1362              	.LVL140:
2949
 1363              	.L102:
2950
 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address += FLASH_PAGE_SIZE)
2951
 1364              		.loc 1 280 35 discriminator 1 view .LVU387
2952
 1365 002e EA68     		ldr	r2, [r5, #12]
2953
 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address += FLASH_PAGE_SIZE)
2954
 1366              		.loc 1 280 76 discriminator 1 view .LVU388
2955
 1367 0030 AB68     		ldr	r3, [r5, #8]
2956
 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address += FLASH_PAGE_SIZE)
2957
 1368              		.loc 1 280 64 discriminator 1 view .LVU389
2958
 1369 0032 03EB8223 		add	r3, r3, r2, lsl #10
2959
 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             address < ((pEraseInit->NbPages * FLASH_PAGE_SIZE) + pEraseInit->PageAddress);
2960
 1370              		.loc 1 279 9 discriminator 1 view .LVU390
2961
 1371 0036 A342     		cmp	r3, r4
2962
 1372 0038 28D9     		bls	.L101
2963
 283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
2964
 1373              		.loc 1 283 11 is_stmt 1 view .LVU391
2965
 1374 003a 2046     		mov	r0, r4
2966
 1375 003c FFF7FEFF 		bl	FLASH_PageErase
2967
 1376              	.LVL141:
2968
 286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
2969
 1377              		.loc 1 286 11 view .LVU392
2970
 286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
2971
 1378              		.loc 1 286 20 is_stmt 0 view .LVU393
2972
 1379 0040 4CF25030 		movw	r0, #50000
2973
 1380 0044 FFF7FEFF 		bl	FLASH_WaitForLastOperation
2974
 1381              	.LVL142:
2975
 289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           
2976
 1382              		.loc 1 289 11 is_stmt 1 view .LVU394
2977
 1383 0048 154A     		ldr	r2, .L115+4
2978
 1384 004a 1369     		ldr	r3, [r2, #16]
2979
 1385 004c 23F00203 		bic	r3, r3, #2
2980
 1386 0050 1361     		str	r3, [r2, #16]
2981
 291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           {
2982
 1387              		.loc 1 291 11 view .LVU395
2983
 291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           {
2984
 1388              		.loc 1 291 14 is_stmt 0 view .LVU396
2985
 1389 0052 0146     		mov	r1, r0
2986
 1390 0054 B8B9     		cbnz	r0, .L113
2987
 281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         {
2988
 1391              		.loc 1 281 21 view .LVU397
2989
 1392 0056 04F58064 		add	r4, r4, #1024
2990
 1393              	.LVL143:
2991
 281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         {
2992
 1394              		.loc 1 281 21 view .LVU398
2993
 1395 005a E8E7     		b	.L102
2994
 1396              	.LVL144:
2995
 1397              	.L112:
2996
 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2997
 1398              		.loc 1 216 7 is_stmt 1 view .LVU399
2998
 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
2999
 1399              		.loc 1 216 11 is_stmt 0 view .LVU400
3000
 1400 005c 4CF25030 		movw	r0, #50000
19 mjames 3001
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 51
16 mjames 3002
 
3003
 
3004
 1401              	.LVL145:
3005
 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
3006
 1402              		.loc 1 216 11 view .LVU401
3007
 1403 0060 FFF7FEFF 		bl	FLASH_WaitForLastOperation
3008
 1404              	.LVL146:
3009
 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       {
3010
 1405              		.loc 1 216 10 view .LVU402
3011
 1406 0064 08B1     		cbz	r0, .L114
3012
 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t address = 0U;
3013
 1407              		.loc 1 161 21 view .LVU403
3014
 1408 0066 0121     		movs	r1, #1
3015
 1409 0068 10E0     		b	.L101
3016
 1410              	.L114:
3017
 219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
3018
 1411              		.loc 1 219 9 is_stmt 1 view .LVU404
3019
 1412 006a 0120     		movs	r0, #1
3020
 1413 006c FFF7FEFF 		bl	FLASH_MassErase
3021
 1414              	.LVL147:
3022
 222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
3023
 1415              		.loc 1 222 9 view .LVU405
3024
 222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         
3025
 1416              		.loc 1 222 18 is_stmt 0 view .LVU406
3026
 1417 0070 4CF25030 		movw	r0, #50000
3027
 1418 0074 FFF7FEFF 		bl	FLASH_WaitForLastOperation
3028
 1419              	.LVL148:
3029
 1420 0078 0146     		mov	r1, r0
3030
 1421              	.LVL149:
3031
 225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****       }
3032
 1422              		.loc 1 225 9 is_stmt 1 view .LVU407
3033
 1423 007a 094A     		ldr	r2, .L115+4
3034
 1424 007c 1369     		ldr	r3, [r2, #16]
3035
 1425 007e 23F00403 		bic	r3, r3, #4
3036
 1426 0082 1361     		str	r3, [r2, #16]
3037
 1427 0084 02E0     		b	.L101
3038
 1428              	.LVL150:
3039
 1429              	.L113:
3040
 294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             break;
3041
 1430              		.loc 1 294 13 view .LVU408
3042
 294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****             break;
3043
 1431              		.loc 1 294 24 is_stmt 0 view .LVU409
3044
 1432 0086 3460     		str	r4, [r6]
3045
 295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****           }
3046
 1433              		.loc 1 295 13 is_stmt 1 view .LVU410
3047
 1434 0088 00E0     		b	.L101
3048
 1435              	.LVL151:
3049
 1436              	.L107:
3050
 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   uint32_t address = 0U;
3051
 1437              		.loc 1 161 21 is_stmt 0 view .LVU411
3052
 1438 008a 0121     		movs	r1, #1
3053
 1439              	.LVL152:
3054
 1440              	.L101:
3055
 303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3056
 1441              		.loc 1 303 3 is_stmt 1 view .LVU412
3057
 303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3058
 1442              		.loc 1 303 3 view .LVU413
3059
 1443 008c 034B     		ldr	r3, .L115
3060
 1444 008e 0022     		movs	r2, #0
19 mjames 3061
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 52
16 mjames 3062
 
3063
 
3064
 1445 0090 1A76     		strb	r2, [r3, #24]
3065
 305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
3066
 1446              		.loc 1 305 3 view .LVU414
3067
 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3068
 1447              		.loc 1 306 1 is_stmt 0 view .LVU415
3069
 1448 0092 0846     		mov	r0, r1
3070
 1449 0094 70BD     		pop	{r4, r5, r6, pc}
3071
 1450              	.LVL153:
3072
 1451              	.L105:
3073
 1452              	.LCFI10:
3074
 1453              		.cfi_def_cfa_offset 0
3075
 1454              		.cfi_restore 4
3076
 1455              		.cfi_restore 5
3077
 1456              		.cfi_restore 6
3078
 1457              		.cfi_restore 14
3079
 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3080
 1458              		.loc 1 165 3 view .LVU416
3081
 1459 0096 0221     		movs	r1, #2
3082
 1460              	.LVL154:
3083
 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3084
 1461              		.loc 1 306 1 view .LVU417
3085
 1462 0098 0846     		mov	r0, r1
3086
 1463              	.LVL155:
3087
 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3088
 1464              		.loc 1 306 1 view .LVU418
3089
 1465 009a 7047     		bx	lr
3090
 1466              	.L116:
3091
 1467              		.align	2
3092
 1468              	.L115:
3093
 1469 009c 00000000 		.word	pFlash
3094
 1470 00a0 00200240 		.word	1073881088
3095
 1471              		.cfi_endproc
3096
 1472              	.LFE65:
3097
 1474              		.section	.text.HAL_FLASHEx_Erase_IT,"ax",%progbits
3098
 1475              		.align	1
3099
 1476              		.global	HAL_FLASHEx_Erase_IT
3100
 1477              		.syntax unified
3101
 1478              		.thumb
3102
 1479              		.thumb_func
3103
 1480              		.fpu softvfp
3104
 1482              	HAL_FLASHEx_Erase_IT:
3105
 1483              	.LVL156:
3106
 1484              	.LFB66:
3107
 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
3108
 1485              		.loc 1 320 1 is_stmt 1 view -0
3109
 1486              		.cfi_startproc
3110
 1487              		@ args = 0, pretend = 0, frame = 0
3111
 1488              		@ frame_needed = 0, uses_anonymous_args = 0
3112
 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   HAL_StatusTypeDef status = HAL_OK;
3113
 1489              		.loc 1 320 1 is_stmt 0 view .LVU420
3114
 1490 0000 08B5     		push	{r3, lr}
3115
 1491              	.LCFI11:
3116
 1492              		.cfi_def_cfa_offset 8
3117
 1493              		.cfi_offset 3, -8
3118
 1494              		.cfi_offset 14, -4
3119
 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3120
 1495              		.loc 1 321 3 is_stmt 1 view .LVU421
19 mjames 3121
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 53
16 mjames 3122
 
3123
 
3124
 1496              	.LVL157:
3125
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3126
 1497              		.loc 1 324 3 view .LVU422
3127
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3128
 1498              		.loc 1 324 3 view .LVU423
3129
 1499 0002 144B     		ldr	r3, .L124
3130
 1500 0004 1B7E     		ldrb	r3, [r3, #24]	@ zero_extendqisi2
3131
 1501 0006 012B     		cmp	r3, #1
3132
 1502 0008 20D0     		beq	.L120
3133
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3134
 1503              		.loc 1 324 3 discriminator 2 view .LVU424
3135
 1504 000a 124B     		ldr	r3, .L124
3136
 1505 000c 0122     		movs	r2, #1
3137
 1506 000e 1A76     		strb	r2, [r3, #24]
3138
 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
3139
 1507              		.loc 1 327 3 discriminator 2 view .LVU425
3140
 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
3141
 1508              		.loc 1 327 13 is_stmt 0 discriminator 2 view .LVU426
3142
 1509 0010 1B78     		ldrb	r3, [r3]	@ zero_extendqisi2
3143
 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
3144
 1510              		.loc 1 327 6 discriminator 2 view .LVU427
3145
 1511 0012 EBB9     		cbnz	r3, .L121
3146
 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3147
 1512              		.loc 1 333 3 is_stmt 1 view .LVU428
3148
 336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3149
 1513              		.loc 1 336 3 view .LVU429
3150
 1514 0014 104A     		ldr	r2, .L124+4
3151
 1515 0016 1369     		ldr	r3, [r2, #16]
3152
 1516 0018 43F4A053 		orr	r3, r3, #5120
3153
 1517 001c 1361     		str	r3, [r2, #16]
3154
 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
3155
 1518              		.loc 1 343 3 view .LVU430
3156
 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
3157
 1519              		.loc 1 343 17 is_stmt 0 view .LVU431
3158
 1520 001e 0368     		ldr	r3, [r0]
3159
 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   {
3160
 1521              		.loc 1 343 6 view .LVU432
3161
 1522 0020 022B     		cmp	r3, #2
3162
 1523 0022 0BD0     		beq	.L123
3163
 354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages));
3164
 1524              		.loc 1 354 5 is_stmt 1 view .LVU433
3165
 355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3166
 1525              		.loc 1 355 5 view .LVU434
3167
 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.DataRemaining = pEraseInit->NbPages;
3168
 1526              		.loc 1 357 5 view .LVU435
3169
 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.DataRemaining = pEraseInit->NbPages;
3170
 1527              		.loc 1 357 29 is_stmt 0 view .LVU436
3171
 1528 0024 0B4B     		ldr	r3, .L124
3172
 1529 0026 0122     		movs	r2, #1
3173
 1530 0028 1A70     		strb	r2, [r3]
3174
 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.Address = pEraseInit->PageAddress;
3175
 1531              		.loc 1 358 5 is_stmt 1 view .LVU437
3176
 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.Address = pEraseInit->PageAddress;
3177
 1532              		.loc 1 358 38 is_stmt 0 view .LVU438
3178
 1533 002a C268     		ldr	r2, [r0, #12]
3179
 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****     pFlash.Address = pEraseInit->PageAddress;
3180
 1534              		.loc 1 358 26 view .LVU439
19 mjames 3181
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 54
16 mjames 3182
 
3183
 
3184
 1535 002c 5A60     		str	r2, [r3, #4]
3185
 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3186
 1536              		.loc 1 359 5 is_stmt 1 view .LVU440
3187
 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3188
 1537              		.loc 1 359 32 is_stmt 0 view .LVU441
3189
 1538 002e 8268     		ldr	r2, [r0, #8]
3190
 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3191
 1539              		.loc 1 359 20 view .LVU442
3192
 1540 0030 9A60     		str	r2, [r3, #8]
3193
 362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
3194
 1541              		.loc 1 362 5 is_stmt 1 view .LVU443
3195
 1542 0032 8068     		ldr	r0, [r0, #8]
3196
 1543              	.LVL158:
3197
 362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
3198
 1544              		.loc 1 362 5 is_stmt 0 view .LVU444
3199
 1545 0034 FFF7FEFF 		bl	FLASH_PageErase
3200
 1546              	.LVL159:
3201
 365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
3202
 1547              		.loc 1 365 10 view .LVU445
3203
 1548 0038 0020     		movs	r0, #0
3204
 1549              	.L118:
3205
 366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3206
 1550              		.loc 1 366 1 view .LVU446
3207
 1551 003a 08BD     		pop	{r3, pc}
3208
 1552              	.LVL160:
3209
 1553              	.L123:
3210
 346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         FLASH_MassErase(pEraseInit->Banks);
3211
 1554              		.loc 1 346 5 is_stmt 1 view .LVU447
3212
 346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****         FLASH_MassErase(pEraseInit->Banks);
3213
 1555              		.loc 1 346 29 is_stmt 0 view .LVU448
3214
 1556 003c 054B     		ldr	r3, .L124
3215
 1557 003e 0222     		movs	r2, #2
3216
 1558 0040 1A70     		strb	r2, [r3]
3217
 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
3218
 1559              		.loc 1 347 9 is_stmt 1 view .LVU449
3219
 1560 0042 4068     		ldr	r0, [r0, #4]
3220
 1561              	.LVL161:
3221
 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
3222
 1562              		.loc 1 347 9 is_stmt 0 view .LVU450
3223
 1563 0044 FFF7FEFF 		bl	FLASH_MassErase
3224
 1564              	.LVL162:
3225
 365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** }
3226
 1565              		.loc 1 365 10 view .LVU451
3227
 1566 0048 0020     		movs	r0, #0
3228
 1567 004a F6E7     		b	.L118
3229
 1568              	.LVL163:
3230
 1569              	.L120:
3231
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3232
 1570              		.loc 1 324 3 view .LVU452
3233
 1571 004c 0220     		movs	r0, #2
3234
 1572              	.LVL164:
3235
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c **** 
3236
 1573              		.loc 1 324 3 view .LVU453
3237
 1574 004e F4E7     		b	.L118
3238
 1575              	.LVL165:
3239
 1576              	.L121:
3240
 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
19 mjames 3241
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 55
16 mjames 3242
 
3243
 
3244
 1577              		.loc 1 329 12 view .LVU454
3245
 1578 0050 0120     		movs	r0, #1
3246
 1579              	.LVL166:
3247
 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c ****   }
3248
 1580              		.loc 1 329 12 view .LVU455
3249
 1581 0052 F2E7     		b	.L118
3250
 1582              	.L125:
3251
 1583              		.align	2
3252
 1584              	.L124:
3253
 1585 0054 00000000 		.word	pFlash
3254
 1586 0058 00200240 		.word	1073881088
3255
 1587              		.cfi_endproc
3256
 1588              	.LFE66:
3257
 1590              		.text
3258
 1591              	.Letext0:
3259
 1592              		.file 2 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
3260
 1593              		.file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
3261
 1594              		.file 4 "Drivers/CMSIS/Include/core_cm3.h"
3262
 1595              		.file 5 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h"
3263
 1596              		.file 6 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h"
3264
 1597              		.file 7 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h"
3265
 1598              		.file 8 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h"
3266
 1599              		.file 9 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h"
3267
 1600              		.file 10 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h"
19 mjames 3268
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc3sGYki.s 			page 56
16 mjames 3269
 
3270
 
3271
DEFINED SYMBOLS
3272
                            *ABS*:0000000000000000 stm32f1xx_hal_flash_ex.c
19 mjames 3273
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:16     .text.FLASH_MassErase:0000000000000000 $t
3274
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:23     .text.FLASH_MassErase:0000000000000000 FLASH_MassErase
3275
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:53     .text.FLASH_MassErase:000000000000001c $d
3276
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:59     .text.FLASH_OB_GetWRP:0000000000000000 $t
3277
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:65     .text.FLASH_OB_GetWRP:0000000000000000 FLASH_OB_GetWRP
3278
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:81     .text.FLASH_OB_GetWRP:0000000000000008 $d
3279
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:86     .text.FLASH_OB_GetRDP:0000000000000000 $t
3280
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:92     .text.FLASH_OB_GetRDP:0000000000000000 FLASH_OB_GetRDP
3281
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:123    .text.FLASH_OB_GetRDP:0000000000000014 $d
3282
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:128    .text.FLASH_OB_GetUser:0000000000000000 $t
3283
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:134    .text.FLASH_OB_GetUser:0000000000000000 FLASH_OB_GetUser
3284
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:151    .text.FLASH_OB_GetUser:000000000000000c $d
3285
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:156    .text.FLASH_OB_RDP_LevelConfig:0000000000000000 $t
3286
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:162    .text.FLASH_OB_RDP_LevelConfig:0000000000000000 FLASH_OB_RDP_LevelConfig
3287
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:255    .text.FLASH_OB_RDP_LevelConfig:0000000000000064 $d
3288
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:262    .text.FLASH_OB_UserConfig:0000000000000000 $t
3289
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:268    .text.FLASH_OB_UserConfig:0000000000000000 FLASH_OB_UserConfig
3290
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:340    .text.FLASH_OB_UserConfig:0000000000000040 $d
3291
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:347    .text.FLASH_OB_ProgramData:0000000000000000 $t
3292
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:353    .text.FLASH_OB_ProgramData:0000000000000000 FLASH_OB_ProgramData
3293
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:423    .text.FLASH_OB_ProgramData:0000000000000040 $d
3294
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:429    .text.HAL_FLASHEx_OBErase:0000000000000000 $t
3295
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:436    .text.HAL_FLASHEx_OBErase:0000000000000000 HAL_FLASHEx_OBErase
3296
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:520    .text.HAL_FLASHEx_OBErase:0000000000000050 $d
3297
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:526    .text.FLASH_OB_EnableWRP:0000000000000000 $t
3298
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:532    .text.FLASH_OB_EnableWRP:0000000000000000 FLASH_OB_EnableWRP
3299
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:731    .text.FLASH_OB_EnableWRP:00000000000000b4 $d
3300
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:738    .text.FLASH_OB_DisableWRP:0000000000000000 $t
3301
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:744    .text.FLASH_OB_DisableWRP:0000000000000000 FLASH_OB_DisableWRP
3302
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:943    .text.FLASH_OB_DisableWRP:00000000000000b4 $d
3303
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:950    .text.HAL_FLASHEx_OBProgram:0000000000000000 $t
3304
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:957    .text.HAL_FLASHEx_OBProgram:0000000000000000 HAL_FLASHEx_OBProgram
3305
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1148   .text.HAL_FLASHEx_OBProgram:00000000000000a4 $d
3306
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1153   .text.HAL_FLASHEx_OBGetConfig:0000000000000000 $t
3307
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1160   .text.HAL_FLASHEx_OBGetConfig:0000000000000000 HAL_FLASHEx_OBGetConfig
3308
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1203   .text.HAL_FLASHEx_OBGetUserData:0000000000000000 $t
3309
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1210   .text.HAL_FLASHEx_OBGetUserData:0000000000000000 HAL_FLASHEx_OBGetUserData
3310
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1250   .text.HAL_FLASHEx_OBGetUserData:000000000000001c $d
3311
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1256   .text.FLASH_PageErase:0000000000000000 $t
3312
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1263   .text.FLASH_PageErase:0000000000000000 FLASH_PageErase
3313
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1292   .text.FLASH_PageErase:000000000000001c $d
3314
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1298   .text.HAL_FLASHEx_Erase:0000000000000000 $t
3315
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1305   .text.HAL_FLASHEx_Erase:0000000000000000 HAL_FLASHEx_Erase
3316
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1469   .text.HAL_FLASHEx_Erase:000000000000009c $d
3317
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1475   .text.HAL_FLASHEx_Erase_IT:0000000000000000 $t
3318
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1482   .text.HAL_FLASHEx_Erase_IT:0000000000000000 HAL_FLASHEx_Erase_IT
3319
C:\Users\mike\AppData\Local\Temp\cc3sGYki.s:1585   .text.HAL_FLASHEx_Erase_IT:0000000000000054 $d
16 mjames 3320
 
3321
UNDEFINED SYMBOLS
3322
pFlash
3323
FLASH_WaitForLastOperation