PDU_Code/build/stm32f3xx_hal_i2c.lst

27401 lines
1.6 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 1
1 .cpu cortex-m4
2 .arch armv7e-m
3 .fpu fpv4-sp-d16
4 .eabi_attribute 27, 1
5 .eabi_attribute 28, 1
6 .eabi_attribute 20, 1
7 .eabi_attribute 21, 1
8 .eabi_attribute 23, 3
9 .eabi_attribute 24, 1
10 .eabi_attribute 25, 1
11 .eabi_attribute 26, 1
12 .eabi_attribute 30, 1
13 .eabi_attribute 34, 1
14 .eabi_attribute 18, 4
15 .file "stm32f3xx_hal_i2c.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c"
20 .section .text.I2C_Flush_TXDR,"ax",%progbits
21 .align 1
22 .syntax unified
23 .thumb
24 .thumb_func
26 I2C_Flush_TXDR:
27 .LVL0:
28 .LFB195:
1:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ******************************************************************************
3:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @file stm32f3xx_hal_i2c.c
4:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @author MCD Application Team
5:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C HAL module driver.
6:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * functionalities of the Inter Integrated Circuit (I2C) peripheral:
8:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * + Initialization and de-initialization functions
9:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * + IO operation functions
10:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * + Peripheral State and Errors functions
11:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
12:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ******************************************************************************
13:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @attention
14:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
15:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * Copyright (c) 2016 STMicroelectronics.
16:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * All rights reserved.
17:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
18:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This software is licensed under terms that can be found in the LICENSE file
19:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in the root directory of this software component.
20:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
21:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
22:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ******************************************************************************
23:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @verbatim
24:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ==============================================================================
25:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ##### How to use this driver #####
26:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ==============================================================================
27:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
28:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** The I2C HAL driver can be used as follows:
29:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
30:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) Declare a I2C_HandleTypeDef handle structure, for example:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 2
31:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef hi2c;
32:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
33:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#)Initialize the I2C low level resources by implementing the HAL_I2C_MspInit() API:
34:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (##) Enable the I2Cx interface clock
35:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (##) I2C pins configuration
36:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Enable the clock for the I2C GPIOs
37:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Configure I2C pins as alternate function open-drain
38:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (##) NVIC configuration if you need to use interrupt process
39:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Configure the I2Cx interrupt priority
40:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Enable the NVIC I2C IRQ Channel
41:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (##) DMA Configuration if you need to use DMA process
42:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Declare a DMA_HandleTypeDef handle structure for
43:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the transmit or receive channel
44:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Enable the DMAx interface clock using
45:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Configure the DMA handle parameters
46:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Configure the DMA Tx or Rx channel
47:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Associate the initialized DMA handle to the hi2c DMA Tx or Rx handle
48:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) Configure the priority and enable the NVIC for the transfer complete interrupt on
49:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the DMA Tx or Rx channel
50:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
51:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) Configure the Communication Clock Timing, Own Address1, Master Addressing mode, Dual Addres
52:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Own Address2, Own Address2 Mask, General call and Nostretch mode in the hi2c Init structure
53:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
54:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) Initialize the I2C registers by calling the HAL_I2C_Init(), configures also the low level H
55:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (GPIO, CLOCK, NVIC...etc) by calling the customized HAL_I2C_MspInit(&hi2c) API.
56:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
57:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) To check if target device is ready for communication, use the function HAL_I2C_IsDeviceRead
58:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
59:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) For I2C IO and IO MEM operations, three operation modes are available within this driver :
60:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
61:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** Polling mode IO operation ***
62:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** =================================
63:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
64:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Transmit in master mode an amount of data in blocking mode using HAL_I2C_Master_Transmit(
65:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Receive in master mode an amount of data in blocking mode using HAL_I2C_Master_Receive()
66:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Transmit in slave mode an amount of data in blocking mode using HAL_I2C_Slave_Transmit()
67:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Receive in slave mode an amount of data in blocking mode using HAL_I2C_Slave_Receive()
68:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
69:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** Polling mode IO MEM operation ***
70:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** =====================================
71:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
72:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Write an amount of data in blocking mode to a specific memory address using HAL_I2C_Mem_W
73:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Read an amount of data in blocking mode from a specific memory address using HAL_I2C_Mem_
74:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
75:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
76:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** Interrupt mode IO operation ***
77:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===================================
78:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
79:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Transmit in master mode an amount of data in non-blocking mode using HAL_I2C_Master_Trans
80:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At transmission end of transfer, HAL_I2C_MasterTxCpltCallback() is executed and users can
81:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MasterTxCpltCallback()
82:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Receive in master mode an amount of data in non-blocking mode using HAL_I2C_Master_Receiv
83:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At reception end of transfer, HAL_I2C_MasterRxCpltCallback() is executed and users can
84:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MasterRxCpltCallback()
85:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Transmit in slave mode an amount of data in non-blocking mode using HAL_I2C_Slave_Transmi
86:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At transmission end of transfer, HAL_I2C_SlaveTxCpltCallback() is executed and users can
87:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_SlaveTxCpltCallback()
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 3
88:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Receive in slave mode an amount of data in non-blocking mode using HAL_I2C_Slave_Receive_
89:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At reception end of transfer, HAL_I2C_SlaveRxCpltCallback() is executed and users can
90:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_SlaveRxCpltCallback()
91:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) In case of transfer Error, HAL_I2C_ErrorCallback() function is executed and users can
92:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_ErrorCallback()
93:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Abort a master I2C process communication with Interrupt using HAL_I2C_Master_Abort_IT()
94:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) End of abort process, HAL_I2C_AbortCpltCallback() is executed and users can
95:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_AbortCpltCallback()
96:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Discard a slave I2C process communication using __HAL_I2C_GENERATE_NACK() macro.
97:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This action will inform Master to generate a Stop condition to discard the communication
98:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
99:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** Interrupt mode or DMA mode IO sequential operation ***
101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ==========================================================
102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (@) These interfaces allow to manage a sequential transfer with a repeated start condition
104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** when a direction change during transfer
105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) A specific option field manage the different steps of a sequential transfer
107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Option field values are defined through I2C_XFEROPTIONS and are listed below:
108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_FIRST_AND_LAST_FRAME: No sequential usage, functional is same as associated interfac
109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** no sequential mode
110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_FIRST_FRAME: Sequential usage, this option allow to manage a sequence with start con
111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and data to transfer without a final stop condition
112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_FIRST_AND_NEXT_FRAME: Sequential usage (Master only), this option allow to manage a
113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** start condition, address and data to transfer without a final stop cond
114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** an then permit a call the same master sequential interface several time
115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (like HAL_I2C_Master_Seq_Transmit_IT() then HAL_I2C_Master_Seq_Transmit
116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Transmit_DMA() then HAL_I2C_Master_Seq_Transmit_D
117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_NEXT_FRAME: Sequential usage, this option allow to manage a sequence with a restart
118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and with new data to transfer if the direction change or manage only th
119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** transfer
120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if no direction change and without a final stop condition in both cases
121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_LAST_FRAME: Sequential usage, this option allow to manage a sequance with a restart
122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and with new data to transfer if the direction change or manage only th
123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** transfer
124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if no direction change and with a final stop condition in both cases
125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_LAST_FRAME_NO_STOP: Sequential usage (Master only), this option allow to manage a re
126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** after several call of the same master sequential interface several time
127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (link with option I2C_FIRST_AND_NEXT_FRAME).
128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Usage can, transfer several bytes one by one using
129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Master_Seq_Transmit_IT
130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Receive_IT
131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Transmit_DMA
132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Receive_DMA
133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** with option I2C_FIRST_AND_NEXT_FRAME then I2C_NEXT_FRAME.
134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Then usage of this option I2C_LAST_FRAME_NO_STOP at the last Transmit
135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Receive sequence permit to call the opposite interface Receive or Tra
136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** without stopping the communication and so generate a restart conditio
137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) I2C_OTHER_FRAME: Sequential usage (Master only), this option allow to manage a restart c
138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** each call of the same master sequential
139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** interface.
140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Usage can, transfer several bytes one by one with a restart with slave
141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** each bytes using
142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Master_Seq_Transmit_IT
143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Receive_IT
144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Transmit_DMA
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 4
145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Master_Seq_Receive_DMA
146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** with option I2C_FIRST_FRAME then I2C_OTHER_FRAME.
147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Then usage of this option I2C_OTHER_AND_LAST_FRAME at the last frame to
148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** generation of STOP condition.
149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Different sequential I2C interfaces are listed below:
151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Sequential transmit in master I2C mode an amount of data in non-blocking mode using
152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Master_Seq_Transmit_IT() or using HAL_I2C_Master_Seq_Transmit_DMA()
153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) At transmission end of current frame transfer, HAL_I2C_MasterTxCpltCallback() is execut
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** users can add their own code by customization of function pointer HAL_I2C_MasterTxCpltC
155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Sequential receive in master I2C mode an amount of data in non-blocking mode using
156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Master_Seq_Receive_IT() or using HAL_I2C_Master_Seq_Receive_DMA()
157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) At reception end of current frame transfer, HAL_I2C_MasterRxCpltCallback() is executed
158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MasterRxCpltCallback()
159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Abort a master IT or DMA I2C process communication with Interrupt using HAL_I2C_Master_A
160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) End of abort process, HAL_I2C_AbortCpltCallback() is executed and users can
161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_AbortCpltCallback()
162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Enable/disable the Address listen mode in slave I2C mode using HAL_I2C_EnableListen_IT()
163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_DisableListen_IT()
164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) When address slave I2C match, HAL_I2C_AddrCallback() is executed and users can
165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code to check the Address Match Code and the transmission direction reques
166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (Write/Read).
167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) At Listen mode end HAL_I2C_ListenCpltCallback() is executed and users can
168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_ListenCpltCallback()
169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Sequential transmit in slave I2C mode an amount of data in non-blocking mode using
170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Slave_Seq_Transmit_IT() or using HAL_I2C_Slave_Seq_Transmit_DMA()
171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) At transmission end of current frame transfer, HAL_I2C_SlaveTxCpltCallback() is execute
172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** users can add their own code by customization of function pointer HAL_I2C_SlaveTxCpltCa
173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Sequential receive in slave I2C mode an amount of data in non-blocking mode using
174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Slave_Seq_Receive_IT() or using HAL_I2C_Slave_Seq_Receive_DMA()
175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+++) At reception end of current frame transfer, HAL_I2C_SlaveRxCpltCallback() is executed a
176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_SlaveRxCpltCallback()
177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) In case of transfer Error, HAL_I2C_ErrorCallback() function is executed and users can
178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_ErrorCallback()
179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Discard a slave I2C process communication using __HAL_I2C_GENERATE_NACK() macro.
180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This action will inform Master to generate a Stop condition to discard the communication
181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** Interrupt mode IO MEM operation ***
183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** =======================================
184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Write an amount of data in non-blocking mode with Interrupt to a specific memory address
186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Mem_Write_IT()
187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At Memory end of write transfer, HAL_I2C_MemTxCpltCallback() is executed and users can
188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MemTxCpltCallback()
189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Read an amount of data in non-blocking mode with Interrupt from a specific memory address
190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Mem_Read_IT()
191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At Memory end of read transfer, HAL_I2C_MemRxCpltCallback() is executed and users can
192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MemRxCpltCallback()
193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) In case of transfer Error, HAL_I2C_ErrorCallback() function is executed and users can
194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_ErrorCallback()
195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** DMA mode IO operation ***
197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ==============================
198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Transmit in master mode an amount of data in non-blocking mode (DMA) using
200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Master_Transmit_DMA()
201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At transmission end of transfer, HAL_I2C_MasterTxCpltCallback() is executed and users can
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 5
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MasterTxCpltCallback()
203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Receive in master mode an amount of data in non-blocking mode (DMA) using
204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Master_Receive_DMA()
205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At reception end of transfer, HAL_I2C_MasterRxCpltCallback() is executed and users can
206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MasterRxCpltCallback()
207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Transmit in slave mode an amount of data in non-blocking mode (DMA) using
208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Slave_Transmit_DMA()
209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At transmission end of transfer, HAL_I2C_SlaveTxCpltCallback() is executed and users can
210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_SlaveTxCpltCallback()
211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Receive in slave mode an amount of data in non-blocking mode (DMA) using
212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Slave_Receive_DMA()
213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At reception end of transfer, HAL_I2C_SlaveRxCpltCallback() is executed and users can
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_SlaveRxCpltCallback()
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) In case of transfer Error, HAL_I2C_ErrorCallback() function is executed and users can
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_ErrorCallback()
217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Abort a master I2C process communication with Interrupt using HAL_I2C_Master_Abort_IT()
218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) End of abort process, HAL_I2C_AbortCpltCallback() is executed and users can
219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_AbortCpltCallback()
220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Discard a slave I2C process communication using __HAL_I2C_GENERATE_NACK() macro.
221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This action will inform Master to generate a Stop condition to discard the communication
222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** DMA mode IO MEM operation ***
224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** =================================
225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Write an amount of data in non-blocking mode with DMA to a specific memory address using
227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Mem_Write_DMA()
228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At Memory end of write transfer, HAL_I2C_MemTxCpltCallback() is executed and users can
229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MemTxCpltCallback()
230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Read an amount of data in non-blocking mode with DMA from a specific memory address using
231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_Mem_Read_DMA()
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) At Memory end of read transfer, HAL_I2C_MemRxCpltCallback() is executed and users can
233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_MemRxCpltCallback()
234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) In case of transfer Error, HAL_I2C_ErrorCallback() function is executed and users can
235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** add their own code by customization of function pointer HAL_I2C_ErrorCallback()
236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** I2C HAL driver macros list ***
239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ==================================
240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Below the list of most used macros in I2C HAL driver.
242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_ENABLE: Enable the I2C peripheral
244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_DISABLE: Disable the I2C peripheral
245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_GENERATE_NACK: Generate a Non-Acknowledge I2C peripheral in Slave mode
246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_GET_FLAG: Check whether the specified I2C flag is set or not
247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_CLEAR_FLAG: Clear the specified I2C pending flag
248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_ENABLE_IT: Enable the specified I2C interrupt
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) __HAL_I2C_DISABLE_IT: Disable the specified I2C interrupt
250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *** Callback registration ***
252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** =============================================
253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** The compilation flag USE_HAL_I2C_REGISTER_CALLBACKS when set to 1
255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** allows the user to configure dynamically the driver callbacks.
256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Use Functions HAL_I2C_RegisterCallback() or HAL_I2C_RegisterAddrCallback()
257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to register an interrupt callback.
258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 6
259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Function HAL_I2C_RegisterCallback() allows to register following callbacks:
260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MasterTxCpltCallback : callback for Master transmission end of transfer.
261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MasterRxCpltCallback : callback for Master reception end of transfer.
262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) SlaveTxCpltCallback : callback for Slave transmission end of transfer.
263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) SlaveRxCpltCallback : callback for Slave reception end of transfer.
264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) ListenCpltCallback : callback for end of listen mode.
265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MemTxCpltCallback : callback for Memory transmission end of transfer.
266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MemRxCpltCallback : callback for Memory reception end of transfer.
267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) ErrorCallback : callback for error detection.
268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) AbortCpltCallback : callback for abort completion process.
269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MspInitCallback : callback for Msp Init.
270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MspDeInitCallback : callback for Msp DeInit.
271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and a pointer to the user callback function.
273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** For specific callback AddrCallback use dedicated register callbacks : HAL_I2C_RegisterAddrCall
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Use function HAL_I2C_UnRegisterCallback to reset a callback to the default
277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** weak function.
278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_UnRegisterCallback takes as parameters the HAL peripheral handle,
279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and the Callback ID.
280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This function allows to reset following callbacks:
281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MasterTxCpltCallback : callback for Master transmission end of transfer.
282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MasterRxCpltCallback : callback for Master reception end of transfer.
283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) SlaveTxCpltCallback : callback for Slave transmission end of transfer.
284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) SlaveRxCpltCallback : callback for Slave reception end of transfer.
285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) ListenCpltCallback : callback for end of listen mode.
286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MemTxCpltCallback : callback for Memory transmission end of transfer.
287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MemRxCpltCallback : callback for Memory reception end of transfer.
288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) ErrorCallback : callback for error detection.
289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) AbortCpltCallback : callback for abort completion process.
290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MspInitCallback : callback for Msp Init.
291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) MspDeInitCallback : callback for Msp DeInit.
292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** For callback AddrCallback use dedicated register callbacks : HAL_I2C_UnRegisterAddrCallback().
294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** By default, after the HAL_I2C_Init() and when the state is HAL_I2C_STATE_RESET
296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** all callbacks are set to the corresponding weak functions:
297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** examples HAL_I2C_MasterTxCpltCallback(), HAL_I2C_MasterRxCpltCallback().
298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Exception done for MspInit and MspDeInit functions that are
299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** reset to the legacy weak functions in the HAL_I2C_Init()/ HAL_I2C_DeInit() only when
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** these callbacks are null (not registered beforehand).
301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** If MspInit or MspDeInit are not null, the HAL_I2C_Init()/ HAL_I2C_DeInit()
302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand) whatever the state.
303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Callbacks can be registered/unregistered in HAL_I2C_STATE_READY state only.
305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Exception done MspInit/MspDeInit functions that can be registered/unregistered
306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** in HAL_I2C_STATE_READY or HAL_I2C_STATE_RESET state,
307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** thus registered (user) MspInit/DeInit callbacks can be used during the Init/DeInit.
308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Then, the user first registers the MspInit/MspDeInit user callbacks
309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** using HAL_I2C_RegisterCallback() before calling HAL_I2C_DeInit()
310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or HAL_I2C_Init() function.
311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** When the compilation flag USE_HAL_I2C_REGISTER_CALLBACKS is set to 0 or
313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** not defined, the callback registration feature is not available and all callbacks
314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** are set to the corresponding weak functions.
315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 7
316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (@) You can refer to the I2C HAL driver header file for more useful macros
318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @endverbatim
320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Includes ------------------------------------------------------------------*/
323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #include "stm32f3xx_hal.h"
324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @addtogroup STM32F3xx_HAL_Driver
326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C I2C
330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C HAL module driver
331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #ifdef HAL_I2C_MODULE_ENABLED
335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private typedef -----------------------------------------------------------*/
337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private define ------------------------------------------------------------*/
338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_Private_Define I2C Private Define
340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define TIMING_CLEAR_MASK (0xF0FFFFFFU) /*!< I2C TIMING clear register Mask */
343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_ADDR (10000U) /*!< 10 s */
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_BUSY (25U) /*!< 25 ms */
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_DIR (25U) /*!< 25 ms */
346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_RXNE (25U) /*!< 25 ms */
347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_STOPF (25U) /*!< 25 ms */
348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_TC (25U) /*!< 25 ms */
349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_TCR (25U) /*!< 25 ms */
350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_TXIS (25U) /*!< 25 ms */
351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_TIMEOUT_FLAG (25U) /*!< 25 ms */
352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define MAX_NBYTE_SIZE 255U
354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define SLAVE_ADDR_SHIFT 7U
355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define SLAVE_ADDR_MSK 0x06U
356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private define for @ref PreviousState usage */
358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_MSK ((uint32_t)((uint32_t)((uint32_t)HAL_I2C_STATE_BUSY_TX | \
359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_STATE_BUSY_RX) & \
360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)(~((uint32_t)HAL_I2C_STATE_READY))))
361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Mask State define, keep only RX and TX bits */
362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_NONE ((uint32_t)(HAL_I2C_MODE_NONE))
363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Default Value */
364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_MASTER_BUSY_TX ((uint32_t)(((uint32_t)HAL_I2C_STATE_BUSY_TX & I2C_STATE_MSK) | \
365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_MODE_MASTER))
366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Master Busy TX, combinaison of State LSB and Mode enum */
367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_MASTER_BUSY_RX ((uint32_t)(((uint32_t)HAL_I2C_STATE_BUSY_RX & I2C_STATE_MSK) | \
368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_MODE_MASTER))
369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Master Busy RX, combinaison of State LSB and Mode enum */
370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_SLAVE_BUSY_TX ((uint32_t)(((uint32_t)HAL_I2C_STATE_BUSY_TX & I2C_STATE_MSK) | \
371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_MODE_SLAVE))
372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Slave Busy TX, combinaison of State LSB and Mode enum */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 8
373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_SLAVE_BUSY_RX ((uint32_t)(((uint32_t)HAL_I2C_STATE_BUSY_RX & I2C_STATE_MSK) | \
374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_MODE_SLAVE))
375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Slave Busy RX, combinaison of State LSB and Mode enum */
376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_MEM_BUSY_TX ((uint32_t)(((uint32_t)HAL_I2C_STATE_BUSY_TX & I2C_STATE_MSK) | \
377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_MODE_MEM))
378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Memory Busy TX, combinaison of State LSB and Mode enum */
379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_STATE_MEM_BUSY_RX ((uint32_t)(((uint32_t)HAL_I2C_STATE_BUSY_RX & I2C_STATE_MSK) | \
380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)HAL_I2C_MODE_MEM))
381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*!< Memory Busy RX, combinaison of State LSB and Mode enum */
382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private define to centralize the enable/disable of Interrupts */
385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_XFER_TX_IT (uint16_t)(0x0001U) /*!< Bit field can be combinated with
386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @ref I2C_XFER_LISTEN_IT */
387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_XFER_RX_IT (uint16_t)(0x0002U) /*!< Bit field can be combinated with
388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @ref I2C_XFER_LISTEN_IT */
389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_XFER_LISTEN_IT (uint16_t)(0x8000U) /*!< Bit field can be combinated with @ref I2
390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and @ref I2C_XFER_RX_IT */
391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_XFER_ERROR_IT (uint16_t)(0x0010U) /*!< Bit definition to manage addition of glo
393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and NACK treatment */
394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_XFER_CPLT_IT (uint16_t)(0x0020U) /*!< Bit definition to manage only STOP evene
395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_XFER_RELOAD_IT (uint16_t)(0x0040U) /*!< Bit definition to manage only Reload of
396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private define Sequential Transfer Options default/reset value */
398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_NO_OPTION_FRAME (0xFFFF0000U)
399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private macros ------------------------------------------------------------*/
404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @addtogroup I2C_Private_Macro
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Macro to get remaining data to transfer on DMA side */
408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #define I2C_GET_DMA_REMAIN_DATA(__HANDLE__) __HAL_DMA_GET_COUNTER(__HANDLE__)
409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private variables ---------------------------------------------------------*/
414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private function prototypes -----------------------------------------------*/
415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_Private_Functions I2C Private Functions
417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private functions to handle DMA transfer */
420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAMasterTransmitCplt(DMA_HandleTypeDef *hdma);
421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAMasterReceiveCplt(DMA_HandleTypeDef *hdma);
422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMASlaveTransmitCplt(DMA_HandleTypeDef *hdma);
423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMASlaveReceiveCplt(DMA_HandleTypeDef *hdma);
424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAError(DMA_HandleTypeDef *hdma);
425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAAbort(DMA_HandleTypeDef *hdma);
426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private functions to handle IT transfer */
429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITAddrCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 9
430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITMasterSeqCplt(I2C_HandleTypeDef *hi2c);
431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITSlaveSeqCplt(I2C_HandleTypeDef *hi2c);
432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITMasterCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags);
433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITSlaveCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags);
434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITListenCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags);
435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITError(I2C_HandleTypeDef *hi2c, uint32_t ErrorCode);
436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private functions to handle IT transfer */
438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_RequestMemoryWrite(I2C_HandleTypeDef *hi2c, uint16_t DevAddress,
439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddress, uint16_t MemAddSize, uint32_t
440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart);
441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_RequestMemoryRead(I2C_HandleTypeDef *hi2c, uint16_t DevAddress,
442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddress, uint16_t MemAddSize, uint32_t T
443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart);
444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private functions for I2C transfer IRQ handler */
446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Master_ISR_IT(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources);
448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Mem_ISR_IT(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources);
450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Slave_ISR_IT(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources);
452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Master_ISR_DMA(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources);
454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Mem_ISR_DMA(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources);
456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Slave_ISR_DMA(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources);
458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private functions to handle flags during polling transfer */
460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Flag, FlagSta
461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Timeout, uint32_t Tickstart);
462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnTXISFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart);
464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnRXNEFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart);
466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnSTOPFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart);
468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_IsErrorOccurred(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart);
470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private functions to centralize the enable/disable of Interrupts */
472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_Enable_IRQ(I2C_HandleTypeDef *hi2c, uint16_t InterruptRequest);
473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_Disable_IRQ(I2C_HandleTypeDef *hi2c, uint16_t InterruptRequest);
474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private function to treat different error callback */
476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_TreatErrorCallback(I2C_HandleTypeDef *hi2c);
477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private function to flush TXDR register */
479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_Flush_TXDR(I2C_HandleTypeDef *hi2c);
480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private function to handle start, restart or stop a transfer */
482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_TransferConfig(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t Size, uint32_t
483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Request);
484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Private function to Convert Specific options */
486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ConvertOtherXferOptions(I2C_HandleTypeDef *hi2c);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 10
487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Exported functions --------------------------------------------------------*/
492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_Exported_Functions I2C Exported Functions
494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_Exported_Functions_Group1 Initialization and de-initialization functions
498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Initialization and Configuration functions
499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @verbatim
501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===============================================================================
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ##### Initialization and de-initialization functions #####
503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===============================================================================
504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..] This subsection provides a set of functions allowing to initialize and
505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** deinitialize the I2Cx peripheral:
506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) User must Implement HAL_I2C_MspInit() function in which he configures
508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** all related peripherals resources (CLOCK, GPIO, DMA, IT and NVIC ).
509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Call the function HAL_I2C_Init() to configure the selected device with
511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the selected configuration:
512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Clock Timing
513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Own Address 1
514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Addressing mode (Master, Slave)
515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Dual Addressing mode
516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Own Address 2
517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Own Address 2 Mask
518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) General call mode
519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Nostretch mode
520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (+) Call the function HAL_I2C_DeInit() to restore the default configuration
522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** of the selected I2Cx peripheral.
523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @endverbatim
525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Initializes the I2C according to the specified parameters
530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in the I2C_InitTypeDef and initialize the associated handle.
531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Init(I2C_HandleTypeDef *hi2c)
536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the I2C handle allocation */
538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c == NULL)
539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 11
544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_ALL_INSTANCE(hi2c->Instance));
545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_OWN_ADDRESS1(hi2c->Init.OwnAddress1));
546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_ADDRESSING_MODE(hi2c->Init.AddressingMode));
547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_DUAL_ADDRESS(hi2c->Init.DualAddressMode));
548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_OWN_ADDRESS2(hi2c->Init.OwnAddress2));
549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_OWN_ADDRESS2_MASK(hi2c->Init.OwnAddress2Masks));
550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_GENERAL_CALL(hi2c->Init.GeneralCallMode));
551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_NO_STRETCH(hi2c->Init.NoStretchMode));
552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_RESET)
554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Allocate lock resource and initialize it */
556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Lock = HAL_UNLOCKED;
557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init the I2C Callback settings */
560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterTxCpltCallback = HAL_I2C_MasterTxCpltCallback; /* Legacy weak MasterTxCpltCallback
561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterRxCpltCallback = HAL_I2C_MasterRxCpltCallback; /* Legacy weak MasterRxCpltCallback
562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveTxCpltCallback = HAL_I2C_SlaveTxCpltCallback; /* Legacy weak SlaveTxCpltCallback
563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveRxCpltCallback = HAL_I2C_SlaveRxCpltCallback; /* Legacy weak SlaveRxCpltCallback
564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ListenCpltCallback = HAL_I2C_ListenCpltCallback; /* Legacy weak ListenCpltCallback
565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemTxCpltCallback = HAL_I2C_MemTxCpltCallback; /* Legacy weak MemTxCpltCallback
566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemRxCpltCallback = HAL_I2C_MemRxCpltCallback; /* Legacy weak MemRxCpltCallback
567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCallback = HAL_I2C_ErrorCallback; /* Legacy weak ErrorCallback
568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AbortCpltCallback = HAL_I2C_AbortCpltCallback; /* Legacy weak AbortCpltCallback
569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrCallback = HAL_I2C_AddrCallback; /* Legacy weak AddrCallback
570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->MspInitCallback == NULL)
572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspInitCallback = HAL_I2C_MspInit; /* Legacy weak MspInit */
574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init the low level hardware : GPIO, CLOCK, CORTEX...etc */
577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspInitCallback(hi2c);
578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init the low level hardware : GPIO, CLOCK, CORTEX...etc */
580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MspInit(hi2c);
581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY;
585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable the selected I2C peripheral */
587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_DISABLE(hi2c);
588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*---------------------------- I2Cx TIMINGR Configuration ------------------*/
590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Configure I2Cx: Frequency range */
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TIMINGR = hi2c->Init.Timing & TIMING_CLEAR_MASK;
592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*---------------------------- I2Cx OAR1 Configuration ---------------------*/
594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Own Address1 before set the Own Address1 configuration */
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->OAR1 &= ~I2C_OAR1_OA1EN;
596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Configure I2Cx: Own Address1 and ack own address1 mode */
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.AddressingMode == I2C_ADDRESSINGMODE_7BIT)
599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->OAR1 = (I2C_OAR1_OA1EN | hi2c->Init.OwnAddress1);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 12
601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else /* I2C_ADDRESSINGMODE_10BIT */
603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->OAR1 = (I2C_OAR1_OA1EN | I2C_OAR1_OA1MODE | hi2c->Init.OwnAddress1);
605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*---------------------------- I2Cx CR2 Configuration ----------------------*/
608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Configure I2Cx: Addressing Master mode */
609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.AddressingMode == I2C_ADDRESSINGMODE_10BIT)
610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 = (I2C_CR2_ADD10);
612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the AUTOEND by default, and enable NACK (should be disable only during Slave process */
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= (I2C_CR2_AUTOEND | I2C_CR2_NACK);
615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*---------------------------- I2Cx OAR2 Configuration ---------------------*/
617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Own Address2 before set the Own Address2 configuration */
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->OAR2 &= ~I2C_DUALADDRESS_ENABLE;
619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Configure I2Cx: Dual mode and Own Address2 */
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->OAR2 = (hi2c->Init.DualAddressMode | hi2c->Init.OwnAddress2 | \
622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /*---------------------------- I2Cx CR1 Configuration ----------------------*/
625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Configure I2Cx: Generalcall and NoStretch mode */
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 = (hi2c->Init.GeneralCallMode | hi2c->Init.NoStretchMode);
627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the selected I2C peripheral */
629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_ENABLE(hi2c);
630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DeInitialize the I2C peripheral.
641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_DeInit(I2C_HandleTypeDef *hi2c)
646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the I2C handle allocation */
648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c == NULL)
649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_ALL_INSTANCE(hi2c->Instance));
655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY;
657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 13
658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable the I2C Peripheral Clock */
659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_DISABLE(hi2c);
660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->MspDeInitCallback == NULL)
663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspDeInitCallback = HAL_I2C_MspDeInit; /* Legacy weak MspDeInit */
665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* DeInit the low level hardware: GPIO, CLOCK, NVIC */
668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspDeInitCallback(hi2c);
669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* DeInit the low level hardware: GPIO, CLOCK, NVIC */
671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MspDeInit(hi2c);
672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_RESET;
676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Release Lock */
680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Initialize the I2C MSP.
687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_MspInit(I2C_HandleTypeDef *hi2c)
692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_MspInit could be implemented in the user file
698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DeInitialize the I2C MSP.
703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_MspDeInit(I2C_HandleTypeDef *hi2c)
708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_MspDeInit could be implemented in the user file
714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 14
715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Register a User I2C Callback
720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * To be used instead of the weak predefined callback
721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note The HAL_I2C_RegisterCallback() may be called before HAL_I2C_Init() in HAL_I2C_STATE_RES
722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * to register callbacks for HAL_I2C_MSPINIT_CB_ID and HAL_I2C_MSPDEINIT_CB_ID.
723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param CallbackID ID of the callback to be registered
726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This parameter can be one of the following values:
727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MASTER_TX_COMPLETE_CB_ID Master Tx Transfer completed callback ID
728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MASTER_RX_COMPLETE_CB_ID Master Rx Transfer completed callback ID
729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_SLAVE_TX_COMPLETE_CB_ID Slave Tx Transfer completed callback ID
730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_SLAVE_RX_COMPLETE_CB_ID Slave Rx Transfer completed callback ID
731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_LISTEN_COMPLETE_CB_ID Listen Complete callback ID
732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MEM_TX_COMPLETE_CB_ID Memory Tx Transfer callback ID
733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MEM_RX_COMPLETE_CB_ID Memory Rx Transfer completed callback ID
734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_ERROR_CB_ID Error callback ID
735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_ABORT_CB_ID Abort callback ID
736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MSPINIT_CB_ID MspInit callback ID
737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MSPDEINIT_CB_ID MspDeInit callback ID
738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pCallback pointer to the Callback function
739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_RegisterCallback(I2C_HandleTypeDef *hi2c, HAL_I2C_CallbackIDTypeDef Callb
742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** pI2C_CallbackTypeDef pCallback)
743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (pCallback == NULL)
747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_I2C_STATE_READY == hi2c->State)
755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** switch (CallbackID)
757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MASTER_TX_COMPLETE_CB_ID :
759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterTxCpltCallback = pCallback;
760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MASTER_RX_COMPLETE_CB_ID :
763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterRxCpltCallback = pCallback;
764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_SLAVE_TX_COMPLETE_CB_ID :
767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveTxCpltCallback = pCallback;
768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_SLAVE_RX_COMPLETE_CB_ID :
771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveRxCpltCallback = pCallback;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 15
772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_LISTEN_COMPLETE_CB_ID :
775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ListenCpltCallback = pCallback;
776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MEM_TX_COMPLETE_CB_ID :
779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemTxCpltCallback = pCallback;
780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MEM_RX_COMPLETE_CB_ID :
783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemRxCpltCallback = pCallback;
784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_ERROR_CB_ID :
787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCallback = pCallback;
788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_ABORT_CB_ID :
791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AbortCpltCallback = pCallback;
792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPINIT_CB_ID :
795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspInitCallback = pCallback;
796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPDEINIT_CB_ID :
799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspDeInitCallback = pCallback;
800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** default :
803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (HAL_I2C_STATE_RESET == hi2c->State)
812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** switch (CallbackID)
814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPINIT_CB_ID :
816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspInitCallback = pCallback;
817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPDEINIT_CB_ID :
820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspDeInitCallback = pCallback;
821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** default :
824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 16
829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return status;
842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Unregister an I2C Callback
846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * I2C callback is redirected to the weak predefined callback
847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note The HAL_I2C_UnRegisterCallback() may be called before HAL_I2C_Init() in HAL_I2C_STATE_R
848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * to un-register callbacks for HAL_I2C_MSPINIT_CB_ID and HAL_I2C_MSPDEINIT_CB_ID.
849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param CallbackID ID of the callback to be unregistered
852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This parameter can be one of the following values:
853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This parameter can be one of the following values:
854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MASTER_TX_COMPLETE_CB_ID Master Tx Transfer completed callback ID
855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MASTER_RX_COMPLETE_CB_ID Master Rx Transfer completed callback ID
856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_SLAVE_TX_COMPLETE_CB_ID Slave Tx Transfer completed callback ID
857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_SLAVE_RX_COMPLETE_CB_ID Slave Rx Transfer completed callback ID
858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_LISTEN_COMPLETE_CB_ID Listen Complete callback ID
859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MEM_TX_COMPLETE_CB_ID Memory Tx Transfer callback ID
860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MEM_RX_COMPLETE_CB_ID Memory Rx Transfer completed callback ID
861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_ERROR_CB_ID Error callback ID
862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_ABORT_CB_ID Abort callback ID
863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MSPINIT_CB_ID MspInit callback ID
864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref HAL_I2C_MSPDEINIT_CB_ID MspDeInit callback ID
865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_UnRegisterCallback(I2C_HandleTypeDef *hi2c, HAL_I2C_CallbackIDTypeDef Cal
868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_I2C_STATE_READY == hi2c->State)
872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** switch (CallbackID)
874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MASTER_TX_COMPLETE_CB_ID :
876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterTxCpltCallback = HAL_I2C_MasterTxCpltCallback; /* Legacy weak MasterTxCpltCallb
877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MASTER_RX_COMPLETE_CB_ID :
880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterRxCpltCallback = HAL_I2C_MasterRxCpltCallback; /* Legacy weak MasterRxCpltCallb
881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_SLAVE_TX_COMPLETE_CB_ID :
884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveTxCpltCallback = HAL_I2C_SlaveTxCpltCallback; /* Legacy weak SlaveTxCpltCallba
885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 17
886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_SLAVE_RX_COMPLETE_CB_ID :
888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveRxCpltCallback = HAL_I2C_SlaveRxCpltCallback; /* Legacy weak SlaveRxCpltCallba
889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_LISTEN_COMPLETE_CB_ID :
892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ListenCpltCallback = HAL_I2C_ListenCpltCallback; /* Legacy weak ListenCpltCallbac
893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MEM_TX_COMPLETE_CB_ID :
896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemTxCpltCallback = HAL_I2C_MemTxCpltCallback; /* Legacy weak MemTxCpltCallback
897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MEM_RX_COMPLETE_CB_ID :
900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemRxCpltCallback = HAL_I2C_MemRxCpltCallback; /* Legacy weak MemRxCpltCallback
901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_ERROR_CB_ID :
904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCallback = HAL_I2C_ErrorCallback; /* Legacy weak ErrorCallback
905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_ABORT_CB_ID :
908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AbortCpltCallback = HAL_I2C_AbortCpltCallback; /* Legacy weak AbortCpltCallback
909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPINIT_CB_ID :
912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspInitCallback = HAL_I2C_MspInit; /* Legacy weak MspInit
913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPDEINIT_CB_ID :
916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspDeInitCallback = HAL_I2C_MspDeInit; /* Legacy weak MspDeInit
917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** default :
920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (HAL_I2C_STATE_RESET == hi2c->State)
929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** switch (CallbackID)
931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPINIT_CB_ID :
933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspInitCallback = HAL_I2C_MspInit; /* Legacy weak MspInit
934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** case HAL_I2C_MSPDEINIT_CB_ID :
937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MspDeInitCallback = HAL_I2C_MspDeInit; /* Legacy weak MspDeInit
938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** default :
941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 18
943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return status;
959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Register the Slave Address Match I2C Callback
963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * To be used instead of the weak HAL_I2C_AddrCallback() predefined callback
964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pCallback pointer to the Address Match Callback function
967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_RegisterAddrCallback(I2C_HandleTypeDef *hi2c, pI2C_AddrCallbackTypeDef pC
970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (pCallback == NULL)
974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_I2C_STATE_READY == hi2c->State)
982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrCallback = pCallback;
984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return status;
995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief UnRegister the Slave Address Match I2C Callback
999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * Info Ready I2C Callback is redirected to the weak HAL_I2C_AddrCallback() predefined cal
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 19
1000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_UnRegisterAddrCallback(I2C_HandleTypeDef *hi2c)
1005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
1007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_I2C_STATE_READY == hi2c->State)
1009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrCallback = HAL_I2C_AddrCallback; /* Legacy weak AddrCallback */
1011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update the error code */
1015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_INVALID_CALLBACK;
1016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return error status */
1018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
1019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return status;
1022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
1025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
1028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_Exported_Functions_Group2 Input and Output operation functions
1031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Data transfers functions
1032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
1033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @verbatim
1034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===============================================================================
1035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ##### IO operation functions #####
1036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===============================================================================
1037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
1038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This subsection provides a set of functions allowing to manage the I2C data
1039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** transfers.
1040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) There are two modes of transfer:
1042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) Blocking mode : The communication is performed in the polling mode.
1043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** The status of all data processing is returned by the same function
1044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** after finishing transfer.
1045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) No-Blocking mode : The communication is performed using Interrupts
1046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** or DMA. These functions return the status of the transfer startup.
1047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** The end of the data processing will be indicated through the
1048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dedicated I2C IRQ when using Interrupt mode or the DMA IRQ when
1049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** using DMA mode.
1050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) Blocking mode functions are :
1052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Transmit()
1053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Receive()
1054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Transmit()
1055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Receive()
1056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Mem_Write()
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 20
1057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Mem_Read()
1058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_IsDeviceReady()
1059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) No-Blocking mode functions with Interrupt are :
1061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Transmit_IT()
1062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Receive_IT()
1063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Transmit_IT()
1064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Receive_IT()
1065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Mem_Write_IT()
1066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Mem_Read_IT()
1067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Seq_Transmit_IT()
1068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Seq_Receive_IT()
1069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Seq_Transmit_IT()
1070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Seq_Receive_IT()
1071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_EnableListen_IT()
1072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_DisableListen_IT()
1073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Abort_IT()
1074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) No-Blocking mode functions with DMA are :
1076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Transmit_DMA()
1077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Receive_DMA()
1078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Transmit_DMA()
1079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Receive_DMA()
1080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Mem_Write_DMA()
1081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Mem_Read_DMA()
1082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Seq_Transmit_DMA()
1083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Master_Seq_Receive_DMA()
1084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Seq_Transmit_DMA()
1085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_Slave_Seq_Receive_DMA()
1086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (#) A set of Transfer Complete Callbacks are provided in non Blocking mode:
1088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_MasterTxCpltCallback()
1089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_MasterRxCpltCallback()
1090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_SlaveTxCpltCallback()
1091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_SlaveRxCpltCallback()
1092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_MemTxCpltCallback()
1093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_MemRxCpltCallback()
1094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_AddrCallback()
1095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_ListenCpltCallback()
1096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_ErrorCallback()
1097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (++) HAL_I2C_AbortCpltCallback()
1098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @endverbatim
1100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
1101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Transmits in master mode an amount of data in blocking mode.
1105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
1108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
1109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
1112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 21
1114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Transmit(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t *pD
1115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size, uint32_t Timeout)
1116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
1118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init tickstart for timeout management*/
1125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
1126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_BUSY, SET, I2C_TIMEOUT_BUSY, tickstart) != HAL_OK
1128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
1133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
1140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
1142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART */
1143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
1147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
1148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
1154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (hi2c->XferCount > 0U)
1157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
1159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
1165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 22
1171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount != 0U) && (hi2c->XferSize == 0U))
1173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TCR flag is set */
1175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_TCR, RESET, Timeout, tickstart) != HAL_OK)
1176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
1184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
1185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
1191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to Check TC flag, with AUTOEND mode the stop is automatically generated */
1196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is set */
1197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnSTOPFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
1203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
1204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
1206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
1207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Receives in master mode an amount of data in blocking mode.
1224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
1227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 23
1228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
1231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Receive(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t *pDa
1234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size, uint32_t Timeout)
1235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
1237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init tickstart for timeout management*/
1244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
1245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_BUSY, SET, I2C_TIMEOUT_BUSY, tickstart) != HAL_OK
1247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
1252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
1259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
1261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART */
1262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
1266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
1267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
1273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (hi2c->XferCount > 0U)
1276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until RXNE flag is set */
1278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnRXNEFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 24
1285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount != 0U) && (hi2c->XferSize == 0U))
1293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TCR flag is set */
1295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_TCR, RESET, Timeout, tickstart) != HAL_OK)
1296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
1304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
1305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
1311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to Check TC flag, with AUTOEND mode the stop is automatically generated */
1316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is set */
1317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnSTOPFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
1323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
1324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
1326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
1327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 25
1342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Transmits in slave mode an amount of data in blocking mode.
1344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
1349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Transmit(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size,
1352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Timeout)
1353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
1355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
1359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
1361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init tickstart for timeout management*/
1367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
1368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
1370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
1371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
1377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
1379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
1380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until ADDR flag is set */
1382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_ADDR, RESET, Timeout, tickstart) != HAL_OK)
1383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Preload TX data if no stretch enable */
1390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.NoStretchMode == I2C_NOSTRETCH_ENABLE)
1391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Preload TX register */
1393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
1395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 26
1399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag */
1403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
1404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If 10bit addressing mode is selected */
1406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.AddressingMode == I2C_ADDRESSINGMODE_10BIT)
1407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until ADDR flag is set */
1409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_ADDR, RESET, Timeout, tickstart) != HAL_OK)
1410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag */
1417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
1418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until DIR flag is set Transmitter mode */
1421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_DIR, RESET, Timeout, tickstart) != HAL_OK)
1422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (hi2c->XferCount > 0U)
1429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
1431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
1440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until AF flag is set */
1448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_AF, RESET, Timeout, tickstart) != HAL_OK)
1449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 27
1456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
1457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear AF flag */
1459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
1460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOP flag is set */
1462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnSTOPFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP flag */
1471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
1472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until BUSY flag is reset */
1474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_BUSY, SET, Timeout, tickstart) != HAL_OK)
1475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Receive in slave mode an amount of data in blocking mode
1500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
1505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Receive(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size,
1508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Timeout)
1509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
1511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 28
1513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
1515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
1517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init tickstart for timeout management*/
1523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
1524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
1526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
1527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
1534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
1536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
1537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until ADDR flag is set */
1539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_ADDR, RESET, Timeout, tickstart) != HAL_OK)
1540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag */
1547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
1548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until DIR flag is reset Receiver mode */
1550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_DIR, SET, Timeout, tickstart) != HAL_OK)
1551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (hi2c->XferCount > 0U)
1558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until RXNE flag is set */
1560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnRXNEFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store Last receive data if any */
1566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_RXNE) == SET)
1567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
1569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 29
1570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
1583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOP flag is set */
1592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnSTOPFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
1593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP flag */
1600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
1601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until BUSY flag is reset */
1603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_BUSY, SET, Timeout, tickstart) != HAL_OK)
1604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
1611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
1612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 30
1627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Transmit in master mode an amount of data in non-blocking mode with Interrupt
1629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
1632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
1633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Transmit_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t
1638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size)
1639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
1641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
1645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
1653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
1660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
1661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
1666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
1671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
1674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE */
1675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, I2C_GENERATE_START_WRIT
1676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
1681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
1682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
1683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 31
1684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
1685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
1686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
1687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
1688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
1689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Receive in master mode an amount of data in non-blocking mode with Interrupt
1700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
1703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
1704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Receive_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t *
1709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size)
1710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
1712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
1716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
1724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
1731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
1732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
1737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 32
1741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
1742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
1745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE */
1746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, I2C_GENERATE_START_READ
1747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
1752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
1753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
1754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, RXI interrupt */
1756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
1757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
1758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
1759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RX_IT);
1760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Transmit in slave mode an amount of data in non-blocking mode with Interrupt
1771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Transmit_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size)
1778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
1785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
1786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
1789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
1790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
1796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
1797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 33
1798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Preload TX data if no stretch enable */
1799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.NoStretchMode == I2C_NOSTRETCH_ENABLE)
1800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Preload TX register */
1802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
1803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
1804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
1806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
1807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
1809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
1816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
1817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
1818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
1820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
1821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
1822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
1823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT | I2C_XFER_LISTEN_IT);
1824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Receive in slave mode an amount of data in non-blocking mode with Interrupt
1835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Receive_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size)
1842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
1849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
1850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
1853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
1854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 34
1855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
1860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
1861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
1866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
1867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
1868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, RXI interrupt */
1870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
1871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
1872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
1873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RX_IT | I2C_XFER_LISTEN_IT);
1874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
1876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
1884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Transmit in master mode an amount of data in non-blocking mode with DMA
1885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
1886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
1887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
1888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
1889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
1890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
1891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
1892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
1893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Transmit_DMA(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t
1894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size)
1895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
1897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
1898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
1900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
1902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
1904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
1908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
1910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 35
1912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
1914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
1915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
1917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
1918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
1920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
1922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
1923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
1927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
1928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferSize > 0U)
1931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
1933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
1935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferCpltCallback = I2C_DMAMasterTransmitCplt;
1936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
1938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferErrorCallback = I2C_DMAError;
1939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
1941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferHalfCpltCallback = NULL;
1942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
1943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
1945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmatx, (uint32_t)pData, (uint32_t)&hi2c->Instance->
1946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
1947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
1951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
1955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
1956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
1964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
1966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART
1967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, I2C_GENERATE_START_
1968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 36
1969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
1970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
1971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
1976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
1977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
1978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
1979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_ERROR_IT);
1980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
1982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
1983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
1985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
1987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
1991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
1992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
1994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
1995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
1997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Transfer ISR function pointer */
2002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
2003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
2005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and generate START condition */
2006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
2008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
2016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
2017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
2018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
2019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
2020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 37
2026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Receive in master mode an amount of data in non-blocking mode with DMA
2032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
2035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
2036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Receive_DMA(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t
2041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size)
2042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
2044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
2045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
2049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
2057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
2058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
2064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
2065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
2067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
2069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
2070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
2075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferSize > 0U)
2078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
2080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
2082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferCpltCallback = I2C_DMAMasterReceiveCplt;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 38
2083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
2085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferErrorCallback = I2C_DMAError;
2086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
2088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferHalfCpltCallback = NULL;
2089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
2090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
2092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmarx, (uint32_t)&hi2c->Instance->RXDR, (uint32_t)p
2093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
2094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
2099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
2103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
2111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
2113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to read and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART *
2114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, I2C_GENERATE_START_
2115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
2117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
2118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
2126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_ERROR_IT);
2127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
2129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
2130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
2135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
2139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 39
2140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Transfer ISR function pointer */
2149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
2150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
2152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to read and generate START condition */
2153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
2155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
2163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
2164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
2165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
2166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
2167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Transmit in slave mode an amount of data in non-blocking mode with DMA
2179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Transmit_DMA(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size
2186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
2188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 40
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
2200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
2201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
2208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
2209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Preload TX data if no stretch enable */
2211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.NoStretchMode == I2C_NOSTRETCH_ENABLE)
2212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Preload TX register */
2214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
2215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
2216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
2218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
2219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
2221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
2222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount != 0U)
2225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
2227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
2229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferCpltCallback = I2C_DMASlaveTransmitCplt;
2230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
2232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferErrorCallback = I2C_DMAError;
2233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
2235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferHalfCpltCallback = NULL;
2236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
2237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
2239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmatx,
2240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)hi2c->pBuffPtr, (uint32_t)&hi2c->Instance->TXDR,
2241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
2242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
2247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
2251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 41
2254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
2259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
2261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
2262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, STOP, NACK, ADDR interrupts */
2270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
2271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
2273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
2274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
2279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
2283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
2293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
2294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, STOP, NACK, ADDR interrupts */
2302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
2303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 42
2311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Receive in slave mode an amount of data in non-blocking mode with DMA
2315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Receive_DMA(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Size)
2322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
2324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
2336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
2337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
2344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
2345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
2347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
2349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferCpltCallback = I2C_DMASlaveReceiveCplt;
2350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
2352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferErrorCallback = I2C_DMAError;
2353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
2355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferHalfCpltCallback = NULL;
2356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
2357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
2359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmarx, (uint32_t)&hi2c->Instance->RXDR, (uint32_t)pDa
2360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
2361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
2366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 43
2368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
2370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
2378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
2380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
2381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, STOP, NACK, ADDR interrupts */
2389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
2390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
2392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
2393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
2398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
2402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Write an amount of data in blocking mode to a specific memory address
2419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
2422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
2423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
2424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 44
2425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
2428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Mem_Write(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAddre
2431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddSize, uint8_t *pData, uint16_t Size, uint32_t Ti
2432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
2436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_MEMADD_SIZE(MemAddSize));
2437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init tickstart for timeout management*/
2450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
2451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_BUSY, SET, I2C_TIMEOUT_BUSY, tickstart) != HAL_OK
2453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
2458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
2459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and Memory Address */
2467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_RequestMemoryWrite(hi2c, DevAddress, MemAddress, MemAddSize, Timeout, tickstart) != HAL
2468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE */
2475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
2476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
2478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_STARTST
2479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 45
2482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE, I2C_NO_STARTS
2484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do
2487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
2489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
2490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
2496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
2498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
2499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
2501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
2502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount != 0U) && (hi2c->XferSize == 0U))
2504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TCR flag is set */
2506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_TCR, RESET, Timeout, tickstart) != HAL_OK)
2507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
2512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
2514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** } while (hi2c->XferCount > 0U);
2526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to Check TC flag, with AUTOEND mode the stop is automatically generated */
2528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is reset */
2529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnSTOPFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
2530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
2535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
2536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
2538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 46
2539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
2541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Read an amount of data in blocking mode from a specific memory address
2556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
2559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
2560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
2561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
2562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
2565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Mem_Read(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAddres
2568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddSize, uint8_t *pData, uint16_t Size, uint32_t Tim
2569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
2573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_MEMADD_SIZE(MemAddSize));
2574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Init tickstart for timeout management*/
2587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
2588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_BUSY, SET, I2C_TIMEOUT_BUSY, tickstart) != HAL_OK
2590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
2595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 47
2596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and Memory Address */
2604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_RequestMemoryRead(hi2c, DevAddress, MemAddress, MemAddSize, Timeout, tickstart) != HAL_
2605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
2612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART */
2613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
2614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
2616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
2618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
2624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do
2627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until RXNE flag is set */
2629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_RXNE, RESET, Timeout, tickstart) != HAL_OK)
2630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
2636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
2638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
2639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
2641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
2642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount != 0U) && (hi2c->XferSize == 0U))
2644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TCR flag is set */
2646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_TCR, RESET, Timeout, tickstart) != HAL_OK)
2647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
2652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 48
2653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
2654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t) hi2c->XferSize, I2C_RELOAD_MODE,
2655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** } while (hi2c->XferCount > 0U);
2665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to Check TC flag, with AUTOEND mode the stop is automatically generated */
2667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is reset */
2668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnSTOPFlagUntilTimeout(hi2c, Timeout, tickstart) != HAL_OK)
2669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
2674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
2675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
2677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
2678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
2680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Write an amount of data in non-blocking mode with Interrupt to a specific memory addres
2694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
2697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
2698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
2699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
2700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Mem_Write_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAd
2705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddSize, uint8_t *pData, uint16_t Size)
2706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
2708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_MEMADD_SIZE(MemAddSize));
2709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 49
2710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
2719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
2727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
2728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
2734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_IT;
2735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
2736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 8Bit */
2738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (MemAddSize == I2C_MEMADD_SIZE_8BIT)
2739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address */
2741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
2742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Memaddress content */
2744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = 0xFFFFFFFFU;
2745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 16Bit */
2747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address (MSB part, LSB will be manage through interrupt) */
2750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_MSB(MemAddress);
2751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare Memaddress buffer for LSB part */
2753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = I2C_MEM_ADD_LSB(MemAddress);
2754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and Memory Address */
2756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_RELOAD_MODE, I2C_GENERATE_START_W
2757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
2766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 50
2767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
2768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
2769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
2770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Read an amount of data in non-blocking mode with Interrupt from a specific memory addre
2781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
2784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
2785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
2786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
2787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Mem_Read_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAdd
2792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddSize, uint8_t *pData, uint16_t Size)
2793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
2795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_MEMADD_SIZE(MemAddSize));
2796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
2806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
2814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
2815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
2821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_IT;
2822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
2823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 51
2824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 8Bit */
2825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (MemAddSize == I2C_MEMADD_SIZE_8BIT)
2826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address */
2828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
2829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Memaddress content */
2831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = 0xFFFFFFFFU;
2832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 16Bit */
2834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address (MSB part, LSB will be manage through interrupt) */
2837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_MSB(MemAddress);
2838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare Memaddress buffer for LSB part */
2840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = I2C_MEM_ADD_LSB(MemAddress);
2841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and Memory Address */
2843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_SOFTEND_MODE, I2C_GENERATE_START_
2844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, RXI interrupt */
2853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
2854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
2855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
2856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, (I2C_XFER_TX_IT | I2C_XFER_RX_IT));
2857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
2859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
2867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Write an amount of data in non-blocking mode with DMA to a specific memory address
2868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
2869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
2870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
2871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
2872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
2873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
2874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
2875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
2876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
2877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
2878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Mem_Write_DMA(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemA
2879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddSize, uint8_t *pData, uint16_t Size)
2880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 52
2881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
2882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
2884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_MEMADD_SIZE(MemAddSize));
2885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
2887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
2889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
2891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
2895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
2897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
2901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
2903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
2904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
2907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
2908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
2910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_DMA;
2911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
2912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
2914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
2916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 8Bit */
2923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (MemAddSize == I2C_MEMADD_SIZE_8BIT)
2924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address */
2926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
2927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Memaddress content */
2929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = 0xFFFFFFFFU;
2930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 16Bit */
2932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address (MSB part, LSB will be manage through interrupt) */
2935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_MSB(MemAddress);
2936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare Memaddress buffer for LSB part */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 53
2938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = I2C_MEM_ADD_LSB(MemAddress);
2939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
2942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
2944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferCpltCallback = I2C_DMAMasterTransmitCplt;
2945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
2947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferErrorCallback = I2C_DMAError;
2948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
2950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferHalfCpltCallback = NULL;
2951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
2952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
2954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmatx, (uint32_t)pData, (uint32_t)&hi2c->Instance->TX
2955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
2956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
2961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
2965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
2973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and Memory Address */
2975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_RELOAD_MODE, I2C_GENERATE_START
2976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
2979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
2981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
2982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
2983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
2984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
2985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
2986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
2987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
2988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
2990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
2992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
2993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 54
2995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
2996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
2997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
2999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Reads an amount of data in non-blocking mode with DMA from a specific memory address.
3014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
3017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
3018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
3019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
3020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be read
3022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Mem_Read_DMA(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAd
3025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddSize, uint8_t *pData, uint16_t Size)
3026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
3028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_MEMADD_SIZE(MemAddSize));
3031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
3035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
3037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
3041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
3049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
3050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 55
3052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
3053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
3054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_DMA;
3057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
3058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
3060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
3062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 8Bit */
3069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (MemAddSize == I2C_MEMADD_SIZE_8BIT)
3070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address */
3072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
3073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Memaddress content */
3075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = 0xFFFFFFFFU;
3076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 16Bit */
3078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prefetch Memory Address (MSB part, LSB will be manage through interrupt) */
3081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_MSB(MemAddress);
3082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare Memaddress buffer for LSB part */
3084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = I2C_MEM_ADD_LSB(MemAddress);
3085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
3088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
3090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferCpltCallback = I2C_DMAMasterReceiveCplt;
3091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
3093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferErrorCallback = I2C_DMAError;
3094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
3096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferHalfCpltCallback = NULL;
3097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
3098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
3100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmarx, (uint32_t)&hi2c->Instance->RXDR, (uint32_t)pDa
3101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
3102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 56
3109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
3111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
3119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and Memory Address */
3121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_SOFTEND_MODE, I2C_GENERATE_STAR
3122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
3130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
3131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
3132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
3133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
3134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
3143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Checks if target device is ready for communication.
3160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This function is used with Memory devices
3161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
3164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
3165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Trials Number of trials
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 57
3166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
3167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_IsDeviceReady(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint32_t Tria
3170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Timeout)
3171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
3173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __IO uint32_t I2C_Trials = 0UL;
3175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp1;
3177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp2;
3178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) == SET)
3182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY;
3190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do
3193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate Start */
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 = I2C_GENERATE_START(hi2c->Init.AddressingMode, DevAddress);
3196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to Check TC flag, with AUTOEND mode the stop is automatically generated */
3198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is set or a NACK flag is set*/
3199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
3200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp1 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF);
3202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
3203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while ((tmp1 == RESET) && (tmp2 == RESET))
3205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (Timeout != HAL_MAX_DELAY)
3207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((HAL_GetTick() - tickstart) > Timeout) || (Timeout == 0U))
3209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_TIMEOUT;
3215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 58
3223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp1 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF);
3224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
3225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if the NACKF flag has not been set */
3228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF) == RESET)
3229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is reset */
3231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_STOPF, RESET, Timeout, tickstart) != HAL_OK)
3232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
3237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
3238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Device is ready */
3240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is reset */
3250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_STOPF, RESET, Timeout, tickstart) != HAL_OK)
3251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
3256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
3257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag, auto generated with autoend*/
3259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
3260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if the maximum allowed number of trials has been reached */
3263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_Trials == Trials)
3264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate Stop */
3266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_STOP;
3267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOPF flag is reset */
3269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_STOPF, RESET, Timeout, tickstart) != HAL_OK)
3270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
3275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
3276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Trials */
3279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Trials++;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 59
3280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** } while (I2C_Trials < Trials);
3281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_TIMEOUT;
3287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential transmit in master I2C mode an amount of data in non-blocking mode with Inte
3301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
3302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
3305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
3306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
3308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
3309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Seq_Transmit_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint
3312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size, uint32_t XferOptions)
3313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_WRITE;
3316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
3319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
3326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
3330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
3331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
3333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If hi2c->XferCount > MAX_NBYTE_SIZE, use reload mode */
3336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 60
3337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
3339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If transfer direction not change and there is no request to start another frame,
3348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do not generate Restart Condition */
3349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean Previous state is same as current state */
3350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->PreviousState == I2C_STATE_MASTER_BUSY_TX) && \
3351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
3352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xferrequest = I2C_NO_STARTSTOP;
3354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Convert OTHER_xxx XferOptions if any */
3358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ConvertOtherXferOptions(hi2c);
3359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update xfermode accordingly if no reload is necessary */
3361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount <= MAX_NBYTE_SIZE)
3362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and set NBYTES to write */
3368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, xferrequest);
3369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
3377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
3378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
3379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
3380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
3381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential transmit in master I2C mode an amount of data in non-blocking mode with DMA.
3392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
3393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 61
3394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
3396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
3397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
3399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
3400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Seq_Transmit_DMA(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uin
3403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size, uint32_t XferOptions)
3404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_WRITE;
3407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
3408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
3411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX;
3418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
3422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
3423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
3425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
3426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If hi2c->XferCount > MAX_NBYTE_SIZE, use reload mode */
3428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
3429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
3431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If transfer direction not change and there is no request to start another frame,
3440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do not generate Restart Condition */
3441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean Previous state is same as current state */
3442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->PreviousState == I2C_STATE_MASTER_BUSY_TX) && \
3443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
3444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xferrequest = I2C_NO_STARTSTOP;
3446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Convert OTHER_xxx XferOptions if any */
3450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ConvertOtherXferOptions(hi2c);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 62
3451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update xfermode accordingly if no reload is necessary */
3453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount <= MAX_NBYTE_SIZE)
3454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferSize > 0U)
3460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
3462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
3464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferCpltCallback = I2C_DMAMasterTransmitCplt;
3465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
3467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferErrorCallback = I2C_DMAError;
3468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
3470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferHalfCpltCallback = NULL;
3471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
3472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
3474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmatx, (uint32_t)pData, (uint32_t)&hi2c->Instance->
3475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
3476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
3485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
3493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and set NBYTES to write */
3495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, xferrequest);
3496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
3498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
3499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
3507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_ERROR_IT);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 63
3508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
3510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
3511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
3520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Transfer ISR function pointer */
3530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
3533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and generate START condition */
3534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
3535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
3536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
3544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
3545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
3546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
3547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
3548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential receive in master I2C mode an amount of data in non-blocking mode with Inter
3560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
3561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
3564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 64
3565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
3567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
3568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Seq_Receive_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8
3571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size, uint32_t XferOptions)
3572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_READ;
3575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
3578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
3585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
3589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
3590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
3592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If hi2c->XferCount > MAX_NBYTE_SIZE, use reload mode */
3595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
3596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
3598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If transfer direction not change and there is no request to start another frame,
3607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do not generate Restart Condition */
3608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean Previous state is same as current state */
3609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->PreviousState == I2C_STATE_MASTER_BUSY_RX) && \
3610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
3611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xferrequest = I2C_NO_STARTSTOP;
3613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Convert OTHER_xxx XferOptions if any */
3617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ConvertOtherXferOptions(hi2c);
3618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update xfermode accordingly if no reload is necessary */
3620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount <= MAX_NBYTE_SIZE)
3621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 65
3622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and set NBYTES to read */
3627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, xferrequest);
3628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RX_IT);
3636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential receive in master I2C mode an amount of data in non-blocking mode with DMA
3647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
3648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
3651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
3652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
3654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
3655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Seq_Receive_DMA(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint
3658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t Size, uint32_t XferOptions)
3659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_READ;
3662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
3663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
3666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX;
3673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
3677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
3678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 66
3679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
3680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
3681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If hi2c->XferCount > MAX_NBYTE_SIZE, use reload mode */
3683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
3684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
3686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If transfer direction not change and there is no request to start another frame,
3695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** do not generate Restart Condition */
3696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean Previous state is same as current state */
3697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->PreviousState == I2C_STATE_MASTER_BUSY_RX) && \
3698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
3699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xferrequest = I2C_NO_STARTSTOP;
3701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Convert OTHER_xxx XferOptions if any */
3705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ConvertOtherXferOptions(hi2c);
3706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update xfermode accordingly if no reload is necessary */
3708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount <= MAX_NBYTE_SIZE)
3709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
3711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferSize > 0U)
3715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
3717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
3719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferCpltCallback = I2C_DMAMasterReceiveCplt;
3720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
3722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferErrorCallback = I2C_DMAError;
3723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
3725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferHalfCpltCallback = NULL;
3726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
3727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
3729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmarx, (uint32_t)&hi2c->Instance->RXDR, (uint32_t)p
3730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
3731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 67
3736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
3740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
3748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address and set NBYTES to read */
3750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, xfermode, xferrequest);
3751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
3753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
3754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
3762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_ERROR_IT);
3763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
3765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
3766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
3770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
3771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
3774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
3775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Transfer ISR function pointer */
3785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Slave Address */
3788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to read and generate START condition */
3789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
3790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
3791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 68
3793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK, TXI interrupt */
3799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* possible to enable all of these */
3800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI |
3801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_IT_ADDRI | I2C_IT_RXI | I2C_IT_TXI */
3802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT);
3803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
3810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential transmit in slave/device I2C mode an amount of data in non-blocking mode wit
3815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
3816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
3820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
3821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Seq_Transmit_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t S
3824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t XferOptions)
3825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
3827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp;
3828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
3831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) == (uint32_t)HAL_I2C_STATE_LISTEN)
3833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
3835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
3837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts, to prevent preemption during treatment in case of multicall */
3841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_TX_IT);
3842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C cannot manage full duplex exchange so disable previous IT enabled if any */
3847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* and then toggle the HAL slave RX state to TX state */
3848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX_LISTEN)
3849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 69
3850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable associated Interrupts */
3851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT);
3852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA Xfer if any */
3854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_RXDMAEN) == I2C_CR1_RXDMAEN)
3855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
3857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
3859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
3861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
3862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = I2C_DMAAbort;
3863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA RX */
3865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmarx) != HAL_OK)
3866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
3868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback(hi2c->hdmarx);
3869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX_LISTEN;
3875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
3876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
3879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
3880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
3882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
3883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
3886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
3887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_ADDR);
3889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_RECEIVE) && (tmp != RESET))
3890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag after prepare the transfer parameters */
3892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* This action will generate an acknowledge to the Master */
3893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
3894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
3897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
3898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
3900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
3901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
3902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* REnable ADDR interrupt */
3903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_TX_IT | I2C_XFER_LISTEN_IT);
3904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
3906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 70
3907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
3914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential transmit in slave/device I2C mode an amount of data in non-blocking mode wit
3915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
3916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
3917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
3918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
3919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
3920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
3921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
3922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
3923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Seq_Transmit_DMA(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t
3924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t XferOptions)
3925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
3927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp;
3928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
3929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
3931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
3932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) == (uint32_t)HAL_I2C_STATE_LISTEN)
3934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
3936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
3938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
3943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts, to prevent preemption during treatment in case of multicall */
3945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_TX_IT);
3946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C cannot manage full duplex exchange so disable previous IT enabled if any */
3948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* and then toggle the HAL slave RX state to TX state */
3949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX_LISTEN)
3950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable associated Interrupts */
3952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT);
3953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_RXDMAEN) == I2C_CR1_RXDMAEN)
3955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA Xfer if any */
3957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
3958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
3960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
3962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = I2C_DMAAbort;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 71
3964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA RX */
3966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmarx) != HAL_OK)
3967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
3969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback(hi2c->hdmarx);
3970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_TX_LISTEN)
3975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_TXDMAEN) == I2C_CR1_TXDMAEN)
3977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
3979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA Xfer if any */
3981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
3982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
3984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
3985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = I2C_DMAAbort;
3986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA TX */
3988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmatx) != HAL_OK)
3989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
3991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback(hi2c->hdmatx);
3992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
3997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
3999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_TX_LISTEN;
4002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
4006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
4007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
4009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
4010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
4013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
4014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
4016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
4018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferCpltCallback = I2C_DMASlaveTransmitCplt;
4019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 72
4021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferErrorCallback = I2C_DMAError;
4022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
4024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferHalfCpltCallback = NULL;
4025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
4026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
4028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmatx, (uint32_t)pData, (uint32_t)&hi2c->Instance->TX
4029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
4034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
4035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
4038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
4039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
4047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
4049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
4050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset XferSize */
4052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = 0;
4053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
4057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
4058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
4061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
4062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_ADDR);
4070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_RECEIVE) && (tmp != RESET))
4071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag after prepare the transfer parameters */
4073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* This action will generate an acknowledge to the Master */
4074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
4075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 73
4078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
4081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
4082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
4084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
4085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
4086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, STOP, NACK, ADDR interrupts */
4087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
4088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential receive in slave/device I2C mode an amount of data in non-blocking mode with
4099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
4100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
4103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
4104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
4105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Seq_Receive_IT(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t Si
4108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t XferOptions)
4109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
4111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp;
4112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
4114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
4115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) == (uint32_t)HAL_I2C_STATE_LISTEN)
4117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
4119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
4121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts, to prevent preemption during treatment in case of multicall */
4125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_RX_IT);
4126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
4129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C cannot manage full duplex exchange so disable previous IT enabled if any */
4131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* and then toggle the HAL slave TX state to RX state */
4132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_TX_LISTEN)
4133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable associated Interrupts */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 74
4135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_TX_IT);
4136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_TXDMAEN) == I2C_CR1_TXDMAEN)
4138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
4140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA Xfer if any */
4142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
4143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
4145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
4146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = I2C_DMAAbort;
4147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA TX */
4149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmatx) != HAL_OK)
4150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
4152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback(hi2c->hdmatx);
4153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX_LISTEN;
4159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
4163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
4164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
4166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
4167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
4170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
4171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_ADDR);
4173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_TRANSMIT) && (tmp != RESET))
4174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag after prepare the transfer parameters */
4176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* This action will generate an acknowledge to the Master */
4177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
4178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
4184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
4185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
4186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* REnable ADDR interrupt */
4187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RX_IT | I2C_XFER_LISTEN_IT);
4188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 75
4192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Sequential receive in slave/device I2C mode an amount of data in non-blocking mode with
4199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @note This interface allow to manage repeated start condition when a direction change during
4200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param pData Pointer to data buffer
4203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Amount of data to be sent
4204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param XferOptions Options of Transfer, value of @ref I2C_XFEROPTIONS
4205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Slave_Seq_Receive_DMA(I2C_HandleTypeDef *hi2c, uint8_t *pData, uint16_t S
4208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t XferOptions)
4209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
4211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp;
4212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
4213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
4215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_TRANSFER_OPTIONS_REQUEST(XferOptions));
4216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) == (uint32_t)HAL_I2C_STATE_LISTEN)
4218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((pData == NULL) || (Size == 0U))
4220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_INVALID_PARAM;
4222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts, to prevent preemption during treatment in case of multicall */
4226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_RX_IT);
4227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
4230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C cannot manage full duplex exchange so disable previous IT enabled if any */
4232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* and then toggle the HAL slave TX state to RX state */
4233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_TX_LISTEN)
4234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable associated Interrupts */
4236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_TX_IT);
4237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_TXDMAEN) == I2C_CR1_TXDMAEN)
4239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA Xfer if any */
4241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
4242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
4244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
4246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
4247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = I2C_DMAAbort;
4248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 76
4249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA TX */
4250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmatx) != HAL_OK)
4251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
4253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback(hi2c->hdmatx);
4254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_RX_LISTEN)
4259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_RXDMAEN) == I2C_CR1_RXDMAEN)
4261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
4263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA Xfer if any */
4265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
4266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
4268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
4269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = I2C_DMAAbort;
4270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA RX */
4272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmarx) != HAL_OK)
4273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
4275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback(hi2c->hdmarx);
4276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
4283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_BUSY_RX_LISTEN;
4286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable Address Acknowledge */
4290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 &= ~I2C_CR2_NACK;
4291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare transfer parameters */
4293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr = pData;
4294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
4297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
4298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
4300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA transfer complete callback */
4302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferCpltCallback = I2C_DMASlaveReceiveCplt;
4303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the DMA error callback */
4305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferErrorCallback = I2C_DMAError;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 77
4306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the unused DMA callbacks to NULL */
4308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferHalfCpltCallback = NULL;
4309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
4312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** dmaxferstatus = HAL_DMA_Start_IT(hi2c->hdmarx, (uint32_t)&hi2c->Instance->RXDR,
4313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)pData, hi2c->XferSize);
4314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
4318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
4319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
4322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA_PARAM;
4323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (dmaxferstatus == HAL_OK)
4331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
4333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
4334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset XferSize */
4336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = 0;
4337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C state */
4341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
4342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update I2C error code */
4345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_DMA;
4346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_ADDR);
4354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_TRANSMIT) && (tmp != RESET))
4355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag after prepare the transfer parameters */
4357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* This action will generate an acknowledge to the Master */
4358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
4359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 78
4363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
4365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
4366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
4368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
4369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
4370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* REnable ADDR interrupt */
4371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RX_IT | I2C_XFER_LISTEN_IT);
4372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Enable the Address listen mode with Interrupt.
4383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_EnableListen_IT(I2C_HandleTypeDef *hi2c)
4388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
4390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
4392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
4393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the Address Match interrupt */
4395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
4396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
4402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Disable the Address listen mode with Interrupt.
4407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C
4409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_DisableListen_IT(I2C_HandleTypeDef *hi2c)
4412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
4414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmp;
4415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address listen mode only if a transfer is not ongoing */
4417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_LISTEN)
4418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp = (uint32_t)(hi2c->State) & I2C_STATE_MSK;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 79
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = tmp | (uint32_t)(hi2c->Mode);
4421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
4422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
4424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable the Address Match interrupt */
4426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
4427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_BUSY;
4433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Abort a master I2C IT or DMA process communication with Interrupt.
4438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
4441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
4442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef HAL_I2C_Master_Abort_IT(I2C_HandleTypeDef *hi2c, uint16_t DevAddress)
4445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Mode == HAL_I2C_MODE_MASTER)
4447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
4450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts and Store Previous state */
4452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_TX)
4453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_TX_IT);
4455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
4456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
4458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT);
4460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
4461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Do nothing */
4465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set State at HAL_I2C_STATE_ABORT */
4468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_ABORT;
4469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to 1 to generate a dummy read on I2C peripheral */
4471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set AUTOEND mode, this will generate a NACK then STOP condition to abort the current transfe
4472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, 1, I2C_AUTOEND_MODE, I2C_GENERATE_STOP);
4473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 80
4477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Note : The I2C interrupts must be enabled after unlocking current process
4478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** to avoid the risk of I2C interrupt handle execution before current
4479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** process unlock */
4480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_CPLT_IT);
4481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong usage of abort function */
4487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* This function should be used only in case of abort monitored by master device */
4488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
4494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_IRQ_Handler_and_Callbacks IRQ Handler and Callbacks
4497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
4498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles I2C event interrupt request.
4502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** void HAL_I2C_EV_IRQHandler(I2C_HandleTypeDef *hi2c) /* Derogation MISRAC2012-Rule-8.13 */
4507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Get current IT Flags and IT sources value */
4509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflags = READ_REG(hi2c->Instance->ISR);
4510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
4511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C events treatment -------------------------------------*/
4513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferISR != NULL)
4514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR(hi2c, itflags, itsources);
4516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles I2C error interrupt request.
4521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** void HAL_I2C_ER_IRQHandler(I2C_HandleTypeDef *hi2c)
4526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflags = READ_REG(hi2c->Instance->ISR);
4528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
4529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmperror;
4530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C Bus error interrupt occurred ------------------------------------*/
4532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(itflags, I2C_FLAG_BERR) != RESET) && \
4533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 81
4534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_BERR;
4536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear BERR flag */
4538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_BERR);
4539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C Over-Run/Under-Run interrupt occurred ----------------------------------------*/
4542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(itflags, I2C_FLAG_OVR) != RESET) && \
4543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
4544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_OVR;
4546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear OVR flag */
4548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_OVR);
4549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* I2C Arbitration Loss error interrupt occurred -------------------------------------*/
4552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(itflags, I2C_FLAG_ARLO) != RESET) && \
4553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
4554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_ARLO;
4556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ARLO flag */
4558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ARLO);
4559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store current volatile hi2c->ErrorCode, misra rule */
4562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmperror = hi2c->ErrorCode;
4563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the Error Callback in case of Error detected */
4565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmperror & (HAL_I2C_ERROR_BERR | HAL_I2C_ERROR_OVR | HAL_I2C_ERROR_ARLO)) != HAL_I2C_ERROR_
4566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, tmperror);
4568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Master Tx Transfer completed callback.
4573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_MasterTxCpltCallback(I2C_HandleTypeDef *hi2c)
4578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_MasterTxCpltCallback could be implemented in the user file
4584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Master Rx Transfer completed callback.
4589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 82
4591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_MasterRxCpltCallback(I2C_HandleTypeDef *hi2c)
4594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_MasterRxCpltCallback could be implemented in the user file
4600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @brief Slave Tx Transfer completed callback.
4604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_SlaveTxCpltCallback(I2C_HandleTypeDef *hi2c)
4609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_SlaveTxCpltCallback could be implemented in the user file
4615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Slave Rx Transfer completed callback.
4620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_SlaveRxCpltCallback(I2C_HandleTypeDef *hi2c)
4625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_SlaveRxCpltCallback could be implemented in the user file
4631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Slave Address Match callback.
4636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param TransferDirection Master request Transfer Direction (Write/Read), value of @ref I2C_XFE
4639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param AddrMatchCode Address Match Code
4640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_AddrCallback(I2C_HandleTypeDef *hi2c, uint8_t TransferDirection, uint16_t AddrM
4643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(TransferDirection);
4647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(AddrMatchCode);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 83
4648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_AddrCallback() could be implemented in the user file
4651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Listen Complete callback.
4656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_ListenCpltCallback(I2C_HandleTypeDef *hi2c)
4661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_ListenCpltCallback() could be implemented in the user file
4667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Memory Tx Transfer completed callback.
4672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_MemTxCpltCallback(I2C_HandleTypeDef *hi2c)
4677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_MemTxCpltCallback could be implemented in the user file
4683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Memory Rx Transfer completed callback.
4688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_MemRxCpltCallback(I2C_HandleTypeDef *hi2c)
4693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_MemRxCpltCallback could be implemented in the user file
4699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C error callback.
4704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 84
4705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_ErrorCallback(I2C_HandleTypeDef *hi2c)
4709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_ErrorCallback could be implemented in the user file
4715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C abort callback.
4720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
4723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __weak void HAL_I2C_AbortCpltCallback(I2C_HandleTypeDef *hi2c)
4725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
4727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(hi2c);
4728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* NOTE : This function should not be modified, when the callback is needed,
4730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** the HAL_I2C_AbortCpltCallback could be implemented in the user file
4731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
4736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @defgroup I2C_Exported_Functions_Group3 Peripheral State, Mode and Error functions
4739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Peripheral State, Mode and Error functions
4740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *
4741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @verbatim
4742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===============================================================================
4743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ##### Peripheral State, Mode and Error functions #####
4744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ===============================================================================
4745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** [..]
4746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** This subsection permit to get in run-time the status of the peripheral
4747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** and the data flow.
4748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** @endverbatim
4750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
4751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Return the I2C handle state.
4755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL state
4758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef HAL_I2C_GetState(const I2C_HandleTypeDef *hi2c)
4760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return I2C handle state */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 85
4762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return hi2c->State;
4763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Returns the I2C Master, Slave, Memory or no mode.
4767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for I2C module
4769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL mode
4770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_ModeTypeDef HAL_I2C_GetMode(const I2C_HandleTypeDef *hi2c)
4772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return hi2c->Mode;
4774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Return the I2C error code.
4778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval I2C Error Code
4781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t HAL_I2C_GetError(const I2C_HandleTypeDef *hi2c)
4783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return hi2c->ErrorCode;
4785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
4789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @}
4793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /** @addtogroup I2C_Private_Functions
4796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @{
4797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Interrupt Sub-Routine which handle the Interrupt Flags Master Mode with Interrupt.
4801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
4804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITSources Interrupt sources enabled.
4805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Master_ISR_IT(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
4808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources)
4809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t devaddress;
4811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
4812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
4814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
4815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_AF) != RESET) && \
4817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
4818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 86
4819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
4820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
4821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set corresponding Error Code */
4823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to generate STOP, it is automatically done */
4824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Error callback will be send during stop flag treatment */
4825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
4826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
4828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
4829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_RXNE) != RESET) && \
4831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
4832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Remove RXNE flag on temporary variable as read done */
4834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpITFlags &= ~I2C_FLAG_RXNE;
4835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
4837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
4838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
4840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
4841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
4843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
4844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TXIS) != RESET) && \
4846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
4847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
4849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
4850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
4852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
4853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
4855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
4856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TCR) != RESET) && \
4858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
4859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount != 0U) && (hi2c->XferSize == 0U))
4861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** devaddress = (uint16_t)(hi2c->Instance->CR2 & I2C_CR2_SADD);
4863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
4865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
4867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_START
4868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
4873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize,
4875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions, I2C_NO_STARTSTOP);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 87
4876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize,
4880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
4881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call TxCpltCallback() if no stop mode is set */
4887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_GET_STOP_MODE(hi2c) != I2C_AUTOEND_MODE)
4888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master Sequential complete process */
4890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterSeqCplt(hi2c);
4891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong size Status regarding TCR flag event */
4895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
4896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_SIZE);
4897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TC) != RESET) && \
4901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
4902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount == 0U)
4904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_GET_STOP_MODE(hi2c) != I2C_AUTOEND_MODE)
4906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate a stop condition in case of no transfer option */
4908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions == I2C_NO_OPTION_FRAME)
4909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate Stop */
4911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_STOP;
4912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master Sequential complete process */
4916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterSeqCplt(hi2c);
4917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong size Status regarding TC flag event */
4923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
4924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_SIZE);
4925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
4928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
4930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_STOPF) != RESET) && \
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 88
4933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
4934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master complete process */
4936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterCplt(hi2c, tmpITFlags);
4937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
4940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
4941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
4943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
4946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Interrupt Sub-Routine which handle the Interrupt Flags Memory Mode with Interrupt.
4947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
4948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
4949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
4950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITSources Interrupt sources enabled.
4951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
4952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
4953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Mem_ISR_IT(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
4954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources)
4955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t direction = I2C_GENERATE_START_WRITE;
4957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
4958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
4960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
4961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_AF) != RESET) && \
4963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
4964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
4966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
4967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set corresponding Error Code */
4969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to generate STOP, it is automatically done */
4970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Error callback will be send during stop flag treatment */
4971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
4972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
4974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
4975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_RXNE) != RESET) && \
4977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
4978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Remove RXNE flag on temporary variable as read done */
4980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpITFlags &= ~I2C_FLAG_RXNE;
4981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
4983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
4984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
4986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
4987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
4989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 89
4990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TXIS) != RESET) && \
4992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
4993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Memaddress == 0xFFFFFFFFU)
4995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
4997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
4998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
5000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
5001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
5003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
5004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write LSB part of Memory Address */
5008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = hi2c->Memaddress;
5009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Memaddress content */
5011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = 0xFFFFFFFFU;
5012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TCR) != RESET) && \
5015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
5016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount != 0U) && (hi2c->XferSize == 0U))
5018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
5020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
5022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
5024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
5028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
5030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong size Status regarding TCR flag event */
5035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_SIZE);
5037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TC) != RESET) && \
5040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
5041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
5043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** direction = I2C_GENERATE_START_READ;
5045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 90
5047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
5048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
5050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART */
5052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
5054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
5058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and generate RESTART */
5060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
5062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
5067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_STOPF) != RESET) && \
5070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
5071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master complete process */
5073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterCplt(hi2c, tmpITFlags);
5074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Interrupt Sub-Routine which handle the Interrupt Flags Slave Mode with Interrupt.
5084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
5085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
5086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
5087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITSources Interrupt sources enabled.
5088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
5089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Slave_ISR_IT(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
5091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources)
5092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
5094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
5095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process locked */
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
5098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if STOPF is set */
5100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_STOPF) != RESET) && \
5101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
5102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave complete process */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 91
5104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveCplt(hi2c, tmpITFlags);
5105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_AF) != RESET) && \
5108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
5109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check that I2C transfer finished */
5111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* if yes, normal use case, a NACK is sent by the MASTER when Transfer is finished */
5112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean XferCount == 0*/
5113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* So clear Flag NACKF only */
5114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount == 0U)
5115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->State == HAL_I2C_STATE_LISTEN) && (tmpoptions == I2C_FIRST_AND_LAST_FRAME))
5117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
5118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Warning[Pa134]: left and right operands are identical */
5119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Listen complete process */
5121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITListenCplt(hi2c, tmpITFlags);
5122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((hi2c->State == HAL_I2C_STATE_BUSY_TX_LISTEN) && (tmpoptions != I2C_NO_OPTION_FRAME)
5124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
5129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
5130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Last Byte is Transmitted */
5132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave Sequential complete process */
5133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
5134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* if no, error use case, a Non-Acknowledge of last Data is generated by the MASTER*/
5144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set ErrorCode corresponding to a Non-Acknowledge */
5148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
5149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpoptions == I2C_FIRST_FRAME) || (tmpoptions == I2C_NEXT_FRAME))
5151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, hi2c->ErrorCode);
5154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_RXNE) != RESET) && \
5158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
5159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > 0U)
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 92
5161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
5163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
5164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
5166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
5167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
5169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
5170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferCount == 0U) && \
5173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
5174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave Sequential complete process */
5176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
5177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_ADDR) != RESET) && \
5180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
5181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITAddrCplt(hi2c, tmpITFlags);
5183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_TXIS) != RESET) && \
5185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
5186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR only if XferCount not reach "0" */
5188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* A TXIS flag can be set, during STOP treatment */
5189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if all Data have already been sent */
5190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If it is the case, this last write in TXDR is not sent, correspond to a dummy TXIS event */
5191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > 0U)
5192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write data to TXDR */
5194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = *hi2c->pBuffPtr;
5195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
5197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
5198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
5200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
5201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpoptions == I2C_NEXT_FRAME) || (tmpoptions == I2C_FIRST_FRAME))
5205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Last Byte is Transmitted */
5207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave Sequential complete process */
5208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
5209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
5215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 93
5218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Interrupt Sub-Routine which handle the Interrupt Flags Master Mode with DMA.
5225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
5226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
5227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
5228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITSources Interrupt sources enabled.
5229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
5230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Master_ISR_DMA(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
5232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources)
5233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t devaddress;
5235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
5236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
5238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
5239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_AF) != RESET) && \
5241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
5242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set corresponding Error Code */
5247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
5248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to generate STOP, it is automatically done */
5250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* But enable STOP interrupt, to treat it */
5251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Error callback will be send during stop flag treatment */
5252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_CPLT_IT);
5253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
5255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
5256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_TCR) != RESET) && \
5258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
5259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable TC interrupt */
5261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_DISABLE_IT(hi2c, I2C_IT_TCI);
5262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount != 0U)
5264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Recover Slave address */
5266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** devaddress = (uint16_t)(hi2c->Instance->CR2 & I2C_CR2_SADD);
5267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare the new XferSize to transfer */
5269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
5270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
5272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
5273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 94
5275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
5277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
5278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
5280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
5284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the new XferSize in Nbytes register */
5288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize, xfermode, I2C_NO_STARTSTOP);
5289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
5291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
5292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
5294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
5295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
5297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
5301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call TxCpltCallback() if no stop mode is set */
5306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_GET_STOP_MODE(hi2c) != I2C_AUTOEND_MODE)
5307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master Sequential complete process */
5309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterSeqCplt(hi2c);
5310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong size Status regarding TCR flag event */
5314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_SIZE);
5316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_TC) != RESET) && \
5320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
5321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount == 0U)
5323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_GET_STOP_MODE(hi2c) != I2C_AUTOEND_MODE)
5325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate a stop condition in case of no transfer option */
5327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions == I2C_NO_OPTION_FRAME)
5328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate Stop */
5330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_STOP;
5331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 95
5332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master Sequential complete process */
5335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterSeqCplt(hi2c);
5336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong size Status regarding TC flag event */
5342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_SIZE);
5344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_STOPF) != RESET) && \
5347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
5348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master complete process */
5350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterCplt(hi2c, ITFlags);
5351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
5355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Interrupt Sub-Routine which handle the Interrupt Flags Memory Mode with DMA.
5365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
5366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
5367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
5368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITSources Interrupt sources enabled.
5369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
5370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Mem_ISR_DMA(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
5372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources)
5373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t direction = I2C_GENERATE_START_WRITE;
5375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Locked */
5377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
5378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_AF) != RESET) && \
5380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
5381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set corresponding Error Code */
5386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
5387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No need to generate STOP, it is automatically done */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 96
5389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* But enable STOP interrupt, to treat it */
5390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Error callback will be send during stop flag treatment */
5391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_CPLT_IT);
5392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
5394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
5395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_TXIS) != RESET) && \
5397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
5398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write LSB part of Memory Address */
5400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = hi2c->Memaddress;
5401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Memaddress content */
5403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Memaddress = 0xFFFFFFFFU;
5404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_TCR) != RESET) && \
5406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
5407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable only Error interrupt */
5409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_ERROR_IT);
5410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount != 0U)
5412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prepare the new XferSize to transfer */
5414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
5415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
5417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
5419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
5423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
5425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
5428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
5429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
5431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
5432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
5434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
5438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wrong size Status regarding TCR flag event */
5443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_SIZE);
5445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 97
5446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_TC) != RESET) && \
5448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
5449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
5451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** direction = I2C_GENERATE_START_READ;
5453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
5456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
5458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and reload if hi2c->XferCount > MAX_NBYTE_SIZE and generate RESTART */
5460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
5462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
5466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set NBYTES to write and generate RESTART */
5468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
5469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
5470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update XferCount value */
5473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount -= hi2c->XferSize;
5474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable DMA Request */
5476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
5477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_RXDMAEN;
5479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 |= I2C_CR1_TXDMAEN;
5483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_STOPF) != RESET) && \
5486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
5487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Master complete process */
5489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITMasterCplt(hi2c, ITFlags);
5490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
5494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 98
5503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Interrupt Sub-Routine which handle the Interrupt Flags Slave Mode with DMA.
5504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
5505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
5506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
5507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITSources Interrupt sources enabled.
5508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
5509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_Slave_ISR_DMA(struct __I2C_HandleTypeDef *hi2c, uint32_t ITFlags,
5511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t ITSources)
5512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
5514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t treatdmanack = 0U;
5515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate;
5516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process locked */
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_LOCK(hi2c);
5519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if STOPF is set */
5521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_STOPF) != RESET) && \
5522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
5523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave complete process */
5525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveCplt(hi2c, ITFlags);
5526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_AF) != RESET) && \
5529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
5530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check that I2C transfer finished */
5532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* if yes, normal use case, a NACK is sent by the MASTER when Transfer is finished */
5533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean XferCount == 0 */
5534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* So clear Flag NACKF only */
5535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_CHECK_IT_SOURCE(ITSources, I2C_CR1_TXDMAEN) != RESET) ||
5536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_CR1_RXDMAEN) != RESET))
5537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Split check of hdmarx, for MISRA compliance */
5539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
5540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_IT_SOURCE(ITSources, I2C_CR1_RXDMAEN) != RESET)
5542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_GET_DMA_REMAIN_DATA(hi2c->hdmarx) == 0U)
5544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** treatdmanack = 1U;
5546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Split check of hdmatx, for MISRA compliance */
5551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
5552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_IT_SOURCE(ITSources, I2C_CR1_TXDMAEN) != RESET)
5554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_GET_DMA_REMAIN_DATA(hi2c->hdmatx) == 0U)
5556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** treatdmanack = 1U;
5558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 99
5560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (treatdmanack == 1U)
5563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->State == HAL_I2C_STATE_LISTEN) && (tmpoptions == I2C_FIRST_AND_LAST_FRAME))
5565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
5566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** Warning[Pa134]: left and right operands are identical */
5567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Listen complete process */
5569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITListenCplt(hi2c, ITFlags);
5570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((hi2c->State == HAL_I2C_STATE_BUSY_TX_LISTEN) && (tmpoptions != I2C_NO_OPTION_FRAM
5572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
5577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
5578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Last Byte is Transmitted */
5580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave Sequential complete process */
5581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
5582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* if no, error use case, a Non-Acknowledge of last Data is generated by the MASTER*/
5592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
5593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set ErrorCode corresponding to a Non-Acknowledge */
5596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
5597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store current hi2c->State, solve MISRA2012-Rule-13.5 */
5599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpstate = hi2c->State;
5600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpoptions == I2C_FIRST_FRAME) || (tmpoptions == I2C_NEXT_FRAME))
5602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpstate == HAL_I2C_STATE_BUSY_TX) || (tmpstate == HAL_I2C_STATE_BUSY_TX_LISTEN))
5604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
5606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((tmpstate == HAL_I2C_STATE_BUSY_RX) || (tmpstate == HAL_I2C_STATE_BUSY_RX_LISTEN
5608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
5610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Do nothing */
5614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 100
5617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, hi2c->ErrorCode);
5618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Only Clear NACK Flag, no DMA treatment is pending */
5624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
5625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((I2C_CHECK_FLAG(ITFlags, I2C_FLAG_ADDR) != RESET) && \
5628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
5629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITAddrCplt(hi2c, ITFlags);
5631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
5635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Master sends target device address followed by internal memory address for write reques
5645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
5646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
5647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
5648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
5649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
5650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
5651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
5652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
5653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
5654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_RequestMemoryWrite(I2C_HandleTypeDef *hi2c, uint16_t DevAddress,
5656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddress, uint16_t MemAddSize, uint32_t
5657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart)
5658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_RELOAD_MODE, I2C_GENERATE_START_WRI
5660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
5662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, Tickstart) != HAL_OK)
5663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 8Bit */
5668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (MemAddSize == I2C_MEMADD_SIZE_8BIT)
5669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Memory Address */
5671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
5672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 16Bit */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 101
5674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send MSB of Memory Address */
5677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_MSB(MemAddress);
5678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
5680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, Tickstart) != HAL_OK)
5681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send LSB of Memory Address */
5686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
5687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TCR flag is set */
5690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_TCR, RESET, Timeout, Tickstart) != HAL_OK)
5691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Master sends target device address followed by internal memory address for read request
5700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
5701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
5702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Target device address: The device 7 bits address value
5703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * in datasheet must be shifted to the left before calling the interface
5704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddress Internal memory address
5705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param MemAddSize Size of internal memory address
5706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
5707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
5708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
5709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_RequestMemoryRead(I2C_HandleTypeDef *hi2c, uint16_t DevAddress,
5711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t MemAddress, uint16_t MemAddSize, uint32_t T
5712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart)
5713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_SOFTEND_MODE, I2C_GENERATE_START_WR
5715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
5717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, Tickstart) != HAL_OK)
5718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 8Bit */
5723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (MemAddSize == I2C_MEMADD_SIZE_8BIT)
5724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send Memory Address */
5726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
5727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If Memory address size is 16Bit */
5729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 102
5731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send MSB of Memory Address */
5732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_MSB(MemAddress);
5733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TXIS flag is set */
5735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, Tickstart) != HAL_OK)
5736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Send LSB of Memory Address */
5741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = I2C_MEM_ADD_LSB(MemAddress);
5742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until TC flag is set */
5745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_WaitOnFlagUntilTimeout(hi2c, I2C_FLAG_TC, RESET, Timeout, Tickstart) != HAL_OK)
5746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
5751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Address complete process callback.
5755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
5756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
5757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
5758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITAddrCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags)
5760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint8_t transferdirection;
5762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t slaveaddrcode;
5763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t ownadd1code;
5764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t ownadd2code;
5765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
5767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(ITFlags);
5768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* In case of Listen state, need to inform upper layer of address match code event */
5770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) == (uint32_t)HAL_I2C_STATE_LISTEN)
5771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** transferdirection = I2C_GET_DIR(hi2c);
5773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** slaveaddrcode = I2C_GET_ADDR_MATCH(hi2c);
5774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd1code = I2C_GET_OWN_ADDRESS1(hi2c);
5775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd2code = I2C_GET_OWN_ADDRESS2(hi2c);
5776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If 10bits addressing mode is selected */
5778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Init.AddressingMode == I2C_ADDRESSINGMODE_10BIT)
5779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((slaveaddrcode & SLAVE_ADDR_MSK) == ((ownadd1code >> SLAVE_ADDR_SHIFT) & SLAVE_ADDR_MSK))
5781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** slaveaddrcode = ownadd1code;
5783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrEventCount++;
5784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->AddrEventCount == 2U)
5785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset Address Event counter */
5787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrEventCount = 0U;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 103
5788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag */
5790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
5791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Slave Addr callback */
5796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrCallback(hi2c, transferdirection, slaveaddrcode);
5798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_AddrCallback(hi2c, transferdirection, slaveaddrcode);
5800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** slaveaddrcode = ownadd2code;
5806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable ADDR Interrupts */
5808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
5809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Slave Addr callback */
5814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrCallback(hi2c, transferdirection, slaveaddrcode);
5816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_AddrCallback(hi2c, transferdirection, slaveaddrcode);
5818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* else 7 bits addressing mode is selected */
5822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable ADDR Interrupts */
5825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT);
5826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Slave Addr callback */
5831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrCallback(hi2c, transferdirection, slaveaddrcode);
5833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_AddrCallback(hi2c, transferdirection, slaveaddrcode);
5835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Else clear address flag only */
5839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ADDR flag */
5842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ADDR);
5843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 104
5845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Master sequential complete process.
5851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
5852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
5853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITMasterSeqCplt(I2C_HandleTypeDef *hi2c)
5855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset I2C handle mode */
5857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
5858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No Generate Stop, to permit restart mode */
5860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* The stop will be done at the end of transfer, when I2C_AUTOEND_MODE enable */
5861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_TX)
5862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
5864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
5865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
5866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts */
5868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_TX_IT);
5869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterTxCpltCallback(hi2c);
5876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MasterTxCpltCallback(hi2c);
5878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* hi2c->State == HAL_I2C_STATE_BUSY_RX */
5881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
5884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
5885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
5886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts */
5888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT);
5889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterRxCpltCallback(hi2c);
5896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MasterRxCpltCallback(hi2c);
5898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 105
5902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Slave sequential complete process.
5904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
5905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
5906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITSlaveSeqCplt(I2C_HandleTypeDef *hi2c)
5908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpcr1value = READ_REG(hi2c->Instance->CR1);
5910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset I2C handle mode */
5912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
5913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If a DMA is ongoing, Update handle size context */
5915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_IT_SOURCE(tmpcr1value, I2C_CR1_TXDMAEN) != RESET)
5916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
5918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
5919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (I2C_CHECK_IT_SOURCE(tmpcr1value, I2C_CR1_RXDMAEN) != RESET)
5921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
5923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
5924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Do nothing */
5928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_TX_LISTEN)
5931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Remove HAL_I2C_STATE_SLAVE_BUSY_TX, keep only HAL_I2C_STATE_LISTEN */
5933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
5934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
5935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts */
5937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_TX_IT);
5938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveTxCpltCallback(hi2c);
5945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_SlaveTxCpltCallback(hi2c);
5947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_RX_LISTEN)
5951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Remove HAL_I2C_STATE_SLAVE_BUSY_RX, keep only HAL_I2C_STATE_LISTEN */
5953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
5954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
5955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts */
5957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT);
5958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 106
5959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
5960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
5961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
5963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
5964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveRxCpltCallback(hi2c);
5965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
5966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_SlaveRxCpltCallback(hi2c);
5967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
5968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
5970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
5972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Master complete process.
5977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
5978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
5979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
5980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
5981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITMasterCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags)
5982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmperror;
5984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
5985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __IO uint32_t tmpreg;
5986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
5988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
5989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts and Store Previous state */
5991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_BUSY_TX)
5992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_TX_IT);
5994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
5995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
5997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT);
5999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
6000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Do nothing */
6004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
6007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
6008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset handle parameters */
6010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
6011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_AF) != RESET)
6014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 107
6016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
6017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set acknowledge error code */
6019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
6020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Fetch Last receive data if any */
6023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->State == HAL_I2C_STATE_ABORT) && (I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_RXNE) != RESET))
6024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
6026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpreg = (uint8_t)hi2c->Instance->RXDR;
6027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(tmpreg);
6028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
6031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
6032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store current volatile hi2c->ErrorCode, misra rule */
6034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmperror = hi2c->ErrorCode;
6035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->State == HAL_I2C_STATE_ABORT) || (tmperror != HAL_I2C_ERROR_NONE))
6038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, hi2c->ErrorCode);
6041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* hi2c->State == HAL_I2C_STATE_BUSY_TX */
6043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_TX)
6044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Mode == HAL_I2C_MODE_MEM)
6049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemTxCpltCallback(hi2c);
6058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MemTxCpltCallback(hi2c);
6060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterTxCpltCallback(hi2c);
6072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 108
6073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MasterTxCpltCallback(hi2c);
6074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* hi2c->State == HAL_I2C_STATE_BUSY_RX */
6078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
6079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Mode == HAL_I2C_MODE_MEM)
6084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MemRxCpltCallback(hi2c);
6093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MemRxCpltCallback(hi2c);
6095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->MasterRxCpltCallback(hi2c);
6107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_MasterRxCpltCallback(hi2c);
6109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
6115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Slave complete process.
6120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
6121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
6122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITSlaveCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags)
6125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpcr1value = READ_REG(hi2c->Instance->CR1);
6127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
6128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate = hi2c->State;
6129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 109
6130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
6131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
6132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts and Store Previous state */
6134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpstate == HAL_I2C_STATE_BUSY_TX) || (tmpstate == HAL_I2C_STATE_BUSY_TX_LISTEN))
6135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_TX_IT);
6137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
6138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((tmpstate == HAL_I2C_STATE_BUSY_RX) || (tmpstate == HAL_I2C_STATE_BUSY_RX_LISTEN))
6140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_RX_IT);
6142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
6143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Do nothing */
6147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Address Acknowledge */
6150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
6151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
6153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
6154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
6156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
6157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If a DMA is ongoing, Update handle size context */
6159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_IT_SOURCE(tmpcr1value, I2C_CR1_TXDMAEN) != RESET)
6160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
6162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
6163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
6165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = (uint16_t)I2C_GET_DMA_REMAIN_DATA(hi2c->hdmatx);
6167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (I2C_CHECK_IT_SOURCE(tmpcr1value, I2C_CR1_RXDMAEN) != RESET)
6170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
6172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
6173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
6175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = (uint16_t)I2C_GET_DMA_REMAIN_DATA(hi2c->hdmarx);
6177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Do nothing */
6182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store Last receive data if any */
6185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_FLAG(tmpITFlags, I2C_FLAG_RXNE) != RESET)
6186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 110
6187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Remove RXNE flag on temporary variable as read done */
6188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpITFlags &= ~I2C_FLAG_RXNE;
6189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
6191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
6192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
6194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
6195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferSize > 0U))
6197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
6199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
6200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* All data are not transferred, so set error code accordingly */
6204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount != 0U)
6205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set ErrorCode corresponding to a Non-Acknowledge */
6207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
6208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
6212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->ErrorCode != HAL_I2C_ERROR_NONE)
6214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, hi2c->ErrorCode);
6217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the Listen Complete callback, to inform upper layer of the end of Listen usecase */
6219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_LISTEN)
6220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Listen complete process */
6222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITListenCplt(hi2c, tmpITFlags);
6223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
6226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the Sequential Complete callback, to inform upper layer of the end of Transfer */
6228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
6229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the Listen Complete callback, to inform upper layer of the end of Listen usecase */
6238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ListenCpltCallback(hi2c);
6240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_ListenCpltCallback(hi2c);
6242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 111
6244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->State == HAL_I2C_STATE_BUSY_RX)
6246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveRxCpltCallback(hi2c);
6256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_SlaveRxCpltCallback(hi2c);
6258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->SlaveTxCpltCallback(hi2c);
6271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_SlaveTxCpltCallback(hi2c);
6273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Listen complete process.
6279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
6280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ITFlags Interrupt flags to handle.
6281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITListenCplt(I2C_HandleTypeDef *hi2c, uint32_t ITFlags)
6284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset handle parameters */
6286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
6291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store Last receive data if any */
6293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_CHECK_FLAG(ITFlags, I2C_FLAG_RXNE) != RESET)
6294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Read data from RXDR */
6296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** *hi2c->pBuffPtr = (uint8_t)hi2c->Instance->RXDR;
6297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Increment Buffer pointer */
6299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr++;
6300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 112
6301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferSize > 0U))
6302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
6304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
6305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set ErrorCode corresponding to a Non-Acknowledge */
6307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
6308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable all Interrupts*/
6312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_RX_IT | I2C_XFER_TX_IT);
6313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACK Flag */
6315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
6316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the Listen Complete callback, to inform upper layer of the end of Listen usecase */
6321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ListenCpltCallback(hi2c);
6323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_ListenCpltCallback(hi2c);
6325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C interrupts error process.
6330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
6331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param ErrorCode Error code to handle.
6332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ITError(I2C_HandleTypeDef *hi2c, uint32_t ErrorCode)
6335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate = hi2c->State;
6337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmppreviousstate;
6339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset handle parameters */
6341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = 0U;
6344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set new error code */
6346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= ErrorCode;
6347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Interrupts */
6349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpstate == HAL_I2C_STATE_LISTEN) ||
6350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpstate == HAL_I2C_STATE_BUSY_TX_LISTEN) ||
6351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpstate == HAL_I2C_STATE_BUSY_RX_LISTEN))
6352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable all interrupts, except interrupts related to LISTEN state */
6354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_RX_IT | I2C_XFER_TX_IT);
6355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* keep HAL_I2C_STATE_LISTEN if set */
6357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_LISTEN;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 113
6358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
6359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable all interrupts */
6363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Disable_IRQ(hi2c, I2C_XFER_LISTEN_IT | I2C_XFER_RX_IT | I2C_XFER_TX_IT);
6364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
6366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
6367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If state is an abort treatment on going, don't change state */
6369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* This change will be do later */
6370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State != HAL_I2C_STATE_ABORT)
6371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set HAL_I2C_STATE_READY */
6373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if a STOPF is detected */
6376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == SET)
6377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF) == SET)
6379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
6381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
6382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
6385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
6386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
6390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA TX transfer if any */
6393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmppreviousstate = hi2c->PreviousState;
6394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->hdmatx != NULL) && ((tmppreviousstate == I2C_STATE_MASTER_BUSY_TX) || \
6396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_TX)))
6397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_TXDMAEN) == I2C_CR1_TXDMAEN)
6399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
6401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_GetState(hi2c->hdmatx) != HAL_DMA_STATE_READY)
6404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
6406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
6407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = I2C_DMAAbort;
6408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA TX */
6413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmatx) != HAL_OK)
6414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 114
6415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly XferAbortCallback function in case of error */
6416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback(hi2c->hdmatx);
6417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TreatErrorCallback(hi2c);
6422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA RX transfer if any */
6425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if ((hi2c->hdmarx != NULL) && ((tmppreviousstate == I2C_STATE_MASTER_BUSY_RX) || \
6426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_RX)))
6427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->Instance->CR1 & I2C_CR1_RXDMAEN) == I2C_CR1_RXDMAEN)
6429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
6431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_GetState(hi2c->hdmarx) != HAL_DMA_STATE_READY)
6434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the I2C DMA Abort callback :
6436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** will lead to call HAL_I2C_ErrorCallback() at end of DMA abort procedure */
6437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = I2C_DMAAbort;
6438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Abort DMA RX */
6443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Abort_IT(hi2c->hdmarx) != HAL_OK)
6444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call Directly hi2c->hdmarx->XferAbortCallback function in case of error */
6446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback(hi2c->hdmarx);
6447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TreatErrorCallback(hi2c);
6452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TreatErrorCallback(hi2c);
6457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Error callback treatment.
6462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
6463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_TreatErrorCallback(I2C_HandleTypeDef *hi2c)
6466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_ABORT)
6468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 115
6472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AbortCpltCallback(hi2c);
6478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_AbortCpltCallback(hi2c);
6480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
6485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #if (USE_HAL_I2C_REGISTER_CALLBACKS == 1)
6491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCallback(hi2c);
6492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #else
6493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_ErrorCallback(hi2c);
6494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
6495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief I2C Tx data register flush process.
6500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
6501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_Flush_TXDR(I2C_HandleTypeDef *hi2c)
6504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
29 .loc 1 6504 1 view -0
30 .cfi_startproc
31 @ args = 0, pretend = 0, frame = 0
32 @ frame_needed = 0, uses_anonymous_args = 0
33 @ link register save eliminated.
6505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If a pending TXIS flag is set */
6506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Write a dummy data in TXDR to clear it */
6507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_TXIS) != RESET)
34 .loc 1 6507 3 view .LVU1
35 .loc 1 6507 7 is_stmt 0 view .LVU2
36 0000 0368 ldr r3, [r0]
37 0002 9A69 ldr r2, [r3, #24]
38 .loc 1 6507 6 view .LVU3
39 0004 12F0020F tst r2, #2
40 0008 01D0 beq .L2
6508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->TXDR = 0x00U;
41 .loc 1 6509 5 is_stmt 1 view .LVU4
42 .loc 1 6509 26 is_stmt 0 view .LVU5
43 000a 0022 movs r2, #0
44 000c 9A62 str r2, [r3, #40]
45 .L2:
6510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 116
6512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register if not empty */
6513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_TXE) == RESET)
46 .loc 1 6513 3 is_stmt 1 view .LVU6
47 .loc 1 6513 7 is_stmt 0 view .LVU7
48 000e 0368 ldr r3, [r0]
49 0010 9A69 ldr r2, [r3, #24]
50 .loc 1 6513 6 view .LVU8
51 0012 12F0010F tst r2, #1
52 0016 03D1 bne .L1
6514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_TXE);
53 .loc 1 6515 5 is_stmt 1 view .LVU9
54 0018 9A69 ldr r2, [r3, #24]
55 001a 42F00102 orr r2, r2, #1
56 001e 9A61 str r2, [r3, #24]
57 .L1:
6516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
58 .loc 1 6517 1 is_stmt 0 view .LVU10
59 0020 7047 bx lr
60 .cfi_endproc
61 .LFE195:
63 .section .text.I2C_TransferConfig,"ax",%progbits
64 .align 1
65 .syntax unified
66 .thumb
67 .thumb_func
69 I2C_TransferConfig:
70 .LVL1:
71 .LFB207:
6518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DMA I2C master transmit process complete callback.
6521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hdma DMA handle
6522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAMasterTransmitCplt(DMA_HandleTypeDef *hdma)
6525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
6527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef *hi2c = (I2C_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent);
6528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
6530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
6531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If last transfer, enable STOP interrupt */
6533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount == 0U)
6534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable STOP interrupt */
6536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_CPLT_IT);
6537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* else prepare a new DMA transfer and enable TCReload interrupt */
6539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Buffer pointer */
6542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr += hi2c->XferSize;
6543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the XferSize to transfer */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 117
6545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
6546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
6548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
6552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
6555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Start_IT(hi2c->hdmatx, (uint32_t)hi2c->pBuffPtr, (uint32_t)&hi2c->Instance->TXDR,
6556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
6557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_DMA);
6560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable TC interrupts */
6564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RELOAD_IT);
6565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DMA I2C slave transmit process complete callback.
6572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hdma DMA handle
6573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMASlaveTransmitCplt(DMA_HandleTypeDef *hdma)
6576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
6578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef *hi2c = (I2C_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent);
6579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
6580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((tmpoptions == I2C_NEXT_FRAME) || (tmpoptions == I2C_FIRST_FRAME))
6582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
6584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_TXDMAEN;
6585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Last Byte is Transmitted */
6587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave Sequential complete process */
6588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
6589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No specific action, Master fully manage the generation of STOP condition */
6593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean that this generation can arrive at any time, at the end or during DMA process */
6594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* So STOP condition should be manage through Interrupt treatment */
6595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DMA I2C master receive process complete callback.
6601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hdma DMA handle
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 118
6602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAMasterReceiveCplt(DMA_HandleTypeDef *hdma)
6605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
6607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef *hi2c = (I2C_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent);
6608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
6610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
6611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* If last transfer, enable STOP interrupt */
6613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount == 0U)
6614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable STOP interrupt */
6616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_CPLT_IT);
6617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* else prepare a new DMA transfer and enable TCReload interrupt */
6619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Buffer pointer */
6622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->pBuffPtr += hi2c->XferSize;
6623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Set the XferSize to transfer */
6625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferCount > MAX_NBYTE_SIZE)
6626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = MAX_NBYTE_SIZE;
6628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
6632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable the DMA channel */
6635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_DMA_Start_IT(hi2c->hdmarx, (uint32_t)&hi2c->Instance->RXDR, (uint32_t)hi2c->pBuffPtr,
6636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
6637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_DMA);
6640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable TC interrupts */
6644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Enable_IRQ(hi2c, I2C_XFER_RELOAD_IT);
6645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DMA I2C slave receive process complete callback.
6652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hdma DMA handle
6653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMASlaveReceiveCplt(DMA_HandleTypeDef *hdma)
6656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
6658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef *hi2c = (I2C_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 119
6659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
6660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DMA_REMAIN_DATA(hi2c->hdmarx) == 0U) && \
6662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
6663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable DMA Request */
6665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR1 &= ~I2C_CR1_RXDMAEN;
6666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call I2C Slave Sequential complete process */
6668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITSlaveSeqCplt(hi2c);
6669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* No specific action, Master fully manage the generation of STOP condition */
6673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Mean that this generation can arrive at any time, at the end or during DMA process */
6674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* So STOP condition should be manage through Interrupt treatment */
6675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DMA I2C communication error callback.
6681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hdma DMA handle
6682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAError(DMA_HandleTypeDef *hdma)
6685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
6687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef *hi2c = (I2C_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent);
6688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable Acknowledge */
6690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_NACK;
6691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Call the corresponding callback to inform upper layer of End of Transfer */
6693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_ITError(hi2c, HAL_I2C_ERROR_DMA);
6694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief DMA I2C communication abort callback
6699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * (To be called at end of DMA Abort procedure).
6700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hdma DMA handle.
6701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
6702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_DMAAbort(DMA_HandleTypeDef *hdma)
6704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
6706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_HandleTypeDef *hi2c = (I2C_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent);
6707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset AbortCpltCallback */
6709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmatx != NULL)
6710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
6712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->hdmarx != NULL)
6714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 120
6716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TreatErrorCallback(hi2c);
6719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles I2C Communication Timeout. It waits
6724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * until a flag is no longer in the specified status.
6725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
6726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
6727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Flag Specifies the I2C flag to check.
6728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Status The actual Flag status (SET or RESET).
6729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
6730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
6731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
6732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Flag, FlagSta
6734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Timeout, uint32_t Tickstart)
6735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, Flag) == Status)
6737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check for the Timeout */
6739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (Timeout != HAL_MAX_DELAY)
6740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((HAL_GetTick() - Tickstart) > Timeout) || (Timeout == 0U))
6742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((__HAL_I2C_GET_FLAG(hi2c, Flag) == Status))
6744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_TIMEOUT;
6746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
6757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles I2C Communication Timeout for specific usage of TXIS flag.
6761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
6762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
6763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
6764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
6765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
6766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnTXISFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
6768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart)
6769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_TXIS) == RESET)
6771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if an error is detected */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 121
6773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_IsErrorOccurred(hi2c, Timeout, Tickstart) != HAL_OK)
6774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check for the Timeout */
6779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (Timeout != HAL_MAX_DELAY)
6780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((HAL_GetTick() - Tickstart) > Timeout) || (Timeout == 0U))
6782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_TXIS) == RESET))
6784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_TIMEOUT;
6786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
6798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles I2C Communication Timeout for specific usage of STOP flag.
6802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
6803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
6804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
6805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
6806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
6807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnSTOPFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
6809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart)
6810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET)
6812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if an error is detected */
6814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_IsErrorOccurred(hi2c, Timeout, Tickstart) != HAL_OK)
6815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check for the Timeout */
6820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((HAL_GetTick() - Tickstart) > Timeout) || (Timeout == 0U))
6821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET))
6823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_TIMEOUT;
6825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 122
6830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
6836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles I2C Communication Timeout for specific usage of RXNE flag.
6840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
6841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
6842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
6843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
6844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
6845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_WaitOnRXNEFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Timeout,
6847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Tickstart)
6848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_RXNE) == RESET)
6850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if an error is detected */
6852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (I2C_IsErrorOccurred(hi2c, Timeout, Tickstart) != HAL_OK)
6853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if a STOPF is detected */
6858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == SET)
6859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if an RXNE is pending */
6861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Store Last receive data if any */
6862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_RXNE) == SET) && (hi2c->XferSize > 0U))
6863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return HAL_OK */
6865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* The Reading of data from RXDR will be done in caller function */
6866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
6867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF) == SET)
6871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
6873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_AF;
6874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
6876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
6881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
6882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
6884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
6885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 123
6887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check for the Timeout */
6897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((HAL_GetTick() - Tickstart) > Timeout) || (Timeout == 0U))
6898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_RXNE) == RESET))
6900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_TIMEOUT;
6902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
6903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
6905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
6906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_OK;
6912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
6915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief This function handles errors detection during an I2C Communication.
6916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
6917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
6918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Timeout Timeout duration
6919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Tickstart Tick start value
6920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval HAL status
6921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
6922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static HAL_StatusTypeDef I2C_IsErrorOccurred(I2C_HandleTypeDef *hi2c, uint32_t Timeout, uint32_t Ti
6923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
6925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflag = hi2c->Instance->ISR;
6926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t error_code = 0;
6927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart = Tickstart;
6928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmp1;
6929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_ModeTypeDef tmp2;
6930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_IS_BIT_SET(itflag, I2C_FLAG_AF))
6932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear NACKF Flag */
6934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_AF);
6935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Wait until STOP Flag is set or timeout occurred */
6937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* AutoEnd should be initiate after AF */
6938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while ((__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET) && (status == HAL_OK))
6939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check for the Timeout */
6941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (Timeout != HAL_MAX_DELAY)
6942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((HAL_GetTick() - tickstart) > Timeout) || (Timeout == 0U))
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 124
6944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp1 = (uint32_t)(hi2c->Instance->CR2 & I2C_CR2_STOP);
6946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = hi2c->Mode;
6947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* In case of I2C still busy, try to regenerate a STOP manually */
6949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_BUSY) != RESET) && \
6950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp1 != I2C_CR2_STOP) && \
6951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp2 != HAL_I2C_MODE_SLAVE))
6952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Generate Stop */
6954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Instance->CR2 |= I2C_CR2_STOP;
6955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Update Tick with new reference */
6957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tickstart = HAL_GetTick();
6958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET)
6961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check for the Timeout */
6963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((HAL_GetTick() - tickstart) > I2C_TIMEOUT_STOPF)
6964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** error_code |= HAL_I2C_ERROR_TIMEOUT;
6966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
6968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** break;
6970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* In case STOP Flag is detected, clear it */
6977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (status == HAL_OK)
6978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear STOP Flag */
6980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_STOPF);
6981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** error_code |= HAL_I2C_ERROR_AF;
6984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
6986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Refresh Content of Status register */
6989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** itflag = hi2c->Instance->ISR;
6990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Then verify if an additional errors occurs */
6992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if a Bus error occurred */
6993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_IS_BIT_SET(itflag, I2C_FLAG_BERR))
6994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** error_code |= HAL_I2C_ERROR_BERR;
6996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear BERR flag */
6998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_BERR);
6999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 125
7001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if an Over-Run/Under-Run error occurred */
7004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_IS_BIT_SET(itflag, I2C_FLAG_OVR))
7005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** error_code |= HAL_I2C_ERROR_OVR;
7007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear OVR flag */
7009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_OVR);
7010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
7012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check if an Arbitration Loss error occurred */
7015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (HAL_IS_BIT_SET(itflag, I2C_FLAG_ARLO))
7016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** error_code |= HAL_I2C_ERROR_ARLO;
7018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear ARLO flag */
7020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_CLEAR_FLAG(hi2c, I2C_FLAG_ARLO);
7021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** status = HAL_ERROR;
7023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (status != HAL_OK)
7026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Flush TX register */
7028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_Flush_TXDR(hi2c);
7029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Clear Configuration Register 2 */
7031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RESET_CR2(hi2c);
7032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= error_code;
7034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
7035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Process Unlocked */
7038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_UNLOCK(hi2c);
7039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return status;
7042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
7045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Handles I2Cx communication when starting transfer or during transfer (TC or TCR flag ar
7046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
7047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param DevAddress Specifies the slave address to be programmed.
7048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Size Specifies the number of bytes to be programmed.
7049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This parameter must be a value between 0 and 255.
7050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Mode New state of the I2C START condition generation.
7051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This parameter can be one of the following values:
7052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_RELOAD_MODE Enable Reload mode .
7053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_AUTOEND_MODE Enable Automatic end mode.
7054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_SOFTEND_MODE Enable Software end mode.
7055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param Request New state of the I2C START condition generation.
7056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * This parameter can be one of the following values:
7057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_NO_STARTSTOP Don't Generate stop and start condition.
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 126
7058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_GENERATE_STOP Generate stop condition (Size should be set to 0).
7059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_GENERATE_START_READ Generate Restart for read request.
7060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @arg @ref I2C_GENERATE_START_WRITE Generate Restart for write request.
7061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
7062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
7063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_TransferConfig(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t Size, uint32_t
7064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t Request)
7065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
72 .loc 1 7065 1 is_stmt 1 view -0
73 .cfi_startproc
74 @ args = 4, pretend = 0, frame = 0
75 @ frame_needed = 0, uses_anonymous_args = 0
76 @ link register save eliminated.
77 .loc 1 7065 1 is_stmt 0 view .LVU12
78 0000 10B4 push {r4}
79 .cfi_def_cfa_offset 4
80 .cfi_offset 4, -4
81 0002 019C ldr r4, [sp, #4]
7066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
7067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_ALL_INSTANCE(hi2c->Instance));
82 .loc 1 7067 3 is_stmt 1 view .LVU13
7068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_TRANSFER_MODE(Mode));
83 .loc 1 7068 3 view .LVU14
7069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_TRANSFER_REQUEST(Request));
84 .loc 1 7069 3 view .LVU15
7070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
7072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmp = ((uint32_t)(((uint32_t)DevAddress & I2C_CR2_SADD) | \
85 .loc 1 7072 3 view .LVU16
86 .loc 1 7072 52 is_stmt 0 view .LVU17
87 0004 C1F30901 ubfx r1, r1, #0, #10
88 .LVL2:
89 .loc 1 7072 68 view .LVU18
90 0008 41EA0241 orr r1, r1, r2, lsl #16
7073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (((uint32_t)Size << I2C_CR2_NBYTES_Pos) & I2C_CR2_NBYTES) | \
91 .loc 1 7073 88 view .LVU19
92 000c 1943 orrs r1, r1, r3
7072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (((uint32_t)Size << I2C_CR2_NBYTES_Pos) & I2C_CR2_NBYTES) | \
93 .loc 1 7072 19 view .LVU20
94 000e 2143 orrs r1, r1, r4
7072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (((uint32_t)Size << I2C_CR2_NBYTES_Pos) & I2C_CR2_NBYTES) | \
95 .loc 1 7072 12 view .LVU21
96 0010 21F00041 bic r1, r1, #-2147483648
97 .LVL3:
7074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)Mode | (uint32_t)Request) & (~0x80000000U));
7075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* update CR2 register */
7077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** MODIFY_REG(hi2c->Instance->CR2, \
98 .loc 1 7077 3 is_stmt 1 view .LVU22
99 0014 0268 ldr r2, [r0]
100 .LVL4:
101 .loc 1 7077 3 is_stmt 0 view .LVU23
102 0016 5368 ldr r3, [r2, #4]
103 .LVL5:
104 .loc 1 7077 3 view .LVU24
105 0018 640D lsrs r4, r4, #21
106 001a 04F48064 and r4, r4, #1024
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 127
107 001e 44F07F74 orr r4, r4, #66846720
108 0022 44F45834 orr r4, r4, #221184
109 0026 44F47F74 orr r4, r4, #1020
110 002a 44F00304 orr r4, r4, #3
111 002e 23EA0403 bic r3, r3, r4
112 0032 0B43 orrs r3, r3, r1
113 0034 5360 str r3, [r2, #4]
7078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ((I2C_CR2_SADD | I2C_CR2_NBYTES | I2C_CR2_RELOAD | I2C_CR2_AUTOEND | \
7079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CR2_RD_WRN & (uint32_t)(Request >> (31U - I2C_CR2_RD_WRN_Pos))) | \
7080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_CR2_START | I2C_CR2_STOP)), tmp);
7081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
114 .loc 1 7081 1 view .LVU25
115 0036 5DF8044B ldr r4, [sp], #4
116 .cfi_restore 4
117 .cfi_def_cfa_offset 0
118 .LVL6:
119 .loc 1 7081 1 view .LVU26
120 003a 7047 bx lr
121 .cfi_endproc
122 .LFE207:
124 .section .text.I2C_Enable_IRQ,"ax",%progbits
125 .align 1
126 .syntax unified
127 .thumb
128 .thumb_func
130 I2C_Enable_IRQ:
131 .LVL7:
132 .LFB208:
7082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
7084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Manage the enabling of Interrupts.
7085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
7086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
7087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param InterruptRequest Value of @ref I2C_Interrupt_configuration_definition.
7088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
7089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
7090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_Enable_IRQ(I2C_HandleTypeDef *hi2c, uint16_t InterruptRequest)
7091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
133 .loc 1 7091 1 is_stmt 1 view -0
134 .cfi_startproc
135 @ args = 0, pretend = 0, frame = 0
136 @ frame_needed = 0, uses_anonymous_args = 0
137 @ link register save eliminated.
7092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpisr = 0U;
138 .loc 1 7092 3 view .LVU28
7093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferISR != I2C_Master_ISR_DMA) && \
139 .loc 1 7094 3 view .LVU29
140 .loc 1 7094 12 is_stmt 0 view .LVU30
141 0000 426B ldr r2, [r0, #52]
142 .loc 1 7094 6 view .LVU31
143 0002 294B ldr r3, .L28
144 0004 9A42 cmp r2, r3
145 0006 24D0 beq .L7
146 .loc 1 7094 45 discriminator 1 view .LVU32
147 0008 284B ldr r3, .L28+4
148 000a 9A42 cmp r2, r3
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 128
149 000c 21D0 beq .L7
7095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->XferISR != I2C_Slave_ISR_DMA) && \
150 .loc 1 7095 44 view .LVU33
151 000e 284B ldr r3, .L28+8
152 0010 9A42 cmp r2, r3
153 0012 1ED0 beq .L7
7096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->XferISR != I2C_Mem_ISR_DMA))
7097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_LISTEN_IT) == I2C_XFER_LISTEN_IT)
154 .loc 1 7098 5 is_stmt 1 view .LVU34
155 .loc 1 7098 8 is_stmt 0 view .LVU35
156 0014 11F4004F tst r1, #32768
157 0018 13D1 bne .L18
7092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
158 .loc 1 7092 12 view .LVU36
159 001a 0023 movs r3, #0
160 .L8:
161 .LVL8:
7099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, STOP, NACK and ADDR interrupts */
7101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ADDRI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_ERRI;
7102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_TX_IT) == I2C_XFER_TX_IT)
162 .loc 1 7104 5 is_stmt 1 view .LVU37
163 .loc 1 7104 8 is_stmt 0 view .LVU38
164 001c 11F0010F tst r1, #1
165 0020 01D0 beq .L9
7105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK and RXI interrupts */
7107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_TXI;
166 .loc 1 7107 7 is_stmt 1 view .LVU39
167 .loc 1 7107 14 is_stmt 0 view .LVU40
168 0022 43F0F203 orr r3, r3, #242
169 .LVL9:
170 .L9:
7108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_RX_IT) == I2C_XFER_RX_IT)
171 .loc 1 7110 5 is_stmt 1 view .LVU41
172 .loc 1 7110 8 is_stmt 0 view .LVU42
173 0026 11F0020F tst r1, #2
174 002a 01D0 beq .L10
7111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK and TXI interrupts */
7113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_RXI;
175 .loc 1 7113 7 is_stmt 1 view .LVU43
176 .loc 1 7113 14 is_stmt 0 view .LVU44
177 002c 43F0F403 orr r3, r3, #244
178 .LVL10:
179 .L10:
7114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_ERROR_IT)
180 .loc 1 7116 5 is_stmt 1 view .LVU45
181 .loc 1 7116 8 is_stmt 0 view .LVU46
182 0030 1029 cmp r1, #16
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 129
183 0032 08D0 beq .L23
184 .L11:
7117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
7119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_NACKI;
7120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_CPLT_IT)
185 .loc 1 7122 5 is_stmt 1 view .LVU47
186 .loc 1 7122 8 is_stmt 0 view .LVU48
187 0034 2029 cmp r1, #32
188 0036 09D0 beq .L24
189 .L21:
7123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable STOP interrupts */
7125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_STOPI;
7126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
7130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_LISTEN_IT) == I2C_XFER_LISTEN_IT)
7132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, STOP, NACK and ADDR interrupts */
7134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ADDRI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_ERRI;
7135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_TX_IT) == I2C_XFER_TX_IT)
7138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK and RXI interrupts */
7140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_TXI;
7141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_RX_IT) == I2C_XFER_RX_IT)
7144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR, TC, STOP, NACK and TXI interrupts */
7146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_TCI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_RXI;
7147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_ERROR_IT)
7150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
7152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_NACKI;
7153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_CPLT_IT)
7156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable STOP interrupts */
7158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= (I2C_IT_STOPI | I2C_IT_TCI);
7159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((hi2c->XferISR != I2C_Mem_ISR_DMA) && (InterruptRequest == I2C_XFER_RELOAD_IT))
7162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable TC interrupts */
7164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_TCI;
7165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 130
7167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable interrupts only at the end */
7169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* to avoid the risk of I2C interrupt handle execution before */
7170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* all interrupts requested done */
7171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_ENABLE_IT(hi2c, tmpisr);
190 .loc 1 7171 3 is_stmt 1 view .LVU49
191 0038 0168 ldr r1, [r0]
192 .LVL11:
193 .loc 1 7171 3 is_stmt 0 view .LVU50
194 003a 0A68 ldr r2, [r1]
195 003c 1343 orrs r3, r3, r2
196 .LVL12:
197 .loc 1 7171 3 view .LVU51
198 003e 0B60 str r3, [r1]
199 0040 7047 bx lr
200 .LVL13:
201 .L18:
7101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
202 .loc 1 7101 14 view .LVU52
203 0042 B823 movs r3, #184
204 0044 EAE7 b .L8
205 .LVL14:
206 .L23:
7119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
207 .loc 1 7119 7 is_stmt 1 view .LVU53
7119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
208 .loc 1 7119 14 is_stmt 0 view .LVU54
209 0046 43F09003 orr r3, r3, #144
210 .LVL15:
7119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
211 .loc 1 7119 14 view .LVU55
212 004a F3E7 b .L11
213 .L24:
7125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
214 .loc 1 7125 7 is_stmt 1 view .LVU56
7125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
215 .loc 1 7125 14 is_stmt 0 view .LVU57
216 004c 43F02003 orr r3, r3, #32
217 .LVL16:
7125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
218 .loc 1 7125 14 view .LVU58
219 0050 F2E7 b .L21
220 .LVL17:
221 .L7:
7091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpisr = 0U;
222 .loc 1 7091 1 view .LVU59
223 0052 10B4 push {r4}
224 .cfi_def_cfa_offset 4
225 .cfi_offset 4, -4
7131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
226 .loc 1 7131 5 is_stmt 1 view .LVU60
7131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
227 .loc 1 7131 8 is_stmt 0 view .LVU61
228 0054 11F4004F tst r1, #32768
229 0058 1AD1 bne .L19
7092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
230 .loc 1 7092 12 view .LVU62
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 131
231 005a 0023 movs r3, #0
232 .L13:
233 .LVL18:
7137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
234 .loc 1 7137 5 is_stmt 1 view .LVU63
7137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
235 .loc 1 7137 8 is_stmt 0 view .LVU64
236 005c 11F0010F tst r1, #1
237 0060 01D0 beq .L14
7140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
238 .loc 1 7140 7 is_stmt 1 view .LVU65
7140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
239 .loc 1 7140 14 is_stmt 0 view .LVU66
240 0062 43F0F203 orr r3, r3, #242
241 .LVL19:
242 .L14:
7143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
243 .loc 1 7143 5 is_stmt 1 view .LVU67
7143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
244 .loc 1 7143 8 is_stmt 0 view .LVU68
245 0066 11F0020F tst r1, #2
246 006a 01D0 beq .L15
7146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
247 .loc 1 7146 7 is_stmt 1 view .LVU69
7146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
248 .loc 1 7146 14 is_stmt 0 view .LVU70
249 006c 43F0F403 orr r3, r3, #244
250 .LVL20:
251 .L15:
7149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
252 .loc 1 7149 5 is_stmt 1 view .LVU71
7149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
253 .loc 1 7149 8 is_stmt 0 view .LVU72
254 0070 1029 cmp r1, #16
255 0072 0FD0 beq .L25
256 .L16:
7155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
257 .loc 1 7155 5 is_stmt 1 view .LVU73
7155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
258 .loc 1 7155 8 is_stmt 0 view .LVU74
259 0074 2029 cmp r1, #32
260 0076 10D0 beq .L26
261 .L17:
7161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
262 .loc 1 7161 5 is_stmt 1 view .LVU75
7161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
263 .loc 1 7161 8 is_stmt 0 view .LVU76
264 0078 0D4C ldr r4, .L28+8
265 007a A242 cmp r2, r4
266 007c 01D0 beq .L12
7161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
267 .loc 1 7161 44 discriminator 1 view .LVU77
268 007e 4029 cmp r1, #64
269 0080 0ED0 beq .L27
270 .L12:
271 .loc 1 7171 3 is_stmt 1 view .LVU78
272 0082 0168 ldr r1, [r0]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 132
273 .LVL21:
274 .loc 1 7171 3 is_stmt 0 view .LVU79
275 0084 0A68 ldr r2, [r1]
276 0086 1343 orrs r3, r3, r2
277 .LVL22:
278 .loc 1 7171 3 view .LVU80
279 0088 0B60 str r3, [r1]
7172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
280 .loc 1 7172 1 view .LVU81
281 008a 5DF8044B ldr r4, [sp], #4
282 .cfi_remember_state
283 .cfi_restore 4
284 .cfi_def_cfa_offset 0
285 008e 7047 bx lr
286 .LVL23:
287 .L19:
288 .cfi_restore_state
7134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
289 .loc 1 7134 14 view .LVU82
290 0090 B823 movs r3, #184
291 0092 E3E7 b .L13
292 .LVL24:
293 .L25:
7152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
294 .loc 1 7152 7 is_stmt 1 view .LVU83
7152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
295 .loc 1 7152 14 is_stmt 0 view .LVU84
296 0094 43F09003 orr r3, r3, #144
297 .LVL25:
7152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
298 .loc 1 7152 14 view .LVU85
299 0098 ECE7 b .L16
300 .L26:
7158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
301 .loc 1 7158 7 is_stmt 1 view .LVU86
7158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
302 .loc 1 7158 14 is_stmt 0 view .LVU87
303 009a 43F06003 orr r3, r3, #96
304 .LVL26:
7158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
305 .loc 1 7158 14 view .LVU88
306 009e EBE7 b .L17
307 .L27:
7164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
308 .loc 1 7164 7 is_stmt 1 view .LVU89
7164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
309 .loc 1 7164 14 is_stmt 0 view .LVU90
310 00a0 43F04003 orr r3, r3, #64
311 .LVL27:
7164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
312 .loc 1 7164 14 view .LVU91
313 00a4 EDE7 b .L12
314 .L29:
315 00a6 00BF .align 2
316 .L28:
317 00a8 00000000 .word I2C_Master_ISR_DMA
318 00ac 00000000 .word I2C_Slave_ISR_DMA
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 133
319 00b0 00000000 .word I2C_Mem_ISR_DMA
320 .cfi_endproc
321 .LFE208:
323 .section .text.I2C_Disable_IRQ,"ax",%progbits
324 .align 1
325 .syntax unified
326 .thumb
327 .thumb_func
329 I2C_Disable_IRQ:
330 .LVL28:
331 .LFB209:
7173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
7175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Manage the disabling of Interrupts.
7176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains
7177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * the configuration information for the specified I2C.
7178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param InterruptRequest Value of @ref I2C_Interrupt_configuration_definition.
7179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
7180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
7181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_Disable_IRQ(I2C_HandleTypeDef *hi2c, uint16_t InterruptRequest)
7182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
332 .loc 1 7182 1 is_stmt 1 view -0
333 .cfi_startproc
334 @ args = 0, pretend = 0, frame = 0
335 @ frame_needed = 0, uses_anonymous_args = 0
336 @ link register save eliminated.
7183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpisr = 0U;
337 .loc 1 7183 3 view .LVU93
7184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_TX_IT) == I2C_XFER_TX_IT)
338 .loc 1 7185 3 view .LVU94
339 .loc 1 7185 6 is_stmt 0 view .LVU95
340 0000 11F0010F tst r1, #1
341 0004 09D0 beq .L37
7186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable TC and TXI interrupts */
7188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_TCI | I2C_IT_TXI;
342 .loc 1 7188 5 is_stmt 1 view .LVU96
343 .LVL29:
7189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) != (uint32_t)HAL_I2C_STATE_LISTEN)
344 .loc 1 7190 5 view .LVU97
345 .loc 1 7190 24 is_stmt 0 view .LVU98
346 0006 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
347 .loc 1 7190 8 view .LVU99
348 000a 03F02803 and r3, r3, #40
349 000e 282B cmp r3, #40
350 0010 01D0 beq .L40
7191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable NACK and STOP interrupts */
7193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_ERRI;
351 .loc 1 7193 14 view .LVU100
352 0012 F223 movs r3, #242
353 0014 02E0 b .L31
354 .L40:
7188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
355 .loc 1 7188 12 view .LVU101
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 134
356 0016 4223 movs r3, #66
357 0018 00E0 b .L31
358 .LVL30:
359 .L37:
7183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
360 .loc 1 7183 12 view .LVU102
361 001a 0023 movs r3, #0
362 .LVL31:
363 .L31:
7194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_RX_IT) == I2C_XFER_RX_IT)
364 .loc 1 7197 3 is_stmt 1 view .LVU103
365 .loc 1 7197 6 is_stmt 0 view .LVU104
366 001c 11F0020F tst r1, #2
367 0020 09D0 beq .L32
7198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable TC and RXI interrupts */
7200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_TCI | I2C_IT_RXI;
368 .loc 1 7200 5 is_stmt 1 view .LVU105
369 .loc 1 7200 12 is_stmt 0 view .LVU106
370 0022 43F0440C orr ip, r3, #68
371 .LVL32:
7201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (((uint32_t)hi2c->State & (uint32_t)HAL_I2C_STATE_LISTEN) != (uint32_t)HAL_I2C_STATE_LISTEN)
372 .loc 1 7202 5 is_stmt 1 view .LVU107
373 .loc 1 7202 24 is_stmt 0 view .LVU108
374 0026 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2
375 .loc 1 7202 8 view .LVU109
376 002a 02F02802 and r2, r2, #40
377 002e 282A cmp r2, #40
378 0030 10D0 beq .L39
7203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable NACK and STOP interrupts */
7205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_ERRI;
379 .loc 1 7205 7 is_stmt 1 view .LVU110
380 .loc 1 7205 14 is_stmt 0 view .LVU111
381 0032 43F0F403 orr r3, r3, #244
382 .LVL33:
383 .L32:
7206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((InterruptRequest & I2C_XFER_LISTEN_IT) == I2C_XFER_LISTEN_IT)
384 .loc 1 7209 3 is_stmt 1 view .LVU112
385 .loc 1 7209 6 is_stmt 0 view .LVU113
386 0036 11F4004F tst r1, #32768
387 003a 0DD1 bne .L41
388 .L33:
7210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable ADDR, NACK and STOP interrupts */
7212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ADDRI | I2C_IT_STOPI | I2C_IT_NACKI | I2C_IT_ERRI;
7213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_ERROR_IT)
389 .loc 1 7215 3 is_stmt 1 view .LVU114
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 135
390 .loc 1 7215 6 is_stmt 0 view .LVU115
391 003c 1029 cmp r1, #16
392 003e 0ED0 beq .L42
393 .L34:
7216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable ERR and NACK interrupts */
7218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_ERRI | I2C_IT_NACKI;
7219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_CPLT_IT)
394 .loc 1 7221 3 is_stmt 1 view .LVU116
395 .loc 1 7221 6 is_stmt 0 view .LVU117
396 0040 2029 cmp r1, #32
397 0042 0FD0 beq .L43
398 .L35:
7222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable STOP interrupts */
7224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_STOPI;
7225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (InterruptRequest == I2C_XFER_RELOAD_IT)
399 .loc 1 7227 3 is_stmt 1 view .LVU118
400 .loc 1 7227 6 is_stmt 0 view .LVU119
401 0044 4029 cmp r1, #64
402 0046 10D0 beq .L44
403 .L36:
7228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Enable TC interrupts */
7230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmpisr |= I2C_IT_TCI;
7231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Disable interrupts only at the end */
7234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* to avoid a breaking situation like at "t" time */
7235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* all disable interrupts request are not done */
7236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __HAL_I2C_DISABLE_IT(hi2c, tmpisr);
404 .loc 1 7236 3 is_stmt 1 view .LVU120
405 0048 0168 ldr r1, [r0]
406 .LVL34:
407 .loc 1 7236 3 is_stmt 0 view .LVU121
408 004a 0A68 ldr r2, [r1]
409 004c 22EA0303 bic r3, r2, r3
410 .LVL35:
411 .loc 1 7236 3 view .LVU122
412 0050 0B60 str r3, [r1]
7237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
413 .loc 1 7237 1 view .LVU123
414 0052 7047 bx lr
415 .LVL36:
416 .L39:
7200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
417 .loc 1 7200 12 view .LVU124
418 0054 6346 mov r3, ip
419 0056 EEE7 b .L32
420 .LVL37:
421 .L41:
7212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
422 .loc 1 7212 5 is_stmt 1 view .LVU125
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 136
7212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
423 .loc 1 7212 12 is_stmt 0 view .LVU126
424 0058 43F0B803 orr r3, r3, #184
425 .LVL38:
7212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
426 .loc 1 7212 12 view .LVU127
427 005c EEE7 b .L33
428 .L42:
7218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
429 .loc 1 7218 5 is_stmt 1 view .LVU128
7218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
430 .loc 1 7218 12 is_stmt 0 view .LVU129
431 005e 43F09003 orr r3, r3, #144
432 .LVL39:
7218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
433 .loc 1 7218 12 view .LVU130
434 0062 EDE7 b .L34
435 .L43:
7224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
436 .loc 1 7224 5 is_stmt 1 view .LVU131
7224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
437 .loc 1 7224 12 is_stmt 0 view .LVU132
438 0064 43F02003 orr r3, r3, #32
439 .LVL40:
7224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
440 .loc 1 7224 12 view .LVU133
441 0068 ECE7 b .L35
442 .L44:
7230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
443 .loc 1 7230 5 is_stmt 1 view .LVU134
7230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
444 .loc 1 7230 12 is_stmt 0 view .LVU135
445 006a 43F04003 orr r3, r3, #64
446 .LVL41:
7230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
447 .loc 1 7230 12 view .LVU136
448 006e EBE7 b .L36
449 .cfi_endproc
450 .LFE209:
452 .section .text.I2C_ConvertOtherXferOptions,"ax",%progbits
453 .align 1
454 .syntax unified
455 .thumb
456 .thumb_func
458 I2C_ConvertOtherXferOptions:
459 .LVL42:
460 .LFB210:
7238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
7240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @brief Convert I2Cx OTHER_xxx XferOptions to functional XferOptions.
7241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @param hi2c I2C handle.
7242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** * @retval None
7243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** */
7244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** static void I2C_ConvertOtherXferOptions(I2C_HandleTypeDef *hi2c)
7245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
461 .loc 1 7245 1 is_stmt 1 view -0
462 .cfi_startproc
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 137
463 @ args = 0, pretend = 0, frame = 0
464 @ frame_needed = 0, uses_anonymous_args = 0
465 @ link register save eliminated.
7246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* if user set XferOptions to I2C_OTHER_FRAME */
7247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* it request implicitly to generate a restart condition */
7248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* set XferOptions to I2C_FIRST_FRAME */
7249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions == I2C_OTHER_FRAME)
466 .loc 1 7249 3 view .LVU138
467 .loc 1 7249 11 is_stmt 0 view .LVU139
468 0000 C36A ldr r3, [r0, #44]
469 .loc 1 7249 6 view .LVU140
470 0002 AA2B cmp r3, #170
471 0004 04D0 beq .L48
7250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_FIRST_FRAME;
7252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* else if user set XferOptions to I2C_OTHER_AND_LAST_FRAME */
7254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* it request implicitly to generate a restart condition */
7255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* then generate a stop condition at the end of transfer */
7256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* set XferOptions to I2C_FIRST_AND_LAST_FRAME */
7257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else if (hi2c->XferOptions == I2C_OTHER_AND_LAST_FRAME)
472 .loc 1 7257 8 is_stmt 1 view .LVU141
473 .loc 1 7257 16 is_stmt 0 view .LVU142
474 0006 C36A ldr r3, [r0, #44]
475 .loc 1 7257 11 view .LVU143
476 0008 B3F52A4F cmp r3, #43520
477 000c 03D0 beq .L49
478 .L45:
7258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_FIRST_AND_LAST_FRAME;
7260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** else
7262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Nothing to do */
7264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
479 .loc 1 7265 1 view .LVU144
480 000e 7047 bx lr
481 .L48:
7251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
482 .loc 1 7251 5 is_stmt 1 view .LVU145
7251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
483 .loc 1 7251 23 is_stmt 0 view .LVU146
484 0010 0023 movs r3, #0
485 0012 C362 str r3, [r0, #44]
486 0014 7047 bx lr
487 .L49:
7259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
488 .loc 1 7259 5 is_stmt 1 view .LVU147
7259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
489 .loc 1 7259 23 is_stmt 0 view .LVU148
490 0016 4FF00073 mov r3, #33554432
491 001a C362 str r3, [r0, #44]
7264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
492 .loc 1 7264 3 is_stmt 1 view .LVU149
493 .loc 1 7265 1 is_stmt 0 view .LVU150
494 001c F7E7 b .L45
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 138
495 .cfi_endproc
496 .LFE210:
498 .section .text.I2C_IsErrorOccurred,"ax",%progbits
499 .align 1
500 .syntax unified
501 .thumb
502 .thumb_func
504 I2C_IsErrorOccurred:
505 .LVL43:
506 .LFB206:
6923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
507 .loc 1 6923 1 is_stmt 1 view -0
508 .cfi_startproc
509 @ args = 0, pretend = 0, frame = 0
510 @ frame_needed = 0, uses_anonymous_args = 0
6923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef status = HAL_OK;
511 .loc 1 6923 1 is_stmt 0 view .LVU152
512 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
513 .cfi_def_cfa_offset 24
514 .cfi_offset 4, -24
515 .cfi_offset 5, -20
516 .cfi_offset 6, -16
517 .cfi_offset 7, -12
518 .cfi_offset 8, -8
519 .cfi_offset 14, -4
520 0004 0446 mov r4, r0
6924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflag = hi2c->Instance->ISR;
521 .loc 1 6924 3 is_stmt 1 view .LVU153
522 .LVL44:
6925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t error_code = 0;
523 .loc 1 6925 3 view .LVU154
6925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t error_code = 0;
524 .loc 1 6925 27 is_stmt 0 view .LVU155
525 0006 0368 ldr r3, [r0]
6925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t error_code = 0;
526 .loc 1 6925 12 view .LVU156
527 0008 9E69 ldr r6, [r3, #24]
528 .LVL45:
6926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart = Tickstart;
529 .loc 1 6926 3 is_stmt 1 view .LVU157
6927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmp1;
530 .loc 1 6927 3 view .LVU158
6928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_ModeTypeDef tmp2;
531 .loc 1 6928 3 view .LVU159
6929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
532 .loc 1 6929 3 view .LVU160
6931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
533 .loc 1 6931 3 view .LVU161
6931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
534 .loc 1 6931 6 is_stmt 0 view .LVU162
535 000a 16F01006 ands r6, r6, #16
536 .LVL46:
6931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
537 .loc 1 6931 6 view .LVU163
538 000e 7CD0 beq .L67
539 0010 0D46 mov r5, r1
540 0012 9046 mov r8, r2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 139
6934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
541 .loc 1 6934 5 is_stmt 1 view .LVU164
542 0014 1022 movs r2, #16
543 .LVL47:
6934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
544 .loc 1 6934 5 is_stmt 0 view .LVU165
545 0016 DA61 str r2, [r3, #28]
6938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
546 .loc 1 6938 5 is_stmt 1 view .LVU166
6926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart = Tickstart;
547 .loc 1 6926 12 is_stmt 0 view .LVU167
548 0018 0026 movs r6, #0
6924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflag = hi2c->Instance->ISR;
549 .loc 1 6924 21 view .LVU168
550 001a 3746 mov r7, r6
551 .LVL48:
552 .L53:
6938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
553 .loc 1 6938 64 is_stmt 1 view .LVU169
6938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
554 .loc 1 6938 13 is_stmt 0 view .LVU170
555 001c 2368 ldr r3, [r4]
556 001e 9869 ldr r0, [r3, #24]
6938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
557 .loc 1 6938 64 view .LVU171
558 0020 10F0200F tst r0, #32
559 0024 30D1 bne .L59
6938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
560 .loc 1 6938 64 discriminator 1 view .LVU172
561 0026 7FBB cbnz r7, .L59
6941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
562 .loc 1 6941 7 is_stmt 1 view .LVU173
6941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
563 .loc 1 6941 10 is_stmt 0 view .LVU174
564 0028 B5F1FF3F cmp r5, #-1
565 002c F6D0 beq .L53
6943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
566 .loc 1 6943 9 is_stmt 1 view .LVU175
6943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
567 .loc 1 6943 15 is_stmt 0 view .LVU176
568 002e FFF7FEFF bl HAL_GetTick
569 .LVL49:
6943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
570 .loc 1 6943 29 view .LVU177
571 0032 A0EB0800 sub r0, r0, r8
6943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
572 .loc 1 6943 12 view .LVU178
573 0036 A842 cmp r0, r5
574 0038 01D8 bhi .L54
6943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
575 .loc 1 6943 53 discriminator 1 view .LVU179
576 003a 002D cmp r5, #0
577 003c EED1 bne .L53
578 .L54:
6945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = hi2c->Mode;
579 .loc 1 6945 11 is_stmt 1 view .LVU180
6945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = hi2c->Mode;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 140
580 .loc 1 6945 33 is_stmt 0 view .LVU181
581 003e 2168 ldr r1, [r4]
6945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = hi2c->Mode;
582 .loc 1 6945 43 view .LVU182
583 0040 4B68 ldr r3, [r1, #4]
6945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = hi2c->Mode;
584 .loc 1 6945 16 view .LVU183
585 0042 03F48043 and r3, r3, #16384
586 .LVL50:
6946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
587 .loc 1 6946 11 is_stmt 1 view .LVU184
6946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
588 .loc 1 6946 16 is_stmt 0 view .LVU185
589 0046 94F84220 ldrb r2, [r4, #66] @ zero_extendqisi2
590 004a D2B2 uxtb r2, r2
591 .LVL51:
6949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp1 != I2C_CR2_STOP) && \
592 .loc 1 6949 11 is_stmt 1 view .LVU186
6949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp1 != I2C_CR2_STOP) && \
593 .loc 1 6949 16 is_stmt 0 view .LVU187
594 004c 8869 ldr r0, [r1, #24]
6949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp1 != I2C_CR2_STOP) && \
595 .loc 1 6949 14 view .LVU188
596 004e 10F4004F tst r0, #32768
597 0052 02D0 beq .L57
6949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp1 != I2C_CR2_STOP) && \
598 .loc 1 6949 66 discriminator 1 view .LVU189
599 0054 0BB9 cbnz r3, .L57
6950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmp2 != HAL_I2C_MODE_SLAVE))
600 .loc 1 6950 38 view .LVU190
601 0056 202A cmp r2, #32
602 0058 0ED1 bne .L69
603 .LVL52:
604 .L57:
6960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
605 .loc 1 6960 59 is_stmt 1 view .LVU191
6960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
606 .loc 1 6960 18 is_stmt 0 view .LVU192
607 005a 2368 ldr r3, [r4]
608 005c 9B69 ldr r3, [r3, #24]
6960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
609 .loc 1 6960 59 view .LVU193
610 005e 13F0200F tst r3, #32
611 0062 DBD1 bne .L53
6963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
612 .loc 1 6963 13 is_stmt 1 view .LVU194
6963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
613 .loc 1 6963 18 is_stmt 0 view .LVU195
614 0064 FFF7FEFF bl HAL_GetTick
615 .LVL53:
6963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
616 .loc 1 6963 32 view .LVU196
617 0068 A0EB0800 sub r0, r0, r8
6963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
618 .loc 1 6963 16 view .LVU197
619 006c 1928 cmp r0, #25
620 006e F4D9 bls .L57
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 141
6965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
621 .loc 1 6965 15 is_stmt 1 view .LVU198
6965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
622 .loc 1 6965 26 is_stmt 0 view .LVU199
623 0070 46F02006 orr r6, r6, #32
624 .LVL54:
6967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
625 .loc 1 6967 15 is_stmt 1 view .LVU200
6969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
626 .loc 1 6969 15 view .LVU201
6967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
627 .loc 1 6967 22 is_stmt 0 view .LVU202
628 0074 0127 movs r7, #1
6969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
629 .loc 1 6969 15 view .LVU203
630 0076 D1E7 b .L53
631 .LVL55:
632 .L69:
6954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
633 .loc 1 6954 13 is_stmt 1 view .LVU204
6954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
634 .loc 1 6954 27 is_stmt 0 view .LVU205
635 0078 4B68 ldr r3, [r1, #4]
636 .LVL56:
6954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
637 .loc 1 6954 33 view .LVU206
638 007a 43F48043 orr r3, r3, #16384
639 007e 4B60 str r3, [r1, #4]
6957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
640 .loc 1 6957 13 is_stmt 1 view .LVU207
6957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
641 .loc 1 6957 25 is_stmt 0 view .LVU208
642 0080 FFF7FEFF bl HAL_GetTick
643 .LVL57:
6957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
644 .loc 1 6957 25 view .LVU209
645 0084 8046 mov r8, r0
646 .LVL58:
6957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
647 .loc 1 6957 25 view .LVU210
648 0086 E8E7 b .L57
649 .LVL59:
650 .L59:
6977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
651 .loc 1 6977 5 is_stmt 1 view .LVU211
6977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
652 .loc 1 6977 8 is_stmt 0 view .LVU212
653 0088 0FB9 cbnz r7, .L61
6980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
654 .loc 1 6980 7 is_stmt 1 view .LVU213
655 008a 2022 movs r2, #32
656 008c DA61 str r2, [r3, #28]
657 .L61:
6983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
658 .loc 1 6983 5 view .LVU214
6983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
659 .loc 1 6983 16 is_stmt 0 view .LVU215
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 142
660 008e 46F00406 orr r6, r6, #4
661 .LVL60:
6985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
662 .loc 1 6985 5 is_stmt 1 view .LVU216
6985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
663 .loc 1 6985 12 is_stmt 0 view .LVU217
664 0092 0125 movs r5, #1
665 .LVL61:
666 .L51:
6989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
667 .loc 1 6989 3 is_stmt 1 view .LVU218
6989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
668 .loc 1 6989 16 is_stmt 0 view .LVU219
669 0094 2268 ldr r2, [r4]
6989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
670 .loc 1 6989 10 view .LVU220
671 0096 9369 ldr r3, [r2, #24]
672 .LVL62:
6993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
673 .loc 1 6993 3 is_stmt 1 view .LVU221
6993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
674 .loc 1 6993 6 is_stmt 0 view .LVU222
675 0098 13F4807F tst r3, #256
676 009c 05D0 beq .L62
6995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
677 .loc 1 6995 5 is_stmt 1 view .LVU223
6995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
678 .loc 1 6995 16 is_stmt 0 view .LVU224
679 009e 46F00106 orr r6, r6, #1
680 .LVL63:
6998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
681 .loc 1 6998 5 is_stmt 1 view .LVU225
682 00a2 4FF48071 mov r1, #256
683 00a6 D161 str r1, [r2, #28]
7000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
684 .loc 1 7000 5 view .LVU226
685 .LVL64:
7000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
686 .loc 1 7000 12 is_stmt 0 view .LVU227
687 00a8 0125 movs r5, #1
688 .LVL65:
689 .L62:
7004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
690 .loc 1 7004 3 is_stmt 1 view .LVU228
7004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
691 .loc 1 7004 6 is_stmt 0 view .LVU229
692 00aa 13F4806F tst r3, #1024
693 00ae 06D0 beq .L63
7006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
694 .loc 1 7006 5 is_stmt 1 view .LVU230
7006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
695 .loc 1 7006 16 is_stmt 0 view .LVU231
696 00b0 46F00806 orr r6, r6, #8
697 .LVL66:
7009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
698 .loc 1 7009 5 is_stmt 1 view .LVU232
699 00b4 2268 ldr r2, [r4]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 143
700 00b6 4FF48061 mov r1, #1024
701 00ba D161 str r1, [r2, #28]
7011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
702 .loc 1 7011 5 view .LVU233
703 .LVL67:
7011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
704 .loc 1 7011 12 is_stmt 0 view .LVU234
705 00bc 0125 movs r5, #1
706 .LVL68:
707 .L63:
7015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
708 .loc 1 7015 3 is_stmt 1 view .LVU235
7015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
709 .loc 1 7015 6 is_stmt 0 view .LVU236
710 00be 13F4007F tst r3, #512
711 00c2 24D0 beq .L64
7017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
712 .loc 1 7017 5 is_stmt 1 view .LVU237
7017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
713 .loc 1 7017 16 is_stmt 0 view .LVU238
714 00c4 46F00206 orr r6, r6, #2
715 .LVL69:
7020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
716 .loc 1 7020 5 is_stmt 1 view .LVU239
717 00c8 2368 ldr r3, [r4]
718 .LVL70:
7020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
719 .loc 1 7020 5 is_stmt 0 view .LVU240
720 00ca 4FF40072 mov r2, #512
721 00ce DA61 str r2, [r3, #28]
7022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
722 .loc 1 7022 5 is_stmt 1 view .LVU241
723 .LVL71:
7025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
724 .loc 1 7025 3 view .LVU242
7022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
725 .loc 1 7022 12 is_stmt 0 view .LVU243
726 00d0 0125 movs r5, #1
727 .LVL72:
728 .L65:
7028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
729 .loc 1 7028 5 is_stmt 1 view .LVU244
730 00d2 2046 mov r0, r4
731 00d4 FFF7FEFF bl I2C_Flush_TXDR
732 .LVL73:
7031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
733 .loc 1 7031 5 view .LVU245
734 00d8 2268 ldr r2, [r4]
735 00da 5368 ldr r3, [r2, #4]
736 00dc 23F0FF73 bic r3, r3, #33423360
737 00e0 23F48B33 bic r3, r3, #71168
738 00e4 23F4FF73 bic r3, r3, #510
739 00e8 23F00103 bic r3, r3, #1
740 00ec 5360 str r3, [r2, #4]
7033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
741 .loc 1 7033 5 view .LVU246
7033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 144
742 .loc 1 7033 9 is_stmt 0 view .LVU247
743 00ee 636C ldr r3, [r4, #68]
7033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
744 .loc 1 7033 21 view .LVU248
745 00f0 3343 orrs r3, r3, r6
746 00f2 6364 str r3, [r4, #68]
7034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
747 .loc 1 7034 5 is_stmt 1 view .LVU249
7034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
748 .loc 1 7034 17 is_stmt 0 view .LVU250
749 00f4 2023 movs r3, #32
750 00f6 84F84130 strb r3, [r4, #65]
7035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
751 .loc 1 7035 5 is_stmt 1 view .LVU251
7035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
752 .loc 1 7035 16 is_stmt 0 view .LVU252
753 00fa 0023 movs r3, #0
754 00fc 84F84230 strb r3, [r4, #66]
7038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
755 .loc 1 7038 5 is_stmt 1 view .LVU253
7038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
756 .loc 1 7038 5 view .LVU254
757 0100 84F84030 strb r3, [r4, #64]
758 .L66:
7038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
759 .loc 1 7038 5 discriminator 1 view .LVU255
7041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
760 .loc 1 7041 3 discriminator 1 view .LVU256
7042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
761 .loc 1 7042 1 is_stmt 0 discriminator 1 view .LVU257
762 0104 2846 mov r0, r5
763 0106 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
764 .LVL74:
765 .L67:
6924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflag = hi2c->Instance->ISR;
766 .loc 1 6924 21 view .LVU258
767 010a 0025 movs r5, #0
768 010c C2E7 b .L51
769 .LVL75:
770 .L64:
7025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
771 .loc 1 7025 3 is_stmt 1 view .LVU259
7025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
772 .loc 1 7025 6 is_stmt 0 view .LVU260
773 010e 002D cmp r5, #0
774 0110 F8D0 beq .L66
775 0112 DEE7 b .L65
776 .cfi_endproc
777 .LFE206:
779 .section .text.I2C_WaitOnTXISFlagUntilTimeout,"ax",%progbits
780 .align 1
781 .syntax unified
782 .thumb
783 .thumb_func
785 I2C_WaitOnTXISFlagUntilTimeout:
786 .LVL76:
787 .LFB203:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 145
6769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_TXIS) == RESET)
788 .loc 1 6769 1 is_stmt 1 view -0
789 .cfi_startproc
790 @ args = 0, pretend = 0, frame = 0
791 @ frame_needed = 0, uses_anonymous_args = 0
6769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_TXIS) == RESET)
792 .loc 1 6769 1 is_stmt 0 view .LVU262
793 0000 70B5 push {r4, r5, r6, lr}
794 .cfi_def_cfa_offset 16
795 .cfi_offset 4, -16
796 .cfi_offset 5, -12
797 .cfi_offset 6, -8
798 .cfi_offset 14, -4
799 0002 0446 mov r4, r0
800 0004 0D46 mov r5, r1
801 0006 1646 mov r6, r2
6770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
802 .loc 1 6770 3 is_stmt 1 view .LVU263
803 .LVL77:
804 .L73:
6770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
805 .loc 1 6770 50 view .LVU264
6770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
806 .loc 1 6770 10 is_stmt 0 view .LVU265
807 0008 2368 ldr r3, [r4]
808 000a 9B69 ldr r3, [r3, #24]
6770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
809 .loc 1 6770 50 view .LVU266
810 000c 13F0020F tst r3, #2
811 0010 22D1 bne .L78
6773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
812 .loc 1 6773 5 is_stmt 1 view .LVU267
6773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
813 .loc 1 6773 9 is_stmt 0 view .LVU268
814 0012 3246 mov r2, r6
815 0014 2946 mov r1, r5
816 0016 2046 mov r0, r4
817 0018 FFF7FEFF bl I2C_IsErrorOccurred
818 .LVL78:
6773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
819 .loc 1 6773 8 view .LVU269
820 001c F0B9 cbnz r0, .L76
6779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
821 .loc 1 6779 5 is_stmt 1 view .LVU270
6779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
822 .loc 1 6779 8 is_stmt 0 view .LVU271
823 001e B5F1FF3F cmp r5, #-1
824 0022 F1D0 beq .L73
6781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
825 .loc 1 6781 7 is_stmt 1 view .LVU272
6781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
826 .loc 1 6781 13 is_stmt 0 view .LVU273
827 0024 FFF7FEFF bl HAL_GetTick
828 .LVL79:
6781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
829 .loc 1 6781 27 view .LVU274
830 0028 801B subs r0, r0, r6
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 146
6781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
831 .loc 1 6781 10 view .LVU275
832 002a A842 cmp r0, r5
833 002c 01D8 bhi .L74
6781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
834 .loc 1 6781 51 discriminator 1 view .LVU276
835 002e 002D cmp r5, #0
836 0030 EAD1 bne .L73
837 .L74:
6783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
838 .loc 1 6783 9 is_stmt 1 view .LVU277
6783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
839 .loc 1 6783 14 is_stmt 0 view .LVU278
840 0032 2368 ldr r3, [r4]
841 0034 9B69 ldr r3, [r3, #24]
6783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
842 .loc 1 6783 12 view .LVU279
843 0036 13F0020F tst r3, #2
844 003a E5D1 bne .L73
6785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
845 .loc 1 6785 11 is_stmt 1 view .LVU280
6785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
846 .loc 1 6785 15 is_stmt 0 view .LVU281
847 003c 636C ldr r3, [r4, #68]
6785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
848 .loc 1 6785 27 view .LVU282
849 003e 43F02003 orr r3, r3, #32
850 0042 6364 str r3, [r4, #68]
6786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
851 .loc 1 6786 11 is_stmt 1 view .LVU283
6786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
852 .loc 1 6786 23 is_stmt 0 view .LVU284
853 0044 2023 movs r3, #32
854 0046 84F84130 strb r3, [r4, #65]
6787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
855 .loc 1 6787 11 is_stmt 1 view .LVU285
6787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
856 .loc 1 6787 22 is_stmt 0 view .LVU286
857 004a 0023 movs r3, #0
858 004c 84F84230 strb r3, [r4, #66]
6790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
859 .loc 1 6790 11 is_stmt 1 view .LVU287
6790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
860 .loc 1 6790 11 view .LVU288
861 0050 84F84030 strb r3, [r4, #64]
6790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
862 .loc 1 6790 11 view .LVU289
6792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
863 .loc 1 6792 11 view .LVU290
6792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
864 .loc 1 6792 18 is_stmt 0 view .LVU291
865 0054 0120 movs r0, #1
866 0056 00E0 b .L72
867 .L78:
6797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
868 .loc 1 6797 10 view .LVU292
869 0058 0020 movs r0, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 147
870 .L72:
6798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
871 .loc 1 6798 1 view .LVU293
872 005a 70BD pop {r4, r5, r6, pc}
873 .LVL80:
874 .L76:
6775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
875 .loc 1 6775 14 view .LVU294
876 005c 0120 movs r0, #1
877 005e FCE7 b .L72
878 .cfi_endproc
879 .LFE203:
881 .section .text.I2C_WaitOnFlagUntilTimeout,"ax",%progbits
882 .align 1
883 .syntax unified
884 .thumb
885 .thumb_func
887 I2C_WaitOnFlagUntilTimeout:
888 .LVL81:
889 .LFB202:
6735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, Flag) == Status)
890 .loc 1 6735 1 is_stmt 1 view -0
891 .cfi_startproc
892 @ args = 4, pretend = 0, frame = 0
893 @ frame_needed = 0, uses_anonymous_args = 0
6735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, Flag) == Status)
894 .loc 1 6735 1 is_stmt 0 view .LVU296
895 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
896 .cfi_def_cfa_offset 24
897 .cfi_offset 4, -24
898 .cfi_offset 5, -20
899 .cfi_offset 6, -16
900 .cfi_offset 7, -12
901 .cfi_offset 8, -8
902 .cfi_offset 14, -4
903 0004 0546 mov r5, r0
904 0006 0F46 mov r7, r1
905 0008 1646 mov r6, r2
906 000a 9846 mov r8, r3
6736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
907 .loc 1 6736 3 is_stmt 1 view .LVU297
908 .LVL82:
909 .L81:
6736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
910 .loc 1 6736 41 view .LVU298
6736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
911 .loc 1 6736 10 is_stmt 0 view .LVU299
912 000c 2C68 ldr r4, [r5]
913 000e A469 ldr r4, [r4, #24]
914 0010 37EA0404 bics r4, r7, r4
915 0014 0CBF ite eq
916 0016 0124 moveq r4, #1
917 0018 0024 movne r4, #0
6736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
918 .loc 1 6736 41 view .LVU300
919 001a B442 cmp r4, r6
920 001c 22D1 bne .L86
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 148
6739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
921 .loc 1 6739 5 is_stmt 1 view .LVU301
6739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
922 .loc 1 6739 8 is_stmt 0 view .LVU302
923 001e B8F1FF3F cmp r8, #-1
924 0022 F3D0 beq .L81
6741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
925 .loc 1 6741 7 is_stmt 1 view .LVU303
6741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
926 .loc 1 6741 13 is_stmt 0 view .LVU304
927 0024 FFF7FEFF bl HAL_GetTick
928 .LVL83:
6741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
929 .loc 1 6741 27 view .LVU305
930 0028 069B ldr r3, [sp, #24]
931 002a C01A subs r0, r0, r3
6741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
932 .loc 1 6741 10 view .LVU306
933 002c 4045 cmp r0, r8
934 002e 02D8 bhi .L82
6741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
935 .loc 1 6741 51 discriminator 1 view .LVU307
936 0030 B8F1000F cmp r8, #0
937 0034 EAD1 bne .L81
938 .L82:
6743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
939 .loc 1 6743 9 is_stmt 1 view .LVU308
6743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
940 .loc 1 6743 14 is_stmt 0 view .LVU309
941 0036 2B68 ldr r3, [r5]
942 0038 9B69 ldr r3, [r3, #24]
943 003a 37EA0303 bics r3, r7, r3
944 003e 0CBF ite eq
945 0040 0123 moveq r3, #1
946 0042 0023 movne r3, #0
6743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
947 .loc 1 6743 12 view .LVU310
948 0044 B342 cmp r3, r6
949 0046 E1D1 bne .L81
6745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
950 .loc 1 6745 11 is_stmt 1 view .LVU311
6745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
951 .loc 1 6745 15 is_stmt 0 view .LVU312
952 0048 6B6C ldr r3, [r5, #68]
6745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
953 .loc 1 6745 27 view .LVU313
954 004a 43F02003 orr r3, r3, #32
955 004e 6B64 str r3, [r5, #68]
6746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
956 .loc 1 6746 11 is_stmt 1 view .LVU314
6746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
957 .loc 1 6746 23 is_stmt 0 view .LVU315
958 0050 2023 movs r3, #32
959 0052 85F84130 strb r3, [r5, #65]
6747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
960 .loc 1 6747 11 is_stmt 1 view .LVU316
6747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 149
961 .loc 1 6747 22 is_stmt 0 view .LVU317
962 0056 0023 movs r3, #0
963 0058 85F84230 strb r3, [r5, #66]
6750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
964 .loc 1 6750 11 is_stmt 1 view .LVU318
6750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
965 .loc 1 6750 11 view .LVU319
966 005c 85F84030 strb r3, [r5, #64]
6750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
967 .loc 1 6750 11 view .LVU320
6751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
968 .loc 1 6751 11 view .LVU321
6751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
969 .loc 1 6751 18 is_stmt 0 view .LVU322
970 0060 0120 movs r0, #1
971 0062 00E0 b .L83
972 .L86:
6756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
973 .loc 1 6756 10 view .LVU323
974 0064 0020 movs r0, #0
975 .L83:
6757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
976 .loc 1 6757 1 view .LVU324
977 0066 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
6757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
978 .loc 1 6757 1 view .LVU325
979 .cfi_endproc
980 .LFE202:
982 .section .text.I2C_RequestMemoryWrite,"ax",%progbits
983 .align 1
984 .syntax unified
985 .thumb
986 .thumb_func
988 I2C_RequestMemoryWrite:
989 .LVL84:
990 .LFB185:
5658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_RELOAD_MODE, I2C_GENERATE_START_WRI
991 .loc 1 5658 1 is_stmt 1 view -0
992 .cfi_startproc
993 @ args = 8, pretend = 0, frame = 0
994 @ frame_needed = 0, uses_anonymous_args = 0
5658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_RELOAD_MODE, I2C_GENERATE_START_WRI
995 .loc 1 5658 1 is_stmt 0 view .LVU327
996 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
997 .cfi_def_cfa_offset 24
998 .cfi_offset 4, -24
999 .cfi_offset 5, -20
1000 .cfi_offset 6, -16
1001 .cfi_offset 7, -12
1002 .cfi_offset 8, -8
1003 .cfi_offset 14, -4
1004 0004 82B0 sub sp, sp, #8
1005 .cfi_def_cfa_offset 32
1006 0006 0446 mov r4, r0
1007 0008 9046 mov r8, r2
1008 000a 1D46 mov r5, r3
1009 000c 089E ldr r6, [sp, #32]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 150
1010 000e 099F ldr r7, [sp, #36]
5659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1011 .loc 1 5659 3 is_stmt 1 view .LVU328
1012 0010 194B ldr r3, .L96
1013 .LVL85:
5659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1014 .loc 1 5659 3 is_stmt 0 view .LVU329
1015 0012 0093 str r3, [sp]
1016 0014 4FF08073 mov r3, #16777216
1017 0018 EAB2 uxtb r2, r5
1018 .LVL86:
5659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1019 .loc 1 5659 3 view .LVU330
1020 001a FFF7FEFF bl I2C_TransferConfig
1021 .LVL87:
5662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1022 .loc 1 5662 3 is_stmt 1 view .LVU331
5662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1023 .loc 1 5662 7 is_stmt 0 view .LVU332
1024 001e 3A46 mov r2, r7
1025 0020 3146 mov r1, r6
1026 0022 2046 mov r0, r4
1027 0024 FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
1028 .LVL88:
5662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1029 .loc 1 5662 6 view .LVU333
1030 0028 F8B9 cbnz r0, .L91
5668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1031 .loc 1 5668 3 is_stmt 1 view .LVU334
5668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1032 .loc 1 5668 6 is_stmt 0 view .LVU335
1033 002a 012D cmp r5, #1
1034 002c 0ED1 bne .L89
5671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1035 .loc 1 5671 5 is_stmt 1 view .LVU336
5671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1036 .loc 1 5671 9 is_stmt 0 view .LVU337
1037 002e 2368 ldr r3, [r4]
5671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1038 .loc 1 5671 28 view .LVU338
1039 0030 5FFA88F2 uxtb r2, r8
5671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1040 .loc 1 5671 26 view .LVU339
1041 0034 9A62 str r2, [r3, #40]
1042 .L90:
5690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1043 .loc 1 5690 3 is_stmt 1 view .LVU340
5690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1044 .loc 1 5690 7 is_stmt 0 view .LVU341
1045 0036 0097 str r7, [sp]
1046 0038 3346 mov r3, r6
1047 003a 0022 movs r2, #0
1048 003c 8021 movs r1, #128
1049 003e 2046 mov r0, r4
1050 0040 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
1051 .LVL89:
5690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 151
1052 .loc 1 5690 6 view .LVU342
1053 0044 A8B9 cbnz r0, .L95
1054 .L88:
5696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1055 .loc 1 5696 1 view .LVU343
1056 0046 02B0 add sp, sp, #8
1057 .cfi_remember_state
1058 .cfi_def_cfa_offset 24
1059 @ sp needed
1060 0048 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
1061 .LVL90:
1062 .L89:
1063 .cfi_restore_state
5677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1064 .loc 1 5677 5 is_stmt 1 view .LVU344
5677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1065 .loc 1 5677 9 is_stmt 0 view .LVU345
1066 004c 2368 ldr r3, [r4]
5677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1067 .loc 1 5677 28 view .LVU346
1068 004e 4FEA1822 lsr r2, r8, #8
5677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1069 .loc 1 5677 26 view .LVU347
1070 0052 9A62 str r2, [r3, #40]
5680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1071 .loc 1 5680 5 is_stmt 1 view .LVU348
5680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1072 .loc 1 5680 9 is_stmt 0 view .LVU349
1073 0054 3A46 mov r2, r7
1074 0056 3146 mov r1, r6
1075 0058 2046 mov r0, r4
1076 005a FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
1077 .LVL91:
5680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1078 .loc 1 5680 8 view .LVU350
1079 005e 30B9 cbnz r0, .L92
5686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1080 .loc 1 5686 5 is_stmt 1 view .LVU351
5686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1081 .loc 1 5686 9 is_stmt 0 view .LVU352
1082 0060 2368 ldr r3, [r4]
5686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1083 .loc 1 5686 28 view .LVU353
1084 0062 5FFA88F2 uxtb r2, r8
5686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1085 .loc 1 5686 26 view .LVU354
1086 0066 9A62 str r2, [r3, #40]
1087 0068 E5E7 b .L90
1088 .L91:
5664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1089 .loc 1 5664 12 view .LVU355
1090 006a 0120 movs r0, #1
1091 006c EBE7 b .L88
1092 .L92:
5682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1093 .loc 1 5682 14 view .LVU356
1094 006e 0120 movs r0, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 152
1095 0070 E9E7 b .L88
1096 .L95:
5692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1097 .loc 1 5692 12 view .LVU357
1098 0072 0120 movs r0, #1
1099 0074 E7E7 b .L88
1100 .L97:
1101 0076 00BF .align 2
1102 .L96:
1103 0078 00200080 .word -2147475456
1104 .cfi_endproc
1105 .LFE185:
1107 .section .text.I2C_RequestMemoryRead,"ax",%progbits
1108 .align 1
1109 .syntax unified
1110 .thumb
1111 .thumb_func
1113 I2C_RequestMemoryRead:
1114 .LVL92:
1115 .LFB186:
5713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_SOFTEND_MODE, I2C_GENERATE_START_WR
1116 .loc 1 5713 1 is_stmt 1 view -0
1117 .cfi_startproc
1118 @ args = 8, pretend = 0, frame = 0
1119 @ frame_needed = 0, uses_anonymous_args = 0
5713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)MemAddSize, I2C_SOFTEND_MODE, I2C_GENERATE_START_WR
1120 .loc 1 5713 1 is_stmt 0 view .LVU359
1121 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
1122 .cfi_def_cfa_offset 24
1123 .cfi_offset 4, -24
1124 .cfi_offset 5, -20
1125 .cfi_offset 6, -16
1126 .cfi_offset 7, -12
1127 .cfi_offset 8, -8
1128 .cfi_offset 14, -4
1129 0004 82B0 sub sp, sp, #8
1130 .cfi_def_cfa_offset 32
1131 0006 0446 mov r4, r0
1132 0008 9046 mov r8, r2
1133 000a 1D46 mov r5, r3
1134 000c 089E ldr r6, [sp, #32]
1135 000e 099F ldr r7, [sp, #36]
5714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1136 .loc 1 5714 3 is_stmt 1 view .LVU360
1137 0010 184B ldr r3, .L107
1138 .LVL93:
5714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1139 .loc 1 5714 3 is_stmt 0 view .LVU361
1140 0012 0093 str r3, [sp]
1141 0014 0023 movs r3, #0
1142 0016 EAB2 uxtb r2, r5
1143 .LVL94:
5714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1144 .loc 1 5714 3 view .LVU362
1145 0018 FFF7FEFF bl I2C_TransferConfig
1146 .LVL95:
5717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 153
1147 .loc 1 5717 3 is_stmt 1 view .LVU363
5717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1148 .loc 1 5717 7 is_stmt 0 view .LVU364
1149 001c 3A46 mov r2, r7
1150 001e 3146 mov r1, r6
1151 0020 2046 mov r0, r4
1152 0022 FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
1153 .LVL96:
5717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1154 .loc 1 5717 6 view .LVU365
1155 0026 F8B9 cbnz r0, .L102
5723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1156 .loc 1 5723 3 is_stmt 1 view .LVU366
5723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1157 .loc 1 5723 6 is_stmt 0 view .LVU367
1158 0028 012D cmp r5, #1
1159 002a 0ED1 bne .L100
5726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1160 .loc 1 5726 5 is_stmt 1 view .LVU368
5726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1161 .loc 1 5726 9 is_stmt 0 view .LVU369
1162 002c 2368 ldr r3, [r4]
5726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1163 .loc 1 5726 28 view .LVU370
1164 002e 5FFA88F2 uxtb r2, r8
5726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1165 .loc 1 5726 26 view .LVU371
1166 0032 9A62 str r2, [r3, #40]
1167 .L101:
5745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1168 .loc 1 5745 3 is_stmt 1 view .LVU372
5745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1169 .loc 1 5745 7 is_stmt 0 view .LVU373
1170 0034 0097 str r7, [sp]
1171 0036 3346 mov r3, r6
1172 0038 0022 movs r2, #0
1173 003a 4021 movs r1, #64
1174 003c 2046 mov r0, r4
1175 003e FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
1176 .LVL97:
5745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1177 .loc 1 5745 6 view .LVU374
1178 0042 A8B9 cbnz r0, .L106
1179 .L99:
5751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1180 .loc 1 5751 1 view .LVU375
1181 0044 02B0 add sp, sp, #8
1182 .cfi_remember_state
1183 .cfi_def_cfa_offset 24
1184 @ sp needed
1185 0046 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
1186 .LVL98:
1187 .L100:
1188 .cfi_restore_state
5732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1189 .loc 1 5732 5 is_stmt 1 view .LVU376
5732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 154
1190 .loc 1 5732 9 is_stmt 0 view .LVU377
1191 004a 2368 ldr r3, [r4]
5732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1192 .loc 1 5732 28 view .LVU378
1193 004c 4FEA1822 lsr r2, r8, #8
5732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1194 .loc 1 5732 26 view .LVU379
1195 0050 9A62 str r2, [r3, #40]
5735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1196 .loc 1 5735 5 is_stmt 1 view .LVU380
5735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1197 .loc 1 5735 9 is_stmt 0 view .LVU381
1198 0052 3A46 mov r2, r7
1199 0054 3146 mov r1, r6
1200 0056 2046 mov r0, r4
1201 0058 FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
1202 .LVL99:
5735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1203 .loc 1 5735 8 view .LVU382
1204 005c 30B9 cbnz r0, .L103
5741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1205 .loc 1 5741 5 is_stmt 1 view .LVU383
5741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1206 .loc 1 5741 9 is_stmt 0 view .LVU384
1207 005e 2368 ldr r3, [r4]
5741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1208 .loc 1 5741 28 view .LVU385
1209 0060 5FFA88F2 uxtb r2, r8
5741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1210 .loc 1 5741 26 view .LVU386
1211 0064 9A62 str r2, [r3, #40]
1212 0066 E5E7 b .L101
1213 .L102:
5719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1214 .loc 1 5719 12 view .LVU387
1215 0068 0120 movs r0, #1
1216 006a EBE7 b .L99
1217 .L103:
5737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1218 .loc 1 5737 14 view .LVU388
1219 006c 0120 movs r0, #1
1220 006e E9E7 b .L99
1221 .L106:
5747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1222 .loc 1 5747 12 view .LVU389
1223 0070 0120 movs r0, #1
1224 0072 E7E7 b .L99
1225 .L108:
1226 .align 2
1227 .L107:
1228 0074 00200080 .word -2147475456
1229 .cfi_endproc
1230 .LFE186:
1232 .section .text.I2C_WaitOnSTOPFlagUntilTimeout,"ax",%progbits
1233 .align 1
1234 .syntax unified
1235 .thumb
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 155
1236 .thumb_func
1238 I2C_WaitOnSTOPFlagUntilTimeout:
1239 .LVL100:
1240 .LFB204:
6810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET)
1241 .loc 1 6810 1 is_stmt 1 view -0
1242 .cfi_startproc
1243 @ args = 0, pretend = 0, frame = 0
1244 @ frame_needed = 0, uses_anonymous_args = 0
6810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_STOPF) == RESET)
1245 .loc 1 6810 1 is_stmt 0 view .LVU391
1246 0000 70B5 push {r4, r5, r6, lr}
1247 .cfi_def_cfa_offset 16
1248 .cfi_offset 4, -16
1249 .cfi_offset 5, -12
1250 .cfi_offset 6, -8
1251 .cfi_offset 14, -4
1252 0002 0446 mov r4, r0
1253 0004 0D46 mov r5, r1
1254 0006 1646 mov r6, r2
6811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1255 .loc 1 6811 3 is_stmt 1 view .LVU392
6811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1256 .loc 1 6811 9 is_stmt 0 view .LVU393
1257 0008 04E0 b .L110
1258 .LVL101:
1259 .L112:
6822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1260 .loc 1 6822 7 is_stmt 1 view .LVU394
6822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1261 .loc 1 6822 12 is_stmt 0 view .LVU395
1262 000a 2368 ldr r3, [r4]
1263 000c 9B69 ldr r3, [r3, #24]
6822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1264 .loc 1 6822 10 view .LVU396
1265 000e 13F0200F tst r3, #32
1266 0012 12D0 beq .L116
1267 .L110:
6811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1268 .loc 1 6811 51 is_stmt 1 view .LVU397
6811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1269 .loc 1 6811 10 is_stmt 0 view .LVU398
1270 0014 2368 ldr r3, [r4]
1271 0016 9B69 ldr r3, [r3, #24]
6811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1272 .loc 1 6811 51 view .LVU399
1273 0018 13F0200F tst r3, #32
1274 001c 1BD1 bne .L117
6814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1275 .loc 1 6814 5 is_stmt 1 view .LVU400
6814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1276 .loc 1 6814 9 is_stmt 0 view .LVU401
1277 001e 3246 mov r2, r6
1278 0020 2946 mov r1, r5
1279 0022 2046 mov r0, r4
1280 0024 FFF7FEFF bl I2C_IsErrorOccurred
1281 .LVL102:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 156
6814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1282 .loc 1 6814 8 view .LVU402
1283 0028 B8B9 cbnz r0, .L114
6820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1284 .loc 1 6820 5 is_stmt 1 view .LVU403
6820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1285 .loc 1 6820 11 is_stmt 0 view .LVU404
1286 002a FFF7FEFF bl HAL_GetTick
1287 .LVL103:
6820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1288 .loc 1 6820 25 view .LVU405
1289 002e 801B subs r0, r0, r6
6820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1290 .loc 1 6820 8 view .LVU406
1291 0030 A842 cmp r0, r5
1292 0032 EAD8 bhi .L112
6820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1293 .loc 1 6820 49 discriminator 1 view .LVU407
1294 0034 002D cmp r5, #0
1295 0036 EDD1 bne .L110
1296 0038 E7E7 b .L112
1297 .L116:
6824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1298 .loc 1 6824 9 is_stmt 1 view .LVU408
6824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1299 .loc 1 6824 13 is_stmt 0 view .LVU409
1300 003a 636C ldr r3, [r4, #68]
6824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1301 .loc 1 6824 25 view .LVU410
1302 003c 43F02003 orr r3, r3, #32
1303 0040 6364 str r3, [r4, #68]
6825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1304 .loc 1 6825 9 is_stmt 1 view .LVU411
6825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1305 .loc 1 6825 21 is_stmt 0 view .LVU412
1306 0042 2023 movs r3, #32
1307 0044 84F84130 strb r3, [r4, #65]
6826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1308 .loc 1 6826 9 is_stmt 1 view .LVU413
6826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1309 .loc 1 6826 20 is_stmt 0 view .LVU414
1310 0048 0023 movs r3, #0
1311 004a 84F84230 strb r3, [r4, #66]
6829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1312 .loc 1 6829 9 is_stmt 1 view .LVU415
6829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1313 .loc 1 6829 9 view .LVU416
1314 004e 84F84030 strb r3, [r4, #64]
6829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1315 .loc 1 6829 9 view .LVU417
6831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1316 .loc 1 6831 9 view .LVU418
6831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1317 .loc 1 6831 16 is_stmt 0 view .LVU419
1318 0052 0120 movs r0, #1
1319 0054 00E0 b .L111
1320 .L117:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 157
6835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1321 .loc 1 6835 10 view .LVU420
1322 0056 0020 movs r0, #0
1323 .L111:
6836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1324 .loc 1 6836 1 view .LVU421
1325 0058 70BD pop {r4, r5, r6, pc}
1326 .LVL104:
1327 .L114:
6816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1328 .loc 1 6816 14 view .LVU422
1329 005a 0120 movs r0, #1
1330 005c FCE7 b .L111
1331 .cfi_endproc
1332 .LFE204:
1334 .section .text.I2C_WaitOnRXNEFlagUntilTimeout,"ax",%progbits
1335 .align 1
1336 .syntax unified
1337 .thumb
1338 .thumb_func
1340 I2C_WaitOnRXNEFlagUntilTimeout:
1341 .LVL105:
1342 .LFB205:
6848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_RXNE) == RESET)
1343 .loc 1 6848 1 is_stmt 1 view -0
1344 .cfi_startproc
1345 @ args = 0, pretend = 0, frame = 0
1346 @ frame_needed = 0, uses_anonymous_args = 0
6848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** while (__HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_RXNE) == RESET)
1347 .loc 1 6848 1 is_stmt 0 view .LVU424
1348 0000 70B5 push {r4, r5, r6, lr}
1349 .cfi_def_cfa_offset 16
1350 .cfi_offset 4, -16
1351 .cfi_offset 5, -12
1352 .cfi_offset 6, -8
1353 .cfi_offset 14, -4
1354 0002 0446 mov r4, r0
1355 0004 0D46 mov r5, r1
1356 0006 1646 mov r6, r2
6849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1357 .loc 1 6849 3 is_stmt 1 view .LVU425
6849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1358 .loc 1 6849 9 is_stmt 0 view .LVU426
1359 0008 2DE0 b .L119
1360 .LVL106:
1361 .L131:
6862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1362 .loc 1 6862 7 is_stmt 1 view .LVU427
6862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1363 .loc 1 6862 12 is_stmt 0 view .LVU428
1364 000a 9A69 ldr r2, [r3, #24]
6862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1365 .loc 1 6862 10 view .LVU429
1366 000c 12F0040F tst r2, #4
1367 0010 02D0 beq .L122
6862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1368 .loc 1 6862 68 discriminator 1 view .LVU430
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 158
1369 0012 228D ldrh r2, [r4, #40]
6862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1370 .loc 1 6862 60 discriminator 1 view .LVU431
1371 0014 002A cmp r2, #0
1372 0016 4CD1 bne .L120
1373 .L122:
6870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1374 .loc 1 6870 9 is_stmt 1 view .LVU432
6870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1375 .loc 1 6870 13 is_stmt 0 view .LVU433
1376 0018 9A69 ldr r2, [r3, #24]
6870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1377 .loc 1 6870 12 view .LVU434
1378 001a 12F0100F tst r2, #16
1379 001e 1AD0 beq .L123
6872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_AF;
1380 .loc 1 6872 11 is_stmt 1 view .LVU435
1381 0020 1022 movs r2, #16
1382 0022 DA61 str r2, [r3, #28]
6873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1383 .loc 1 6873 11 view .LVU436
6873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1384 .loc 1 6873 27 is_stmt 0 view .LVU437
1385 0024 0423 movs r3, #4
1386 0026 6364 str r3, [r4, #68]
1387 .L124:
6881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1388 .loc 1 6881 9 is_stmt 1 view .LVU438
1389 0028 2368 ldr r3, [r4]
1390 002a 2022 movs r2, #32
1391 002c DA61 str r2, [r3, #28]
6884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1392 .loc 1 6884 9 view .LVU439
1393 002e 2168 ldr r1, [r4]
1394 0030 4B68 ldr r3, [r1, #4]
1395 0032 23F0FF73 bic r3, r3, #33423360
1396 0036 23F48B33 bic r3, r3, #71168
1397 003a 23F4FF73 bic r3, r3, #510
1398 003e 23F00103 bic r3, r3, #1
1399 0042 4B60 str r3, [r1, #4]
6886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1400 .loc 1 6886 9 view .LVU440
6886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1401 .loc 1 6886 21 is_stmt 0 view .LVU441
1402 0044 84F84120 strb r2, [r4, #65]
6887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1403 .loc 1 6887 9 is_stmt 1 view .LVU442
6887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1404 .loc 1 6887 20 is_stmt 0 view .LVU443
1405 0048 0023 movs r3, #0
1406 004a 84F84230 strb r3, [r4, #66]
6890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1407 .loc 1 6890 9 is_stmt 1 view .LVU444
6890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1408 .loc 1 6890 9 view .LVU445
1409 004e 84F84030 strb r3, [r4, #64]
6890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 159
1410 .loc 1 6890 9 view .LVU446
6892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1411 .loc 1 6892 9 view .LVU447
6892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1412 .loc 1 6892 16 is_stmt 0 view .LVU448
1413 0052 0121 movs r1, #1
1414 0054 2DE0 b .L120
1415 .L123:
6877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1416 .loc 1 6877 11 is_stmt 1 view .LVU449
6877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1417 .loc 1 6877 27 is_stmt 0 view .LVU450
1418 0056 0023 movs r3, #0
1419 0058 6364 str r3, [r4, #68]
1420 005a E5E7 b .L124
1421 .L125:
6899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1422 .loc 1 6899 7 is_stmt 1 view .LVU451
6899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1423 .loc 1 6899 12 is_stmt 0 view .LVU452
1424 005c 2368 ldr r3, [r4]
1425 005e 9B69 ldr r3, [r3, #24]
6899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1426 .loc 1 6899 10 view .LVU453
1427 0060 13F0040F tst r3, #4
1428 0064 18D0 beq .L129
1429 .L119:
6849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1430 .loc 1 6849 50 is_stmt 1 view .LVU454
6849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1431 .loc 1 6849 10 is_stmt 0 view .LVU455
1432 0066 2368 ldr r3, [r4]
1433 0068 9B69 ldr r3, [r3, #24]
6849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1434 .loc 1 6849 50 view .LVU456
1435 006a 13F0040F tst r3, #4
1436 006e 1FD1 bne .L130
6852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1437 .loc 1 6852 5 is_stmt 1 view .LVU457
6852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1438 .loc 1 6852 9 is_stmt 0 view .LVU458
1439 0070 3246 mov r2, r6
1440 0072 2946 mov r1, r5
1441 0074 2046 mov r0, r4
1442 0076 FFF7FEFF bl I2C_IsErrorOccurred
1443 .LVL107:
6852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1444 .loc 1 6852 8 view .LVU459
1445 007a 0146 mov r1, r0
1446 007c D8B9 cbnz r0, .L127
6858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1447 .loc 1 6858 5 is_stmt 1 view .LVU460
6858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1448 .loc 1 6858 9 is_stmt 0 view .LVU461
1449 007e 2368 ldr r3, [r4]
1450 0080 9A69 ldr r2, [r3, #24]
6858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 160
1451 .loc 1 6858 8 view .LVU462
1452 0082 12F0200F tst r2, #32
1453 0086 C0D1 bne .L131
6897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1454 .loc 1 6897 5 is_stmt 1 view .LVU463
6897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1455 .loc 1 6897 11 is_stmt 0 view .LVU464
1456 0088 FFF7FEFF bl HAL_GetTick
1457 .LVL108:
6897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1458 .loc 1 6897 25 view .LVU465
1459 008c 801B subs r0, r0, r6
6897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1460 .loc 1 6897 8 view .LVU466
1461 008e A842 cmp r0, r5
1462 0090 E4D8 bhi .L125
6897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1463 .loc 1 6897 49 discriminator 1 view .LVU467
1464 0092 002D cmp r5, #0
1465 0094 E7D1 bne .L119
1466 0096 E1E7 b .L125
1467 .L129:
6901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1468 .loc 1 6901 9 is_stmt 1 view .LVU468
6901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1469 .loc 1 6901 13 is_stmt 0 view .LVU469
1470 0098 636C ldr r3, [r4, #68]
6901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1471 .loc 1 6901 25 view .LVU470
1472 009a 43F02003 orr r3, r3, #32
1473 009e 6364 str r3, [r4, #68]
6902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1474 .loc 1 6902 9 is_stmt 1 view .LVU471
6902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1475 .loc 1 6902 21 is_stmt 0 view .LVU472
1476 00a0 2023 movs r3, #32
1477 00a2 84F84130 strb r3, [r4, #65]
6905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1478 .loc 1 6905 9 is_stmt 1 view .LVU473
6905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1479 .loc 1 6905 9 view .LVU474
1480 00a6 0023 movs r3, #0
1481 00a8 84F84030 strb r3, [r4, #64]
6905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1482 .loc 1 6905 9 view .LVU475
6907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1483 .loc 1 6907 9 view .LVU476
6907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1484 .loc 1 6907 16 is_stmt 0 view .LVU477
1485 00ac 0121 movs r1, #1
1486 00ae 00E0 b .L120
1487 .L130:
6911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1488 .loc 1 6911 10 view .LVU478
1489 00b0 0021 movs r1, #0
1490 .L120:
6912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 161
1491 .loc 1 6912 1 view .LVU479
1492 00b2 0846 mov r0, r1
1493 00b4 70BD pop {r4, r5, r6, pc}
1494 .LVL109:
1495 .L127:
6854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1496 .loc 1 6854 14 view .LVU480
1497 00b6 0121 movs r1, #1
1498 00b8 FBE7 b .L120
1499 .cfi_endproc
1500 .LFE205:
1502 .section .text.HAL_I2C_MspInit,"ax",%progbits
1503 .align 1
1504 .weak HAL_I2C_MspInit
1505 .syntax unified
1506 .thumb
1507 .thumb_func
1509 HAL_I2C_MspInit:
1510 .LVL110:
1511 .LFB132:
692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
1512 .loc 1 692 1 is_stmt 1 view -0
1513 .cfi_startproc
1514 @ args = 0, pretend = 0, frame = 0
1515 @ frame_needed = 0, uses_anonymous_args = 0
1516 @ link register save eliminated.
694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1517 .loc 1 694 3 view .LVU482
699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1518 .loc 1 699 1 is_stmt 0 view .LVU483
1519 0000 7047 bx lr
1520 .cfi_endproc
1521 .LFE132:
1523 .section .text.HAL_I2C_Init,"ax",%progbits
1524 .align 1
1525 .global HAL_I2C_Init
1526 .syntax unified
1527 .thumb
1528 .thumb_func
1530 HAL_I2C_Init:
1531 .LVL111:
1532 .LFB130:
536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the I2C handle allocation */
1533 .loc 1 536 1 is_stmt 1 view -0
1534 .cfi_startproc
1535 @ args = 0, pretend = 0, frame = 0
1536 @ frame_needed = 0, uses_anonymous_args = 0
538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1537 .loc 1 538 3 view .LVU485
538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1538 .loc 1 538 6 is_stmt 0 view .LVU486
1539 0000 0028 cmp r0, #0
1540 0002 59D0 beq .L139
536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the I2C handle allocation */
1541 .loc 1 536 1 view .LVU487
1542 0004 10B5 push {r4, lr}
1543 .cfi_def_cfa_offset 8
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 162
1544 .cfi_offset 4, -8
1545 .cfi_offset 14, -4
1546 0006 0446 mov r4, r0
544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_OWN_ADDRESS1(hi2c->Init.OwnAddress1));
1547 .loc 1 544 3 is_stmt 1 view .LVU488
545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_ADDRESSING_MODE(hi2c->Init.AddressingMode));
1548 .loc 1 545 3 view .LVU489
546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_DUAL_ADDRESS(hi2c->Init.DualAddressMode));
1549 .loc 1 546 3 view .LVU490
547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_OWN_ADDRESS2(hi2c->Init.OwnAddress2));
1550 .loc 1 547 3 view .LVU491
548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_OWN_ADDRESS2_MASK(hi2c->Init.OwnAddress2Masks));
1551 .loc 1 548 3 view .LVU492
549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_GENERAL_CALL(hi2c->Init.GeneralCallMode));
1552 .loc 1 549 3 view .LVU493
550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** assert_param(IS_I2C_NO_STRETCH(hi2c->Init.NoStretchMode));
1553 .loc 1 550 3 view .LVU494
551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1554 .loc 1 551 3 view .LVU495
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1555 .loc 1 553 3 view .LVU496
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1556 .loc 1 553 11 is_stmt 0 view .LVU497
1557 0008 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1558 .loc 1 553 6 view .LVU498
1559 000c 002B cmp r3, #0
1560 000e 43D0 beq .L144
1561 .LVL112:
1562 .L135:
584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1563 .loc 1 584 3 is_stmt 1 view .LVU499
584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1564 .loc 1 584 15 is_stmt 0 view .LVU500
1565 0010 2423 movs r3, #36
1566 0012 84F84130 strb r3, [r4, #65]
587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1567 .loc 1 587 3 is_stmt 1 view .LVU501
1568 0016 2268 ldr r2, [r4]
1569 0018 1368 ldr r3, [r2]
1570 001a 23F00103 bic r3, r3, #1
1571 001e 1360 str r3, [r2]
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1572 .loc 1 591 3 view .LVU502
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1573 .loc 1 591 39 is_stmt 0 view .LVU503
1574 0020 6368 ldr r3, [r4, #4]
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1575 .loc 1 591 7 view .LVU504
1576 0022 2268 ldr r2, [r4]
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1577 .loc 1 591 47 view .LVU505
1578 0024 23F07063 bic r3, r3, #251658240
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1579 .loc 1 591 27 view .LVU506
1580 0028 1361 str r3, [r2, #16]
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 163
1581 .loc 1 595 3 is_stmt 1 view .LVU507
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1582 .loc 1 595 7 is_stmt 0 view .LVU508
1583 002a 2268 ldr r2, [r4]
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1584 .loc 1 595 17 view .LVU509
1585 002c 9368 ldr r3, [r2, #8]
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1586 .loc 1 595 24 view .LVU510
1587 002e 23F40043 bic r3, r3, #32768
1588 0032 9360 str r3, [r2, #8]
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1589 .loc 1 598 3 is_stmt 1 view .LVU511
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1590 .loc 1 598 17 is_stmt 0 view .LVU512
1591 0034 E368 ldr r3, [r4, #12]
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1592 .loc 1 598 6 view .LVU513
1593 0036 012B cmp r3, #1
1594 0038 33D0 beq .L145
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1595 .loc 1 604 5 is_stmt 1 view .LVU514
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1596 .loc 1 604 75 is_stmt 0 view .LVU515
1597 003a A368 ldr r3, [r4, #8]
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1598 .loc 1 604 9 view .LVU516
1599 003c 2268 ldr r2, [r4]
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1600 .loc 1 604 63 view .LVU517
1601 003e 43F40443 orr r3, r3, #33792
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1602 .loc 1 604 26 view .LVU518
1603 0042 9360 str r3, [r2, #8]
1604 .L137:
609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1605 .loc 1 609 3 is_stmt 1 view .LVU519
609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1606 .loc 1 609 17 is_stmt 0 view .LVU520
1607 0044 E368 ldr r3, [r4, #12]
609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1608 .loc 1 609 6 view .LVU521
1609 0046 022B cmp r3, #2
1610 0048 31D0 beq .L146
1611 .L138:
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1612 .loc 1 614 3 is_stmt 1 view .LVU522
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1613 .loc 1 614 7 is_stmt 0 view .LVU523
1614 004a 2268 ldr r2, [r4]
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1615 .loc 1 614 17 view .LVU524
1616 004c 5368 ldr r3, [r2, #4]
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1617 .loc 1 614 23 view .LVU525
1618 004e 43F00073 orr r3, r3, #33554432
1619 0052 43F40043 orr r3, r3, #32768
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 164
1620 0056 5360 str r3, [r2, #4]
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1621 .loc 1 618 3 is_stmt 1 view .LVU526
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1622 .loc 1 618 7 is_stmt 0 view .LVU527
1623 0058 2268 ldr r2, [r4]
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1624 .loc 1 618 17 view .LVU528
1625 005a D368 ldr r3, [r2, #12]
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1626 .loc 1 618 24 view .LVU529
1627 005c 23F40043 bic r3, r3, #32768
1628 0060 D360 str r3, [r2, #12]
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1629 .loc 1 621 3 is_stmt 1 view .LVU530
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1630 .loc 1 621 37 is_stmt 0 view .LVU531
1631 0062 2369 ldr r3, [r4, #16]
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1632 .loc 1 621 66 view .LVU532
1633 0064 6269 ldr r2, [r4, #20]
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1634 .loc 1 621 54 view .LVU533
1635 0066 1343 orrs r3, r3, r2
622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1636 .loc 1 622 38 view .LVU534
1637 0068 A169 ldr r1, [r4, #24]
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1638 .loc 1 621 7 view .LVU535
1639 006a 2268 ldr r2, [r4]
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1640 .loc 1 621 79 view .LVU536
1641 006c 43EA0123 orr r3, r3, r1, lsl #8
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (hi2c->Init.OwnAddress2Masks << 8));
1642 .loc 1 621 24 view .LVU537
1643 0070 D360 str r3, [r2, #12]
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1644 .loc 1 626 3 is_stmt 1 view .LVU538
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1645 .loc 1 626 36 is_stmt 0 view .LVU539
1646 0072 E369 ldr r3, [r4, #28]
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1647 .loc 1 626 65 view .LVU540
1648 0074 216A ldr r1, [r4, #32]
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1649 .loc 1 626 7 view .LVU541
1650 0076 2268 ldr r2, [r4]
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1651 .loc 1 626 53 view .LVU542
1652 0078 0B43 orrs r3, r3, r1
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1653 .loc 1 626 23 view .LVU543
1654 007a 1360 str r3, [r2]
629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1655 .loc 1 629 3 is_stmt 1 view .LVU544
1656 007c 2268 ldr r2, [r4]
1657 007e 1368 ldr r3, [r2]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 165
1658 0080 43F00103 orr r3, r3, #1
1659 0084 1360 str r3, [r2]
631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1660 .loc 1 631 3 view .LVU545
631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
1661 .loc 1 631 19 is_stmt 0 view .LVU546
1662 0086 0020 movs r0, #0
1663 0088 6064 str r0, [r4, #68]
632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
1664 .loc 1 632 3 is_stmt 1 view .LVU547
632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
1665 .loc 1 632 15 is_stmt 0 view .LVU548
1666 008a 2023 movs r3, #32
1667 008c 84F84130 strb r3, [r4, #65]
633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1668 .loc 1 633 3 is_stmt 1 view .LVU549
633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1669 .loc 1 633 23 is_stmt 0 view .LVU550
1670 0090 2063 str r0, [r4, #48]
634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1671 .loc 1 634 3 is_stmt 1 view .LVU551
634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1672 .loc 1 634 14 is_stmt 0 view .LVU552
1673 0092 84F84200 strb r0, [r4, #66]
636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1674 .loc 1 636 3 is_stmt 1 view .LVU553
637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1675 .loc 1 637 1 is_stmt 0 view .LVU554
1676 0096 10BD pop {r4, pc}
1677 .LVL113:
1678 .L144:
556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1679 .loc 1 556 5 is_stmt 1 view .LVU555
556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1680 .loc 1 556 16 is_stmt 0 view .LVU556
1681 0098 80F84030 strb r3, [r0, #64]
580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
1682 .loc 1 580 5 is_stmt 1 view .LVU557
1683 009c FFF7FEFF bl HAL_I2C_MspInit
1684 .LVL114:
580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
1685 .loc 1 580 5 is_stmt 0 view .LVU558
1686 00a0 B6E7 b .L135
1687 .L145:
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1688 .loc 1 600 5 is_stmt 1 view .LVU559
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1689 .loc 1 600 56 is_stmt 0 view .LVU560
1690 00a2 A368 ldr r3, [r4, #8]
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1691 .loc 1 600 9 view .LVU561
1692 00a4 2268 ldr r2, [r4]
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1693 .loc 1 600 44 view .LVU562
1694 00a6 43F40043 orr r3, r3, #32768
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1695 .loc 1 600 26 view .LVU563
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 166
1696 00aa 9360 str r3, [r2, #8]
1697 00ac CAE7 b .L137
1698 .L146:
611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1699 .loc 1 611 5 is_stmt 1 view .LVU564
611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1700 .loc 1 611 9 is_stmt 0 view .LVU565
1701 00ae 2368 ldr r3, [r4]
611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1702 .loc 1 611 25 view .LVU566
1703 00b0 4FF40062 mov r2, #2048
1704 00b4 5A60 str r2, [r3, #4]
1705 00b6 C8E7 b .L138
1706 .LVL115:
1707 .L139:
1708 .cfi_def_cfa_offset 0
1709 .cfi_restore 4
1710 .cfi_restore 14
540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1711 .loc 1 540 12 view .LVU567
1712 00b8 0120 movs r0, #1
1713 .LVL116:
637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1714 .loc 1 637 1 view .LVU568
1715 00ba 7047 bx lr
1716 .cfi_endproc
1717 .LFE130:
1719 .section .text.HAL_I2C_MspDeInit,"ax",%progbits
1720 .align 1
1721 .weak HAL_I2C_MspDeInit
1722 .syntax unified
1723 .thumb
1724 .thumb_func
1726 HAL_I2C_MspDeInit:
1727 .LVL117:
1728 .LFB133:
708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
1729 .loc 1 708 1 is_stmt 1 view -0
1730 .cfi_startproc
1731 @ args = 0, pretend = 0, frame = 0
1732 @ frame_needed = 0, uses_anonymous_args = 0
1733 @ link register save eliminated.
710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1734 .loc 1 710 3 view .LVU570
715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1735 .loc 1 715 1 is_stmt 0 view .LVU571
1736 0000 7047 bx lr
1737 .cfi_endproc
1738 .LFE133:
1740 .section .text.HAL_I2C_DeInit,"ax",%progbits
1741 .align 1
1742 .global HAL_I2C_DeInit
1743 .syntax unified
1744 .thumb
1745 .thumb_func
1747 HAL_I2C_DeInit:
1748 .LVL118:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 167
1749 .LFB131:
646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the I2C handle allocation */
1750 .loc 1 646 1 is_stmt 1 view -0
1751 .cfi_startproc
1752 @ args = 0, pretend = 0, frame = 0
1753 @ frame_needed = 0, uses_anonymous_args = 0
648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1754 .loc 1 648 3 view .LVU573
648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1755 .loc 1 648 6 is_stmt 0 view .LVU574
1756 0000 A8B1 cbz r0, .L150
646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the I2C handle allocation */
1757 .loc 1 646 1 view .LVU575
1758 0002 10B5 push {r4, lr}
1759 .cfi_def_cfa_offset 8
1760 .cfi_offset 4, -8
1761 .cfi_offset 14, -4
1762 0004 0446 mov r4, r0
654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1763 .loc 1 654 3 is_stmt 1 view .LVU576
656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1764 .loc 1 656 3 view .LVU577
656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1765 .loc 1 656 15 is_stmt 0 view .LVU578
1766 0006 2423 movs r3, #36
1767 0008 80F84130 strb r3, [r0, #65]
659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1768 .loc 1 659 3 is_stmt 1 view .LVU579
1769 000c 0268 ldr r2, [r0]
1770 000e 1368 ldr r3, [r2]
1771 0010 23F00103 bic r3, r3, #1
1772 0014 1360 str r3, [r2]
671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
1773 .loc 1 671 3 view .LVU580
1774 0016 FFF7FEFF bl HAL_I2C_MspDeInit
1775 .LVL119:
674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_RESET;
1776 .loc 1 674 3 view .LVU581
674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_RESET;
1777 .loc 1 674 19 is_stmt 0 view .LVU582
1778 001a 0020 movs r0, #0
1779 001c 6064 str r0, [r4, #68]
675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
1780 .loc 1 675 3 is_stmt 1 view .LVU583
675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
1781 .loc 1 675 15 is_stmt 0 view .LVU584
1782 001e 84F84100 strb r0, [r4, #65]
676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1783 .loc 1 676 3 is_stmt 1 view .LVU585
676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
1784 .loc 1 676 23 is_stmt 0 view .LVU586
1785 0022 2063 str r0, [r4, #48]
677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1786 .loc 1 677 3 is_stmt 1 view .LVU587
677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1787 .loc 1 677 14 is_stmt 0 view .LVU588
1788 0024 84F84200 strb r0, [r4, #66]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 168
680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1789 .loc 1 680 3 is_stmt 1 view .LVU589
680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1790 .loc 1 680 3 view .LVU590
1791 0028 84F84000 strb r0, [r4, #64]
680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1792 .loc 1 680 3 view .LVU591
682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1793 .loc 1 682 3 view .LVU592
683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1794 .loc 1 683 1 is_stmt 0 view .LVU593
1795 002c 10BD pop {r4, pc}
1796 .LVL120:
1797 .L150:
1798 .cfi_def_cfa_offset 0
1799 .cfi_restore 4
1800 .cfi_restore 14
650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
1801 .loc 1 650 12 view .LVU594
1802 002e 0120 movs r0, #1
1803 .LVL121:
683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1804 .loc 1 683 1 view .LVU595
1805 0030 7047 bx lr
1806 .cfi_endproc
1807 .LFE131:
1809 .section .text.HAL_I2C_Master_Transmit,"ax",%progbits
1810 .align 1
1811 .global HAL_I2C_Master_Transmit
1812 .syntax unified
1813 .thumb
1814 .thumb_func
1816 HAL_I2C_Master_Transmit:
1817 .LVL122:
1818 .LFB134:
1116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
1819 .loc 1 1116 1 is_stmt 1 view -0
1820 .cfi_startproc
1821 @ args = 4, pretend = 0, frame = 0
1822 @ frame_needed = 0, uses_anonymous_args = 0
1116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
1823 .loc 1 1116 1 is_stmt 0 view .LVU597
1824 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
1825 .cfi_def_cfa_offset 32
1826 .cfi_offset 4, -32
1827 .cfi_offset 5, -28
1828 .cfi_offset 6, -24
1829 .cfi_offset 7, -20
1830 .cfi_offset 8, -16
1831 .cfi_offset 9, -12
1832 .cfi_offset 10, -8
1833 .cfi_offset 14, -4
1834 0004 82B0 sub sp, sp, #8
1835 .cfi_def_cfa_offset 40
1836 0006 0F46 mov r7, r1
1837 0008 0A9E ldr r6, [sp, #40]
1117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 169
1838 .loc 1 1117 3 is_stmt 1 view .LVU598
1119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1839 .loc 1 1119 3 view .LVU599
1119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1840 .loc 1 1119 11 is_stmt 0 view .LVU600
1841 000a 90F84110 ldrb r1, [r0, #65] @ zero_extendqisi2
1842 .LVL123:
1119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1843 .loc 1 1119 11 view .LVU601
1844 000e C9B2 uxtb r1, r1
1119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1845 .loc 1 1119 6 view .LVU602
1846 0010 2029 cmp r1, #32
1847 0012 40F0A380 bne .L163
1848 0016 0446 mov r4, r0
1849 0018 9046 mov r8, r2
1850 001a 9946 mov r9, r3
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1851 .loc 1 1122 5 is_stmt 1 view .LVU603
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1852 .loc 1 1122 5 view .LVU604
1853 001c 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
1854 .LVL124:
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1855 .loc 1 1122 5 is_stmt 0 view .LVU605
1856 0020 012B cmp r3, #1
1857 0022 00F09F80 beq .L164
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1858 .loc 1 1122 5 is_stmt 1 discriminator 2 view .LVU606
1859 0026 4FF0010A mov r10, #1
1860 002a 80F840A0 strb r10, [r0, #64]
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1861 .loc 1 1122 5 discriminator 2 view .LVU607
1125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1862 .loc 1 1125 5 discriminator 2 view .LVU608
1125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1863 .loc 1 1125 17 is_stmt 0 discriminator 2 view .LVU609
1864 002e FFF7FEFF bl HAL_GetTick
1865 .LVL125:
1125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1866 .loc 1 1125 17 discriminator 2 view .LVU610
1867 0032 0546 mov r5, r0
1868 .LVL126:
1127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1869 .loc 1 1127 5 is_stmt 1 discriminator 2 view .LVU611
1127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1870 .loc 1 1127 9 is_stmt 0 discriminator 2 view .LVU612
1871 0034 0090 str r0, [sp]
1872 0036 1923 movs r3, #25
1873 0038 5246 mov r2, r10
1874 003a 4FF40041 mov r1, #32768
1875 003e 2046 mov r0, r4
1876 .LVL127:
1127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1877 .loc 1 1127 9 discriminator 2 view .LVU613
1878 0040 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
1879 .LVL128:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 170
1127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1880 .loc 1 1127 8 discriminator 2 view .LVU614
1881 0044 0028 cmp r0, #0
1882 0046 40F08F80 bne .L165
1132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1883 .loc 1 1132 5 is_stmt 1 view .LVU615
1132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
1884 .loc 1 1132 21 is_stmt 0 view .LVU616
1885 004a 2123 movs r3, #33
1886 004c 84F84130 strb r3, [r4, #65]
1133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1887 .loc 1 1133 5 is_stmt 1 view .LVU617
1133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
1888 .loc 1 1133 21 is_stmt 0 view .LVU618
1889 0050 1023 movs r3, #16
1890 0052 84F84230 strb r3, [r4, #66]
1134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1891 .loc 1 1134 5 is_stmt 1 view .LVU619
1134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1892 .loc 1 1134 21 is_stmt 0 view .LVU620
1893 0056 0023 movs r3, #0
1894 0058 6364 str r3, [r4, #68]
1137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1895 .loc 1 1137 5 is_stmt 1 view .LVU621
1137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
1896 .loc 1 1137 21 is_stmt 0 view .LVU622
1897 005a C4F82480 str r8, [r4, #36]
1138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
1898 .loc 1 1138 5 is_stmt 1 view .LVU623
1138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
1899 .loc 1 1138 21 is_stmt 0 view .LVU624
1900 005e A4F82A90 strh r9, [r4, #42] @ movhi
1139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1901 .loc 1 1139 5 is_stmt 1 view .LVU625
1139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1902 .loc 1 1139 21 is_stmt 0 view .LVU626
1903 0062 6363 str r3, [r4, #52]
1143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1904 .loc 1 1143 5 is_stmt 1 view .LVU627
1143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1905 .loc 1 1143 13 is_stmt 0 view .LVU628
1906 0064 638D ldrh r3, [r4, #42]
1907 0066 9BB2 uxth r3, r3
1143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1908 .loc 1 1143 8 view .LVU629
1909 0068 FF2B cmp r3, #255
1910 006a 0AD9 bls .L157
1145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
1911 .loc 1 1145 7 is_stmt 1 view .LVU630
1145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
1912 .loc 1 1145 22 is_stmt 0 view .LVU631
1913 006c FF22 movs r2, #255
1914 006e 2285 strh r2, [r4, #40] @ movhi
1146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
1915 .loc 1 1146 7 is_stmt 1 view .LVU632
1916 0070 414B ldr r3, .L171
1917 0072 0093 str r3, [sp]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 171
1918 0074 4FF08073 mov r3, #16777216
1919 0078 3946 mov r1, r7
1920 007a 2046 mov r0, r4
1921 007c FFF7FEFF bl I2C_TransferConfig
1922 .LVL129:
1923 0080 18E0 b .L159
1924 .L157:
1151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1925 .loc 1 1151 7 view .LVU633
1151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1926 .loc 1 1151 28 is_stmt 0 view .LVU634
1927 0082 628D ldrh r2, [r4, #42]
1928 0084 92B2 uxth r2, r2
1151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1929 .loc 1 1151 22 view .LVU635
1930 0086 2285 strh r2, [r4, #40] @ movhi
1152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
1931 .loc 1 1152 7 is_stmt 1 view .LVU636
1932 0088 3B4B ldr r3, .L171
1933 008a 0093 str r3, [sp]
1934 008c 4FF00073 mov r3, #33554432
1935 0090 D2B2 uxtb r2, r2
1936 0092 3946 mov r1, r7
1937 0094 2046 mov r0, r4
1938 0096 FFF7FEFF bl I2C_TransferConfig
1939 .LVL130:
1940 009a 0BE0 b .L159
1941 .L161:
1188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1942 .loc 1 1188 11 view .LVU637
1188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1943 .loc 1 1188 32 is_stmt 0 view .LVU638
1944 009c 628D ldrh r2, [r4, #42]
1945 009e 92B2 uxth r2, r2
1188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
1946 .loc 1 1188 26 view .LVU639
1947 00a0 2285 strh r2, [r4, #40] @ movhi
1189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
1948 .loc 1 1189 11 is_stmt 1 view .LVU640
1949 00a2 0023 movs r3, #0
1950 00a4 0093 str r3, [sp]
1951 00a6 4FF00073 mov r3, #33554432
1952 00aa D2B2 uxtb r2, r2
1953 00ac 3946 mov r1, r7
1954 00ae 2046 mov r0, r4
1955 00b0 FFF7FEFF bl I2C_TransferConfig
1956 .LVL131:
1957 .L159:
1156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1958 .loc 1 1156 28 view .LVU641
1156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1959 .loc 1 1156 16 is_stmt 0 view .LVU642
1960 00b4 638D ldrh r3, [r4, #42]
1961 00b6 9BB2 uxth r3, r3
1156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1962 .loc 1 1156 28 view .LVU643
1963 00b8 002B cmp r3, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 172
1964 00ba 33D0 beq .L170
1159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1965 .loc 1 1159 7 is_stmt 1 view .LVU644
1159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1966 .loc 1 1159 11 is_stmt 0 view .LVU645
1967 00bc 2A46 mov r2, r5
1968 00be 3146 mov r1, r6
1969 00c0 2046 mov r0, r4
1970 00c2 FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
1971 .LVL132:
1159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
1972 .loc 1 1159 10 view .LVU646
1973 00c6 0028 cmp r0, #0
1974 00c8 50D1 bne .L166
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1975 .loc 1 1164 7 is_stmt 1 view .LVU647
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1976 .loc 1 1164 35 is_stmt 0 view .LVU648
1977 00ca 626A ldr r2, [r4, #36]
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1978 .loc 1 1164 11 view .LVU649
1979 00cc 2368 ldr r3, [r4]
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1980 .loc 1 1164 30 view .LVU650
1981 00ce 1278 ldrb r2, [r2] @ zero_extendqisi2
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1982 .loc 1 1164 28 view .LVU651
1983 00d0 9A62 str r2, [r3, #40]
1167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1984 .loc 1 1167 7 is_stmt 1 view .LVU652
1167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1985 .loc 1 1167 11 is_stmt 0 view .LVU653
1986 00d2 636A ldr r3, [r4, #36]
1167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1987 .loc 1 1167 21 view .LVU654
1988 00d4 0133 adds r3, r3, #1
1989 00d6 6362 str r3, [r4, #36]
1169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1990 .loc 1 1169 7 is_stmt 1 view .LVU655
1169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1991 .loc 1 1169 11 is_stmt 0 view .LVU656
1992 00d8 638D ldrh r3, [r4, #42]
1993 00da 9BB2 uxth r3, r3
1169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
1994 .loc 1 1169 22 view .LVU657
1995 00dc 013B subs r3, r3, #1
1996 00de 9BB2 uxth r3, r3
1997 00e0 6385 strh r3, [r4, #42] @ movhi
1170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1998 .loc 1 1170 7 is_stmt 1 view .LVU658
1170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
1999 .loc 1 1170 11 is_stmt 0 view .LVU659
2000 00e2 238D ldrh r3, [r4, #40]
1170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2001 .loc 1 1170 21 view .LVU660
2002 00e4 013B subs r3, r3, #1
2003 00e6 9BB2 uxth r3, r3
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 173
2004 00e8 2385 strh r3, [r4, #40] @ movhi
1172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2005 .loc 1 1172 7 is_stmt 1 view .LVU661
1172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2006 .loc 1 1172 16 is_stmt 0 view .LVU662
2007 00ea 628D ldrh r2, [r4, #42]
2008 00ec 92B2 uxth r2, r2
1172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2009 .loc 1 1172 10 view .LVU663
2010 00ee 002A cmp r2, #0
2011 00f0 E0D0 beq .L159
1172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2012 .loc 1 1172 35 discriminator 1 view .LVU664
2013 00f2 002B cmp r3, #0
2014 00f4 DED1 bne .L159
1175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2015 .loc 1 1175 9 is_stmt 1 view .LVU665
1175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2016 .loc 1 1175 13 is_stmt 0 view .LVU666
2017 00f6 0095 str r5, [sp]
2018 00f8 3346 mov r3, r6
2019 00fa 0022 movs r2, #0
2020 00fc 8021 movs r1, #128
2021 00fe 2046 mov r0, r4
2022 0100 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2023 .LVL133:
1175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2024 .loc 1 1175 12 view .LVU667
2025 0104 A0BB cbnz r0, .L167
1180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2026 .loc 1 1180 9 is_stmt 1 view .LVU668
1180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2027 .loc 1 1180 17 is_stmt 0 view .LVU669
2028 0106 638D ldrh r3, [r4, #42]
2029 0108 9BB2 uxth r3, r3
1180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2030 .loc 1 1180 12 view .LVU670
2031 010a FF2B cmp r3, #255
2032 010c C6D9 bls .L161
1182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2033 .loc 1 1182 11 is_stmt 1 view .LVU671
1182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2034 .loc 1 1182 26 is_stmt 0 view .LVU672
2035 010e FF22 movs r2, #255
2036 0110 2285 strh r2, [r4, #40] @ movhi
1183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2037 .loc 1 1183 11 is_stmt 1 view .LVU673
2038 0112 0023 movs r3, #0
2039 0114 0093 str r3, [sp]
2040 0116 4FF08073 mov r3, #16777216
2041 011a 3946 mov r1, r7
2042 011c 2046 mov r0, r4
2043 011e FFF7FEFF bl I2C_TransferConfig
2044 .LVL134:
2045 0122 C7E7 b .L159
2046 .L170:
1197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 174
2047 .loc 1 1197 5 view .LVU674
1197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2048 .loc 1 1197 9 is_stmt 0 view .LVU675
2049 0124 2A46 mov r2, r5
2050 0126 3146 mov r1, r6
2051 0128 2046 mov r0, r4
2052 012a FFF7FEFF bl I2C_WaitOnSTOPFlagUntilTimeout
2053 .LVL135:
1197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2054 .loc 1 1197 8 view .LVU676
2055 012e 08BB cbnz r0, .L168
1203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2056 .loc 1 1203 5 is_stmt 1 view .LVU677
2057 0130 2368 ldr r3, [r4]
2058 0132 2022 movs r2, #32
2059 0134 DA61 str r2, [r3, #28]
1206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2060 .loc 1 1206 5 view .LVU678
2061 0136 2168 ldr r1, [r4]
2062 0138 4B68 ldr r3, [r1, #4]
2063 013a 23F0FF73 bic r3, r3, #33423360
2064 013e 23F48B33 bic r3, r3, #71168
2065 0142 23F4FF73 bic r3, r3, #510
2066 0146 23F00103 bic r3, r3, #1
2067 014a 4B60 str r3, [r1, #4]
1208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2068 .loc 1 1208 5 view .LVU679
1208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2069 .loc 1 1208 17 is_stmt 0 view .LVU680
2070 014c 84F84120 strb r2, [r4, #65]
1209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2071 .loc 1 1209 5 is_stmt 1 view .LVU681
1209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2072 .loc 1 1209 17 is_stmt 0 view .LVU682
2073 0150 0023 movs r3, #0
2074 0152 84F84230 strb r3, [r4, #66]
1212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2075 .loc 1 1212 5 is_stmt 1 view .LVU683
1212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2076 .loc 1 1212 5 view .LVU684
2077 0156 84F84030 strb r3, [r4, #64]
1212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2078 .loc 1 1212 5 view .LVU685
1214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2079 .loc 1 1214 5 view .LVU686
1214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2080 .loc 1 1214 12 is_stmt 0 view .LVU687
2081 015a 00E0 b .L156
2082 .LVL136:
2083 .L163:
1218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2084 .loc 1 1218 12 view .LVU688
2085 015c 0220 movs r0, #2
2086 .LVL137:
2087 .L156:
1220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2088 .loc 1 1220 1 view .LVU689
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 175
2089 015e 02B0 add sp, sp, #8
2090 .cfi_remember_state
2091 .cfi_def_cfa_offset 32
2092 @ sp needed
2093 0160 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
2094 .LVL138:
2095 .L164:
2096 .cfi_restore_state
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2097 .loc 1 1122 5 view .LVU690
2098 0164 0220 movs r0, #2
2099 .LVL139:
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2100 .loc 1 1122 5 view .LVU691
2101 0166 FAE7 b .L156
2102 .LVL140:
2103 .L165:
1129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2104 .loc 1 1129 14 view .LVU692
2105 0168 0120 movs r0, #1
2106 016a F8E7 b .L156
2107 .L166:
1161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2108 .loc 1 1161 16 view .LVU693
2109 016c 0120 movs r0, #1
2110 016e F6E7 b .L156
2111 .L167:
1177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2112 .loc 1 1177 18 view .LVU694
2113 0170 0120 movs r0, #1
2114 0172 F4E7 b .L156
2115 .L168:
1199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2116 .loc 1 1199 14 view .LVU695
2117 0174 0120 movs r0, #1
2118 0176 F2E7 b .L156
2119 .L172:
2120 .align 2
2121 .L171:
2122 0178 00200080 .word -2147475456
2123 .cfi_endproc
2124 .LFE134:
2126 .section .text.HAL_I2C_Master_Receive,"ax",%progbits
2127 .align 1
2128 .global HAL_I2C_Master_Receive
2129 .syntax unified
2130 .thumb
2131 .thumb_func
2133 HAL_I2C_Master_Receive:
2134 .LVL141:
2135 .LFB135:
1235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2136 .loc 1 1235 1 is_stmt 1 view -0
2137 .cfi_startproc
2138 @ args = 4, pretend = 0, frame = 0
2139 @ frame_needed = 0, uses_anonymous_args = 0
1235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 176
2140 .loc 1 1235 1 is_stmt 0 view .LVU697
2141 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
2142 .cfi_def_cfa_offset 32
2143 .cfi_offset 4, -32
2144 .cfi_offset 5, -28
2145 .cfi_offset 6, -24
2146 .cfi_offset 7, -20
2147 .cfi_offset 8, -16
2148 .cfi_offset 9, -12
2149 .cfi_offset 10, -8
2150 .cfi_offset 14, -4
2151 0004 82B0 sub sp, sp, #8
2152 .cfi_def_cfa_offset 40
2153 0006 0F46 mov r7, r1
2154 0008 0A9E ldr r6, [sp, #40]
1236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2155 .loc 1 1236 3 is_stmt 1 view .LVU698
1238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2156 .loc 1 1238 3 view .LVU699
1238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2157 .loc 1 1238 11 is_stmt 0 view .LVU700
2158 000a 90F84110 ldrb r1, [r0, #65] @ zero_extendqisi2
2159 .LVL142:
1238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2160 .loc 1 1238 11 view .LVU701
2161 000e C9B2 uxtb r1, r1
1238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2162 .loc 1 1238 6 view .LVU702
2163 0010 2029 cmp r1, #32
2164 0012 40F0A280 bne .L181
2165 0016 0446 mov r4, r0
2166 0018 9046 mov r8, r2
2167 001a 9946 mov r9, r3
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2168 .loc 1 1241 5 is_stmt 1 view .LVU703
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2169 .loc 1 1241 5 view .LVU704
2170 001c 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
2171 .LVL143:
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2172 .loc 1 1241 5 is_stmt 0 view .LVU705
2173 0020 012B cmp r3, #1
2174 0022 00F09E80 beq .L182
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2175 .loc 1 1241 5 is_stmt 1 discriminator 2 view .LVU706
2176 0026 4FF0010A mov r10, #1
2177 002a 80F840A0 strb r10, [r0, #64]
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2178 .loc 1 1241 5 discriminator 2 view .LVU707
1244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2179 .loc 1 1244 5 discriminator 2 view .LVU708
1244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2180 .loc 1 1244 17 is_stmt 0 discriminator 2 view .LVU709
2181 002e FFF7FEFF bl HAL_GetTick
2182 .LVL144:
1244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2183 .loc 1 1244 17 discriminator 2 view .LVU710
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 177
2184 0032 0546 mov r5, r0
2185 .LVL145:
1246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2186 .loc 1 1246 5 is_stmt 1 discriminator 2 view .LVU711
1246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2187 .loc 1 1246 9 is_stmt 0 discriminator 2 view .LVU712
2188 0034 0090 str r0, [sp]
2189 0036 1923 movs r3, #25
2190 0038 5246 mov r2, r10
2191 003a 4FF40041 mov r1, #32768
2192 003e 2046 mov r0, r4
2193 .LVL146:
1246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2194 .loc 1 1246 9 discriminator 2 view .LVU713
2195 0040 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2196 .LVL147:
1246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2197 .loc 1 1246 8 discriminator 2 view .LVU714
2198 0044 0028 cmp r0, #0
2199 0046 40F08E80 bne .L183
1251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
2200 .loc 1 1251 5 is_stmt 1 view .LVU715
1251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
2201 .loc 1 1251 21 is_stmt 0 view .LVU716
2202 004a 2223 movs r3, #34
2203 004c 84F84130 strb r3, [r4, #65]
1252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2204 .loc 1 1252 5 is_stmt 1 view .LVU717
1252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2205 .loc 1 1252 21 is_stmt 0 view .LVU718
2206 0050 1023 movs r3, #16
2207 0052 84F84230 strb r3, [r4, #66]
1253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2208 .loc 1 1253 5 is_stmt 1 view .LVU719
1253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2209 .loc 1 1253 21 is_stmt 0 view .LVU720
2210 0056 0023 movs r3, #0
2211 0058 6364 str r3, [r4, #68]
1256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2212 .loc 1 1256 5 is_stmt 1 view .LVU721
1256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2213 .loc 1 1256 21 is_stmt 0 view .LVU722
2214 005a C4F82480 str r8, [r4, #36]
1257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2215 .loc 1 1257 5 is_stmt 1 view .LVU723
1257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2216 .loc 1 1257 21 is_stmt 0 view .LVU724
2217 005e A4F82A90 strh r9, [r4, #42] @ movhi
1258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2218 .loc 1 1258 5 is_stmt 1 view .LVU725
1258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2219 .loc 1 1258 21 is_stmt 0 view .LVU726
2220 0062 6363 str r3, [r4, #52]
1262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2221 .loc 1 1262 5 is_stmt 1 view .LVU727
1262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2222 .loc 1 1262 13 is_stmt 0 view .LVU728
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 178
2223 0064 638D ldrh r3, [r4, #42]
2224 0066 9BB2 uxth r3, r3
1262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2225 .loc 1 1262 8 view .LVU729
2226 0068 FF2B cmp r3, #255
2227 006a 0AD9 bls .L175
1264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2228 .loc 1 1264 7 is_stmt 1 view .LVU730
1264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2229 .loc 1 1264 22 is_stmt 0 view .LVU731
2230 006c FF22 movs r2, #255
2231 006e 2285 strh r2, [r4, #40] @ movhi
1265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
2232 .loc 1 1265 7 is_stmt 1 view .LVU732
2233 0070 414B ldr r3, .L189
2234 0072 0093 str r3, [sp]
2235 0074 4FF08073 mov r3, #16777216
2236 0078 3946 mov r1, r7
2237 007a 2046 mov r0, r4
2238 007c FFF7FEFF bl I2C_TransferConfig
2239 .LVL148:
2240 0080 18E0 b .L177
2241 .L175:
1270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2242 .loc 1 1270 7 view .LVU733
1270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2243 .loc 1 1270 28 is_stmt 0 view .LVU734
2244 0082 628D ldrh r2, [r4, #42]
2245 0084 92B2 uxth r2, r2
1270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2246 .loc 1 1270 22 view .LVU735
2247 0086 2285 strh r2, [r4, #40] @ movhi
1271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
2248 .loc 1 1271 7 is_stmt 1 view .LVU736
2249 0088 3B4B ldr r3, .L189
2250 008a 0093 str r3, [sp]
2251 008c 4FF00073 mov r3, #33554432
2252 0090 D2B2 uxtb r2, r2
2253 0092 3946 mov r1, r7
2254 0094 2046 mov r0, r4
2255 0096 FFF7FEFF bl I2C_TransferConfig
2256 .LVL149:
2257 009a 0BE0 b .L177
2258 .L179:
1308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2259 .loc 1 1308 11 view .LVU737
1308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2260 .loc 1 1308 32 is_stmt 0 view .LVU738
2261 009c 628D ldrh r2, [r4, #42]
2262 009e 92B2 uxth r2, r2
1308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
2263 .loc 1 1308 26 view .LVU739
2264 00a0 2285 strh r2, [r4, #40] @ movhi
1309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2265 .loc 1 1309 11 is_stmt 1 view .LVU740
2266 00a2 0023 movs r3, #0
2267 00a4 0093 str r3, [sp]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 179
2268 00a6 4FF00073 mov r3, #33554432
2269 00aa D2B2 uxtb r2, r2
2270 00ac 3946 mov r1, r7
2271 00ae 2046 mov r0, r4
2272 00b0 FFF7FEFF bl I2C_TransferConfig
2273 .LVL150:
2274 .L177:
1275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2275 .loc 1 1275 28 view .LVU741
1275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2276 .loc 1 1275 16 is_stmt 0 view .LVU742
2277 00b4 638D ldrh r3, [r4, #42]
2278 00b6 9BB2 uxth r3, r3
1275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2279 .loc 1 1275 28 view .LVU743
2280 00b8 002B cmp r3, #0
2281 00ba 32D0 beq .L188
1278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2282 .loc 1 1278 7 is_stmt 1 view .LVU744
1278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2283 .loc 1 1278 11 is_stmt 0 view .LVU745
2284 00bc 2A46 mov r2, r5
2285 00be 3146 mov r1, r6
2286 00c0 2046 mov r0, r4
2287 00c2 FFF7FEFF bl I2C_WaitOnRXNEFlagUntilTimeout
2288 .LVL151:
1278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2289 .loc 1 1278 10 view .LVU746
2290 00c6 0028 cmp r0, #0
2291 00c8 4FD1 bne .L184
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2292 .loc 1 1284 7 is_stmt 1 view .LVU747
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2293 .loc 1 1284 38 is_stmt 0 view .LVU748
2294 00ca 2368 ldr r3, [r4]
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2295 .loc 1 1284 48 view .LVU749
2296 00cc 5A6A ldr r2, [r3, #36]
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2297 .loc 1 1284 12 view .LVU750
2298 00ce 636A ldr r3, [r4, #36]
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2299 .loc 1 1284 23 view .LVU751
2300 00d0 1A70 strb r2, [r3]
1287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2301 .loc 1 1287 7 is_stmt 1 view .LVU752
1287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2302 .loc 1 1287 11 is_stmt 0 view .LVU753
2303 00d2 636A ldr r3, [r4, #36]
1287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2304 .loc 1 1287 21 view .LVU754
2305 00d4 0133 adds r3, r3, #1
2306 00d6 6362 str r3, [r4, #36]
1289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
2307 .loc 1 1289 7 is_stmt 1 view .LVU755
1289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
2308 .loc 1 1289 11 is_stmt 0 view .LVU756
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 180
2309 00d8 228D ldrh r2, [r4, #40]
1289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
2310 .loc 1 1289 21 view .LVU757
2311 00da 013A subs r2, r2, #1
2312 00dc 92B2 uxth r2, r2
2313 00de 2285 strh r2, [r4, #40] @ movhi
1290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2314 .loc 1 1290 7 is_stmt 1 view .LVU758
1290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2315 .loc 1 1290 11 is_stmt 0 view .LVU759
2316 00e0 638D ldrh r3, [r4, #42]
2317 00e2 9BB2 uxth r3, r3
1290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2318 .loc 1 1290 22 view .LVU760
2319 00e4 013B subs r3, r3, #1
2320 00e6 9BB2 uxth r3, r3
2321 00e8 6385 strh r3, [r4, #42] @ movhi
1292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2322 .loc 1 1292 7 is_stmt 1 view .LVU761
1292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2323 .loc 1 1292 16 is_stmt 0 view .LVU762
2324 00ea 638D ldrh r3, [r4, #42]
2325 00ec 9BB2 uxth r3, r3
1292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2326 .loc 1 1292 10 view .LVU763
2327 00ee 002B cmp r3, #0
2328 00f0 E0D0 beq .L177
1292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2329 .loc 1 1292 35 discriminator 1 view .LVU764
2330 00f2 002A cmp r2, #0
2331 00f4 DED1 bne .L177
1295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2332 .loc 1 1295 9 is_stmt 1 view .LVU765
1295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2333 .loc 1 1295 13 is_stmt 0 view .LVU766
2334 00f6 0095 str r5, [sp]
2335 00f8 3346 mov r3, r6
2336 00fa 8021 movs r1, #128
2337 00fc 2046 mov r0, r4
2338 00fe FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2339 .LVL152:
1295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2340 .loc 1 1295 12 view .LVU767
2341 0102 A0BB cbnz r0, .L185
1300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2342 .loc 1 1300 9 is_stmt 1 view .LVU768
1300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2343 .loc 1 1300 17 is_stmt 0 view .LVU769
2344 0104 638D ldrh r3, [r4, #42]
2345 0106 9BB2 uxth r3, r3
1300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2346 .loc 1 1300 12 view .LVU770
2347 0108 FF2B cmp r3, #255
2348 010a C7D9 bls .L179
1302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
2349 .loc 1 1302 11 is_stmt 1 view .LVU771
1302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 181
2350 .loc 1 1302 26 is_stmt 0 view .LVU772
2351 010c FF22 movs r2, #255
2352 010e 2285 strh r2, [r4, #40] @ movhi
1303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
2353 .loc 1 1303 11 is_stmt 1 view .LVU773
2354 0110 0023 movs r3, #0
2355 0112 0093 str r3, [sp]
2356 0114 4FF08073 mov r3, #16777216
2357 0118 3946 mov r1, r7
2358 011a 2046 mov r0, r4
2359 011c FFF7FEFF bl I2C_TransferConfig
2360 .LVL153:
2361 0120 C8E7 b .L177
2362 .L188:
1317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2363 .loc 1 1317 5 view .LVU774
1317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2364 .loc 1 1317 9 is_stmt 0 view .LVU775
2365 0122 2A46 mov r2, r5
2366 0124 3146 mov r1, r6
2367 0126 2046 mov r0, r4
2368 0128 FFF7FEFF bl I2C_WaitOnSTOPFlagUntilTimeout
2369 .LVL154:
1317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2370 .loc 1 1317 8 view .LVU776
2371 012c 08BB cbnz r0, .L186
1323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2372 .loc 1 1323 5 is_stmt 1 view .LVU777
2373 012e 2368 ldr r3, [r4]
2374 0130 2022 movs r2, #32
2375 0132 DA61 str r2, [r3, #28]
1326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2376 .loc 1 1326 5 view .LVU778
2377 0134 2168 ldr r1, [r4]
2378 0136 4B68 ldr r3, [r1, #4]
2379 0138 23F0FF73 bic r3, r3, #33423360
2380 013c 23F48B33 bic r3, r3, #71168
2381 0140 23F4FF73 bic r3, r3, #510
2382 0144 23F00103 bic r3, r3, #1
2383 0148 4B60 str r3, [r1, #4]
1328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2384 .loc 1 1328 5 view .LVU779
1328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2385 .loc 1 1328 17 is_stmt 0 view .LVU780
2386 014a 84F84120 strb r2, [r4, #65]
1329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2387 .loc 1 1329 5 is_stmt 1 view .LVU781
1329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2388 .loc 1 1329 17 is_stmt 0 view .LVU782
2389 014e 0023 movs r3, #0
2390 0150 84F84230 strb r3, [r4, #66]
1332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2391 .loc 1 1332 5 is_stmt 1 view .LVU783
1332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2392 .loc 1 1332 5 view .LVU784
2393 0154 84F84030 strb r3, [r4, #64]
1332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 182
2394 .loc 1 1332 5 view .LVU785
1334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2395 .loc 1 1334 5 view .LVU786
1334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2396 .loc 1 1334 12 is_stmt 0 view .LVU787
2397 0158 00E0 b .L174
2398 .LVL155:
2399 .L181:
1338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2400 .loc 1 1338 12 view .LVU788
2401 015a 0220 movs r0, #2
2402 .LVL156:
2403 .L174:
1340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2404 .loc 1 1340 1 view .LVU789
2405 015c 02B0 add sp, sp, #8
2406 .cfi_remember_state
2407 .cfi_def_cfa_offset 32
2408 @ sp needed
2409 015e BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
2410 .LVL157:
2411 .L182:
2412 .cfi_restore_state
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2413 .loc 1 1241 5 view .LVU790
2414 0162 0220 movs r0, #2
2415 .LVL158:
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2416 .loc 1 1241 5 view .LVU791
2417 0164 FAE7 b .L174
2418 .LVL159:
2419 .L183:
1248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2420 .loc 1 1248 14 view .LVU792
2421 0166 0120 movs r0, #1
2422 0168 F8E7 b .L174
2423 .L184:
1280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2424 .loc 1 1280 16 view .LVU793
2425 016a 0120 movs r0, #1
2426 016c F6E7 b .L174
2427 .L185:
1297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2428 .loc 1 1297 18 view .LVU794
2429 016e 0120 movs r0, #1
2430 0170 F4E7 b .L174
2431 .L186:
1319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2432 .loc 1 1319 14 view .LVU795
2433 0172 0120 movs r0, #1
2434 0174 F2E7 b .L174
2435 .L190:
2436 0176 00BF .align 2
2437 .L189:
2438 0178 00240080 .word -2147474432
2439 .cfi_endproc
2440 .LFE135:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 183
2442 .section .text.HAL_I2C_Slave_Transmit,"ax",%progbits
2443 .align 1
2444 .global HAL_I2C_Slave_Transmit
2445 .syntax unified
2446 .thumb
2447 .thumb_func
2449 HAL_I2C_Slave_Transmit:
2450 .LVL160:
2451 .LFB136:
1353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2452 .loc 1 1353 1 is_stmt 1 view -0
2453 .cfi_startproc
2454 @ args = 0, pretend = 0, frame = 0
2455 @ frame_needed = 0, uses_anonymous_args = 0
1353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2456 .loc 1 1353 1 is_stmt 0 view .LVU797
2457 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
2458 .cfi_def_cfa_offset 24
2459 .cfi_offset 4, -24
2460 .cfi_offset 5, -20
2461 .cfi_offset 6, -16
2462 .cfi_offset 7, -12
2463 .cfi_offset 8, -8
2464 .cfi_offset 14, -4
2465 0004 82B0 sub sp, sp, #8
2466 .cfi_def_cfa_offset 32
2467 0006 1D46 mov r5, r3
1354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2468 .loc 1 1354 3 is_stmt 1 view .LVU798
1356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2469 .loc 1 1356 3 view .LVU799
1356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2470 .loc 1 1356 11 is_stmt 0 view .LVU800
2471 0008 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
2472 .LVL161:
1356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2473 .loc 1 1356 11 view .LVU801
2474 000c DBB2 uxtb r3, r3
1356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2475 .loc 1 1356 6 view .LVU802
2476 000e 202B cmp r3, #32
2477 0010 40F0D980 bne .L205
2478 0014 0446 mov r4, r0
2479 0016 0F46 mov r7, r1
2480 0018 9046 mov r8, r2
1358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2481 .loc 1 1358 5 is_stmt 1 view .LVU803
1358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2482 .loc 1 1358 8 is_stmt 0 view .LVU804
2483 001a 0029 cmp r1, #0
2484 001c 56D0 beq .L193
1358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2485 .loc 1 1358 25 discriminator 1 view .LVU805
2486 001e 002A cmp r2, #0
2487 0020 54D0 beq .L193
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2488 .loc 1 1364 5 is_stmt 1 view .LVU806
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 184
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2489 .loc 1 1364 5 view .LVU807
2490 0022 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
2491 0026 012B cmp r3, #1
2492 0028 00F0D180 beq .L206
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2493 .loc 1 1364 5 discriminator 2 view .LVU808
2494 002c 0123 movs r3, #1
2495 002e 80F84030 strb r3, [r0, #64]
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2496 .loc 1 1364 5 discriminator 2 view .LVU809
1367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2497 .loc 1 1367 5 discriminator 2 view .LVU810
1367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2498 .loc 1 1367 17 is_stmt 0 discriminator 2 view .LVU811
2499 0032 FFF7FEFF bl HAL_GetTick
2500 .LVL162:
1367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2501 .loc 1 1367 17 discriminator 2 view .LVU812
2502 0036 0646 mov r6, r0
2503 .LVL163:
1369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
2504 .loc 1 1369 5 is_stmt 1 discriminator 2 view .LVU813
1369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
2505 .loc 1 1369 21 is_stmt 0 discriminator 2 view .LVU814
2506 0038 2123 movs r3, #33
2507 003a 84F84130 strb r3, [r4, #65]
1370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2508 .loc 1 1370 5 is_stmt 1 discriminator 2 view .LVU815
1370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2509 .loc 1 1370 21 is_stmt 0 discriminator 2 view .LVU816
2510 003e 2023 movs r3, #32
2511 0040 84F84230 strb r3, [r4, #66]
1371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2512 .loc 1 1371 5 is_stmt 1 discriminator 2 view .LVU817
1371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2513 .loc 1 1371 21 is_stmt 0 discriminator 2 view .LVU818
2514 0044 0022 movs r2, #0
2515 0046 6264 str r2, [r4, #68]
1374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2516 .loc 1 1374 5 is_stmt 1 discriminator 2 view .LVU819
1374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2517 .loc 1 1374 21 is_stmt 0 discriminator 2 view .LVU820
2518 0048 6762 str r7, [r4, #36]
1375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2519 .loc 1 1375 5 is_stmt 1 discriminator 2 view .LVU821
1375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2520 .loc 1 1375 21 is_stmt 0 discriminator 2 view .LVU822
2521 004a A4F82A80 strh r8, [r4, #42] @ movhi
1376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2522 .loc 1 1376 5 is_stmt 1 discriminator 2 view .LVU823
1376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2523 .loc 1 1376 21 is_stmt 0 discriminator 2 view .LVU824
2524 004e 6263 str r2, [r4, #52]
1379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2525 .loc 1 1379 5 is_stmt 1 discriminator 2 view .LVU825
1379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 185
2526 .loc 1 1379 9 is_stmt 0 discriminator 2 view .LVU826
2527 0050 2168 ldr r1, [r4]
1379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2528 .loc 1 1379 19 discriminator 2 view .LVU827
2529 0052 4B68 ldr r3, [r1, #4]
1379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2530 .loc 1 1379 25 discriminator 2 view .LVU828
2531 0054 23F40043 bic r3, r3, #32768
2532 0058 4B60 str r3, [r1, #4]
1382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2533 .loc 1 1382 5 is_stmt 1 discriminator 2 view .LVU829
1382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2534 .loc 1 1382 9 is_stmt 0 discriminator 2 view .LVU830
2535 005a 0090 str r0, [sp]
2536 005c 2B46 mov r3, r5
2537 005e 0821 movs r1, #8
2538 0060 2046 mov r0, r4
2539 .LVL164:
1382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2540 .loc 1 1382 9 discriminator 2 view .LVU831
2541 0062 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2542 .LVL165:
1382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2543 .loc 1 1382 8 discriminator 2 view .LVU832
2544 0066 0028 cmp r0, #0
2545 0068 35D1 bne .L208
1390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2546 .loc 1 1390 5 is_stmt 1 view .LVU833
1390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2547 .loc 1 1390 19 is_stmt 0 view .LVU834
2548 006a 236A ldr r3, [r4, #32]
1390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2549 .loc 1 1390 8 view .LVU835
2550 006c B3F5003F cmp r3, #131072
2551 0070 38D0 beq .L209
2552 .L196:
1403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2553 .loc 1 1403 5 is_stmt 1 view .LVU836
2554 0072 2368 ldr r3, [r4]
2555 0074 0822 movs r2, #8
2556 0076 DA61 str r2, [r3, #28]
1406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2557 .loc 1 1406 5 view .LVU837
1406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2558 .loc 1 1406 19 is_stmt 0 view .LVU838
2559 0078 E368 ldr r3, [r4, #12]
1406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2560 .loc 1 1406 8 view .LVU839
2561 007a 022B cmp r3, #2
2562 007c 3FD0 beq .L210
2563 .L197:
1421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2564 .loc 1 1421 5 is_stmt 1 view .LVU840
1421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2565 .loc 1 1421 9 is_stmt 0 view .LVU841
2566 007e 0096 str r6, [sp]
2567 0080 2B46 mov r3, r5
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 186
2568 0082 0022 movs r2, #0
2569 0084 4FF48031 mov r1, #65536
2570 0088 2046 mov r0, r4
2571 008a FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2572 .LVL166:
1421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2573 .loc 1 1421 8 view .LVU842
2574 008e 0028 cmp r0, #0
2575 0090 48D1 bne .L211
2576 .L199:
1428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2577 .loc 1 1428 28 is_stmt 1 view .LVU843
1428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2578 .loc 1 1428 16 is_stmt 0 view .LVU844
2579 0092 638D ldrh r3, [r4, #42]
2580 0094 9BB2 uxth r3, r3
1428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2581 .loc 1 1428 28 view .LVU845
2582 0096 002B cmp r3, #0
2583 0098 52D0 beq .L212
1431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2584 .loc 1 1431 7 is_stmt 1 view .LVU846
1431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2585 .loc 1 1431 11 is_stmt 0 view .LVU847
2586 009a 3246 mov r2, r6
2587 009c 2946 mov r1, r5
2588 009e 2046 mov r0, r4
2589 00a0 FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
2590 .LVL167:
1431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2591 .loc 1 1431 10 view .LVU848
2592 00a4 0028 cmp r0, #0
2593 00a6 44D1 bne .L213
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2594 .loc 1 1439 7 is_stmt 1 view .LVU849
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2595 .loc 1 1439 35 is_stmt 0 view .LVU850
2596 00a8 626A ldr r2, [r4, #36]
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2597 .loc 1 1439 11 view .LVU851
2598 00aa 2368 ldr r3, [r4]
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2599 .loc 1 1439 30 view .LVU852
2600 00ac 1278 ldrb r2, [r2] @ zero_extendqisi2
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2601 .loc 1 1439 28 view .LVU853
2602 00ae 9A62 str r2, [r3, #40]
1442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2603 .loc 1 1442 7 is_stmt 1 view .LVU854
1442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2604 .loc 1 1442 11 is_stmt 0 view .LVU855
2605 00b0 636A ldr r3, [r4, #36]
1442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2606 .loc 1 1442 21 view .LVU856
2607 00b2 0133 adds r3, r3, #1
2608 00b4 6362 str r3, [r4, #36]
1444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 187
2609 .loc 1 1444 7 is_stmt 1 view .LVU857
1444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2610 .loc 1 1444 11 is_stmt 0 view .LVU858
2611 00b6 B4F82AC0 ldrh ip, [r4, #42]
2612 00ba 1FFA8CFC uxth ip, ip
1444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2613 .loc 1 1444 22 view .LVU859
2614 00be 0CF1FF3C add ip, ip, #-1
2615 00c2 1FFA8CFC uxth ip, ip
2616 00c6 A4F82AC0 strh ip, [r4, #42] @ movhi
2617 00ca E2E7 b .L199
2618 .LVL168:
2619 .L193:
1360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2620 .loc 1 1360 7 is_stmt 1 view .LVU860
1360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2621 .loc 1 1360 23 is_stmt 0 view .LVU861
2622 00cc 4FF40073 mov r3, #512
2623 00d0 6364 str r3, [r4, #68]
1361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2624 .loc 1 1361 7 is_stmt 1 view .LVU862
1361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2625 .loc 1 1361 15 is_stmt 0 view .LVU863
2626 00d2 0120 movs r0, #1
2627 .LVL169:
1361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2628 .loc 1 1361 15 view .LVU864
2629 00d4 78E0 b .L192
2630 .LVL170:
2631 .L208:
1385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2632 .loc 1 1385 7 is_stmt 1 view .LVU865
1385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2633 .loc 1 1385 11 is_stmt 0 view .LVU866
2634 00d6 2268 ldr r2, [r4]
1385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2635 .loc 1 1385 21 view .LVU867
2636 00d8 5368 ldr r3, [r2, #4]
1385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2637 .loc 1 1385 27 view .LVU868
2638 00da 43F40043 orr r3, r3, #32768
2639 00de 5360 str r3, [r2, #4]
1386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2640 .loc 1 1386 7 is_stmt 1 view .LVU869
1386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2641 .loc 1 1386 14 is_stmt 0 view .LVU870
2642 00e0 0120 movs r0, #1
2643 00e2 71E0 b .L192
2644 .L209:
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2645 .loc 1 1394 7 is_stmt 1 view .LVU871
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2646 .loc 1 1394 35 is_stmt 0 view .LVU872
2647 00e4 626A ldr r2, [r4, #36]
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2648 .loc 1 1394 11 view .LVU873
2649 00e6 2368 ldr r3, [r4]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 188
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2650 .loc 1 1394 30 view .LVU874
2651 00e8 1278 ldrb r2, [r2] @ zero_extendqisi2
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2652 .loc 1 1394 28 view .LVU875
2653 00ea 9A62 str r2, [r3, #40]
1397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2654 .loc 1 1397 7 is_stmt 1 view .LVU876
1397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2655 .loc 1 1397 11 is_stmt 0 view .LVU877
2656 00ec 636A ldr r3, [r4, #36]
1397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2657 .loc 1 1397 21 view .LVU878
2658 00ee 0133 adds r3, r3, #1
2659 00f0 6362 str r3, [r4, #36]
1399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2660 .loc 1 1399 7 is_stmt 1 view .LVU879
1399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2661 .loc 1 1399 11 is_stmt 0 view .LVU880
2662 00f2 638D ldrh r3, [r4, #42]
2663 00f4 9BB2 uxth r3, r3
1399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2664 .loc 1 1399 22 view .LVU881
2665 00f6 013B subs r3, r3, #1
2666 00f8 9BB2 uxth r3, r3
2667 00fa 6385 strh r3, [r4, #42] @ movhi
2668 00fc B9E7 b .L196
2669 .L210:
1409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2670 .loc 1 1409 7 is_stmt 1 view .LVU882
1409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2671 .loc 1 1409 11 is_stmt 0 view .LVU883
2672 00fe 0096 str r6, [sp]
2673 0100 2B46 mov r3, r5
2674 0102 0022 movs r2, #0
2675 0104 0821 movs r1, #8
2676 0106 2046 mov r0, r4
2677 0108 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2678 .LVL171:
1409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2679 .loc 1 1409 10 view .LVU884
2680 010c 18B9 cbnz r0, .L214
1417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2681 .loc 1 1417 7 is_stmt 1 view .LVU885
2682 010e 2368 ldr r3, [r4]
2683 0110 0822 movs r2, #8
2684 0112 DA61 str r2, [r3, #28]
2685 0114 B3E7 b .L197
2686 .L214:
1412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2687 .loc 1 1412 9 view .LVU886
1412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2688 .loc 1 1412 13 is_stmt 0 view .LVU887
2689 0116 2268 ldr r2, [r4]
1412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2690 .loc 1 1412 23 view .LVU888
2691 0118 5368 ldr r3, [r2, #4]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 189
1412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2692 .loc 1 1412 29 view .LVU889
2693 011a 43F40043 orr r3, r3, #32768
2694 011e 5360 str r3, [r2, #4]
1413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2695 .loc 1 1413 9 is_stmt 1 view .LVU890
1413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2696 .loc 1 1413 16 is_stmt 0 view .LVU891
2697 0120 0120 movs r0, #1
2698 0122 51E0 b .L192
2699 .L211:
1424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2700 .loc 1 1424 7 is_stmt 1 view .LVU892
1424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2701 .loc 1 1424 11 is_stmt 0 view .LVU893
2702 0124 2268 ldr r2, [r4]
1424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2703 .loc 1 1424 21 view .LVU894
2704 0126 5368 ldr r3, [r2, #4]
1424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2705 .loc 1 1424 27 view .LVU895
2706 0128 43F40043 orr r3, r3, #32768
2707 012c 5360 str r3, [r2, #4]
1425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2708 .loc 1 1425 7 is_stmt 1 view .LVU896
1425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2709 .loc 1 1425 14 is_stmt 0 view .LVU897
2710 012e 0120 movs r0, #1
2711 0130 4AE0 b .L192
2712 .L213:
1434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2713 .loc 1 1434 9 is_stmt 1 view .LVU898
1434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2714 .loc 1 1434 13 is_stmt 0 view .LVU899
2715 0132 2268 ldr r2, [r4]
1434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2716 .loc 1 1434 23 view .LVU900
2717 0134 5368 ldr r3, [r2, #4]
1434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2718 .loc 1 1434 29 view .LVU901
2719 0136 43F40043 orr r3, r3, #32768
2720 013a 5360 str r3, [r2, #4]
1435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2721 .loc 1 1435 9 is_stmt 1 view .LVU902
1435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2722 .loc 1 1435 16 is_stmt 0 view .LVU903
2723 013c 0120 movs r0, #1
2724 013e 43E0 b .L192
2725 .L212:
1448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2726 .loc 1 1448 5 is_stmt 1 view .LVU904
1448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2727 .loc 1 1448 9 is_stmt 0 view .LVU905
2728 0140 0096 str r6, [sp]
2729 0142 2B46 mov r3, r5
2730 0144 0022 movs r2, #0
2731 0146 1021 movs r1, #16
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 190
2732 0148 2046 mov r0, r4
2733 014a FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2734 .LVL172:
1448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2735 .loc 1 1448 8 view .LVU906
2736 014e 30B1 cbz r0, .L202
1451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2737 .loc 1 1451 7 is_stmt 1 view .LVU907
1451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2738 .loc 1 1451 11 is_stmt 0 view .LVU908
2739 0150 2268 ldr r2, [r4]
1451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2740 .loc 1 1451 21 view .LVU909
2741 0152 5368 ldr r3, [r2, #4]
1451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2742 .loc 1 1451 27 view .LVU910
2743 0154 43F40043 orr r3, r3, #32768
2744 0158 5360 str r3, [r2, #4]
1452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2745 .loc 1 1452 7 is_stmt 1 view .LVU911
1452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2746 .loc 1 1452 14 is_stmt 0 view .LVU912
2747 015a 0120 movs r0, #1
2748 015c 34E0 b .L192
2749 .L202:
1456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2750 .loc 1 1456 5 is_stmt 1 view .LVU913
2751 015e 2046 mov r0, r4
2752 0160 FFF7FEFF bl I2C_Flush_TXDR
2753 .LVL173:
1459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2754 .loc 1 1459 5 view .LVU914
2755 0164 2368 ldr r3, [r4]
2756 0166 1022 movs r2, #16
2757 0168 DA61 str r2, [r3, #28]
1462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2758 .loc 1 1462 5 view .LVU915
1462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2759 .loc 1 1462 9 is_stmt 0 view .LVU916
2760 016a 3246 mov r2, r6
2761 016c 2946 mov r1, r5
2762 016e 2046 mov r0, r4
2763 0170 FFF7FEFF bl I2C_WaitOnSTOPFlagUntilTimeout
2764 .LVL174:
1462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2765 .loc 1 1462 8 view .LVU917
2766 0174 30B1 cbz r0, .L203
1465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2767 .loc 1 1465 7 is_stmt 1 view .LVU918
1465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2768 .loc 1 1465 11 is_stmt 0 view .LVU919
2769 0176 2268 ldr r2, [r4]
1465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2770 .loc 1 1465 21 view .LVU920
2771 0178 5368 ldr r3, [r2, #4]
1465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2772 .loc 1 1465 27 view .LVU921
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 191
2773 017a 43F40043 orr r3, r3, #32768
2774 017e 5360 str r3, [r2, #4]
1467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2775 .loc 1 1467 7 is_stmt 1 view .LVU922
1467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2776 .loc 1 1467 14 is_stmt 0 view .LVU923
2777 0180 0120 movs r0, #1
2778 0182 21E0 b .L192
2779 .L203:
1471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2780 .loc 1 1471 5 is_stmt 1 view .LVU924
2781 0184 2368 ldr r3, [r4]
2782 0186 2022 movs r2, #32
2783 0188 DA61 str r2, [r3, #28]
1474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2784 .loc 1 1474 5 view .LVU925
1474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2785 .loc 1 1474 9 is_stmt 0 view .LVU926
2786 018a 0096 str r6, [sp]
2787 018c 2B46 mov r3, r5
2788 018e 0122 movs r2, #1
2789 0190 4FF40041 mov r1, #32768
2790 0194 2046 mov r0, r4
2791 0196 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2792 .LVL175:
1474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2793 .loc 1 1474 8 view .LVU927
2794 019a 30B1 cbz r0, .L204
1477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2795 .loc 1 1477 7 is_stmt 1 view .LVU928
1477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2796 .loc 1 1477 11 is_stmt 0 view .LVU929
2797 019c 2268 ldr r2, [r4]
1477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2798 .loc 1 1477 21 view .LVU930
2799 019e 5368 ldr r3, [r2, #4]
1477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2800 .loc 1 1477 27 view .LVU931
2801 01a0 43F40043 orr r3, r3, #32768
2802 01a4 5360 str r3, [r2, #4]
1478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2803 .loc 1 1478 7 is_stmt 1 view .LVU932
1478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2804 .loc 1 1478 14 is_stmt 0 view .LVU933
2805 01a6 0120 movs r0, #1
2806 01a8 0EE0 b .L192
2807 .L204:
1482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2808 .loc 1 1482 5 is_stmt 1 view .LVU934
1482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2809 .loc 1 1482 9 is_stmt 0 view .LVU935
2810 01aa 2268 ldr r2, [r4]
1482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2811 .loc 1 1482 19 view .LVU936
2812 01ac 5368 ldr r3, [r2, #4]
1482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2813 .loc 1 1482 25 view .LVU937
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 192
2814 01ae 43F40043 orr r3, r3, #32768
2815 01b2 5360 str r3, [r2, #4]
1484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2816 .loc 1 1484 5 is_stmt 1 view .LVU938
1484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
2817 .loc 1 1484 17 is_stmt 0 view .LVU939
2818 01b4 2023 movs r3, #32
2819 01b6 84F84130 strb r3, [r4, #65]
1485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2820 .loc 1 1485 5 is_stmt 1 view .LVU940
1485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2821 .loc 1 1485 17 is_stmt 0 view .LVU941
2822 01ba 0023 movs r3, #0
2823 01bc 84F84230 strb r3, [r4, #66]
1488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2824 .loc 1 1488 5 is_stmt 1 view .LVU942
1488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2825 .loc 1 1488 5 view .LVU943
2826 01c0 84F84030 strb r3, [r4, #64]
1488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2827 .loc 1 1488 5 view .LVU944
1490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2828 .loc 1 1490 5 view .LVU945
1490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2829 .loc 1 1490 12 is_stmt 0 view .LVU946
2830 01c4 00E0 b .L192
2831 .LVL176:
2832 .L205:
1494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2833 .loc 1 1494 12 view .LVU947
2834 01c6 0220 movs r0, #2
2835 .LVL177:
2836 .L192:
1496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2837 .loc 1 1496 1 view .LVU948
2838 01c8 02B0 add sp, sp, #8
2839 .cfi_remember_state
2840 .cfi_def_cfa_offset 24
2841 @ sp needed
2842 01ca BDE8F081 pop {r4, r5, r6, r7, r8, pc}
2843 .LVL178:
2844 .L206:
2845 .cfi_restore_state
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2846 .loc 1 1364 5 view .LVU949
2847 01ce 0220 movs r0, #2
2848 .LVL179:
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2849 .loc 1 1364 5 view .LVU950
2850 01d0 FAE7 b .L192
2851 .cfi_endproc
2852 .LFE136:
2854 .section .text.HAL_I2C_Slave_Receive,"ax",%progbits
2855 .align 1
2856 .global HAL_I2C_Slave_Receive
2857 .syntax unified
2858 .thumb
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 193
2859 .thumb_func
2861 HAL_I2C_Slave_Receive:
2862 .LVL180:
2863 .LFB137:
1509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2864 .loc 1 1509 1 is_stmt 1 view -0
2865 .cfi_startproc
2866 @ args = 0, pretend = 0, frame = 0
2867 @ frame_needed = 0, uses_anonymous_args = 0
1509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
2868 .loc 1 1509 1 is_stmt 0 view .LVU952
2869 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
2870 .cfi_def_cfa_offset 24
2871 .cfi_offset 4, -24
2872 .cfi_offset 5, -20
2873 .cfi_offset 6, -16
2874 .cfi_offset 7, -12
2875 .cfi_offset 8, -8
2876 .cfi_offset 14, -4
2877 0004 82B0 sub sp, sp, #8
2878 .cfi_def_cfa_offset 32
2879 0006 1D46 mov r5, r3
1510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2880 .loc 1 1510 3 is_stmt 1 view .LVU953
1512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2881 .loc 1 1512 3 view .LVU954
1512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2882 .loc 1 1512 11 is_stmt 0 view .LVU955
2883 0008 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
2884 .LVL181:
1512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2885 .loc 1 1512 11 view .LVU956
2886 000c DBB2 uxtb r3, r3
1512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2887 .loc 1 1512 6 view .LVU957
2888 000e 202B cmp r3, #32
2889 0010 40F0AF80 bne .L226
2890 0014 0446 mov r4, r0
2891 0016 0E46 mov r6, r1
2892 0018 9046 mov r8, r2
1514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2893 .loc 1 1514 5 is_stmt 1 view .LVU958
1514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2894 .loc 1 1514 8 is_stmt 0 view .LVU959
2895 001a 61B3 cbz r1, .L217
1514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2896 .loc 1 1514 25 discriminator 1 view .LVU960
2897 001c 5AB3 cbz r2, .L217
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2898 .loc 1 1520 5 is_stmt 1 view .LVU961
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2899 .loc 1 1520 5 view .LVU962
2900 001e 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
2901 0022 012B cmp r3, #1
2902 0024 00F0A980 beq .L227
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2903 .loc 1 1520 5 discriminator 2 view .LVU963
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 194
2904 0028 0123 movs r3, #1
2905 002a 80F84030 strb r3, [r0, #64]
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2906 .loc 1 1520 5 discriminator 2 view .LVU964
1523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2907 .loc 1 1523 5 discriminator 2 view .LVU965
1523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2908 .loc 1 1523 17 is_stmt 0 discriminator 2 view .LVU966
2909 002e FFF7FEFF bl HAL_GetTick
2910 .LVL182:
1523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2911 .loc 1 1523 17 discriminator 2 view .LVU967
2912 0032 0746 mov r7, r0
2913 .LVL183:
1525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
2914 .loc 1 1525 5 is_stmt 1 discriminator 2 view .LVU968
1525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
2915 .loc 1 1525 21 is_stmt 0 discriminator 2 view .LVU969
2916 0034 2223 movs r3, #34
2917 0036 84F84130 strb r3, [r4, #65]
1526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2918 .loc 1 1526 5 is_stmt 1 discriminator 2 view .LVU970
1526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
2919 .loc 1 1526 21 is_stmt 0 discriminator 2 view .LVU971
2920 003a 2023 movs r3, #32
2921 003c 84F84230 strb r3, [r4, #66]
1527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2922 .loc 1 1527 5 is_stmt 1 discriminator 2 view .LVU972
1527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2923 .loc 1 1527 21 is_stmt 0 discriminator 2 view .LVU973
2924 0040 0022 movs r2, #0
2925 0042 6264 str r2, [r4, #68]
1530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2926 .loc 1 1530 5 is_stmt 1 discriminator 2 view .LVU974
1530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
2927 .loc 1 1530 21 is_stmt 0 discriminator 2 view .LVU975
2928 0044 6662 str r6, [r4, #36]
1531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2929 .loc 1 1531 5 is_stmt 1 discriminator 2 view .LVU976
1531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
2930 .loc 1 1531 21 is_stmt 0 discriminator 2 view .LVU977
2931 0046 A4F82A80 strh r8, [r4, #42] @ movhi
1532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2932 .loc 1 1532 5 is_stmt 1 discriminator 2 view .LVU978
1532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2933 .loc 1 1532 26 is_stmt 0 discriminator 2 view .LVU979
2934 004a 638D ldrh r3, [r4, #42]
1532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
2935 .loc 1 1532 20 discriminator 2 view .LVU980
2936 004c 2385 strh r3, [r4, #40] @ movhi
1533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2937 .loc 1 1533 5 is_stmt 1 discriminator 2 view .LVU981
1533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2938 .loc 1 1533 21 is_stmt 0 discriminator 2 view .LVU982
2939 004e 6263 str r2, [r4, #52]
1536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2940 .loc 1 1536 5 is_stmt 1 discriminator 2 view .LVU983
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 195
1536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2941 .loc 1 1536 9 is_stmt 0 discriminator 2 view .LVU984
2942 0050 2168 ldr r1, [r4]
1536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2943 .loc 1 1536 19 discriminator 2 view .LVU985
2944 0052 4B68 ldr r3, [r1, #4]
1536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2945 .loc 1 1536 25 discriminator 2 view .LVU986
2946 0054 23F40043 bic r3, r3, #32768
2947 0058 4B60 str r3, [r1, #4]
1539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2948 .loc 1 1539 5 is_stmt 1 discriminator 2 view .LVU987
1539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2949 .loc 1 1539 9 is_stmt 0 discriminator 2 view .LVU988
2950 005a 0090 str r0, [sp]
2951 005c 2B46 mov r3, r5
2952 005e 0821 movs r1, #8
2953 0060 2046 mov r0, r4
2954 .LVL184:
1539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2955 .loc 1 1539 9 discriminator 2 view .LVU989
2956 0062 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2957 .LVL185:
1539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2958 .loc 1 1539 8 discriminator 2 view .LVU990
2959 0066 58B1 cbz r0, .L219
1542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2960 .loc 1 1542 7 is_stmt 1 view .LVU991
1542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2961 .loc 1 1542 11 is_stmt 0 view .LVU992
2962 0068 2268 ldr r2, [r4]
1542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2963 .loc 1 1542 21 view .LVU993
2964 006a 5368 ldr r3, [r2, #4]
1542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2965 .loc 1 1542 27 view .LVU994
2966 006c 43F40043 orr r3, r3, #32768
2967 0070 5360 str r3, [r2, #4]
1543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2968 .loc 1 1543 7 is_stmt 1 view .LVU995
1543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2969 .loc 1 1543 14 is_stmt 0 view .LVU996
2970 0072 0120 movs r0, #1
2971 0074 7EE0 b .L216
2972 .LVL186:
2973 .L217:
1516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2974 .loc 1 1516 7 is_stmt 1 view .LVU997
1516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
2975 .loc 1 1516 23 is_stmt 0 view .LVU998
2976 0076 4FF40073 mov r3, #512
2977 007a 6364 str r3, [r4, #68]
1517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2978 .loc 1 1517 7 is_stmt 1 view .LVU999
1517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2979 .loc 1 1517 15 is_stmt 0 view .LVU1000
2980 007c 0120 movs r0, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 196
2981 .LVL187:
1517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
2982 .loc 1 1517 15 view .LVU1001
2983 007e 79E0 b .L216
2984 .LVL188:
2985 .L219:
1547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
2986 .loc 1 1547 5 is_stmt 1 view .LVU1002
2987 0080 2368 ldr r3, [r4]
2988 0082 0822 movs r2, #8
2989 0084 DA61 str r2, [r3, #28]
1550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2990 .loc 1 1550 5 view .LVU1003
1550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2991 .loc 1 1550 9 is_stmt 0 view .LVU1004
2992 0086 0097 str r7, [sp]
2993 0088 2B46 mov r3, r5
2994 008a 0122 movs r2, #1
2995 008c 4FF48031 mov r1, #65536
2996 0090 2046 mov r0, r4
2997 0092 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
2998 .LVL189:
1550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
2999 .loc 1 1550 8 view .LVU1005
3000 0096 D0B1 cbz r0, .L220
1553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3001 .loc 1 1553 7 is_stmt 1 view .LVU1006
1553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3002 .loc 1 1553 11 is_stmt 0 view .LVU1007
3003 0098 2268 ldr r2, [r4]
1553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3004 .loc 1 1553 21 view .LVU1008
3005 009a 5368 ldr r3, [r2, #4]
1553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3006 .loc 1 1553 27 view .LVU1009
3007 009c 43F40043 orr r3, r3, #32768
3008 00a0 5360 str r3, [r2, #4]
1554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3009 .loc 1 1554 7 is_stmt 1 view .LVU1010
1554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3010 .loc 1 1554 14 is_stmt 0 view .LVU1011
3011 00a2 0120 movs r0, #1
3012 00a4 66E0 b .L216
3013 .L221:
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3014 .loc 1 1582 7 is_stmt 1 view .LVU1012
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3015 .loc 1 1582 38 is_stmt 0 view .LVU1013
3016 00a6 2368 ldr r3, [r4]
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3017 .loc 1 1582 48 view .LVU1014
3018 00a8 5A6A ldr r2, [r3, #36]
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3019 .loc 1 1582 12 view .LVU1015
3020 00aa 636A ldr r3, [r4, #36]
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3021 .loc 1 1582 23 view .LVU1016
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 197
3022 00ac 1A70 strb r2, [r3]
1585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3023 .loc 1 1585 7 is_stmt 1 view .LVU1017
1585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3024 .loc 1 1585 11 is_stmt 0 view .LVU1018
3025 00ae 636A ldr r3, [r4, #36]
1585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3026 .loc 1 1585 21 view .LVU1019
3027 00b0 0133 adds r3, r3, #1
3028 00b2 6362 str r3, [r4, #36]
1587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3029 .loc 1 1587 7 is_stmt 1 view .LVU1020
1587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3030 .loc 1 1587 11 is_stmt 0 view .LVU1021
3031 00b4 B4F82AC0 ldrh ip, [r4, #42]
3032 00b8 1FFA8CFC uxth ip, ip
1587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3033 .loc 1 1587 22 view .LVU1022
3034 00bc 0CF1FF3C add ip, ip, #-1
3035 00c0 1FFA8CFC uxth ip, ip
3036 00c4 A4F82AC0 strh ip, [r4, #42] @ movhi
1588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3037 .loc 1 1588 7 is_stmt 1 view .LVU1023
1588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3038 .loc 1 1588 11 is_stmt 0 view .LVU1024
3039 00c8 238D ldrh r3, [r4, #40]
1588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3040 .loc 1 1588 21 view .LVU1025
3041 00ca 013B subs r3, r3, #1
3042 00cc 2385 strh r3, [r4, #40] @ movhi
3043 .L220:
1557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3044 .loc 1 1557 28 is_stmt 1 view .LVU1026
1557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3045 .loc 1 1557 16 is_stmt 0 view .LVU1027
3046 00ce 638D ldrh r3, [r4, #42]
3047 00d0 9BB2 uxth r3, r3
1557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3048 .loc 1 1557 28 view .LVU1028
3049 00d2 03B3 cbz r3, .L229
1560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3050 .loc 1 1560 7 is_stmt 1 view .LVU1029
1560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3051 .loc 1 1560 11 is_stmt 0 view .LVU1030
3052 00d4 3A46 mov r2, r7
3053 00d6 2946 mov r1, r5
3054 00d8 2046 mov r0, r4
3055 00da FFF7FEFF bl I2C_WaitOnRXNEFlagUntilTimeout
3056 .LVL190:
1560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3057 .loc 1 1560 10 view .LVU1031
3058 00de 0028 cmp r0, #0
3059 00e0 E1D0 beq .L221
1563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3060 .loc 1 1563 9 is_stmt 1 view .LVU1032
1563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3061 .loc 1 1563 13 is_stmt 0 view .LVU1033
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 198
3062 00e2 2268 ldr r2, [r4]
1563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3063 .loc 1 1563 23 view .LVU1034
3064 00e4 5368 ldr r3, [r2, #4]
1563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3065 .loc 1 1563 29 view .LVU1035
3066 00e6 43F40043 orr r3, r3, #32768
3067 00ea 5360 str r3, [r2, #4]
1566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3068 .loc 1 1566 9 is_stmt 1 view .LVU1036
1566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3069 .loc 1 1566 13 is_stmt 0 view .LVU1037
3070 00ec 2368 ldr r3, [r4]
3071 00ee 9A69 ldr r2, [r3, #24]
1566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3072 .loc 1 1566 12 view .LVU1038
3073 00f0 12F0040F tst r2, #4
3074 00f4 0DD0 beq .L222
1569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3075 .loc 1 1569 11 is_stmt 1 view .LVU1039
1569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3076 .loc 1 1569 52 is_stmt 0 view .LVU1040
3077 00f6 5A6A ldr r2, [r3, #36]
1569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3078 .loc 1 1569 16 view .LVU1041
3079 00f8 636A ldr r3, [r4, #36]
1569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3080 .loc 1 1569 27 view .LVU1042
3081 00fa 1A70 strb r2, [r3]
1572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3082 .loc 1 1572 11 is_stmt 1 view .LVU1043
1572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3083 .loc 1 1572 15 is_stmt 0 view .LVU1044
3084 00fc 636A ldr r3, [r4, #36]
1572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3085 .loc 1 1572 25 view .LVU1045
3086 00fe 0133 adds r3, r3, #1
3087 0100 6362 str r3, [r4, #36]
1574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3088 .loc 1 1574 11 is_stmt 1 view .LVU1046
1574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3089 .loc 1 1574 15 is_stmt 0 view .LVU1047
3090 0102 638D ldrh r3, [r4, #42]
3091 0104 9BB2 uxth r3, r3
1574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3092 .loc 1 1574 26 view .LVU1048
3093 0106 013B subs r3, r3, #1
3094 0108 9BB2 uxth r3, r3
3095 010a 6385 strh r3, [r4, #42] @ movhi
1575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3096 .loc 1 1575 11 is_stmt 1 view .LVU1049
1575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3097 .loc 1 1575 15 is_stmt 0 view .LVU1050
3098 010c 238D ldrh r3, [r4, #40]
1575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3099 .loc 1 1575 25 view .LVU1051
3100 010e 013B subs r3, r3, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 199
3101 0110 2385 strh r3, [r4, #40] @ movhi
3102 .L222:
1578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3103 .loc 1 1578 9 is_stmt 1 view .LVU1052
1578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3104 .loc 1 1578 16 is_stmt 0 view .LVU1053
3105 0112 0120 movs r0, #1
3106 0114 2EE0 b .L216
3107 .L229:
1592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3108 .loc 1 1592 5 is_stmt 1 view .LVU1054
1592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3109 .loc 1 1592 9 is_stmt 0 view .LVU1055
3110 0116 3A46 mov r2, r7
3111 0118 2946 mov r1, r5
3112 011a 2046 mov r0, r4
3113 011c FFF7FEFF bl I2C_WaitOnSTOPFlagUntilTimeout
3114 .LVL191:
1592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3115 .loc 1 1592 8 view .LVU1056
3116 0120 30B1 cbz r0, .L224
1595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3117 .loc 1 1595 7 is_stmt 1 view .LVU1057
1595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3118 .loc 1 1595 11 is_stmt 0 view .LVU1058
3119 0122 2268 ldr r2, [r4]
1595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3120 .loc 1 1595 21 view .LVU1059
3121 0124 5368 ldr r3, [r2, #4]
1595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3122 .loc 1 1595 27 view .LVU1060
3123 0126 43F40043 orr r3, r3, #32768
3124 012a 5360 str r3, [r2, #4]
1596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3125 .loc 1 1596 7 is_stmt 1 view .LVU1061
1596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3126 .loc 1 1596 14 is_stmt 0 view .LVU1062
3127 012c 0120 movs r0, #1
3128 012e 21E0 b .L216
3129 .L224:
1600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3130 .loc 1 1600 5 is_stmt 1 view .LVU1063
3131 0130 2368 ldr r3, [r4]
3132 0132 2022 movs r2, #32
3133 0134 DA61 str r2, [r3, #28]
1603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3134 .loc 1 1603 5 view .LVU1064
1603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3135 .loc 1 1603 9 is_stmt 0 view .LVU1065
3136 0136 0097 str r7, [sp]
3137 0138 2B46 mov r3, r5
3138 013a 0122 movs r2, #1
3139 013c 4FF40041 mov r1, #32768
3140 0140 2046 mov r0, r4
3141 0142 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
3142 .LVL192:
1603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 200
3143 .loc 1 1603 8 view .LVU1066
3144 0146 30B1 cbz r0, .L225
1606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3145 .loc 1 1606 7 is_stmt 1 view .LVU1067
1606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3146 .loc 1 1606 11 is_stmt 0 view .LVU1068
3147 0148 2268 ldr r2, [r4]
1606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3148 .loc 1 1606 21 view .LVU1069
3149 014a 5368 ldr r3, [r2, #4]
1606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
3150 .loc 1 1606 27 view .LVU1070
3151 014c 43F40043 orr r3, r3, #32768
3152 0150 5360 str r3, [r2, #4]
1607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3153 .loc 1 1607 7 is_stmt 1 view .LVU1071
1607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3154 .loc 1 1607 14 is_stmt 0 view .LVU1072
3155 0152 0120 movs r0, #1
3156 0154 0EE0 b .L216
3157 .L225:
1611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3158 .loc 1 1611 5 is_stmt 1 view .LVU1073
1611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3159 .loc 1 1611 9 is_stmt 0 view .LVU1074
3160 0156 2268 ldr r2, [r4]
1611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3161 .loc 1 1611 19 view .LVU1075
3162 0158 5368 ldr r3, [r2, #4]
1611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3163 .loc 1 1611 25 view .LVU1076
3164 015a 43F40043 orr r3, r3, #32768
3165 015e 5360 str r3, [r2, #4]
1613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3166 .loc 1 1613 5 is_stmt 1 view .LVU1077
1613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3167 .loc 1 1613 17 is_stmt 0 view .LVU1078
3168 0160 2023 movs r3, #32
3169 0162 84F84130 strb r3, [r4, #65]
1614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3170 .loc 1 1614 5 is_stmt 1 view .LVU1079
1614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3171 .loc 1 1614 17 is_stmt 0 view .LVU1080
3172 0166 0023 movs r3, #0
3173 0168 84F84230 strb r3, [r4, #66]
1617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3174 .loc 1 1617 5 is_stmt 1 view .LVU1081
1617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3175 .loc 1 1617 5 view .LVU1082
3176 016c 84F84030 strb r3, [r4, #64]
1617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3177 .loc 1 1617 5 view .LVU1083
1619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3178 .loc 1 1619 5 view .LVU1084
1619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3179 .loc 1 1619 12 is_stmt 0 view .LVU1085
3180 0170 00E0 b .L216
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 201
3181 .LVL193:
3182 .L226:
1623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3183 .loc 1 1623 12 view .LVU1086
3184 0172 0220 movs r0, #2
3185 .LVL194:
3186 .L216:
1625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3187 .loc 1 1625 1 view .LVU1087
3188 0174 02B0 add sp, sp, #8
3189 .cfi_remember_state
3190 .cfi_def_cfa_offset 24
3191 @ sp needed
3192 0176 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
3193 .LVL195:
3194 .L227:
3195 .cfi_restore_state
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3196 .loc 1 1520 5 view .LVU1088
3197 017a 0220 movs r0, #2
3198 .LVL196:
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3199 .loc 1 1520 5 view .LVU1089
3200 017c FAE7 b .L216
3201 .cfi_endproc
3202 .LFE137:
3204 .section .text.HAL_I2C_Master_Transmit_IT,"ax",%progbits
3205 .align 1
3206 .global HAL_I2C_Master_Transmit_IT
3207 .syntax unified
3208 .thumb
3209 .thumb_func
3211 HAL_I2C_Master_Transmit_IT:
3212 .LVL197:
3213 .LFB138:
1639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3214 .loc 1 1639 1 is_stmt 1 view -0
3215 .cfi_startproc
3216 @ args = 0, pretend = 0, frame = 0
3217 @ frame_needed = 0, uses_anonymous_args = 0
1639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3218 .loc 1 1639 1 is_stmt 0 view .LVU1091
3219 0000 30B5 push {r4, r5, lr}
3220 .cfi_def_cfa_offset 12
3221 .cfi_offset 4, -12
3222 .cfi_offset 5, -8
3223 .cfi_offset 14, -4
3224 0002 83B0 sub sp, sp, #12
3225 .cfi_def_cfa_offset 24
3226 0004 0446 mov r4, r0
1640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3227 .loc 1 1640 3 is_stmt 1 view .LVU1092
1642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3228 .loc 1 1642 3 view .LVU1093
1642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3229 .loc 1 1642 11 is_stmt 0 view .LVU1094
3230 0006 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 202
3231 .LVL198:
1642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3232 .loc 1 1642 11 view .LVU1095
3233 000a C0B2 uxtb r0, r0
1642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3234 .loc 1 1642 6 view .LVU1096
3235 000c 2028 cmp r0, #32
3236 000e 37D1 bne .L234
1644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3237 .loc 1 1644 5 is_stmt 1 view .LVU1097
1644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3238 .loc 1 1644 9 is_stmt 0 view .LVU1098
3239 0010 2068 ldr r0, [r4]
3240 0012 8069 ldr r0, [r0, #24]
1644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3241 .loc 1 1644 8 view .LVU1099
3242 0014 10F4004F tst r0, #32768
3243 0018 34D1 bne .L235
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3244 .loc 1 1650 5 is_stmt 1 view .LVU1100
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3245 .loc 1 1650 5 view .LVU1101
3246 001a 94F84000 ldrb r0, [r4, #64] @ zero_extendqisi2
3247 001e 0128 cmp r0, #1
3248 0020 32D0 beq .L236
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3249 .loc 1 1650 5 discriminator 2 view .LVU1102
3250 0022 0120 movs r0, #1
3251 0024 84F84000 strb r0, [r4, #64]
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3252 .loc 1 1650 5 discriminator 2 view .LVU1103
1652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3253 .loc 1 1652 5 discriminator 2 view .LVU1104
1652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3254 .loc 1 1652 23 is_stmt 0 discriminator 2 view .LVU1105
3255 0028 2120 movs r0, #33
3256 002a 84F84100 strb r0, [r4, #65]
1653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3257 .loc 1 1653 5 is_stmt 1 discriminator 2 view .LVU1106
1653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3258 .loc 1 1653 23 is_stmt 0 discriminator 2 view .LVU1107
3259 002e 1020 movs r0, #16
3260 0030 84F84200 strb r0, [r4, #66]
1654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3261 .loc 1 1654 5 is_stmt 1 discriminator 2 view .LVU1108
1654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3262 .loc 1 1654 23 is_stmt 0 discriminator 2 view .LVU1109
3263 0034 0020 movs r0, #0
3264 0036 6064 str r0, [r4, #68]
1657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3265 .loc 1 1657 5 is_stmt 1 discriminator 2 view .LVU1110
1657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3266 .loc 1 1657 23 is_stmt 0 discriminator 2 view .LVU1111
3267 0038 6262 str r2, [r4, #36]
1658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3268 .loc 1 1658 5 is_stmt 1 discriminator 2 view .LVU1112
1658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 203
3269 .loc 1 1658 23 is_stmt 0 discriminator 2 view .LVU1113
3270 003a 6385 strh r3, [r4, #42] @ movhi
1659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3271 .loc 1 1659 5 is_stmt 1 discriminator 2 view .LVU1114
1659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3272 .loc 1 1659 23 is_stmt 0 discriminator 2 view .LVU1115
3273 003c 134B ldr r3, .L238
3274 .LVL199:
1659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3275 .loc 1 1659 23 discriminator 2 view .LVU1116
3276 003e E362 str r3, [r4, #44]
3277 .LVL200:
1660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3278 .loc 1 1660 5 is_stmt 1 discriminator 2 view .LVU1117
1660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3279 .loc 1 1660 23 is_stmt 0 discriminator 2 view .LVU1118
3280 0040 134B ldr r3, .L238+4
3281 0042 6363 str r3, [r4, #52]
1662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3282 .loc 1 1662 5 is_stmt 1 discriminator 2 view .LVU1119
1662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3283 .loc 1 1662 13 is_stmt 0 discriminator 2 view .LVU1120
3284 0044 638D ldrh r3, [r4, #42]
3285 0046 9BB2 uxth r3, r3
1662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3286 .loc 1 1662 8 discriminator 2 view .LVU1121
3287 0048 FF2B cmp r3, #255
3288 004a 14D9 bls .L232
1664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3289 .loc 1 1664 7 is_stmt 1 view .LVU1122
1664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3290 .loc 1 1664 22 is_stmt 0 view .LVU1123
3291 004c FF23 movs r3, #255
3292 004e 2385 strh r3, [r4, #40] @ movhi
1665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3293 .loc 1 1665 7 is_stmt 1 view .LVU1124
3294 .LVL201:
1665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3295 .loc 1 1665 16 is_stmt 0 view .LVU1125
3296 0050 4FF08073 mov r3, #16777216
3297 .LVL202:
3298 .L233:
1675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3299 .loc 1 1675 5 is_stmt 1 view .LVU1126
3300 0054 0F4A ldr r2, .L238+8
3301 .LVL203:
1675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3302 .loc 1 1675 5 is_stmt 0 view .LVU1127
3303 0056 0092 str r2, [sp]
3304 .LVL204:
1675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3305 .loc 1 1675 5 view .LVU1128
3306 0058 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
3307 005c 2046 mov r0, r4
3308 005e FFF7FEFF bl I2C_TransferConfig
3309 .LVL205:
1678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 204
3310 .loc 1 1678 5 is_stmt 1 view .LVU1129
1678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3311 .loc 1 1678 5 view .LVU1130
3312 0062 0025 movs r5, #0
3313 0064 84F84050 strb r5, [r4, #64]
1678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3314 .loc 1 1678 5 view .LVU1131
1688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3315 .loc 1 1688 5 view .LVU1132
3316 0068 0121 movs r1, #1
3317 006a 2046 mov r0, r4
3318 006c FFF7FEFF bl I2C_Enable_IRQ
3319 .LVL206:
1690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3320 .loc 1 1690 5 view .LVU1133
1690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3321 .loc 1 1690 12 is_stmt 0 view .LVU1134
3322 0070 2846 mov r0, r5
3323 .LVL207:
3324 .L231:
1696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3325 .loc 1 1696 1 view .LVU1135
3326 0072 03B0 add sp, sp, #12
3327 .cfi_remember_state
3328 .cfi_def_cfa_offset 12
3329 @ sp needed
3330 0074 30BD pop {r4, r5, pc}
3331 .LVL208:
3332 .L232:
3333 .cfi_restore_state
1669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3334 .loc 1 1669 7 is_stmt 1 view .LVU1136
1669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3335 .loc 1 1669 28 is_stmt 0 view .LVU1137
3336 0076 638D ldrh r3, [r4, #42]
1669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3337 .loc 1 1669 22 view .LVU1138
3338 0078 2385 strh r3, [r4, #40] @ movhi
1670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3339 .loc 1 1670 7 is_stmt 1 view .LVU1139
3340 .LVL209:
1670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3341 .loc 1 1670 16 is_stmt 0 view .LVU1140
3342 007a 4FF00073 mov r3, #33554432
3343 007e E9E7 b .L233
3344 .LVL210:
3345 .L234:
1694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3346 .loc 1 1694 12 view .LVU1141
3347 0080 0220 movs r0, #2
3348 0082 F6E7 b .L231
3349 .L235:
1646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3350 .loc 1 1646 14 view .LVU1142
3351 0084 0220 movs r0, #2
3352 0086 F4E7 b .L231
3353 .L236:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 205
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3354 .loc 1 1650 5 view .LVU1143
3355 0088 0220 movs r0, #2
3356 008a F2E7 b .L231
3357 .L239:
3358 .align 2
3359 .L238:
3360 008c 0000FFFF .word -65536
3361 0090 00000000 .word I2C_Master_ISR_IT
3362 0094 00200080 .word -2147475456
3363 .cfi_endproc
3364 .LFE138:
3366 .section .text.HAL_I2C_Master_Receive_IT,"ax",%progbits
3367 .align 1
3368 .global HAL_I2C_Master_Receive_IT
3369 .syntax unified
3370 .thumb
3371 .thumb_func
3373 HAL_I2C_Master_Receive_IT:
3374 .LVL211:
3375 .LFB139:
1710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3376 .loc 1 1710 1 is_stmt 1 view -0
3377 .cfi_startproc
3378 @ args = 0, pretend = 0, frame = 0
3379 @ frame_needed = 0, uses_anonymous_args = 0
1710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3380 .loc 1 1710 1 is_stmt 0 view .LVU1145
3381 0000 30B5 push {r4, r5, lr}
3382 .cfi_def_cfa_offset 12
3383 .cfi_offset 4, -12
3384 .cfi_offset 5, -8
3385 .cfi_offset 14, -4
3386 0002 83B0 sub sp, sp, #12
3387 .cfi_def_cfa_offset 24
3388 0004 0446 mov r4, r0
1711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3389 .loc 1 1711 3 is_stmt 1 view .LVU1146
1713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3390 .loc 1 1713 3 view .LVU1147
1713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3391 .loc 1 1713 11 is_stmt 0 view .LVU1148
3392 0006 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
3393 .LVL212:
1713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3394 .loc 1 1713 11 view .LVU1149
3395 000a C0B2 uxtb r0, r0
1713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3396 .loc 1 1713 6 view .LVU1150
3397 000c 2028 cmp r0, #32
3398 000e 37D1 bne .L244
1715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3399 .loc 1 1715 5 is_stmt 1 view .LVU1151
1715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3400 .loc 1 1715 9 is_stmt 0 view .LVU1152
3401 0010 2068 ldr r0, [r4]
3402 0012 8069 ldr r0, [r0, #24]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 206
1715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3403 .loc 1 1715 8 view .LVU1153
3404 0014 10F4004F tst r0, #32768
3405 0018 34D1 bne .L245
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3406 .loc 1 1721 5 is_stmt 1 view .LVU1154
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3407 .loc 1 1721 5 view .LVU1155
3408 001a 94F84000 ldrb r0, [r4, #64] @ zero_extendqisi2
3409 001e 0128 cmp r0, #1
3410 0020 32D0 beq .L246
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3411 .loc 1 1721 5 discriminator 2 view .LVU1156
3412 0022 0120 movs r0, #1
3413 0024 84F84000 strb r0, [r4, #64]
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3414 .loc 1 1721 5 discriminator 2 view .LVU1157
1723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3415 .loc 1 1723 5 discriminator 2 view .LVU1158
1723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3416 .loc 1 1723 23 is_stmt 0 discriminator 2 view .LVU1159
3417 0028 2220 movs r0, #34
3418 002a 84F84100 strb r0, [r4, #65]
1724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3419 .loc 1 1724 5 is_stmt 1 discriminator 2 view .LVU1160
1724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3420 .loc 1 1724 23 is_stmt 0 discriminator 2 view .LVU1161
3421 002e 1020 movs r0, #16
3422 0030 84F84200 strb r0, [r4, #66]
1725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3423 .loc 1 1725 5 is_stmt 1 discriminator 2 view .LVU1162
1725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3424 .loc 1 1725 23 is_stmt 0 discriminator 2 view .LVU1163
3425 0034 0020 movs r0, #0
3426 0036 6064 str r0, [r4, #68]
1728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3427 .loc 1 1728 5 is_stmt 1 discriminator 2 view .LVU1164
1728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3428 .loc 1 1728 23 is_stmt 0 discriminator 2 view .LVU1165
3429 0038 6262 str r2, [r4, #36]
1729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3430 .loc 1 1729 5 is_stmt 1 discriminator 2 view .LVU1166
1729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3431 .loc 1 1729 23 is_stmt 0 discriminator 2 view .LVU1167
3432 003a 6385 strh r3, [r4, #42] @ movhi
1730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3433 .loc 1 1730 5 is_stmt 1 discriminator 2 view .LVU1168
1730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3434 .loc 1 1730 23 is_stmt 0 discriminator 2 view .LVU1169
3435 003c 134B ldr r3, .L248
3436 .LVL213:
1730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
3437 .loc 1 1730 23 discriminator 2 view .LVU1170
3438 003e E362 str r3, [r4, #44]
3439 .LVL214:
1731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3440 .loc 1 1731 5 is_stmt 1 discriminator 2 view .LVU1171
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 207
1731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3441 .loc 1 1731 23 is_stmt 0 discriminator 2 view .LVU1172
3442 0040 134B ldr r3, .L248+4
3443 0042 6363 str r3, [r4, #52]
1733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3444 .loc 1 1733 5 is_stmt 1 discriminator 2 view .LVU1173
1733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3445 .loc 1 1733 13 is_stmt 0 discriminator 2 view .LVU1174
3446 0044 638D ldrh r3, [r4, #42]
3447 0046 9BB2 uxth r3, r3
1733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3448 .loc 1 1733 8 discriminator 2 view .LVU1175
3449 0048 FF2B cmp r3, #255
3450 004a 14D9 bls .L242
1735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3451 .loc 1 1735 7 is_stmt 1 view .LVU1176
1735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3452 .loc 1 1735 22 is_stmt 0 view .LVU1177
3453 004c FF23 movs r3, #255
3454 004e 2385 strh r3, [r4, #40] @ movhi
1736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3455 .loc 1 1736 7 is_stmt 1 view .LVU1178
3456 .LVL215:
1736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3457 .loc 1 1736 16 is_stmt 0 view .LVU1179
3458 0050 4FF08073 mov r3, #16777216
3459 .LVL216:
3460 .L243:
1746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3461 .loc 1 1746 5 is_stmt 1 view .LVU1180
3462 0054 0F4A ldr r2, .L248+8
3463 .LVL217:
1746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3464 .loc 1 1746 5 is_stmt 0 view .LVU1181
3465 0056 0092 str r2, [sp]
3466 .LVL218:
1746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3467 .loc 1 1746 5 view .LVU1182
3468 0058 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
3469 005c 2046 mov r0, r4
3470 005e FFF7FEFF bl I2C_TransferConfig
3471 .LVL219:
1749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3472 .loc 1 1749 5 is_stmt 1 view .LVU1183
1749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3473 .loc 1 1749 5 view .LVU1184
3474 0062 0025 movs r5, #0
3475 0064 84F84050 strb r5, [r4, #64]
1749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3476 .loc 1 1749 5 view .LVU1185
1759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3477 .loc 1 1759 5 view .LVU1186
3478 0068 0221 movs r1, #2
3479 006a 2046 mov r0, r4
3480 006c FFF7FEFF bl I2C_Enable_IRQ
3481 .LVL220:
1761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 208
3482 .loc 1 1761 5 view .LVU1187
1761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3483 .loc 1 1761 12 is_stmt 0 view .LVU1188
3484 0070 2846 mov r0, r5
3485 .LVL221:
3486 .L241:
1767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3487 .loc 1 1767 1 view .LVU1189
3488 0072 03B0 add sp, sp, #12
3489 .cfi_remember_state
3490 .cfi_def_cfa_offset 12
3491 @ sp needed
3492 0074 30BD pop {r4, r5, pc}
3493 .LVL222:
3494 .L242:
3495 .cfi_restore_state
1740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3496 .loc 1 1740 7 is_stmt 1 view .LVU1190
1740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3497 .loc 1 1740 28 is_stmt 0 view .LVU1191
3498 0076 638D ldrh r3, [r4, #42]
1740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3499 .loc 1 1740 22 view .LVU1192
3500 0078 2385 strh r3, [r4, #40] @ movhi
1741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3501 .loc 1 1741 7 is_stmt 1 view .LVU1193
3502 .LVL223:
1741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3503 .loc 1 1741 16 is_stmt 0 view .LVU1194
3504 007a 4FF00073 mov r3, #33554432
3505 007e E9E7 b .L243
3506 .LVL224:
3507 .L244:
1765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3508 .loc 1 1765 12 view .LVU1195
3509 0080 0220 movs r0, #2
3510 0082 F6E7 b .L241
3511 .L245:
1717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3512 .loc 1 1717 14 view .LVU1196
3513 0084 0220 movs r0, #2
3514 0086 F4E7 b .L241
3515 .L246:
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3516 .loc 1 1721 5 view .LVU1197
3517 0088 0220 movs r0, #2
3518 008a F2E7 b .L241
3519 .L249:
3520 .align 2
3521 .L248:
3522 008c 0000FFFF .word -65536
3523 0090 00000000 .word I2C_Master_ISR_IT
3524 0094 00240080 .word -2147474432
3525 .cfi_endproc
3526 .LFE139:
3528 .section .text.HAL_I2C_Slave_Transmit_IT,"ax",%progbits
3529 .align 1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 209
3530 .global HAL_I2C_Slave_Transmit_IT
3531 .syntax unified
3532 .thumb
3533 .thumb_func
3535 HAL_I2C_Slave_Transmit_IT:
3536 .LVL225:
3537 .LFB140:
1778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3538 .loc 1 1778 1 is_stmt 1 view -0
3539 .cfi_startproc
3540 @ args = 0, pretend = 0, frame = 0
3541 @ frame_needed = 0, uses_anonymous_args = 0
1779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3542 .loc 1 1779 3 view .LVU1199
1779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3543 .loc 1 1779 11 is_stmt 0 view .LVU1200
3544 0000 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
3545 0004 DBB2 uxtb r3, r3
1779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3546 .loc 1 1779 6 view .LVU1201
3547 0006 202B cmp r3, #32
3548 0008 38D1 bne .L253
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3549 .loc 1 1782 5 is_stmt 1 view .LVU1202
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3550 .loc 1 1782 5 view .LVU1203
3551 000a 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
3552 000e 012B cmp r3, #1
3553 0010 36D0 beq .L254
1778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3554 .loc 1 1778 1 is_stmt 0 discriminator 2 view .LVU1204
3555 0012 10B5 push {r4, lr}
3556 .cfi_def_cfa_offset 8
3557 .cfi_offset 4, -8
3558 .cfi_offset 14, -4
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3559 .loc 1 1782 5 is_stmt 1 discriminator 2 view .LVU1205
3560 0014 0123 movs r3, #1
3561 0016 80F84030 strb r3, [r0, #64]
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3562 .loc 1 1782 5 discriminator 2 view .LVU1206
1784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
3563 .loc 1 1784 5 discriminator 2 view .LVU1207
1784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
3564 .loc 1 1784 23 is_stmt 0 discriminator 2 view .LVU1208
3565 001a 2123 movs r3, #33
3566 001c 80F84130 strb r3, [r0, #65]
1785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3567 .loc 1 1785 5 is_stmt 1 discriminator 2 view .LVU1209
1785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3568 .loc 1 1785 23 is_stmt 0 discriminator 2 view .LVU1210
3569 0020 2023 movs r3, #32
3570 0022 80F84230 strb r3, [r0, #66]
1786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3571 .loc 1 1786 5 is_stmt 1 discriminator 2 view .LVU1211
1786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3572 .loc 1 1786 23 is_stmt 0 discriminator 2 view .LVU1212
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 210
3573 0026 0023 movs r3, #0
3574 0028 4364 str r3, [r0, #68]
1789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3575 .loc 1 1789 5 is_stmt 1 discriminator 2 view .LVU1213
1789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3576 .loc 1 1789 9 is_stmt 0 discriminator 2 view .LVU1214
3577 002a 0468 ldr r4, [r0]
1789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3578 .loc 1 1789 19 discriminator 2 view .LVU1215
3579 002c 6368 ldr r3, [r4, #4]
1789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3580 .loc 1 1789 25 discriminator 2 view .LVU1216
3581 002e 23F40043 bic r3, r3, #32768
3582 0032 6360 str r3, [r4, #4]
1792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3583 .loc 1 1792 5 is_stmt 1 discriminator 2 view .LVU1217
1792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3584 .loc 1 1792 23 is_stmt 0 discriminator 2 view .LVU1218
3585 0034 4162 str r1, [r0, #36]
1793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3586 .loc 1 1793 5 is_stmt 1 discriminator 2 view .LVU1219
1793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3587 .loc 1 1793 23 is_stmt 0 discriminator 2 view .LVU1220
3588 0036 4285 strh r2, [r0, #42] @ movhi
1794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3589 .loc 1 1794 5 is_stmt 1 discriminator 2 view .LVU1221
1794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3590 .loc 1 1794 29 is_stmt 0 discriminator 2 view .LVU1222
3591 0038 438D ldrh r3, [r0, #42]
1794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3592 .loc 1 1794 23 discriminator 2 view .LVU1223
3593 003a 0385 strh r3, [r0, #40] @ movhi
1795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
3594 .loc 1 1795 5 is_stmt 1 discriminator 2 view .LVU1224
1795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
3595 .loc 1 1795 23 is_stmt 0 discriminator 2 view .LVU1225
3596 003c 114B ldr r3, .L260
3597 003e C362 str r3, [r0, #44]
1796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3598 .loc 1 1796 5 is_stmt 1 discriminator 2 view .LVU1226
1796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3599 .loc 1 1796 23 is_stmt 0 discriminator 2 view .LVU1227
3600 0040 114B ldr r3, .L260+4
3601 0042 4363 str r3, [r0, #52]
1799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3602 .loc 1 1799 5 is_stmt 1 discriminator 2 view .LVU1228
1799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3603 .loc 1 1799 19 is_stmt 0 discriminator 2 view .LVU1229
3604 0044 036A ldr r3, [r0, #32]
1799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3605 .loc 1 1799 8 discriminator 2 view .LVU1230
3606 0046 B3F5003F cmp r3, #131072
3607 004a 08D0 beq .L259
3608 .LVL226:
3609 .L252:
1813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3610 .loc 1 1813 5 is_stmt 1 view .LVU1231
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 211
1813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3611 .loc 1 1813 5 view .LVU1232
3612 004c 0024 movs r4, #0
3613 004e 80F84040 strb r4, [r0, #64]
1813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3614 .loc 1 1813 5 view .LVU1233
1823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3615 .loc 1 1823 5 view .LVU1234
3616 0052 48F20101 movw r1, #32769
3617 .LVL227:
1823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3618 .loc 1 1823 5 is_stmt 0 view .LVU1235
3619 0056 FFF7FEFF bl I2C_Enable_IRQ
3620 .LVL228:
1825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3621 .loc 1 1825 5 is_stmt 1 view .LVU1236
1825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3622 .loc 1 1825 12 is_stmt 0 view .LVU1237
3623 005a 2046 mov r0, r4
1831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3624 .loc 1 1831 1 view .LVU1238
3625 005c 10BD pop {r4, pc}
3626 .LVL229:
3627 .L259:
1803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3628 .loc 1 1803 7 is_stmt 1 view .LVU1239
1803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3629 .loc 1 1803 11 is_stmt 0 view .LVU1240
3630 005e 0368 ldr r3, [r0]
1803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3631 .loc 1 1803 30 view .LVU1241
3632 0060 0A78 ldrb r2, [r1] @ zero_extendqisi2
3633 .LVL230:
1803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3634 .loc 1 1803 28 view .LVU1242
3635 0062 9A62 str r2, [r3, #40]
1806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3636 .loc 1 1806 7 is_stmt 1 view .LVU1243
1806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3637 .loc 1 1806 11 is_stmt 0 view .LVU1244
3638 0064 436A ldr r3, [r0, #36]
1806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3639 .loc 1 1806 21 view .LVU1245
3640 0066 0133 adds r3, r3, #1
3641 0068 4362 str r3, [r0, #36]
1808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3642 .loc 1 1808 7 is_stmt 1 view .LVU1246
1808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3643 .loc 1 1808 11 is_stmt 0 view .LVU1247
3644 006a 438D ldrh r3, [r0, #42]
3645 006c 9BB2 uxth r3, r3
1808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
3646 .loc 1 1808 22 view .LVU1248
3647 006e 013B subs r3, r3, #1
3648 0070 9BB2 uxth r3, r3
3649 0072 4385 strh r3, [r0, #42] @ movhi
1809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 212
3650 .loc 1 1809 7 is_stmt 1 view .LVU1249
1809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3651 .loc 1 1809 11 is_stmt 0 view .LVU1250
3652 0074 038D ldrh r3, [r0, #40]
1809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3653 .loc 1 1809 21 view .LVU1251
3654 0076 013B subs r3, r3, #1
3655 0078 0385 strh r3, [r0, #40] @ movhi
3656 007a E7E7 b .L252
3657 .LVL231:
3658 .L253:
3659 .cfi_def_cfa_offset 0
3660 .cfi_restore 4
3661 .cfi_restore 14
1829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3662 .loc 1 1829 12 view .LVU1252
3663 007c 0220 movs r0, #2
3664 .LVL232:
1829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3665 .loc 1 1829 12 view .LVU1253
3666 007e 7047 bx lr
3667 .LVL233:
3668 .L254:
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3669 .loc 1 1782 5 view .LVU1254
3670 0080 0220 movs r0, #2
3671 .LVL234:
1831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3672 .loc 1 1831 1 view .LVU1255
3673 0082 7047 bx lr
3674 .L261:
3675 .align 2
3676 .L260:
3677 0084 0000FFFF .word -65536
3678 0088 00000000 .word I2C_Slave_ISR_IT
3679 .cfi_endproc
3680 .LFE140:
3682 .section .text.HAL_I2C_Slave_Receive_IT,"ax",%progbits
3683 .align 1
3684 .global HAL_I2C_Slave_Receive_IT
3685 .syntax unified
3686 .thumb
3687 .thumb_func
3689 HAL_I2C_Slave_Receive_IT:
3690 .LVL235:
3691 .LFB141:
1842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3692 .loc 1 1842 1 is_stmt 1 view -0
3693 .cfi_startproc
3694 @ args = 0, pretend = 0, frame = 0
3695 @ frame_needed = 0, uses_anonymous_args = 0
1842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
3696 .loc 1 1842 1 is_stmt 0 view .LVU1257
3697 0000 38B5 push {r3, r4, r5, lr}
3698 .cfi_def_cfa_offset 16
3699 .cfi_offset 3, -16
3700 .cfi_offset 4, -12
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 213
3701 .cfi_offset 5, -8
3702 .cfi_offset 14, -4
1843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3703 .loc 1 1843 3 is_stmt 1 view .LVU1258
1843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3704 .loc 1 1843 11 is_stmt 0 view .LVU1259
3705 0002 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
3706 0006 DBB2 uxtb r3, r3
1843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3707 .loc 1 1843 6 view .LVU1260
3708 0008 202B cmp r3, #32
3709 000a 23D1 bne .L264
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3710 .loc 1 1846 5 is_stmt 1 view .LVU1261
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3711 .loc 1 1846 5 view .LVU1262
3712 000c 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
3713 0010 012B cmp r3, #1
3714 0012 21D0 beq .L265
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3715 .loc 1 1846 5 discriminator 2 view .LVU1263
3716 0014 0123 movs r3, #1
3717 0016 80F84030 strb r3, [r0, #64]
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3718 .loc 1 1846 5 discriminator 2 view .LVU1264
1848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
3719 .loc 1 1848 5 discriminator 2 view .LVU1265
1848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
3720 .loc 1 1848 23 is_stmt 0 discriminator 2 view .LVU1266
3721 001a 2223 movs r3, #34
3722 001c 80F84130 strb r3, [r0, #65]
1849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3723 .loc 1 1849 5 is_stmt 1 discriminator 2 view .LVU1267
1849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3724 .loc 1 1849 23 is_stmt 0 discriminator 2 view .LVU1268
3725 0020 2023 movs r3, #32
3726 0022 80F84230 strb r3, [r0, #66]
1850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3727 .loc 1 1850 5 is_stmt 1 discriminator 2 view .LVU1269
1850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3728 .loc 1 1850 23 is_stmt 0 discriminator 2 view .LVU1270
3729 0026 0024 movs r4, #0
3730 0028 4464 str r4, [r0, #68]
1853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3731 .loc 1 1853 5 is_stmt 1 discriminator 2 view .LVU1271
1853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3732 .loc 1 1853 9 is_stmt 0 discriminator 2 view .LVU1272
3733 002a 0568 ldr r5, [r0]
1853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3734 .loc 1 1853 19 discriminator 2 view .LVU1273
3735 002c 6B68 ldr r3, [r5, #4]
1853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3736 .loc 1 1853 25 discriminator 2 view .LVU1274
3737 002e 23F40043 bic r3, r3, #32768
3738 0032 6B60 str r3, [r5, #4]
1856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3739 .loc 1 1856 5 is_stmt 1 discriminator 2 view .LVU1275
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 214
1856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3740 .loc 1 1856 23 is_stmt 0 discriminator 2 view .LVU1276
3741 0034 4162 str r1, [r0, #36]
1857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3742 .loc 1 1857 5 is_stmt 1 discriminator 2 view .LVU1277
1857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
3743 .loc 1 1857 23 is_stmt 0 discriminator 2 view .LVU1278
3744 0036 4285 strh r2, [r0, #42] @ movhi
1858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3745 .loc 1 1858 5 is_stmt 1 discriminator 2 view .LVU1279
1858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3746 .loc 1 1858 29 is_stmt 0 discriminator 2 view .LVU1280
3747 0038 438D ldrh r3, [r0, #42]
1858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3748 .loc 1 1858 23 discriminator 2 view .LVU1281
3749 003a 0385 strh r3, [r0, #40] @ movhi
1859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
3750 .loc 1 1859 5 is_stmt 1 discriminator 2 view .LVU1282
1859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
3751 .loc 1 1859 23 is_stmt 0 discriminator 2 view .LVU1283
3752 003c 074B ldr r3, .L267
3753 003e C362 str r3, [r0, #44]
1860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3754 .loc 1 1860 5 is_stmt 1 discriminator 2 view .LVU1284
1860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3755 .loc 1 1860 23 is_stmt 0 discriminator 2 view .LVU1285
3756 0040 074B ldr r3, .L267+4
3757 0042 4363 str r3, [r0, #52]
1863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3758 .loc 1 1863 5 is_stmt 1 discriminator 2 view .LVU1286
1863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3759 .loc 1 1863 5 discriminator 2 view .LVU1287
3760 0044 80F84040 strb r4, [r0, #64]
1863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3761 .loc 1 1863 5 discriminator 2 view .LVU1288
1873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3762 .loc 1 1873 5 discriminator 2 view .LVU1289
3763 0048 48F20201 movw r1, #32770
3764 .LVL236:
1873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3765 .loc 1 1873 5 is_stmt 0 discriminator 2 view .LVU1290
3766 004c FFF7FEFF bl I2C_Enable_IRQ
3767 .LVL237:
1875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3768 .loc 1 1875 5 is_stmt 1 discriminator 2 view .LVU1291
1875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3769 .loc 1 1875 12 is_stmt 0 discriminator 2 view .LVU1292
3770 0050 2046 mov r0, r4
3771 .L263:
1881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3772 .loc 1 1881 1 view .LVU1293
3773 0052 38BD pop {r3, r4, r5, pc}
3774 .LVL238:
3775 .L264:
1879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3776 .loc 1 1879 12 view .LVU1294
3777 0054 0220 movs r0, #2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 215
3778 .LVL239:
1879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3779 .loc 1 1879 12 view .LVU1295
3780 0056 FCE7 b .L263
3781 .LVL240:
3782 .L265:
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3783 .loc 1 1846 5 view .LVU1296
3784 0058 0220 movs r0, #2
3785 .LVL241:
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3786 .loc 1 1846 5 view .LVU1297
3787 005a FAE7 b .L263
3788 .L268:
3789 .align 2
3790 .L267:
3791 005c 0000FFFF .word -65536
3792 0060 00000000 .word I2C_Slave_ISR_IT
3793 .cfi_endproc
3794 .LFE141:
3796 .section .text.HAL_I2C_Master_Transmit_DMA,"ax",%progbits
3797 .align 1
3798 .global HAL_I2C_Master_Transmit_DMA
3799 .syntax unified
3800 .thumb
3801 .thumb_func
3803 HAL_I2C_Master_Transmit_DMA:
3804 .LVL242:
3805 .LFB142:
1895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3806 .loc 1 1895 1 is_stmt 1 view -0
3807 .cfi_startproc
3808 @ args = 0, pretend = 0, frame = 0
3809 @ frame_needed = 0, uses_anonymous_args = 0
1895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
3810 .loc 1 1895 1 is_stmt 0 view .LVU1299
3811 0000 70B5 push {r4, r5, r6, lr}
3812 .cfi_def_cfa_offset 16
3813 .cfi_offset 4, -16
3814 .cfi_offset 5, -12
3815 .cfi_offset 6, -8
3816 .cfi_offset 14, -4
3817 0002 82B0 sub sp, sp, #8
3818 .cfi_def_cfa_offset 24
3819 0004 0446 mov r4, r0
1896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
3820 .loc 1 1896 3 is_stmt 1 view .LVU1300
1897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3821 .loc 1 1897 3 view .LVU1301
1899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3822 .loc 1 1899 3 view .LVU1302
1899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3823 .loc 1 1899 11 is_stmt 0 view .LVU1303
3824 0006 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
3825 .LVL243:
1899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3826 .loc 1 1899 11 view .LVU1304
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 216
3827 000a C0B2 uxtb r0, r0
1899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3828 .loc 1 1899 6 view .LVU1305
3829 000c 2028 cmp r0, #32
3830 000e 40F08D80 bne .L278
3831 0012 0D46 mov r5, r1
3832 0014 1146 mov r1, r2
3833 .LVL244:
1901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3834 .loc 1 1901 5 is_stmt 1 view .LVU1306
1901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3835 .loc 1 1901 9 is_stmt 0 view .LVU1307
3836 0016 2268 ldr r2, [r4]
3837 .LVL245:
1901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3838 .loc 1 1901 9 view .LVU1308
3839 0018 9269 ldr r2, [r2, #24]
1901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3840 .loc 1 1901 8 view .LVU1309
3841 001a 12F4004F tst r2, #32768
3842 001e 40F08880 bne .L279
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3843 .loc 1 1907 5 is_stmt 1 view .LVU1310
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3844 .loc 1 1907 5 view .LVU1311
3845 0022 94F84020 ldrb r2, [r4, #64] @ zero_extendqisi2
3846 0026 012A cmp r2, #1
3847 0028 00F08580 beq .L280
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3848 .loc 1 1907 5 discriminator 2 view .LVU1312
3849 002c 0122 movs r2, #1
3850 002e 84F84020 strb r2, [r4, #64]
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3851 .loc 1 1907 5 discriminator 2 view .LVU1313
1909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3852 .loc 1 1909 5 discriminator 2 view .LVU1314
1909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
3853 .loc 1 1909 23 is_stmt 0 discriminator 2 view .LVU1315
3854 0032 2122 movs r2, #33
3855 0034 84F84120 strb r2, [r4, #65]
1910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3856 .loc 1 1910 5 is_stmt 1 discriminator 2 view .LVU1316
1910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
3857 .loc 1 1910 23 is_stmt 0 discriminator 2 view .LVU1317
3858 0038 1022 movs r2, #16
3859 003a 84F84220 strb r2, [r4, #66]
1911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3860 .loc 1 1911 5 is_stmt 1 discriminator 2 view .LVU1318
1911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3861 .loc 1 1911 23 is_stmt 0 discriminator 2 view .LVU1319
3862 003e 0022 movs r2, #0
3863 0040 6264 str r2, [r4, #68]
1914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3864 .loc 1 1914 5 is_stmt 1 discriminator 2 view .LVU1320
1914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
3865 .loc 1 1914 23 is_stmt 0 discriminator 2 view .LVU1321
3866 0042 6162 str r1, [r4, #36]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 217
1915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3867 .loc 1 1915 5 is_stmt 1 discriminator 2 view .LVU1322
1915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
3868 .loc 1 1915 23 is_stmt 0 discriminator 2 view .LVU1323
3869 0044 6385 strh r3, [r4, #42] @ movhi
1916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
3870 .loc 1 1916 5 is_stmt 1 discriminator 2 view .LVU1324
1916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
3871 .loc 1 1916 23 is_stmt 0 discriminator 2 view .LVU1325
3872 0046 3D4B ldr r3, .L284
3873 .LVL246:
1916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
3874 .loc 1 1916 23 discriminator 2 view .LVU1326
3875 0048 E362 str r3, [r4, #44]
3876 .LVL247:
1917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3877 .loc 1 1917 5 is_stmt 1 discriminator 2 view .LVU1327
1917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3878 .loc 1 1917 23 is_stmt 0 discriminator 2 view .LVU1328
3879 004a 3D4B ldr r3, .L284+4
3880 004c 6363 str r3, [r4, #52]
1919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3881 .loc 1 1919 5 is_stmt 1 discriminator 2 view .LVU1329
1919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3882 .loc 1 1919 13 is_stmt 0 discriminator 2 view .LVU1330
3883 004e 638D ldrh r3, [r4, #42]
3884 0050 9BB2 uxth r3, r3
1919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3885 .loc 1 1919 8 discriminator 2 view .LVU1331
3886 0052 FF2B cmp r3, #255
3887 0054 27D9 bls .L271
1921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3888 .loc 1 1921 7 is_stmt 1 view .LVU1332
1921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
3889 .loc 1 1921 22 is_stmt 0 view .LVU1333
3890 0056 FF23 movs r3, #255
3891 0058 2385 strh r3, [r4, #40] @ movhi
1922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3892 .loc 1 1922 7 is_stmt 1 view .LVU1334
3893 .LVL248:
1922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3894 .loc 1 1922 16 is_stmt 0 view .LVU1335
3895 005a 4FF08076 mov r6, #16777216
3896 .LVL249:
3897 .L272:
1930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3898 .loc 1 1930 5 is_stmt 1 view .LVU1336
1930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3899 .loc 1 1930 13 is_stmt 0 view .LVU1337
3900 005e 228D ldrh r2, [r4, #40]
1930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3901 .loc 1 1930 8 view .LVU1338
3902 0060 002A cmp r2, #0
3903 0062 4FD0 beq .L273
1932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3904 .loc 1 1932 7 is_stmt 1 view .LVU1339
1932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 218
3905 .loc 1 1932 15 is_stmt 0 view .LVU1340
3906 0064 A36B ldr r3, [r4, #56]
1932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3907 .loc 1 1932 10 view .LVU1341
3908 0066 1BB3 cbz r3, .L274
1935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3909 .loc 1 1935 9 is_stmt 1 view .LVU1342
1935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3910 .loc 1 1935 40 is_stmt 0 view .LVU1343
3911 0068 364A ldr r2, .L284+8
3912 006a 9A62 str r2, [r3, #40]
1938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3913 .loc 1 1938 9 is_stmt 1 view .LVU1344
1938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3914 .loc 1 1938 13 is_stmt 0 view .LVU1345
3915 006c A36B ldr r3, [r4, #56]
1938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3916 .loc 1 1938 41 view .LVU1346
3917 006e 364A ldr r2, .L284+12
3918 0070 1A63 str r2, [r3, #48]
1941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
3919 .loc 1 1941 9 is_stmt 1 view .LVU1347
1941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
3920 .loc 1 1941 13 is_stmt 0 view .LVU1348
3921 0072 A26B ldr r2, [r4, #56]
1941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
3922 .loc 1 1941 44 view .LVU1349
3923 0074 0023 movs r3, #0
3924 0076 D362 str r3, [r2, #44]
1942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3925 .loc 1 1942 9 is_stmt 1 view .LVU1350
1942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3926 .loc 1 1942 13 is_stmt 0 view .LVU1351
3927 0078 A26B ldr r2, [r4, #56]
1942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3928 .loc 1 1942 41 view .LVU1352
3929 007a 5363 str r3, [r2, #52]
1945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
3930 .loc 1 1945 9 is_stmt 1 view .LVU1353
1945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
3931 .loc 1 1945 88 is_stmt 0 view .LVU1354
3932 007c 2268 ldr r2, [r4]
1945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
3933 .loc 1 1945 25 view .LVU1355
3934 007e 238D ldrh r3, [r4, #40]
3935 0080 2832 adds r2, r2, #40
3936 0082 A06B ldr r0, [r4, #56]
3937 0084 FFF7FEFF bl HAL_DMA_Start_IT
3938 .LVL250:
1963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3939 .loc 1 1963 7 is_stmt 1 view .LVU1356
1963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
3940 .loc 1 1963 10 is_stmt 0 view .LVU1357
3941 0088 00B3 cbz r0, .L283
1987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3942 .loc 1 1987 9 is_stmt 1 view .LVU1358
1987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 219
3943 .loc 1 1987 25 is_stmt 0 view .LVU1359
3944 008a 2023 movs r3, #32
3945 008c 84F84130 strb r3, [r4, #65]
1988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3946 .loc 1 1988 9 is_stmt 1 view .LVU1360
1988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3947 .loc 1 1988 25 is_stmt 0 view .LVU1361
3948 0090 0022 movs r2, #0
3949 0092 84F84220 strb r2, [r4, #66]
1991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3950 .loc 1 1991 9 is_stmt 1 view .LVU1362
1991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3951 .loc 1 1991 13 is_stmt 0 view .LVU1363
3952 0096 636C ldr r3, [r4, #68]
1991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3953 .loc 1 1991 25 view .LVU1364
3954 0098 43F01003 orr r3, r3, #16
3955 009c 6364 str r3, [r4, #68]
1994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3956 .loc 1 1994 9 is_stmt 1 view .LVU1365
1994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3957 .loc 1 1994 9 view .LVU1366
3958 009e 84F84020 strb r2, [r4, #64]
1994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3959 .loc 1 1994 9 view .LVU1367
1996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3960 .loc 1 1996 9 view .LVU1368
1996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3961 .loc 1 1996 16 is_stmt 0 view .LVU1369
3962 00a2 0120 movs r0, #1
3963 .LVL251:
1996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3964 .loc 1 1996 16 view .LVU1370
3965 00a4 43E0 b .L270
3966 .LVL252:
3967 .L271:
1926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3968 .loc 1 1926 7 is_stmt 1 view .LVU1371
1926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3969 .loc 1 1926 28 is_stmt 0 view .LVU1372
3970 00a6 638D ldrh r3, [r4, #42]
1926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
3971 .loc 1 1926 22 view .LVU1373
3972 00a8 2385 strh r3, [r4, #40] @ movhi
1927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3973 .loc 1 1927 7 is_stmt 1 view .LVU1374
3974 .LVL253:
1927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3975 .loc 1 1927 16 is_stmt 0 view .LVU1375
3976 00aa 4FF00076 mov r6, #33554432
3977 00ae D6E7 b .L272
3978 .LVL254:
3979 .L274:
1951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3980 .loc 1 1951 9 is_stmt 1 view .LVU1376
1951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
3981 .loc 1 1951 25 is_stmt 0 view .LVU1377
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 220
3982 00b0 2023 movs r3, #32
3983 00b2 84F84130 strb r3, [r4, #65]
1952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3984 .loc 1 1952 9 is_stmt 1 view .LVU1378
1952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3985 .loc 1 1952 25 is_stmt 0 view .LVU1379
3986 00b6 0022 movs r2, #0
3987 00b8 84F84220 strb r2, [r4, #66]
1955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3988 .loc 1 1955 9 is_stmt 1 view .LVU1380
1955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3989 .loc 1 1955 13 is_stmt 0 view .LVU1381
3990 00bc 636C ldr r3, [r4, #68]
1955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3991 .loc 1 1955 25 view .LVU1382
3992 00be 43F08003 orr r3, r3, #128
3993 00c2 6364 str r3, [r4, #68]
1958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3994 .loc 1 1958 9 is_stmt 1 view .LVU1383
1958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3995 .loc 1 1958 9 view .LVU1384
3996 00c4 84F84020 strb r2, [r4, #64]
1958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
3997 .loc 1 1958 9 view .LVU1385
1960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3998 .loc 1 1960 9 view .LVU1386
1960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
3999 .loc 1 1960 16 is_stmt 0 view .LVU1387
4000 00c8 0120 movs r0, #1
4001 00ca 30E0 b .L270
4002 .LVL255:
4003 .L283:
1967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4004 .loc 1 1967 9 is_stmt 1 view .LVU1388
4005 00cc 1F4B ldr r3, .L284+16
4006 00ce 0093 str r3, [sp]
4007 00d0 3346 mov r3, r6
4008 00d2 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
4009 00d6 2946 mov r1, r5
4010 00d8 2046 mov r0, r4
4011 .LVL256:
1967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4012 .loc 1 1967 9 is_stmt 0 view .LVU1389
4013 00da FFF7FEFF bl I2C_TransferConfig
4014 .LVL257:
1970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4015 .loc 1 1970 9 is_stmt 1 view .LVU1390
1970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4016 .loc 1 1970 13 is_stmt 0 view .LVU1391
4017 00de 638D ldrh r3, [r4, #42]
4018 00e0 9BB2 uxth r3, r3
1970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4019 .loc 1 1970 32 view .LVU1392
4020 00e2 228D ldrh r2, [r4, #40]
1970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4021 .loc 1 1970 25 view .LVU1393
4022 00e4 9B1A subs r3, r3, r2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 221
4023 00e6 9BB2 uxth r3, r3
4024 00e8 6385 strh r3, [r4, #42] @ movhi
1973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4025 .loc 1 1973 9 is_stmt 1 view .LVU1394
1973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4026 .loc 1 1973 9 view .LVU1395
4027 00ea 0023 movs r3, #0
4028 00ec 84F84030 strb r3, [r4, #64]
1973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4029 .loc 1 1973 9 view .LVU1396
1979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4030 .loc 1 1979 9 view .LVU1397
4031 00f0 1021 movs r1, #16
4032 00f2 2046 mov r0, r4
4033 00f4 FFF7FEFF bl I2C_Enable_IRQ
4034 .LVL258:
1982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4035 .loc 1 1982 9 view .LVU1398
1982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4036 .loc 1 1982 13 is_stmt 0 view .LVU1399
4037 00f8 2268 ldr r2, [r4]
1982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4038 .loc 1 1982 23 view .LVU1400
4039 00fa 1368 ldr r3, [r2]
1982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4040 .loc 1 1982 29 view .LVU1401
4041 00fc 43F48043 orr r3, r3, #16384
4042 0100 1360 str r3, [r2]
4043 0102 11E0 b .L277
4044 .LVL259:
4045 .L273:
2002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4046 .loc 1 2002 7 is_stmt 1 view .LVU1402
2002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4047 .loc 1 2002 21 is_stmt 0 view .LVU1403
4048 0104 124B ldr r3, .L284+20
4049 0106 6363 str r3, [r4, #52]
2006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
4050 .loc 1 2006 7 is_stmt 1 view .LVU1404
4051 0108 104B ldr r3, .L284+16
4052 010a 0093 str r3, [sp]
4053 010c 4FF00073 mov r3, #33554432
4054 0110 D2B2 uxtb r2, r2
4055 0112 2946 mov r1, r5
4056 .LVL260:
2006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
4057 .loc 1 2006 7 is_stmt 0 view .LVU1405
4058 0114 2046 mov r0, r4
4059 0116 FFF7FEFF bl I2C_TransferConfig
4060 .LVL261:
2010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4061 .loc 1 2010 7 is_stmt 1 view .LVU1406
2010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4062 .loc 1 2010 7 view .LVU1407
4063 011a 0023 movs r3, #0
4064 011c 84F84030 strb r3, [r4, #64]
2010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 222
4065 .loc 1 2010 7 view .LVU1408
2019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4066 .loc 1 2019 7 view .LVU1409
4067 0120 0121 movs r1, #1
4068 0122 2046 mov r0, r4
4069 0124 FFF7FEFF bl I2C_Enable_IRQ
4070 .LVL262:
4071 .L277:
2022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4072 .loc 1 2022 5 view .LVU1410
2022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4073 .loc 1 2022 12 is_stmt 0 view .LVU1411
4074 0128 0020 movs r0, #0
4075 012a 00E0 b .L270
4076 .LVL263:
4077 .L278:
2026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4078 .loc 1 2026 12 view .LVU1412
4079 012c 0220 movs r0, #2
4080 .LVL264:
4081 .L270:
2028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4082 .loc 1 2028 1 view .LVU1413
4083 012e 02B0 add sp, sp, #8
4084 .cfi_remember_state
4085 .cfi_def_cfa_offset 16
4086 @ sp needed
4087 0130 70BD pop {r4, r5, r6, pc}
4088 .LVL265:
4089 .L279:
4090 .cfi_restore_state
1903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4091 .loc 1 1903 14 view .LVU1414
4092 0132 0220 movs r0, #2
4093 0134 FBE7 b .L270
4094 .L280:
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4095 .loc 1 1907 5 view .LVU1415
4096 0136 0220 movs r0, #2
4097 0138 F9E7 b .L270
4098 .L285:
4099 013a 00BF .align 2
4100 .L284:
4101 013c 0000FFFF .word -65536
4102 0140 00000000 .word I2C_Master_ISR_DMA
4103 0144 00000000 .word I2C_DMAMasterTransmitCplt
4104 0148 00000000 .word I2C_DMAError
4105 014c 00200080 .word -2147475456
4106 0150 00000000 .word I2C_Master_ISR_IT
4107 .cfi_endproc
4108 .LFE142:
4110 .section .text.HAL_I2C_Master_Receive_DMA,"ax",%progbits
4111 .align 1
4112 .global HAL_I2C_Master_Receive_DMA
4113 .syntax unified
4114 .thumb
4115 .thumb_func
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 223
4117 HAL_I2C_Master_Receive_DMA:
4118 .LVL266:
4119 .LFB143:
2042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
4120 .loc 1 2042 1 is_stmt 1 view -0
4121 .cfi_startproc
4122 @ args = 0, pretend = 0, frame = 0
4123 @ frame_needed = 0, uses_anonymous_args = 0
2042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
4124 .loc 1 2042 1 is_stmt 0 view .LVU1417
4125 0000 70B5 push {r4, r5, r6, lr}
4126 .cfi_def_cfa_offset 16
4127 .cfi_offset 4, -16
4128 .cfi_offset 5, -12
4129 .cfi_offset 6, -8
4130 .cfi_offset 14, -4
4131 0002 82B0 sub sp, sp, #8
4132 .cfi_def_cfa_offset 24
4133 0004 0446 mov r4, r0
2043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
4134 .loc 1 2043 3 is_stmt 1 view .LVU1418
2044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4135 .loc 1 2044 3 view .LVU1419
2046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4136 .loc 1 2046 3 view .LVU1420
2046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4137 .loc 1 2046 11 is_stmt 0 view .LVU1421
4138 0006 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
4139 .LVL267:
2046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4140 .loc 1 2046 11 view .LVU1422
4141 000a C0B2 uxtb r0, r0
2046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4142 .loc 1 2046 6 view .LVU1423
4143 000c 2028 cmp r0, #32
4144 000e 40F08C80 bne .L295
4145 0012 0D46 mov r5, r1
2048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4146 .loc 1 2048 5 is_stmt 1 view .LVU1424
2048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4147 .loc 1 2048 9 is_stmt 0 view .LVU1425
4148 0014 2168 ldr r1, [r4]
4149 .LVL268:
2048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4150 .loc 1 2048 9 view .LVU1426
4151 0016 8969 ldr r1, [r1, #24]
2048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4152 .loc 1 2048 8 view .LVU1427
4153 0018 11F4004F tst r1, #32768
4154 001c 40F08880 bne .L296
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4155 .loc 1 2054 5 is_stmt 1 view .LVU1428
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4156 .loc 1 2054 5 view .LVU1429
4157 0020 94F84010 ldrb r1, [r4, #64] @ zero_extendqisi2
4158 0024 0129 cmp r1, #1
4159 0026 00F08580 beq .L297
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 224
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4160 .loc 1 2054 5 discriminator 2 view .LVU1430
4161 002a 0121 movs r1, #1
4162 002c 84F84010 strb r1, [r4, #64]
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4163 .loc 1 2054 5 discriminator 2 view .LVU1431
2056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
4164 .loc 1 2056 5 discriminator 2 view .LVU1432
2056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
4165 .loc 1 2056 23 is_stmt 0 discriminator 2 view .LVU1433
4166 0030 2221 movs r1, #34
4167 0032 84F84110 strb r1, [r4, #65]
2057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4168 .loc 1 2057 5 is_stmt 1 discriminator 2 view .LVU1434
2057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4169 .loc 1 2057 23 is_stmt 0 discriminator 2 view .LVU1435
4170 0036 1021 movs r1, #16
4171 0038 84F84210 strb r1, [r4, #66]
2058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4172 .loc 1 2058 5 is_stmt 1 discriminator 2 view .LVU1436
2058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4173 .loc 1 2058 23 is_stmt 0 discriminator 2 view .LVU1437
4174 003c 0021 movs r1, #0
4175 003e 6164 str r1, [r4, #68]
2061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4176 .loc 1 2061 5 is_stmt 1 discriminator 2 view .LVU1438
2061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4177 .loc 1 2061 23 is_stmt 0 discriminator 2 view .LVU1439
4178 0040 6262 str r2, [r4, #36]
2062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4179 .loc 1 2062 5 is_stmt 1 discriminator 2 view .LVU1440
2062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4180 .loc 1 2062 23 is_stmt 0 discriminator 2 view .LVU1441
4181 0042 6385 strh r3, [r4, #42] @ movhi
2063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
4182 .loc 1 2063 5 is_stmt 1 discriminator 2 view .LVU1442
2063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
4183 .loc 1 2063 23 is_stmt 0 discriminator 2 view .LVU1443
4184 0044 3C4B ldr r3, .L301
4185 .LVL269:
2063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
4186 .loc 1 2063 23 discriminator 2 view .LVU1444
4187 0046 E362 str r3, [r4, #44]
4188 .LVL270:
2064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4189 .loc 1 2064 5 is_stmt 1 discriminator 2 view .LVU1445
2064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4190 .loc 1 2064 23 is_stmt 0 discriminator 2 view .LVU1446
4191 0048 3C4B ldr r3, .L301+4
4192 004a 6363 str r3, [r4, #52]
2066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4193 .loc 1 2066 5 is_stmt 1 discriminator 2 view .LVU1447
2066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4194 .loc 1 2066 13 is_stmt 0 discriminator 2 view .LVU1448
4195 004c 638D ldrh r3, [r4, #42]
4196 004e 9BB2 uxth r3, r3
2066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 225
4197 .loc 1 2066 8 discriminator 2 view .LVU1449
4198 0050 FF2B cmp r3, #255
4199 0052 27D9 bls .L288
2068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
4200 .loc 1 2068 7 is_stmt 1 view .LVU1450
2068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
4201 .loc 1 2068 22 is_stmt 0 view .LVU1451
4202 0054 FF23 movs r3, #255
4203 0056 2385 strh r3, [r4, #40] @ movhi
2069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4204 .loc 1 2069 7 is_stmt 1 view .LVU1452
4205 .LVL271:
2069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4206 .loc 1 2069 16 is_stmt 0 view .LVU1453
4207 0058 4FF08076 mov r6, #16777216
4208 .LVL272:
4209 .L289:
2077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4210 .loc 1 2077 5 is_stmt 1 view .LVU1454
2077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4211 .loc 1 2077 13 is_stmt 0 view .LVU1455
4212 005c 218D ldrh r1, [r4, #40]
2077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4213 .loc 1 2077 8 view .LVU1456
4214 005e 0029 cmp r1, #0
4215 0060 4FD0 beq .L290
2079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4216 .loc 1 2079 7 is_stmt 1 view .LVU1457
2079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4217 .loc 1 2079 15 is_stmt 0 view .LVU1458
4218 0062 E36B ldr r3, [r4, #60]
2079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4219 .loc 1 2079 10 view .LVU1459
4220 0064 1BB3 cbz r3, .L291
2082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4221 .loc 1 2082 9 is_stmt 1 view .LVU1460
2082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4222 .loc 1 2082 40 is_stmt 0 view .LVU1461
4223 0066 3649 ldr r1, .L301+8
4224 0068 9962 str r1, [r3, #40]
2085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4225 .loc 1 2085 9 is_stmt 1 view .LVU1462
2085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4226 .loc 1 2085 13 is_stmt 0 view .LVU1463
4227 006a E36B ldr r3, [r4, #60]
2085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4228 .loc 1 2085 41 view .LVU1464
4229 006c 3549 ldr r1, .L301+12
4230 006e 1963 str r1, [r3, #48]
2088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4231 .loc 1 2088 9 is_stmt 1 view .LVU1465
2088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4232 .loc 1 2088 13 is_stmt 0 view .LVU1466
4233 0070 E16B ldr r1, [r4, #60]
2088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4234 .loc 1 2088 44 view .LVU1467
4235 0072 0023 movs r3, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 226
4236 0074 CB62 str r3, [r1, #44]
2089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4237 .loc 1 2089 9 is_stmt 1 view .LVU1468
2089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4238 .loc 1 2089 13 is_stmt 0 view .LVU1469
4239 0076 E16B ldr r1, [r4, #60]
2089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4240 .loc 1 2089 41 view .LVU1470
4241 0078 4B63 str r3, [r1, #52]
2092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4242 .loc 1 2092 9 is_stmt 1 view .LVU1471
2092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4243 .loc 1 2092 71 is_stmt 0 view .LVU1472
4244 007a 2168 ldr r1, [r4]
2092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4245 .loc 1 2092 25 view .LVU1473
4246 007c 238D ldrh r3, [r4, #40]
4247 007e 2431 adds r1, r1, #36
4248 0080 E06B ldr r0, [r4, #60]
4249 0082 FFF7FEFF bl HAL_DMA_Start_IT
4250 .LVL273:
2110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4251 .loc 1 2110 7 is_stmt 1 view .LVU1474
2110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4252 .loc 1 2110 10 is_stmt 0 view .LVU1475
4253 0086 00B3 cbz r0, .L300
2134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4254 .loc 1 2134 9 is_stmt 1 view .LVU1476
2134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4255 .loc 1 2134 25 is_stmt 0 view .LVU1477
4256 0088 2023 movs r3, #32
4257 008a 84F84130 strb r3, [r4, #65]
2135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4258 .loc 1 2135 9 is_stmt 1 view .LVU1478
2135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4259 .loc 1 2135 25 is_stmt 0 view .LVU1479
4260 008e 0022 movs r2, #0
4261 0090 84F84220 strb r2, [r4, #66]
2138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4262 .loc 1 2138 9 is_stmt 1 view .LVU1480
2138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4263 .loc 1 2138 13 is_stmt 0 view .LVU1481
4264 0094 636C ldr r3, [r4, #68]
2138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4265 .loc 1 2138 25 view .LVU1482
4266 0096 43F01003 orr r3, r3, #16
4267 009a 6364 str r3, [r4, #68]
2141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4268 .loc 1 2141 9 is_stmt 1 view .LVU1483
2141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4269 .loc 1 2141 9 view .LVU1484
4270 009c 84F84020 strb r2, [r4, #64]
2141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4271 .loc 1 2141 9 view .LVU1485
2143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4272 .loc 1 2143 9 view .LVU1486
2143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 227
4273 .loc 1 2143 16 is_stmt 0 view .LVU1487
4274 00a0 0120 movs r0, #1
4275 .LVL274:
2143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4276 .loc 1 2143 16 view .LVU1488
4277 00a2 43E0 b .L287
4278 .LVL275:
4279 .L288:
2073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
4280 .loc 1 2073 7 is_stmt 1 view .LVU1489
2073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
4281 .loc 1 2073 28 is_stmt 0 view .LVU1490
4282 00a4 638D ldrh r3, [r4, #42]
2073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_AUTOEND_MODE;
4283 .loc 1 2073 22 view .LVU1491
4284 00a6 2385 strh r3, [r4, #40] @ movhi
2074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4285 .loc 1 2074 7 is_stmt 1 view .LVU1492
4286 .LVL276:
2074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4287 .loc 1 2074 16 is_stmt 0 view .LVU1493
4288 00a8 4FF00076 mov r6, #33554432
4289 00ac D6E7 b .L289
4290 .LVL277:
4291 .L291:
2098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4292 .loc 1 2098 9 is_stmt 1 view .LVU1494
2098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4293 .loc 1 2098 25 is_stmt 0 view .LVU1495
4294 00ae 2023 movs r3, #32
4295 00b0 84F84130 strb r3, [r4, #65]
2099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4296 .loc 1 2099 9 is_stmt 1 view .LVU1496
2099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4297 .loc 1 2099 25 is_stmt 0 view .LVU1497
4298 00b4 0022 movs r2, #0
4299 .LVL278:
2099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4300 .loc 1 2099 25 view .LVU1498
4301 00b6 84F84220 strb r2, [r4, #66]
2102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4302 .loc 1 2102 9 is_stmt 1 view .LVU1499
2102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4303 .loc 1 2102 13 is_stmt 0 view .LVU1500
4304 00ba 636C ldr r3, [r4, #68]
2102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4305 .loc 1 2102 25 view .LVU1501
4306 00bc 43F08003 orr r3, r3, #128
4307 00c0 6364 str r3, [r4, #68]
2105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4308 .loc 1 2105 9 is_stmt 1 view .LVU1502
2105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4309 .loc 1 2105 9 view .LVU1503
4310 00c2 84F84020 strb r2, [r4, #64]
2105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4311 .loc 1 2105 9 view .LVU1504
2107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 228
4312 .loc 1 2107 9 view .LVU1505
2107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4313 .loc 1 2107 16 is_stmt 0 view .LVU1506
4314 00c6 0120 movs r0, #1
4315 00c8 30E0 b .L287
4316 .LVL279:
4317 .L300:
2114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4318 .loc 1 2114 9 is_stmt 1 view .LVU1507
4319 00ca 1F4B ldr r3, .L301+16
4320 00cc 0093 str r3, [sp]
4321 00ce 3346 mov r3, r6
4322 00d0 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
4323 00d4 2946 mov r1, r5
4324 00d6 2046 mov r0, r4
4325 .LVL280:
2114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4326 .loc 1 2114 9 is_stmt 0 view .LVU1508
4327 00d8 FFF7FEFF bl I2C_TransferConfig
4328 .LVL281:
2117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4329 .loc 1 2117 9 is_stmt 1 view .LVU1509
2117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4330 .loc 1 2117 13 is_stmt 0 view .LVU1510
4331 00dc 638D ldrh r3, [r4, #42]
4332 00de 9BB2 uxth r3, r3
2117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4333 .loc 1 2117 32 view .LVU1511
4334 00e0 228D ldrh r2, [r4, #40]
2117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4335 .loc 1 2117 25 view .LVU1512
4336 00e2 9B1A subs r3, r3, r2
4337 00e4 9BB2 uxth r3, r3
4338 00e6 6385 strh r3, [r4, #42] @ movhi
2120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4339 .loc 1 2120 9 is_stmt 1 view .LVU1513
2120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4340 .loc 1 2120 9 view .LVU1514
4341 00e8 0023 movs r3, #0
4342 00ea 84F84030 strb r3, [r4, #64]
2120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4343 .loc 1 2120 9 view .LVU1515
2126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4344 .loc 1 2126 9 view .LVU1516
4345 00ee 1021 movs r1, #16
4346 00f0 2046 mov r0, r4
4347 00f2 FFF7FEFF bl I2C_Enable_IRQ
4348 .LVL282:
2129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4349 .loc 1 2129 9 view .LVU1517
2129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4350 .loc 1 2129 13 is_stmt 0 view .LVU1518
4351 00f6 2268 ldr r2, [r4]
2129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4352 .loc 1 2129 23 view .LVU1519
4353 00f8 1368 ldr r3, [r2]
2129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 229
4354 .loc 1 2129 29 view .LVU1520
4355 00fa 43F40043 orr r3, r3, #32768
4356 00fe 1360 str r3, [r2]
4357 0100 11E0 b .L294
4358 .LVL283:
4359 .L290:
2149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4360 .loc 1 2149 7 is_stmt 1 view .LVU1521
2149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4361 .loc 1 2149 21 is_stmt 0 view .LVU1522
4362 0102 124B ldr r3, .L301+20
4363 0104 6363 str r3, [r4, #52]
2153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
4364 .loc 1 2153 7 is_stmt 1 view .LVU1523
4365 0106 104B ldr r3, .L301+16
4366 0108 0093 str r3, [sp]
4367 010a 4FF00073 mov r3, #33554432
4368 010e CAB2 uxtb r2, r1
4369 .LVL284:
2153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
4370 .loc 1 2153 7 is_stmt 0 view .LVU1524
4371 0110 2946 mov r1, r5
4372 0112 2046 mov r0, r4
4373 0114 FFF7FEFF bl I2C_TransferConfig
4374 .LVL285:
2157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4375 .loc 1 2157 7 is_stmt 1 view .LVU1525
2157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4376 .loc 1 2157 7 view .LVU1526
4377 0118 0023 movs r3, #0
4378 011a 84F84030 strb r3, [r4, #64]
2157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4379 .loc 1 2157 7 view .LVU1527
2166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4380 .loc 1 2166 7 view .LVU1528
4381 011e 0121 movs r1, #1
4382 0120 2046 mov r0, r4
4383 0122 FFF7FEFF bl I2C_Enable_IRQ
4384 .LVL286:
4385 .L294:
2169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4386 .loc 1 2169 5 view .LVU1529
2169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4387 .loc 1 2169 12 is_stmt 0 view .LVU1530
4388 0126 0020 movs r0, #0
4389 0128 00E0 b .L287
4390 .LVL287:
4391 .L295:
2173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4392 .loc 1 2173 12 view .LVU1531
4393 012a 0220 movs r0, #2
4394 .LVL288:
4395 .L287:
2175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4396 .loc 1 2175 1 view .LVU1532
4397 012c 02B0 add sp, sp, #8
4398 .cfi_remember_state
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 230
4399 .cfi_def_cfa_offset 16
4400 @ sp needed
4401 012e 70BD pop {r4, r5, r6, pc}
4402 .LVL289:
4403 .L296:
4404 .cfi_restore_state
2050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4405 .loc 1 2050 14 view .LVU1533
4406 0130 0220 movs r0, #2
4407 0132 FBE7 b .L287
4408 .L297:
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4409 .loc 1 2054 5 view .LVU1534
4410 0134 0220 movs r0, #2
4411 0136 F9E7 b .L287
4412 .L302:
4413 .align 2
4414 .L301:
4415 0138 0000FFFF .word -65536
4416 013c 00000000 .word I2C_Master_ISR_DMA
4417 0140 00000000 .word I2C_DMAMasterReceiveCplt
4418 0144 00000000 .word I2C_DMAError
4419 0148 00240080 .word -2147474432
4420 014c 00000000 .word I2C_Master_ISR_IT
4421 .cfi_endproc
4422 .LFE143:
4424 .section .text.HAL_I2C_Slave_Transmit_DMA,"ax",%progbits
4425 .align 1
4426 .global HAL_I2C_Slave_Transmit_DMA
4427 .syntax unified
4428 .thumb
4429 .thumb_func
4431 HAL_I2C_Slave_Transmit_DMA:
4432 .LVL290:
4433 .LFB144:
2186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
4434 .loc 1 2186 1 is_stmt 1 view -0
4435 .cfi_startproc
4436 @ args = 0, pretend = 0, frame = 0
4437 @ frame_needed = 0, uses_anonymous_args = 0
2187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4438 .loc 1 2187 3 view .LVU1536
2189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4439 .loc 1 2189 3 view .LVU1537
2189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4440 .loc 1 2189 11 is_stmt 0 view .LVU1538
4441 0000 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
4442 0004 DBB2 uxtb r3, r3
2189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4443 .loc 1 2189 6 view .LVU1539
4444 0006 202B cmp r3, #32
4445 0008 40F08D80 bne .L313
2186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
4446 .loc 1 2186 1 view .LVU1540
4447 000c 10B5 push {r4, lr}
4448 .cfi_def_cfa_offset 8
4449 .cfi_offset 4, -8
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 231
4450 .cfi_offset 14, -4
4451 000e 0446 mov r4, r0
2191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4452 .loc 1 2191 5 is_stmt 1 view .LVU1541
2191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4453 .loc 1 2191 8 is_stmt 0 view .LVU1542
4454 0010 0029 cmp r1, #0
4455 0012 44D0 beq .L305
2191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4456 .loc 1 2191 25 discriminator 1 view .LVU1543
4457 0014 002A cmp r2, #0
4458 0016 42D0 beq .L305
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4459 .loc 1 2197 5 is_stmt 1 view .LVU1544
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4460 .loc 1 2197 5 view .LVU1545
4461 0018 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
4462 001c 012B cmp r3, #1
4463 001e 00F08480 beq .L314
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4464 .loc 1 2197 5 discriminator 2 view .LVU1546
4465 0022 0123 movs r3, #1
4466 0024 80F84030 strb r3, [r0, #64]
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4467 .loc 1 2197 5 discriminator 2 view .LVU1547
2199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4468 .loc 1 2199 5 discriminator 2 view .LVU1548
2199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4469 .loc 1 2199 23 is_stmt 0 discriminator 2 view .LVU1549
4470 0028 2123 movs r3, #33
4471 002a 80F84130 strb r3, [r0, #65]
2200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4472 .loc 1 2200 5 is_stmt 1 discriminator 2 view .LVU1550
2200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4473 .loc 1 2200 23 is_stmt 0 discriminator 2 view .LVU1551
4474 002e 2023 movs r3, #32
4475 0030 80F84230 strb r3, [r0, #66]
2201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4476 .loc 1 2201 5 is_stmt 1 discriminator 2 view .LVU1552
2201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4477 .loc 1 2201 23 is_stmt 0 discriminator 2 view .LVU1553
4478 0034 0023 movs r3, #0
4479 0036 4364 str r3, [r0, #68]
2204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4480 .loc 1 2204 5 is_stmt 1 discriminator 2 view .LVU1554
2204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4481 .loc 1 2204 23 is_stmt 0 discriminator 2 view .LVU1555
4482 0038 4162 str r1, [r0, #36]
2205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4483 .loc 1 2205 5 is_stmt 1 discriminator 2 view .LVU1556
2205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4484 .loc 1 2205 23 is_stmt 0 discriminator 2 view .LVU1557
4485 003a 4285 strh r2, [r0, #42] @ movhi
2206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4486 .loc 1 2206 5 is_stmt 1 discriminator 2 view .LVU1558
2206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4487 .loc 1 2206 29 is_stmt 0 discriminator 2 view .LVU1559
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 232
4488 003c 438D ldrh r3, [r0, #42]
2206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4489 .loc 1 2206 23 discriminator 2 view .LVU1560
4490 003e 0385 strh r3, [r0, #40] @ movhi
2207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
4491 .loc 1 2207 5 is_stmt 1 discriminator 2 view .LVU1561
2207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
4492 .loc 1 2207 23 is_stmt 0 discriminator 2 view .LVU1562
4493 0040 3B4B ldr r3, .L322
4494 0042 C362 str r3, [r0, #44]
2208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4495 .loc 1 2208 5 is_stmt 1 discriminator 2 view .LVU1563
2208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4496 .loc 1 2208 23 is_stmt 0 discriminator 2 view .LVU1564
4497 0044 3B4B ldr r3, .L322+4
4498 0046 4363 str r3, [r0, #52]
2211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4499 .loc 1 2211 5 is_stmt 1 discriminator 2 view .LVU1565
2211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4500 .loc 1 2211 19 is_stmt 0 discriminator 2 view .LVU1566
4501 0048 036A ldr r3, [r0, #32]
2211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4502 .loc 1 2211 8 discriminator 2 view .LVU1567
4503 004a B3F5003F cmp r3, #131072
4504 004e 2BD0 beq .L320
4505 .LVL291:
4506 .L307:
2224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4507 .loc 1 2224 5 is_stmt 1 view .LVU1568
2224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4508 .loc 1 2224 13 is_stmt 0 view .LVU1569
4509 0050 638D ldrh r3, [r4, #42]
4510 0052 9BB2 uxth r3, r3
2224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4511 .loc 1 2224 8 view .LVU1570
4512 0054 002B cmp r3, #0
4513 0056 57D0 beq .L308
2226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4514 .loc 1 2226 7 is_stmt 1 view .LVU1571
2226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4515 .loc 1 2226 15 is_stmt 0 view .LVU1572
4516 0058 A36B ldr r3, [r4, #56]
2226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4517 .loc 1 2226 10 view .LVU1573
4518 005a 002B cmp r3, #0
4519 005c 33D0 beq .L309
2229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4520 .loc 1 2229 9 is_stmt 1 view .LVU1574
2229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4521 .loc 1 2229 40 is_stmt 0 view .LVU1575
4522 005e 364A ldr r2, .L322+8
4523 0060 9A62 str r2, [r3, #40]
2232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4524 .loc 1 2232 9 is_stmt 1 view .LVU1576
2232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4525 .loc 1 2232 13 is_stmt 0 view .LVU1577
4526 0062 A36B ldr r3, [r4, #56]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 233
2232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4527 .loc 1 2232 41 view .LVU1578
4528 0064 354A ldr r2, .L322+12
4529 0066 1A63 str r2, [r3, #48]
2235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
4530 .loc 1 2235 9 is_stmt 1 view .LVU1579
2235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
4531 .loc 1 2235 13 is_stmt 0 view .LVU1580
4532 0068 A26B ldr r2, [r4, #56]
2235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
4533 .loc 1 2235 44 view .LVU1581
4534 006a 0023 movs r3, #0
4535 006c D362 str r3, [r2, #44]
2236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4536 .loc 1 2236 9 is_stmt 1 view .LVU1582
2236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4537 .loc 1 2236 13 is_stmt 0 view .LVU1583
4538 006e A26B ldr r2, [r4, #56]
2236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4539 .loc 1 2236 41 view .LVU1584
4540 0070 5363 str r3, [r2, #52]
2239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)hi2c->pBuffPtr, (uint32_t)&hi2c->Instance->TXDR,
4541 .loc 1 2239 9 is_stmt 1 view .LVU1585
2240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4542 .loc 1 2240 83 is_stmt 0 view .LVU1586
4543 0072 2268 ldr r2, [r4]
2239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)hi2c->pBuffPtr, (uint32_t)&hi2c->Instance->TXDR,
4544 .loc 1 2239 25 view .LVU1587
4545 0074 238D ldrh r3, [r4, #40]
4546 0076 2832 adds r2, r2, #40
4547 0078 616A ldr r1, [r4, #36]
4548 .LVL292:
2239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)hi2c->pBuffPtr, (uint32_t)&hi2c->Instance->TXDR,
4549 .loc 1 2239 25 view .LVU1588
4550 007a A06B ldr r0, [r4, #56]
4551 .LVL293:
2239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)hi2c->pBuffPtr, (uint32_t)&hi2c->Instance->TXDR,
4552 .loc 1 2239 25 view .LVU1589
4553 007c FFF7FEFF bl HAL_DMA_Start_IT
4554 .LVL294:
2258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4555 .loc 1 2258 7 is_stmt 1 view .LVU1590
2258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4556 .loc 1 2258 10 is_stmt 0 view .LVU1591
4557 0080 78B3 cbz r0, .L321
2278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4558 .loc 1 2278 9 is_stmt 1 view .LVU1592
2278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4559 .loc 1 2278 25 is_stmt 0 view .LVU1593
4560 0082 2823 movs r3, #40
4561 0084 84F84130 strb r3, [r4, #65]
2279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4562 .loc 1 2279 9 is_stmt 1 view .LVU1594
2279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4563 .loc 1 2279 25 is_stmt 0 view .LVU1595
4564 0088 0022 movs r2, #0
4565 008a 84F84220 strb r2, [r4, #66]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 234
2282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4566 .loc 1 2282 9 is_stmt 1 view .LVU1596
2282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4567 .loc 1 2282 13 is_stmt 0 view .LVU1597
4568 008e 636C ldr r3, [r4, #68]
2282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4569 .loc 1 2282 25 view .LVU1598
4570 0090 43F01003 orr r3, r3, #16
4571 0094 6364 str r3, [r4, #68]
2285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4572 .loc 1 2285 9 is_stmt 1 view .LVU1599
2285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4573 .loc 1 2285 9 view .LVU1600
4574 0096 84F84020 strb r2, [r4, #64]
2285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4575 .loc 1 2285 9 view .LVU1601
2287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4576 .loc 1 2287 9 view .LVU1602
2287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4577 .loc 1 2287 16 is_stmt 0 view .LVU1603
4578 009a 0120 movs r0, #1
4579 .LVL295:
2287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4580 .loc 1 2287 16 view .LVU1604
4581 009c 03E0 b .L304
4582 .LVL296:
4583 .L305:
2193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4584 .loc 1 2193 7 is_stmt 1 view .LVU1605
2193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4585 .loc 1 2193 23 is_stmt 0 view .LVU1606
4586 009e 4FF40073 mov r3, #512
4587 00a2 6364 str r3, [r4, #68]
2194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4588 .loc 1 2194 7 is_stmt 1 view .LVU1607
2194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4589 .loc 1 2194 15 is_stmt 0 view .LVU1608
4590 00a4 0120 movs r0, #1
4591 .LVL297:
4592 .L304:
2311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4593 .loc 1 2311 1 view .LVU1609
4594 00a6 10BD pop {r4, pc}
4595 .LVL298:
4596 .L320:
2215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4597 .loc 1 2215 7 is_stmt 1 view .LVU1610
2215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4598 .loc 1 2215 11 is_stmt 0 view .LVU1611
4599 00a8 0368 ldr r3, [r0]
2215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4600 .loc 1 2215 30 view .LVU1612
4601 00aa 0A78 ldrb r2, [r1] @ zero_extendqisi2
4602 .LVL299:
2215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4603 .loc 1 2215 28 view .LVU1613
4604 00ac 9A62 str r2, [r3, #40]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 235
2218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4605 .loc 1 2218 7 is_stmt 1 view .LVU1614
2218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4606 .loc 1 2218 11 is_stmt 0 view .LVU1615
4607 00ae 436A ldr r3, [r0, #36]
2218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4608 .loc 1 2218 21 view .LVU1616
4609 00b0 0133 adds r3, r3, #1
4610 00b2 4362 str r3, [r0, #36]
2220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
4611 .loc 1 2220 7 is_stmt 1 view .LVU1617
2220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
4612 .loc 1 2220 11 is_stmt 0 view .LVU1618
4613 00b4 438D ldrh r3, [r0, #42]
4614 00b6 9BB2 uxth r3, r3
2220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
4615 .loc 1 2220 22 view .LVU1619
4616 00b8 013B subs r3, r3, #1
4617 00ba 9BB2 uxth r3, r3
4618 00bc 4385 strh r3, [r0, #42] @ movhi
2221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4619 .loc 1 2221 7 is_stmt 1 view .LVU1620
2221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4620 .loc 1 2221 11 is_stmt 0 view .LVU1621
4621 00be 038D ldrh r3, [r0, #40]
2221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4622 .loc 1 2221 21 view .LVU1622
4623 00c0 013B subs r3, r3, #1
4624 00c2 0385 strh r3, [r0, #40] @ movhi
4625 00c4 C4E7 b .L307
4626 .L309:
2246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4627 .loc 1 2246 9 is_stmt 1 view .LVU1623
2246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4628 .loc 1 2246 25 is_stmt 0 view .LVU1624
4629 00c6 2823 movs r3, #40
4630 00c8 84F84130 strb r3, [r4, #65]
2247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4631 .loc 1 2247 9 is_stmt 1 view .LVU1625
2247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4632 .loc 1 2247 25 is_stmt 0 view .LVU1626
4633 00cc 0022 movs r2, #0
4634 00ce 84F84220 strb r2, [r4, #66]
2250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4635 .loc 1 2250 9 is_stmt 1 view .LVU1627
2250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4636 .loc 1 2250 13 is_stmt 0 view .LVU1628
4637 00d2 636C ldr r3, [r4, #68]
2250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4638 .loc 1 2250 25 view .LVU1629
4639 00d4 43F08003 orr r3, r3, #128
4640 00d8 6364 str r3, [r4, #68]
2253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4641 .loc 1 2253 9 is_stmt 1 view .LVU1630
2253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4642 .loc 1 2253 9 view .LVU1631
4643 00da 84F84020 strb r2, [r4, #64]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 236
2253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4644 .loc 1 2253 9 view .LVU1632
2255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4645 .loc 1 2255 9 view .LVU1633
2255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4646 .loc 1 2255 16 is_stmt 0 view .LVU1634
4647 00de 0120 movs r0, #1
4648 .LVL300:
2255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4649 .loc 1 2255 16 view .LVU1635
4650 00e0 E1E7 b .L304
4651 .LVL301:
4652 .L321:
2261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4653 .loc 1 2261 9 is_stmt 1 view .LVU1636
2261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4654 .loc 1 2261 13 is_stmt 0 view .LVU1637
4655 00e2 2268 ldr r2, [r4]
2261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4656 .loc 1 2261 23 view .LVU1638
4657 00e4 5368 ldr r3, [r2, #4]
2261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4658 .loc 1 2261 29 view .LVU1639
4659 00e6 23F40043 bic r3, r3, #32768
4660 00ea 5360 str r3, [r2, #4]
2264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4661 .loc 1 2264 9 is_stmt 1 view .LVU1640
2264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4662 .loc 1 2264 9 view .LVU1641
4663 00ec 0023 movs r3, #0
4664 00ee 84F84030 strb r3, [r4, #64]
2264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4665 .loc 1 2264 9 view .LVU1642
2270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4666 .loc 1 2270 9 view .LVU1643
4667 00f2 4FF40041 mov r1, #32768
4668 00f6 2046 mov r0, r4
4669 .LVL302:
2270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4670 .loc 1 2270 9 is_stmt 0 view .LVU1644
4671 00f8 FFF7FEFF bl I2C_Enable_IRQ
4672 .LVL303:
2273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4673 .loc 1 2273 9 is_stmt 1 view .LVU1645
2273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4674 .loc 1 2273 13 is_stmt 0 view .LVU1646
4675 00fc 2268 ldr r2, [r4]
2273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4676 .loc 1 2273 23 view .LVU1647
4677 00fe 1368 ldr r3, [r2]
2273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4678 .loc 1 2273 29 view .LVU1648
4679 0100 43F48043 orr r3, r3, #16384
4680 0104 1360 str r3, [r2]
4681 0106 0CE0 b .L312
4682 .LVL304:
4683 .L308:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 237
2293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4684 .loc 1 2293 7 is_stmt 1 view .LVU1649
2293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4685 .loc 1 2293 11 is_stmt 0 view .LVU1650
4686 0108 2268 ldr r2, [r4]
2293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4687 .loc 1 2293 21 view .LVU1651
4688 010a 5368 ldr r3, [r2, #4]
2293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4689 .loc 1 2293 27 view .LVU1652
4690 010c 23F40043 bic r3, r3, #32768
4691 0110 5360 str r3, [r2, #4]
2296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4692 .loc 1 2296 7 is_stmt 1 view .LVU1653
2296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4693 .loc 1 2296 7 view .LVU1654
4694 0112 0023 movs r3, #0
4695 0114 84F84030 strb r3, [r4, #64]
2296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4696 .loc 1 2296 7 view .LVU1655
2302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4697 .loc 1 2302 7 view .LVU1656
4698 0118 4FF40041 mov r1, #32768
4699 .LVL305:
2302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4700 .loc 1 2302 7 is_stmt 0 view .LVU1657
4701 011c 2046 mov r0, r4
4702 .LVL306:
2302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4703 .loc 1 2302 7 view .LVU1658
4704 011e FFF7FEFF bl I2C_Enable_IRQ
4705 .LVL307:
4706 .L312:
2305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4707 .loc 1 2305 5 is_stmt 1 view .LVU1659
2305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4708 .loc 1 2305 12 is_stmt 0 view .LVU1660
4709 0122 0020 movs r0, #0
4710 0124 BFE7 b .L304
4711 .LVL308:
4712 .L313:
4713 .cfi_def_cfa_offset 0
4714 .cfi_restore 4
4715 .cfi_restore 14
2309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4716 .loc 1 2309 12 view .LVU1661
4717 0126 0220 movs r0, #2
4718 .LVL309:
2311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4719 .loc 1 2311 1 view .LVU1662
4720 0128 7047 bx lr
4721 .LVL310:
4722 .L314:
4723 .cfi_def_cfa_offset 8
4724 .cfi_offset 4, -8
4725 .cfi_offset 14, -4
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 238
4726 .loc 1 2197 5 view .LVU1663
4727 012a 0220 movs r0, #2
4728 .LVL311:
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4729 .loc 1 2197 5 view .LVU1664
4730 012c BBE7 b .L304
4731 .L323:
4732 012e 00BF .align 2
4733 .L322:
4734 0130 0000FFFF .word -65536
4735 0134 00000000 .word I2C_Slave_ISR_DMA
4736 0138 00000000 .word I2C_DMASlaveTransmitCplt
4737 013c 00000000 .word I2C_DMAError
4738 .cfi_endproc
4739 .LFE144:
4741 .section .text.HAL_I2C_Slave_Receive_DMA,"ax",%progbits
4742 .align 1
4743 .global HAL_I2C_Slave_Receive_DMA
4744 .syntax unified
4745 .thumb
4746 .thumb_func
4748 HAL_I2C_Slave_Receive_DMA:
4749 .LVL312:
4750 .LFB145:
2322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
4751 .loc 1 2322 1 is_stmt 1 view -0
4752 .cfi_startproc
4753 @ args = 0, pretend = 0, frame = 0
4754 @ frame_needed = 0, uses_anonymous_args = 0
2322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
4755 .loc 1 2322 1 is_stmt 0 view .LVU1666
4756 0000 38B5 push {r3, r4, r5, lr}
4757 .cfi_def_cfa_offset 16
4758 .cfi_offset 3, -16
4759 .cfi_offset 4, -12
4760 .cfi_offset 5, -8
4761 .cfi_offset 14, -4
2323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4762 .loc 1 2323 3 is_stmt 1 view .LVU1667
2325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4763 .loc 1 2325 3 view .LVU1668
2325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4764 .loc 1 2325 11 is_stmt 0 view .LVU1669
4765 0002 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
4766 0006 DBB2 uxtb r3, r3
2325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4767 .loc 1 2325 6 view .LVU1670
4768 0008 202B cmp r3, #32
4769 000a 65D1 bne .L331
4770 000c 0446 mov r4, r0
2327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4771 .loc 1 2327 5 is_stmt 1 view .LVU1671
2327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4772 .loc 1 2327 8 is_stmt 0 view .LVU1672
4773 000e 0029 cmp r1, #0
4774 0010 3CD0 beq .L326
2327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 239
4775 .loc 1 2327 25 discriminator 1 view .LVU1673
4776 0012 002A cmp r2, #0
4777 0014 3AD0 beq .L326
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4778 .loc 1 2333 5 is_stmt 1 view .LVU1674
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4779 .loc 1 2333 5 view .LVU1675
4780 0016 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
4781 001a 012B cmp r3, #1
4782 001c 5FD0 beq .L332
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4783 .loc 1 2333 5 discriminator 2 view .LVU1676
4784 001e 0123 movs r3, #1
4785 0020 80F84030 strb r3, [r0, #64]
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4786 .loc 1 2333 5 discriminator 2 view .LVU1677
2335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4787 .loc 1 2335 5 discriminator 2 view .LVU1678
2335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
4788 .loc 1 2335 23 is_stmt 0 discriminator 2 view .LVU1679
4789 0024 2223 movs r3, #34
4790 0026 80F84130 strb r3, [r0, #65]
2336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4791 .loc 1 2336 5 is_stmt 1 discriminator 2 view .LVU1680
2336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
4792 .loc 1 2336 23 is_stmt 0 discriminator 2 view .LVU1681
4793 002a 2023 movs r3, #32
4794 002c 80F84230 strb r3, [r0, #66]
2337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4795 .loc 1 2337 5 is_stmt 1 discriminator 2 view .LVU1682
2337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4796 .loc 1 2337 23 is_stmt 0 discriminator 2 view .LVU1683
4797 0030 0023 movs r3, #0
4798 0032 4364 str r3, [r0, #68]
2340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4799 .loc 1 2340 5 is_stmt 1 discriminator 2 view .LVU1684
2340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
4800 .loc 1 2340 23 is_stmt 0 discriminator 2 view .LVU1685
4801 0034 4162 str r1, [r0, #36]
2341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4802 .loc 1 2341 5 is_stmt 1 discriminator 2 view .LVU1686
2341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
4803 .loc 1 2341 23 is_stmt 0 discriminator 2 view .LVU1687
4804 0036 4285 strh r2, [r0, #42] @ movhi
2342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4805 .loc 1 2342 5 is_stmt 1 discriminator 2 view .LVU1688
2342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4806 .loc 1 2342 29 is_stmt 0 discriminator 2 view .LVU1689
4807 0038 438D ldrh r3, [r0, #42]
2342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
4808 .loc 1 2342 23 discriminator 2 view .LVU1690
4809 003a 0385 strh r3, [r0, #40] @ movhi
2343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
4810 .loc 1 2343 5 is_stmt 1 discriminator 2 view .LVU1691
2343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
4811 .loc 1 2343 23 is_stmt 0 discriminator 2 view .LVU1692
4812 003c 294B ldr r3, .L336
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 240
4813 003e C362 str r3, [r0, #44]
2344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4814 .loc 1 2344 5 is_stmt 1 discriminator 2 view .LVU1693
2344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4815 .loc 1 2344 23 is_stmt 0 discriminator 2 view .LVU1694
4816 0040 294B ldr r3, .L336+4
4817 0042 4363 str r3, [r0, #52]
2346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4818 .loc 1 2346 5 is_stmt 1 discriminator 2 view .LVU1695
2346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4819 .loc 1 2346 13 is_stmt 0 discriminator 2 view .LVU1696
4820 0044 C36B ldr r3, [r0, #60]
2346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4821 .loc 1 2346 8 discriminator 2 view .LVU1697
4822 0046 33B3 cbz r3, .L328
2349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4823 .loc 1 2349 7 is_stmt 1 view .LVU1698
2349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4824 .loc 1 2349 38 is_stmt 0 view .LVU1699
4825 0048 284A ldr r2, .L336+8
4826 .LVL313:
2349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4827 .loc 1 2349 38 view .LVU1700
4828 004a 9A62 str r2, [r3, #40]
2352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4829 .loc 1 2352 7 is_stmt 1 view .LVU1701
2352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4830 .loc 1 2352 11 is_stmt 0 view .LVU1702
4831 004c C36B ldr r3, [r0, #60]
2352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4832 .loc 1 2352 39 view .LVU1703
4833 004e 284A ldr r2, .L336+12
4834 0050 1A63 str r2, [r3, #48]
2355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4835 .loc 1 2355 7 is_stmt 1 view .LVU1704
2355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4836 .loc 1 2355 11 is_stmt 0 view .LVU1705
4837 0052 C26B ldr r2, [r0, #60]
2355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
4838 .loc 1 2355 42 view .LVU1706
4839 0054 0023 movs r3, #0
4840 0056 D362 str r3, [r2, #44]
2356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4841 .loc 1 2356 7 is_stmt 1 view .LVU1707
2356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4842 .loc 1 2356 11 is_stmt 0 view .LVU1708
4843 0058 C26B ldr r2, [r0, #60]
2356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4844 .loc 1 2356 39 view .LVU1709
4845 005a 5363 str r3, [r2, #52]
2359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4846 .loc 1 2359 7 is_stmt 1 view .LVU1710
2359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4847 .loc 1 2359 69 is_stmt 0 view .LVU1711
4848 005c 0068 ldr r0, [r0]
4849 .LVL314:
2359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 241
4850 .loc 1 2359 23 view .LVU1712
4851 005e 238D ldrh r3, [r4, #40]
4852 0060 0A46 mov r2, r1
4853 0062 00F12401 add r1, r0, #36
4854 .LVL315:
2359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
4855 .loc 1 2359 23 view .LVU1713
4856 0066 E06B ldr r0, [r4, #60]
4857 0068 FFF7FEFF bl HAL_DMA_Start_IT
4858 .LVL316:
2377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4859 .loc 1 2377 5 is_stmt 1 view .LVU1714
2377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
4860 .loc 1 2377 8 is_stmt 0 view .LVU1715
4861 006c 0546 mov r5, r0
4862 006e 00B3 cbz r0, .L335
2397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4863 .loc 1 2397 7 is_stmt 1 view .LVU1716
2397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4864 .loc 1 2397 23 is_stmt 0 view .LVU1717
4865 0070 2823 movs r3, #40
4866 0072 84F84130 strb r3, [r4, #65]
2398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4867 .loc 1 2398 7 is_stmt 1 view .LVU1718
2398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4868 .loc 1 2398 23 is_stmt 0 view .LVU1719
4869 0076 0022 movs r2, #0
4870 0078 84F84220 strb r2, [r4, #66]
2401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4871 .loc 1 2401 7 is_stmt 1 view .LVU1720
2401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4872 .loc 1 2401 11 is_stmt 0 view .LVU1721
4873 007c 636C ldr r3, [r4, #68]
2401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4874 .loc 1 2401 23 view .LVU1722
4875 007e 43F01003 orr r3, r3, #16
4876 0082 6364 str r3, [r4, #68]
2404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4877 .loc 1 2404 7 is_stmt 1 view .LVU1723
2404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4878 .loc 1 2404 7 view .LVU1724
4879 0084 84F84020 strb r2, [r4, #64]
2404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4880 .loc 1 2404 7 view .LVU1725
2406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4881 .loc 1 2406 7 view .LVU1726
2406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4882 .loc 1 2406 14 is_stmt 0 view .LVU1727
4883 0088 0125 movs r5, #1
4884 008a 26E0 b .L325
4885 .LVL317:
4886 .L326:
2329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4887 .loc 1 2329 7 is_stmt 1 view .LVU1728
2329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
4888 .loc 1 2329 23 is_stmt 0 view .LVU1729
4889 008c 4FF40073 mov r3, #512
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 242
4890 0090 6364 str r3, [r4, #68]
2330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4891 .loc 1 2330 7 is_stmt 1 view .LVU1730
2330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4892 .loc 1 2330 15 is_stmt 0 view .LVU1731
4893 0092 0125 movs r5, #1
4894 0094 21E0 b .L325
4895 .L328:
2365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4896 .loc 1 2365 7 is_stmt 1 view .LVU1732
2365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
4897 .loc 1 2365 23 is_stmt 0 view .LVU1733
4898 0096 2823 movs r3, #40
4899 0098 80F84130 strb r3, [r0, #65]
2366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4900 .loc 1 2366 7 is_stmt 1 view .LVU1734
2366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4901 .loc 1 2366 23 is_stmt 0 view .LVU1735
4902 009c 0022 movs r2, #0
4903 .LVL318:
2366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4904 .loc 1 2366 23 view .LVU1736
4905 009e 80F84220 strb r2, [r0, #66]
2369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4906 .loc 1 2369 7 is_stmt 1 view .LVU1737
2369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4907 .loc 1 2369 11 is_stmt 0 view .LVU1738
4908 00a2 436C ldr r3, [r0, #68]
2369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4909 .loc 1 2369 23 view .LVU1739
4910 00a4 43F08003 orr r3, r3, #128
4911 00a8 4364 str r3, [r0, #68]
2372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4912 .loc 1 2372 7 is_stmt 1 view .LVU1740
2372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4913 .loc 1 2372 7 view .LVU1741
4914 00aa 80F84020 strb r2, [r0, #64]
2372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4915 .loc 1 2372 7 view .LVU1742
2374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4916 .loc 1 2374 7 view .LVU1743
2374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4917 .loc 1 2374 14 is_stmt 0 view .LVU1744
4918 00ae 0125 movs r5, #1
4919 00b0 13E0 b .L325
4920 .LVL319:
4921 .L335:
2380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4922 .loc 1 2380 7 is_stmt 1 view .LVU1745
2380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4923 .loc 1 2380 11 is_stmt 0 view .LVU1746
4924 00b2 2268 ldr r2, [r4]
2380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4925 .loc 1 2380 21 view .LVU1747
4926 00b4 5368 ldr r3, [r2, #4]
2380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4927 .loc 1 2380 27 view .LVU1748
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 243
4928 00b6 23F40043 bic r3, r3, #32768
4929 00ba 5360 str r3, [r2, #4]
2383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4930 .loc 1 2383 7 is_stmt 1 view .LVU1749
2383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4931 .loc 1 2383 7 view .LVU1750
4932 00bc 0023 movs r3, #0
4933 00be 84F84030 strb r3, [r4, #64]
2383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4934 .loc 1 2383 7 view .LVU1751
2389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4935 .loc 1 2389 7 view .LVU1752
4936 00c2 4FF40041 mov r1, #32768
4937 00c6 2046 mov r0, r4
4938 .LVL320:
2389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4939 .loc 1 2389 7 is_stmt 0 view .LVU1753
4940 00c8 FFF7FEFF bl I2C_Enable_IRQ
4941 .LVL321:
2392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4942 .loc 1 2392 7 is_stmt 1 view .LVU1754
2392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4943 .loc 1 2392 11 is_stmt 0 view .LVU1755
4944 00cc 2268 ldr r2, [r4]
2392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4945 .loc 1 2392 21 view .LVU1756
4946 00ce 1368 ldr r3, [r2]
2392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4947 .loc 1 2392 27 view .LVU1757
4948 00d0 43F40043 orr r3, r3, #32768
4949 00d4 1360 str r3, [r2]
2409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4950 .loc 1 2409 5 is_stmt 1 view .LVU1758
2409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4951 .loc 1 2409 12 is_stmt 0 view .LVU1759
4952 00d6 00E0 b .L325
4953 .LVL322:
4954 .L331:
2413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
4955 .loc 1 2413 12 view .LVU1760
4956 00d8 0225 movs r5, #2
4957 .LVL323:
4958 .L325:
2415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4959 .loc 1 2415 1 view .LVU1761
4960 00da 2846 mov r0, r5
4961 00dc 38BD pop {r3, r4, r5, pc}
4962 .LVL324:
4963 .L332:
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
4964 .loc 1 2333 5 view .LVU1762
4965 00de 0225 movs r5, #2
4966 00e0 FBE7 b .L325
4967 .L337:
4968 00e2 00BF .align 2
4969 .L336:
4970 00e4 0000FFFF .word -65536
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 244
4971 00e8 00000000 .word I2C_Slave_ISR_DMA
4972 00ec 00000000 .word I2C_DMASlaveReceiveCplt
4973 00f0 00000000 .word I2C_DMAError
4974 .cfi_endproc
4975 .LFE145:
4977 .section .text.HAL_I2C_Mem_Write,"ax",%progbits
4978 .align 1
4979 .global HAL_I2C_Mem_Write
4980 .syntax unified
4981 .thumb
4982 .thumb_func
4984 HAL_I2C_Mem_Write:
4985 .LVL325:
4986 .LFB146:
2432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
4987 .loc 1 2432 1 is_stmt 1 view -0
4988 .cfi_startproc
4989 @ args = 12, pretend = 0, frame = 0
4990 @ frame_needed = 0, uses_anonymous_args = 0
2432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
4991 .loc 1 2432 1 is_stmt 0 view .LVU1764
4992 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
4993 .cfi_def_cfa_offset 36
4994 .cfi_offset 4, -36
4995 .cfi_offset 5, -32
4996 .cfi_offset 6, -28
4997 .cfi_offset 7, -24
4998 .cfi_offset 8, -20
4999 .cfi_offset 9, -16
5000 .cfi_offset 10, -12
5001 .cfi_offset 11, -8
5002 .cfi_offset 14, -4
5003 0004 83B0 sub sp, sp, #12
5004 .cfi_def_cfa_offset 48
5005 0006 0E46 mov r6, r1
5006 0008 BDF834A0 ldrh r10, [sp, #52]
5007 000c 0E9D ldr r5, [sp, #56]
2433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5008 .loc 1 2433 3 is_stmt 1 view .LVU1765
2436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5009 .loc 1 2436 3 view .LVU1766
2438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5010 .loc 1 2438 3 view .LVU1767
2438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5011 .loc 1 2438 11 is_stmt 0 view .LVU1768
5012 000e 90F84110 ldrb r1, [r0, #65] @ zero_extendqisi2
5013 .LVL326:
2438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5014 .loc 1 2438 11 view .LVU1769
5015 0012 C9B2 uxtb r1, r1
2438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5016 .loc 1 2438 6 view .LVU1770
5017 0014 2029 cmp r1, #32
5018 0016 40F0BB80 bne .L348
5019 001a 0446 mov r4, r0
5020 001c 9046 mov r8, r2
5021 001e 9946 mov r9, r3
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 245
2440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5022 .loc 1 2440 5 is_stmt 1 view .LVU1771
2440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5023 .loc 1 2440 8 is_stmt 0 view .LVU1772
5024 0020 0C9B ldr r3, [sp, #48]
5025 .LVL327:
2440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5026 .loc 1 2440 8 view .LVU1773
5027 0022 CBB1 cbz r3, .L340
2440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5028 .loc 1 2440 25 discriminator 1 view .LVU1774
5029 0024 BAF1000F cmp r10, #0
5030 0028 16D0 beq .L340
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5031 .loc 1 2447 5 is_stmt 1 view .LVU1775
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5032 .loc 1 2447 5 view .LVU1776
5033 002a 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
5034 002e 012B cmp r3, #1
5035 0030 00F0B280 beq .L349
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5036 .loc 1 2447 5 discriminator 2 view .LVU1777
5037 0034 4FF0010B mov fp, #1
5038 0038 80F840B0 strb fp, [r0, #64]
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5039 .loc 1 2447 5 discriminator 2 view .LVU1778
2450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5040 .loc 1 2450 5 discriminator 2 view .LVU1779
2450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5041 .loc 1 2450 17 is_stmt 0 discriminator 2 view .LVU1780
5042 003c FFF7FEFF bl HAL_GetTick
5043 .LVL328:
2450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5044 .loc 1 2450 17 discriminator 2 view .LVU1781
5045 0040 0746 mov r7, r0
5046 .LVL329:
2452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5047 .loc 1 2452 5 is_stmt 1 discriminator 2 view .LVU1782
2452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5048 .loc 1 2452 9 is_stmt 0 discriminator 2 view .LVU1783
5049 0042 0090 str r0, [sp]
5050 0044 1923 movs r3, #25
5051 0046 5A46 mov r2, fp
5052 0048 4FF40041 mov r1, #32768
5053 004c 2046 mov r0, r4
5054 .LVL330:
2452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5055 .loc 1 2452 9 discriminator 2 view .LVU1784
5056 004e FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
5057 .LVL331:
2452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5058 .loc 1 2452 8 discriminator 2 view .LVU1785
5059 0052 30B1 cbz r0, .L355
2454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5060 .loc 1 2454 14 view .LVU1786
5061 0054 0120 movs r0, #1
5062 0056 9CE0 b .L339
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 246
5063 .LVL332:
5064 .L340:
2442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5065 .loc 1 2442 7 is_stmt 1 view .LVU1787
2442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5066 .loc 1 2442 23 is_stmt 0 view .LVU1788
5067 0058 4FF40073 mov r3, #512
5068 005c 6364 str r3, [r4, #68]
2443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5069 .loc 1 2443 7 is_stmt 1 view .LVU1789
2443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5070 .loc 1 2443 15 is_stmt 0 view .LVU1790
5071 005e 0120 movs r0, #1
5072 .LVL333:
2443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5073 .loc 1 2443 15 view .LVU1791
5074 0060 97E0 b .L339
5075 .LVL334:
5076 .L355:
2457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5077 .loc 1 2457 5 is_stmt 1 view .LVU1792
2457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5078 .loc 1 2457 21 is_stmt 0 view .LVU1793
5079 0062 2123 movs r3, #33
5080 0064 84F84130 strb r3, [r4, #65]
2458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5081 .loc 1 2458 5 is_stmt 1 view .LVU1794
2458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5082 .loc 1 2458 21 is_stmt 0 view .LVU1795
5083 0068 4023 movs r3, #64
5084 006a 84F84230 strb r3, [r4, #66]
2459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5085 .loc 1 2459 5 is_stmt 1 view .LVU1796
2459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5086 .loc 1 2459 21 is_stmt 0 view .LVU1797
5087 006e 0023 movs r3, #0
5088 0070 6364 str r3, [r4, #68]
2462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5089 .loc 1 2462 5 is_stmt 1 view .LVU1798
2462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5090 .loc 1 2462 21 is_stmt 0 view .LVU1799
5091 0072 0C9A ldr r2, [sp, #48]
5092 0074 6262 str r2, [r4, #36]
2463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
5093 .loc 1 2463 5 is_stmt 1 view .LVU1800
2463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
5094 .loc 1 2463 21 is_stmt 0 view .LVU1801
5095 0076 A4F82AA0 strh r10, [r4, #42] @ movhi
2464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5096 .loc 1 2464 5 is_stmt 1 view .LVU1802
2464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5097 .loc 1 2464 21 is_stmt 0 view .LVU1803
5098 007a 6363 str r3, [r4, #52]
2467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5099 .loc 1 2467 5 is_stmt 1 view .LVU1804
2467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5100 .loc 1 2467 9 is_stmt 0 view .LVU1805
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 247
5101 007c 0197 str r7, [sp, #4]
5102 007e 0095 str r5, [sp]
5103 0080 4B46 mov r3, r9
5104 0082 4246 mov r2, r8
5105 0084 3146 mov r1, r6
5106 0086 2046 mov r0, r4
5107 0088 FFF7FEFF bl I2C_RequestMemoryWrite
5108 .LVL335:
2467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5109 .loc 1 2467 8 view .LVU1806
5110 008c 70B9 cbnz r0, .L356
2475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5111 .loc 1 2475 5 is_stmt 1 view .LVU1807
2475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5112 .loc 1 2475 13 is_stmt 0 view .LVU1808
5113 008e 638D ldrh r3, [r4, #42]
5114 0090 9BB2 uxth r3, r3
2475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5115 .loc 1 2475 8 view .LVU1809
5116 0092 FF2B cmp r3, #255
5117 0094 0FD9 bls .L343
2477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_STARTST
5118 .loc 1 2477 7 is_stmt 1 view .LVU1810
2477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_STARTST
5119 .loc 1 2477 22 is_stmt 0 view .LVU1811
5120 0096 FF22 movs r2, #255
5121 0098 2285 strh r2, [r4, #40] @ movhi
2478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5122 .loc 1 2478 7 is_stmt 1 view .LVU1812
5123 009a 0023 movs r3, #0
5124 009c 0093 str r3, [sp]
5125 009e 4FF08073 mov r3, #16777216
5126 00a2 3146 mov r1, r6
5127 00a4 2046 mov r0, r4
5128 00a6 FFF7FEFF bl I2C_TransferConfig
5129 .LVL336:
5130 00aa 21E0 b .L347
5131 .L356:
2470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5132 .loc 1 2470 7 view .LVU1813
2470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5133 .loc 1 2470 7 view .LVU1814
5134 00ac 0023 movs r3, #0
5135 00ae 84F84030 strb r3, [r4, #64]
2470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5136 .loc 1 2470 7 view .LVU1815
2471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5137 .loc 1 2471 7 view .LVU1816
2471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5138 .loc 1 2471 14 is_stmt 0 view .LVU1817
5139 00b2 5846 mov r0, fp
5140 00b4 6DE0 b .L339
5141 .L343:
2482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE, I2C_NO_STARTS
5142 .loc 1 2482 7 is_stmt 1 view .LVU1818
2482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE, I2C_NO_STARTS
5143 .loc 1 2482 28 is_stmt 0 view .LVU1819
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 248
5144 00b6 628D ldrh r2, [r4, #42]
5145 00b8 92B2 uxth r2, r2
2482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE, I2C_NO_STARTS
5146 .loc 1 2482 22 view .LVU1820
5147 00ba 2285 strh r2, [r4, #40] @ movhi
2483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5148 .loc 1 2483 7 is_stmt 1 view .LVU1821
5149 00bc 0023 movs r3, #0
5150 00be 0093 str r3, [sp]
5151 00c0 4FF00073 mov r3, #33554432
5152 00c4 D2B2 uxtb r2, r2
5153 00c6 3146 mov r1, r6
5154 00c8 2046 mov r0, r4
5155 00ca FFF7FEFF bl I2C_TransferConfig
5156 .LVL337:
5157 00ce 0FE0 b .L347
5158 .L346:
2519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5159 .loc 1 2519 11 view .LVU1822
2519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5160 .loc 1 2519 32 is_stmt 0 view .LVU1823
5161 00d0 628D ldrh r2, [r4, #42]
5162 00d2 92B2 uxth r2, r2
2519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5163 .loc 1 2519 26 view .LVU1824
5164 00d4 2285 strh r2, [r4, #40] @ movhi
2520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
5165 .loc 1 2520 11 is_stmt 1 view .LVU1825
5166 00d6 0023 movs r3, #0
5167 00d8 0093 str r3, [sp]
5168 00da 4FF00073 mov r3, #33554432
5169 00de D2B2 uxtb r2, r2
5170 00e0 3146 mov r1, r6
5171 00e2 2046 mov r0, r4
5172 00e4 FFF7FEFF bl I2C_TransferConfig
5173 .LVL338:
5174 .L345:
2525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5175 .loc 1 2525 30 view .LVU1826
2525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5176 .loc 1 2525 18 is_stmt 0 view .LVU1827
5177 00e8 638D ldrh r3, [r4, #42]
5178 00ea 9BB2 uxth r3, r3
2525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5179 .loc 1 2525 30 view .LVU1828
5180 00ec 002B cmp r3, #0
5181 00ee 33D0 beq .L357
5182 .L347:
2486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5183 .loc 1 2486 5 is_stmt 1 view .LVU1829
2489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5184 .loc 1 2489 7 view .LVU1830
2489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5185 .loc 1 2489 11 is_stmt 0 view .LVU1831
5186 00f0 3A46 mov r2, r7
5187 00f2 2946 mov r1, r5
5188 00f4 2046 mov r0, r4
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 249
5189 00f6 FFF7FEFF bl I2C_WaitOnTXISFlagUntilTimeout
5190 .LVL339:
2489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5191 .loc 1 2489 10 view .LVU1832
5192 00fa 0028 cmp r0, #0
5193 00fc 4ED1 bne .L351
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5194 .loc 1 2495 7 is_stmt 1 view .LVU1833
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5195 .loc 1 2495 35 is_stmt 0 view .LVU1834
5196 00fe 626A ldr r2, [r4, #36]
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5197 .loc 1 2495 11 view .LVU1835
5198 0100 2368 ldr r3, [r4]
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5199 .loc 1 2495 30 view .LVU1836
5200 0102 1278 ldrb r2, [r2] @ zero_extendqisi2
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5201 .loc 1 2495 28 view .LVU1837
5202 0104 9A62 str r2, [r3, #40]
2498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5203 .loc 1 2498 7 is_stmt 1 view .LVU1838
2498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5204 .loc 1 2498 11 is_stmt 0 view .LVU1839
5205 0106 636A ldr r3, [r4, #36]
2498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5206 .loc 1 2498 21 view .LVU1840
5207 0108 0133 adds r3, r3, #1
5208 010a 6362 str r3, [r4, #36]
2500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
5209 .loc 1 2500 7 is_stmt 1 view .LVU1841
2500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
5210 .loc 1 2500 11 is_stmt 0 view .LVU1842
5211 010c 638D ldrh r3, [r4, #42]
5212 010e 9BB2 uxth r3, r3
2500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
5213 .loc 1 2500 22 view .LVU1843
5214 0110 013B subs r3, r3, #1
5215 0112 9BB2 uxth r3, r3
5216 0114 6385 strh r3, [r4, #42] @ movhi
2501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5217 .loc 1 2501 7 is_stmt 1 view .LVU1844
2501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5218 .loc 1 2501 11 is_stmt 0 view .LVU1845
5219 0116 238D ldrh r3, [r4, #40]
2501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5220 .loc 1 2501 21 view .LVU1846
5221 0118 013B subs r3, r3, #1
5222 011a 9BB2 uxth r3, r3
5223 011c 2385 strh r3, [r4, #40] @ movhi
2503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5224 .loc 1 2503 7 is_stmt 1 view .LVU1847
2503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5225 .loc 1 2503 16 is_stmt 0 view .LVU1848
5226 011e 628D ldrh r2, [r4, #42]
5227 0120 92B2 uxth r2, r2
2503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 250
5228 .loc 1 2503 10 view .LVU1849
5229 0122 002A cmp r2, #0
5230 0124 E0D0 beq .L345
2503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5231 .loc 1 2503 35 discriminator 1 view .LVU1850
5232 0126 002B cmp r3, #0
5233 0128 DED1 bne .L345
2506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5234 .loc 1 2506 9 is_stmt 1 view .LVU1851
2506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5235 .loc 1 2506 13 is_stmt 0 view .LVU1852
5236 012a 0097 str r7, [sp]
5237 012c 2B46 mov r3, r5
5238 012e 0022 movs r2, #0
5239 0130 8021 movs r1, #128
5240 0132 2046 mov r0, r4
5241 0134 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
5242 .LVL340:
2506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5243 .loc 1 2506 12 view .LVU1853
5244 0138 90BB cbnz r0, .L352
2511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5245 .loc 1 2511 9 is_stmt 1 view .LVU1854
2511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5246 .loc 1 2511 17 is_stmt 0 view .LVU1855
5247 013a 638D ldrh r3, [r4, #42]
5248 013c 9BB2 uxth r3, r3
2511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5249 .loc 1 2511 12 view .LVU1856
5250 013e FF2B cmp r3, #255
5251 0140 C6D9 bls .L346
2513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
5252 .loc 1 2513 11 is_stmt 1 view .LVU1857
2513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
5253 .loc 1 2513 26 is_stmt 0 view .LVU1858
5254 0142 FF22 movs r2, #255
5255 0144 2285 strh r2, [r4, #40] @ movhi
2514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
5256 .loc 1 2514 11 is_stmt 1 view .LVU1859
5257 0146 0023 movs r3, #0
5258 0148 0093 str r3, [sp]
5259 014a 4FF08073 mov r3, #16777216
5260 014e 3146 mov r1, r6
5261 0150 2046 mov r0, r4
5262 0152 FFF7FEFF bl I2C_TransferConfig
5263 .LVL341:
5264 0156 C7E7 b .L345
5265 .L357:
2529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5266 .loc 1 2529 5 view .LVU1860
2529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5267 .loc 1 2529 9 is_stmt 0 view .LVU1861
5268 0158 3A46 mov r2, r7
5269 015a 2946 mov r1, r5
5270 015c 2046 mov r0, r4
5271 015e FFF7FEFF bl I2C_WaitOnSTOPFlagUntilTimeout
5272 .LVL342:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 251
2529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5273 .loc 1 2529 8 view .LVU1862
5274 0162 F8B9 cbnz r0, .L353
2535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5275 .loc 1 2535 5 is_stmt 1 view .LVU1863
5276 0164 2368 ldr r3, [r4]
5277 0166 2022 movs r2, #32
5278 0168 DA61 str r2, [r3, #28]
2538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5279 .loc 1 2538 5 view .LVU1864
5280 016a 2168 ldr r1, [r4]
5281 016c 4B68 ldr r3, [r1, #4]
5282 016e 23F0FF73 bic r3, r3, #33423360
5283 0172 23F48B33 bic r3, r3, #71168
5284 0176 23F4FF73 bic r3, r3, #510
5285 017a 23F00103 bic r3, r3, #1
5286 017e 4B60 str r3, [r1, #4]
2540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
5287 .loc 1 2540 5 view .LVU1865
2540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
5288 .loc 1 2540 17 is_stmt 0 view .LVU1866
5289 0180 84F84120 strb r2, [r4, #65]
2541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5290 .loc 1 2541 5 is_stmt 1 view .LVU1867
2541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5291 .loc 1 2541 17 is_stmt 0 view .LVU1868
5292 0184 0023 movs r3, #0
5293 0186 84F84230 strb r3, [r4, #66]
2544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5294 .loc 1 2544 5 is_stmt 1 view .LVU1869
2544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5295 .loc 1 2544 5 view .LVU1870
5296 018a 84F84030 strb r3, [r4, #64]
2544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5297 .loc 1 2544 5 view .LVU1871
2546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5298 .loc 1 2546 5 view .LVU1872
2546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5299 .loc 1 2546 12 is_stmt 0 view .LVU1873
5300 018e 00E0 b .L339
5301 .LVL343:
5302 .L348:
2550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5303 .loc 1 2550 12 view .LVU1874
5304 0190 0220 movs r0, #2
5305 .LVL344:
5306 .L339:
2552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5307 .loc 1 2552 1 view .LVU1875
5308 0192 03B0 add sp, sp, #12
5309 .cfi_remember_state
5310 .cfi_def_cfa_offset 36
5311 @ sp needed
5312 0194 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
5313 .LVL345:
5314 .L349:
5315 .cfi_restore_state
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 252
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5316 .loc 1 2447 5 view .LVU1876
5317 0198 0220 movs r0, #2
5318 .LVL346:
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5319 .loc 1 2447 5 view .LVU1877
5320 019a FAE7 b .L339
5321 .LVL347:
5322 .L351:
2491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5323 .loc 1 2491 16 view .LVU1878
5324 019c 0120 movs r0, #1
5325 019e F8E7 b .L339
5326 .L352:
2508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5327 .loc 1 2508 18 view .LVU1879
5328 01a0 0120 movs r0, #1
5329 01a2 F6E7 b .L339
5330 .L353:
2531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5331 .loc 1 2531 14 view .LVU1880
5332 01a4 0120 movs r0, #1
5333 01a6 F4E7 b .L339
5334 .cfi_endproc
5335 .LFE146:
5337 .section .text.HAL_I2C_Mem_Read,"ax",%progbits
5338 .align 1
5339 .global HAL_I2C_Mem_Read
5340 .syntax unified
5341 .thumb
5342 .thumb_func
5344 HAL_I2C_Mem_Read:
5345 .LVL348:
5346 .LFB147:
2569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
5347 .loc 1 2569 1 is_stmt 1 view -0
5348 .cfi_startproc
5349 @ args = 12, pretend = 0, frame = 0
5350 @ frame_needed = 0, uses_anonymous_args = 0
2569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
5351 .loc 1 2569 1 is_stmt 0 view .LVU1882
5352 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
5353 .cfi_def_cfa_offset 36
5354 .cfi_offset 4, -36
5355 .cfi_offset 5, -32
5356 .cfi_offset 6, -28
5357 .cfi_offset 7, -24
5358 .cfi_offset 8, -20
5359 .cfi_offset 9, -16
5360 .cfi_offset 10, -12
5361 .cfi_offset 11, -8
5362 .cfi_offset 14, -4
5363 0004 83B0 sub sp, sp, #12
5364 .cfi_def_cfa_offset 48
5365 0006 0E46 mov r6, r1
5366 0008 BDF834A0 ldrh r10, [sp, #52]
5367 000c 0E9D ldr r5, [sp, #56]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 253
2570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5368 .loc 1 2570 3 is_stmt 1 view .LVU1883
2573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5369 .loc 1 2573 3 view .LVU1884
2575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5370 .loc 1 2575 3 view .LVU1885
2575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5371 .loc 1 2575 11 is_stmt 0 view .LVU1886
5372 000e 90F84110 ldrb r1, [r0, #65] @ zero_extendqisi2
5373 .LVL349:
2575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5374 .loc 1 2575 11 view .LVU1887
5375 0012 C9B2 uxtb r1, r1
2575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5376 .loc 1 2575 6 view .LVU1888
5377 0014 2029 cmp r1, #32
5378 0016 40F0BC80 bne .L368
5379 001a 0446 mov r4, r0
5380 001c 9046 mov r8, r2
5381 001e 9946 mov r9, r3
2577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5382 .loc 1 2577 5 is_stmt 1 view .LVU1889
2577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5383 .loc 1 2577 8 is_stmt 0 view .LVU1890
5384 0020 0C9B ldr r3, [sp, #48]
5385 .LVL350:
2577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5386 .loc 1 2577 8 view .LVU1891
5387 0022 CBB1 cbz r3, .L360
2577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5388 .loc 1 2577 25 discriminator 1 view .LVU1892
5389 0024 BAF1000F cmp r10, #0
5390 0028 16D0 beq .L360
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5391 .loc 1 2584 5 is_stmt 1 view .LVU1893
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5392 .loc 1 2584 5 view .LVU1894
5393 002a 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
5394 002e 012B cmp r3, #1
5395 0030 00F0B380 beq .L369
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5396 .loc 1 2584 5 discriminator 2 view .LVU1895
5397 0034 4FF0010B mov fp, #1
5398 0038 80F840B0 strb fp, [r0, #64]
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5399 .loc 1 2584 5 discriminator 2 view .LVU1896
2587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5400 .loc 1 2587 5 discriminator 2 view .LVU1897
2587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5401 .loc 1 2587 17 is_stmt 0 discriminator 2 view .LVU1898
5402 003c FFF7FEFF bl HAL_GetTick
5403 .LVL351:
2587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5404 .loc 1 2587 17 discriminator 2 view .LVU1899
5405 0040 0746 mov r7, r0
5406 .LVL352:
2589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 254
5407 .loc 1 2589 5 is_stmt 1 discriminator 2 view .LVU1900
2589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5408 .loc 1 2589 9 is_stmt 0 discriminator 2 view .LVU1901
5409 0042 0090 str r0, [sp]
5410 0044 1923 movs r3, #25
5411 0046 5A46 mov r2, fp
5412 0048 4FF40041 mov r1, #32768
5413 004c 2046 mov r0, r4
5414 .LVL353:
2589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5415 .loc 1 2589 9 discriminator 2 view .LVU1902
5416 004e FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
5417 .LVL354:
2589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5418 .loc 1 2589 8 discriminator 2 view .LVU1903
5419 0052 30B1 cbz r0, .L375
2591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5420 .loc 1 2591 14 view .LVU1904
5421 0054 0120 movs r0, #1
5422 0056 9DE0 b .L359
5423 .LVL355:
5424 .L360:
2579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5425 .loc 1 2579 7 is_stmt 1 view .LVU1905
2579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5426 .loc 1 2579 23 is_stmt 0 view .LVU1906
5427 0058 4FF40073 mov r3, #512
5428 005c 6364 str r3, [r4, #68]
2580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5429 .loc 1 2580 7 is_stmt 1 view .LVU1907
2580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5430 .loc 1 2580 15 is_stmt 0 view .LVU1908
5431 005e 0120 movs r0, #1
5432 .LVL356:
2580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5433 .loc 1 2580 15 view .LVU1909
5434 0060 98E0 b .L359
5435 .LVL357:
5436 .L375:
2594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5437 .loc 1 2594 5 is_stmt 1 view .LVU1910
2594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5438 .loc 1 2594 21 is_stmt 0 view .LVU1911
5439 0062 2223 movs r3, #34
5440 0064 84F84130 strb r3, [r4, #65]
2595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5441 .loc 1 2595 5 is_stmt 1 view .LVU1912
2595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5442 .loc 1 2595 21 is_stmt 0 view .LVU1913
5443 0068 4023 movs r3, #64
5444 006a 84F84230 strb r3, [r4, #66]
2596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5445 .loc 1 2596 5 is_stmt 1 view .LVU1914
2596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5446 .loc 1 2596 21 is_stmt 0 view .LVU1915
5447 006e 0023 movs r3, #0
5448 0070 6364 str r3, [r4, #68]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 255
2599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5449 .loc 1 2599 5 is_stmt 1 view .LVU1916
2599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5450 .loc 1 2599 21 is_stmt 0 view .LVU1917
5451 0072 0C9A ldr r2, [sp, #48]
5452 0074 6262 str r2, [r4, #36]
2600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
5453 .loc 1 2600 5 is_stmt 1 view .LVU1918
2600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
5454 .loc 1 2600 21 is_stmt 0 view .LVU1919
5455 0076 A4F82AA0 strh r10, [r4, #42] @ movhi
2601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5456 .loc 1 2601 5 is_stmt 1 view .LVU1920
2601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5457 .loc 1 2601 21 is_stmt 0 view .LVU1921
5458 007a 6363 str r3, [r4, #52]
2604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5459 .loc 1 2604 5 is_stmt 1 view .LVU1922
2604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5460 .loc 1 2604 9 is_stmt 0 view .LVU1923
5461 007c 0197 str r7, [sp, #4]
5462 007e 0095 str r5, [sp]
5463 0080 4B46 mov r3, r9
5464 0082 4246 mov r2, r8
5465 0084 3146 mov r1, r6
5466 0086 2046 mov r0, r4
5467 0088 FFF7FEFF bl I2C_RequestMemoryRead
5468 .LVL358:
2604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5469 .loc 1 2604 8 view .LVU1924
5470 008c 70B9 cbnz r0, .L376
2613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5471 .loc 1 2613 5 is_stmt 1 view .LVU1925
2613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5472 .loc 1 2613 13 is_stmt 0 view .LVU1926
5473 008e 638D ldrh r3, [r4, #42]
5474 0090 9BB2 uxth r3, r3
2613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5475 .loc 1 2613 8 view .LVU1927
5476 0092 FF2B cmp r3, #255
5477 0094 0FD9 bls .L363
2615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
5478 .loc 1 2615 7 is_stmt 1 view .LVU1928
2615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE,
5479 .loc 1 2615 22 is_stmt 0 view .LVU1929
5480 0096 FF22 movs r2, #255
5481 0098 2285 strh r2, [r4, #40] @ movhi
2616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
5482 .loc 1 2616 7 is_stmt 1 view .LVU1930
5483 009a 444B ldr r3, .L378
5484 009c 0093 str r3, [sp]
5485 009e 4FF08073 mov r3, #16777216
5486 00a2 3146 mov r1, r6
5487 00a4 2046 mov r0, r4
5488 00a6 FFF7FEFF bl I2C_TransferConfig
5489 .LVL359:
5490 00aa 21E0 b .L367
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 256
5491 .L376:
2607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5492 .loc 1 2607 7 view .LVU1931
2607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5493 .loc 1 2607 7 view .LVU1932
5494 00ac 0023 movs r3, #0
5495 00ae 84F84030 strb r3, [r4, #64]
2607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5496 .loc 1 2607 7 view .LVU1933
2608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5497 .loc 1 2608 7 view .LVU1934
2608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5498 .loc 1 2608 14 is_stmt 0 view .LVU1935
5499 00b2 5846 mov r0, fp
5500 00b4 6EE0 b .L359
5501 .L363:
2621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5502 .loc 1 2621 7 is_stmt 1 view .LVU1936
2621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5503 .loc 1 2621 28 is_stmt 0 view .LVU1937
5504 00b6 628D ldrh r2, [r4, #42]
5505 00b8 92B2 uxth r2, r2
2621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5506 .loc 1 2621 22 view .LVU1938
5507 00ba 2285 strh r2, [r4, #40] @ movhi
2622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
5508 .loc 1 2622 7 is_stmt 1 view .LVU1939
5509 00bc 3B4B ldr r3, .L378
5510 00be 0093 str r3, [sp]
5511 00c0 4FF00073 mov r3, #33554432
5512 00c4 D2B2 uxtb r2, r2
5513 00c6 3146 mov r1, r6
5514 00c8 2046 mov r0, r4
5515 00ca FFF7FEFF bl I2C_TransferConfig
5516 .LVL360:
5517 00ce 0FE0 b .L367
5518 .L366:
2659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5519 .loc 1 2659 11 view .LVU1940
2659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5520 .loc 1 2659 32 is_stmt 0 view .LVU1941
5521 00d0 628D ldrh r2, [r4, #42]
5522 00d2 92B2 uxth r2, r2
2659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t)hi2c->XferSize, I2C_AUTOEND_MODE,
5523 .loc 1 2659 26 view .LVU1942
5524 00d4 2285 strh r2, [r4, #40] @ movhi
2660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
5525 .loc 1 2660 11 is_stmt 1 view .LVU1943
5526 00d6 0023 movs r3, #0
5527 00d8 0093 str r3, [sp]
5528 00da 4FF00073 mov r3, #33554432
5529 00de D2B2 uxtb r2, r2
5530 00e0 3146 mov r1, r6
5531 00e2 2046 mov r0, r4
5532 00e4 FFF7FEFF bl I2C_TransferConfig
5533 .LVL361:
5534 .L365:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 257
2664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5535 .loc 1 2664 30 view .LVU1944
2664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5536 .loc 1 2664 18 is_stmt 0 view .LVU1945
5537 00e8 638D ldrh r3, [r4, #42]
5538 00ea 9BB2 uxth r3, r3
2664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5539 .loc 1 2664 30 view .LVU1946
5540 00ec 002B cmp r3, #0
5541 00ee 34D0 beq .L377
5542 .L367:
2626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5543 .loc 1 2626 5 is_stmt 1 view .LVU1947
2629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5544 .loc 1 2629 7 view .LVU1948
2629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5545 .loc 1 2629 11 is_stmt 0 view .LVU1949
5546 00f0 0097 str r7, [sp]
5547 00f2 2B46 mov r3, r5
5548 00f4 0022 movs r2, #0
5549 00f6 0421 movs r1, #4
5550 00f8 2046 mov r0, r4
5551 00fa FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
5552 .LVL362:
2629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5553 .loc 1 2629 10 view .LVU1950
5554 00fe 0028 cmp r0, #0
5555 0100 4DD1 bne .L371
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5556 .loc 1 2635 7 is_stmt 1 view .LVU1951
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5557 .loc 1 2635 38 is_stmt 0 view .LVU1952
5558 0102 2368 ldr r3, [r4]
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5559 .loc 1 2635 48 view .LVU1953
5560 0104 5A6A ldr r2, [r3, #36]
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5561 .loc 1 2635 12 view .LVU1954
5562 0106 636A ldr r3, [r4, #36]
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5563 .loc 1 2635 23 view .LVU1955
5564 0108 1A70 strb r2, [r3]
2638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5565 .loc 1 2638 7 is_stmt 1 view .LVU1956
2638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5566 .loc 1 2638 11 is_stmt 0 view .LVU1957
5567 010a 636A ldr r3, [r4, #36]
2638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5568 .loc 1 2638 21 view .LVU1958
5569 010c 0133 adds r3, r3, #1
5570 010e 6362 str r3, [r4, #36]
2640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
5571 .loc 1 2640 7 is_stmt 1 view .LVU1959
2640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
5572 .loc 1 2640 11 is_stmt 0 view .LVU1960
5573 0110 228D ldrh r2, [r4, #40]
2640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 258
5574 .loc 1 2640 21 view .LVU1961
5575 0112 013A subs r2, r2, #1
5576 0114 92B2 uxth r2, r2
5577 0116 2285 strh r2, [r4, #40] @ movhi
2641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5578 .loc 1 2641 7 is_stmt 1 view .LVU1962
2641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5579 .loc 1 2641 11 is_stmt 0 view .LVU1963
5580 0118 638D ldrh r3, [r4, #42]
5581 011a 9BB2 uxth r3, r3
2641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5582 .loc 1 2641 22 view .LVU1964
5583 011c 013B subs r3, r3, #1
5584 011e 9BB2 uxth r3, r3
5585 0120 6385 strh r3, [r4, #42] @ movhi
2643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5586 .loc 1 2643 7 is_stmt 1 view .LVU1965
2643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5587 .loc 1 2643 16 is_stmt 0 view .LVU1966
5588 0122 638D ldrh r3, [r4, #42]
5589 0124 9BB2 uxth r3, r3
2643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5590 .loc 1 2643 10 view .LVU1967
5591 0126 002B cmp r3, #0
5592 0128 DED0 beq .L365
2643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5593 .loc 1 2643 35 discriminator 1 view .LVU1968
5594 012a 002A cmp r2, #0
5595 012c DCD1 bne .L365
2646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5596 .loc 1 2646 9 is_stmt 1 view .LVU1969
2646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5597 .loc 1 2646 13 is_stmt 0 view .LVU1970
5598 012e 0097 str r7, [sp]
5599 0130 2B46 mov r3, r5
5600 0132 8021 movs r1, #128
5601 0134 2046 mov r0, r4
5602 0136 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
5603 .LVL363:
2646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5604 .loc 1 2646 12 view .LVU1971
5605 013a 90BB cbnz r0, .L372
2651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5606 .loc 1 2651 9 is_stmt 1 view .LVU1972
2651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5607 .loc 1 2651 17 is_stmt 0 view .LVU1973
5608 013c 638D ldrh r3, [r4, #42]
5609 013e 9BB2 uxth r3, r3
2651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5610 .loc 1 2651 12 view .LVU1974
5611 0140 FF2B cmp r3, #255
5612 0142 C5D9 bls .L366
2653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t) hi2c->XferSize, I2C_RELOAD_MODE,
5613 .loc 1 2653 11 is_stmt 1 view .LVU1975
2653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, DevAddress, (uint8_t) hi2c->XferSize, I2C_RELOAD_MODE,
5614 .loc 1 2653 26 is_stmt 0 view .LVU1976
5615 0144 FF22 movs r2, #255
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 259
5616 0146 2285 strh r2, [r4, #40] @ movhi
2654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_NO_STARTSTOP);
5617 .loc 1 2654 11 is_stmt 1 view .LVU1977
5618 0148 0023 movs r3, #0
5619 014a 0093 str r3, [sp]
5620 014c 4FF08073 mov r3, #16777216
5621 0150 3146 mov r1, r6
5622 0152 2046 mov r0, r4
5623 0154 FFF7FEFF bl I2C_TransferConfig
5624 .LVL364:
5625 0158 C6E7 b .L365
5626 .L377:
2668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5627 .loc 1 2668 5 view .LVU1978
2668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5628 .loc 1 2668 9 is_stmt 0 view .LVU1979
5629 015a 3A46 mov r2, r7
5630 015c 2946 mov r1, r5
5631 015e 2046 mov r0, r4
5632 0160 FFF7FEFF bl I2C_WaitOnSTOPFlagUntilTimeout
5633 .LVL365:
2668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5634 .loc 1 2668 8 view .LVU1980
5635 0164 F8B9 cbnz r0, .L373
2674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5636 .loc 1 2674 5 is_stmt 1 view .LVU1981
5637 0166 2368 ldr r3, [r4]
5638 0168 2022 movs r2, #32
5639 016a DA61 str r2, [r3, #28]
2677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5640 .loc 1 2677 5 view .LVU1982
5641 016c 2168 ldr r1, [r4]
5642 016e 4B68 ldr r3, [r1, #4]
5643 0170 23F0FF73 bic r3, r3, #33423360
5644 0174 23F48B33 bic r3, r3, #71168
5645 0178 23F4FF73 bic r3, r3, #510
5646 017c 23F00103 bic r3, r3, #1
5647 0180 4B60 str r3, [r1, #4]
2679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
5648 .loc 1 2679 5 view .LVU1983
2679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
5649 .loc 1 2679 17 is_stmt 0 view .LVU1984
5650 0182 84F84120 strb r2, [r4, #65]
2680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5651 .loc 1 2680 5 is_stmt 1 view .LVU1985
2680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5652 .loc 1 2680 17 is_stmt 0 view .LVU1986
5653 0186 0023 movs r3, #0
5654 0188 84F84230 strb r3, [r4, #66]
2683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5655 .loc 1 2683 5 is_stmt 1 view .LVU1987
2683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5656 .loc 1 2683 5 view .LVU1988
5657 018c 84F84030 strb r3, [r4, #64]
2683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5658 .loc 1 2683 5 view .LVU1989
2685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 260
5659 .loc 1 2685 5 view .LVU1990
2685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5660 .loc 1 2685 12 is_stmt 0 view .LVU1991
5661 0190 00E0 b .L359
5662 .LVL366:
5663 .L368:
2689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5664 .loc 1 2689 12 view .LVU1992
5665 0192 0220 movs r0, #2
5666 .LVL367:
5667 .L359:
2691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /**
5668 .loc 1 2691 1 view .LVU1993
5669 0194 03B0 add sp, sp, #12
5670 .cfi_remember_state
5671 .cfi_def_cfa_offset 36
5672 @ sp needed
5673 0196 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
5674 .LVL368:
5675 .L369:
5676 .cfi_restore_state
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5677 .loc 1 2584 5 view .LVU1994
5678 019a 0220 movs r0, #2
5679 .LVL369:
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5680 .loc 1 2584 5 view .LVU1995
5681 019c FAE7 b .L359
5682 .LVL370:
5683 .L371:
2631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5684 .loc 1 2631 16 view .LVU1996
5685 019e 0120 movs r0, #1
5686 01a0 F8E7 b .L359
5687 .L372:
2648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5688 .loc 1 2648 18 view .LVU1997
5689 01a2 0120 movs r0, #1
5690 01a4 F6E7 b .L359
5691 .L373:
2670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5692 .loc 1 2670 14 view .LVU1998
5693 01a6 0120 movs r0, #1
5694 01a8 F4E7 b .L359
5695 .L379:
5696 01aa 00BF .align 2
5697 .L378:
5698 01ac 00240080 .word -2147474432
5699 .cfi_endproc
5700 .LFE147:
5702 .section .text.HAL_I2C_Mem_Write_IT,"ax",%progbits
5703 .align 1
5704 .global HAL_I2C_Mem_Write_IT
5705 .syntax unified
5706 .thumb
5707 .thumb_func
5709 HAL_I2C_Mem_Write_IT:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 261
5710 .LVL371:
5711 .LFB148:
2706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
5712 .loc 1 2706 1 is_stmt 1 view -0
5713 .cfi_startproc
5714 @ args = 8, pretend = 0, frame = 0
5715 @ frame_needed = 0, uses_anonymous_args = 0
2706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
5716 .loc 1 2706 1 is_stmt 0 view .LVU2000
5717 0000 70B5 push {r4, r5, r6, lr}
5718 .cfi_def_cfa_offset 16
5719 .cfi_offset 4, -16
5720 .cfi_offset 5, -12
5721 .cfi_offset 6, -8
5722 .cfi_offset 14, -4
5723 0002 82B0 sub sp, sp, #8
5724 .cfi_def_cfa_offset 24
5725 0004 0446 mov r4, r0
5726 0006 1D46 mov r5, r3
5727 0008 BDF81C30 ldrh r3, [sp, #28]
5728 .LVL372:
2708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5729 .loc 1 2708 3 is_stmt 1 view .LVU2001
2710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5730 .loc 1 2710 3 view .LVU2002
2710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5731 .loc 1 2710 11 is_stmt 0 view .LVU2003
5732 000c 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
5733 .LVL373:
2710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5734 .loc 1 2710 11 view .LVU2004
5735 0010 C0B2 uxtb r0, r0
2710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5736 .loc 1 2710 6 view .LVU2005
5737 0012 2028 cmp r0, #32
5738 0014 42D1 bne .L386
2712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5739 .loc 1 2712 5 is_stmt 1 view .LVU2006
2712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5740 .loc 1 2712 8 is_stmt 0 view .LVU2007
5741 0016 0698 ldr r0, [sp, #24]
5742 0018 0028 cmp r0, #0
5743 001a 34D0 beq .L382
2712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5744 .loc 1 2712 25 discriminator 1 view .LVU2008
5745 001c 002B cmp r3, #0
5746 001e 32D0 beq .L382
2718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5747 .loc 1 2718 5 is_stmt 1 view .LVU2009
2718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5748 .loc 1 2718 9 is_stmt 0 view .LVU2010
5749 0020 2068 ldr r0, [r4]
5750 0022 8669 ldr r6, [r0, #24]
2718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5751 .loc 1 2718 8 view .LVU2011
5752 0024 16F4004F tst r6, #32768
5753 0028 3BD1 bne .L387
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 262
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5754 .loc 1 2724 5 is_stmt 1 view .LVU2012
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5755 .loc 1 2724 5 view .LVU2013
5756 002a 94F84060 ldrb r6, [r4, #64] @ zero_extendqisi2
5757 002e 012E cmp r6, #1
5758 0030 39D0 beq .L388
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5759 .loc 1 2724 5 discriminator 2 view .LVU2014
5760 0032 0126 movs r6, #1
5761 0034 84F84060 strb r6, [r4, #64]
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5762 .loc 1 2724 5 discriminator 2 view .LVU2015
2726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5763 .loc 1 2726 5 discriminator 2 view .LVU2016
2726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5764 .loc 1 2726 23 is_stmt 0 discriminator 2 view .LVU2017
5765 0038 2126 movs r6, #33
5766 003a 84F84160 strb r6, [r4, #65]
2727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5767 .loc 1 2727 5 is_stmt 1 discriminator 2 view .LVU2018
2727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5768 .loc 1 2727 23 is_stmt 0 discriminator 2 view .LVU2019
5769 003e 4026 movs r6, #64
5770 0040 84F84260 strb r6, [r4, #66]
2728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5771 .loc 1 2728 5 is_stmt 1 discriminator 2 view .LVU2020
2728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5772 .loc 1 2728 23 is_stmt 0 discriminator 2 view .LVU2021
5773 0044 0026 movs r6, #0
5774 0046 6664 str r6, [r4, #68]
2731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5775 .loc 1 2731 5 is_stmt 1 discriminator 2 view .LVU2022
2731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5776 .loc 1 2731 23 is_stmt 0 discriminator 2 view .LVU2023
5777 0048 069E ldr r6, [sp, #24]
5778 004a 6662 str r6, [r4, #36]
2732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
5779 .loc 1 2732 5 is_stmt 1 discriminator 2 view .LVU2024
2732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
5780 .loc 1 2732 23 is_stmt 0 discriminator 2 view .LVU2025
5781 004c 6385 strh r3, [r4, #42] @ movhi
2733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_IT;
5782 .loc 1 2733 5 is_stmt 1 discriminator 2 view .LVU2026
2733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_IT;
5783 .loc 1 2733 23 is_stmt 0 discriminator 2 view .LVU2027
5784 004e 174B ldr r3, .L391
5785 0050 E362 str r3, [r4, #44]
2734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
5786 .loc 1 2734 5 is_stmt 1 discriminator 2 view .LVU2028
2734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
5787 .loc 1 2734 23 is_stmt 0 discriminator 2 view .LVU2029
5788 0052 174B ldr r3, .L391+4
5789 0054 6363 str r3, [r4, #52]
2735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5790 .loc 1 2735 5 is_stmt 1 discriminator 2 view .LVU2030
2735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 263
5791 .loc 1 2735 23 is_stmt 0 discriminator 2 view .LVU2031
5792 0056 E164 str r1, [r4, #76]
2738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5793 .loc 1 2738 5 is_stmt 1 discriminator 2 view .LVU2032
2738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5794 .loc 1 2738 8 is_stmt 0 discriminator 2 view .LVU2033
5795 0058 012D cmp r5, #1
5796 005a 19D0 beq .L390
2750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5797 .loc 1 2750 7 is_stmt 1 view .LVU2034
2750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5798 .loc 1 2750 30 is_stmt 0 view .LVU2035
5799 005c 130A lsrs r3, r2, #8
2750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5800 .loc 1 2750 28 view .LVU2036
5801 005e 8362 str r3, [r0, #40]
2753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5802 .loc 1 2753 7 is_stmt 1 view .LVU2037
2753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5803 .loc 1 2753 26 is_stmt 0 view .LVU2038
5804 0060 D2B2 uxtb r2, r2
5805 .LVL374:
2753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5806 .loc 1 2753 24 view .LVU2039
5807 0062 2265 str r2, [r4, #80]
5808 .L385:
2756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5809 .loc 1 2756 5 is_stmt 1 view .LVU2040
5810 0064 134B ldr r3, .L391+8
5811 0066 0093 str r3, [sp]
5812 0068 4FF08073 mov r3, #16777216
5813 006c EAB2 uxtb r2, r5
5814 006e 2046 mov r0, r4
5815 0070 FFF7FEFF bl I2C_TransferConfig
5816 .LVL375:
2759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5817 .loc 1 2759 5 view .LVU2041
2759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5818 .loc 1 2759 5 view .LVU2042
5819 0074 0025 movs r5, #0
5820 0076 84F84050 strb r5, [r4, #64]
2759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5821 .loc 1 2759 5 view .LVU2043
2769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5822 .loc 1 2769 5 view .LVU2044
5823 007a 0121 movs r1, #1
5824 007c 2046 mov r0, r4
5825 007e FFF7FEFF bl I2C_Enable_IRQ
5826 .LVL376:
2771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5827 .loc 1 2771 5 view .LVU2045
2771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5828 .loc 1 2771 12 is_stmt 0 view .LVU2046
5829 0082 2846 mov r0, r5
5830 0084 0BE0 b .L381
5831 .LVL377:
5832 .L382:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 264
2714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5833 .loc 1 2714 7 is_stmt 1 view .LVU2047
2714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
5834 .loc 1 2714 23 is_stmt 0 view .LVU2048
5835 0086 4FF40073 mov r3, #512
5836 008a 6364 str r3, [r4, #68]
2715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5837 .loc 1 2715 7 is_stmt 1 view .LVU2049
2715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5838 .loc 1 2715 15 is_stmt 0 view .LVU2050
5839 008c 0120 movs r0, #1
5840 008e 06E0 b .L381
5841 .L390:
2741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5842 .loc 1 2741 7 is_stmt 1 view .LVU2051
2741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5843 .loc 1 2741 30 is_stmt 0 view .LVU2052
5844 0090 D2B2 uxtb r2, r2
5845 .LVL378:
2741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5846 .loc 1 2741 28 view .LVU2053
5847 0092 8262 str r2, [r0, #40]
2744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5848 .loc 1 2744 7 is_stmt 1 view .LVU2054
2744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5849 .loc 1 2744 24 is_stmt 0 view .LVU2055
5850 0094 4FF0FF33 mov r3, #-1
5851 0098 2365 str r3, [r4, #80]
5852 009a E3E7 b .L385
5853 .LVL379:
5854 .L386:
2775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5855 .loc 1 2775 12 view .LVU2056
5856 009c 0220 movs r0, #2
5857 .LVL380:
5858 .L381:
2777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5859 .loc 1 2777 1 view .LVU2057
5860 009e 02B0 add sp, sp, #8
5861 .cfi_remember_state
5862 .cfi_def_cfa_offset 16
5863 @ sp needed
5864 00a0 70BD pop {r4, r5, r6, pc}
5865 .LVL381:
5866 .L387:
5867 .cfi_restore_state
2720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5868 .loc 1 2720 14 view .LVU2058
5869 00a2 0220 movs r0, #2
5870 00a4 FBE7 b .L381
5871 .L388:
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5872 .loc 1 2724 5 view .LVU2059
5873 00a6 0220 movs r0, #2
5874 00a8 F9E7 b .L381
5875 .L392:
5876 00aa 00BF .align 2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 265
5877 .L391:
5878 00ac 0000FFFF .word -65536
5879 00b0 00000000 .word I2C_Mem_ISR_IT
5880 00b4 00200080 .word -2147475456
5881 .cfi_endproc
5882 .LFE148:
5884 .section .text.HAL_I2C_Mem_Read_IT,"ax",%progbits
5885 .align 1
5886 .global HAL_I2C_Mem_Read_IT
5887 .syntax unified
5888 .thumb
5889 .thumb_func
5891 HAL_I2C_Mem_Read_IT:
5892 .LVL382:
5893 .LFB149:
2793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
5894 .loc 1 2793 1 is_stmt 1 view -0
5895 .cfi_startproc
5896 @ args = 8, pretend = 0, frame = 0
5897 @ frame_needed = 0, uses_anonymous_args = 0
2793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Check the parameters */
5898 .loc 1 2793 1 is_stmt 0 view .LVU2061
5899 0000 70B5 push {r4, r5, r6, lr}
5900 .cfi_def_cfa_offset 16
5901 .cfi_offset 4, -16
5902 .cfi_offset 5, -12
5903 .cfi_offset 6, -8
5904 .cfi_offset 14, -4
5905 0002 82B0 sub sp, sp, #8
5906 .cfi_def_cfa_offset 24
5907 0004 0446 mov r4, r0
5908 0006 1D46 mov r5, r3
5909 0008 BDF81C30 ldrh r3, [sp, #28]
5910 .LVL383:
2795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5911 .loc 1 2795 3 is_stmt 1 view .LVU2062
2797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5912 .loc 1 2797 3 view .LVU2063
2797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5913 .loc 1 2797 11 is_stmt 0 view .LVU2064
5914 000c 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
5915 .LVL384:
2797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5916 .loc 1 2797 11 view .LVU2065
5917 0010 C0B2 uxtb r0, r0
2797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5918 .loc 1 2797 6 view .LVU2066
5919 0012 2028 cmp r0, #32
5920 0014 41D1 bne .L399
2799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5921 .loc 1 2799 5 is_stmt 1 view .LVU2067
2799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5922 .loc 1 2799 8 is_stmt 0 view .LVU2068
5923 0016 0698 ldr r0, [sp, #24]
5924 0018 0028 cmp r0, #0
5925 001a 33D0 beq .L395
2799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 266
5926 .loc 1 2799 25 discriminator 1 view .LVU2069
5927 001c 002B cmp r3, #0
5928 001e 31D0 beq .L395
2805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5929 .loc 1 2805 5 is_stmt 1 view .LVU2070
2805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5930 .loc 1 2805 9 is_stmt 0 view .LVU2071
5931 0020 2068 ldr r0, [r4]
5932 0022 8669 ldr r6, [r0, #24]
2805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5933 .loc 1 2805 8 view .LVU2072
5934 0024 16F4004F tst r6, #32768
5935 0028 3AD1 bne .L400
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5936 .loc 1 2811 5 is_stmt 1 view .LVU2073
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5937 .loc 1 2811 5 view .LVU2074
5938 002a 94F84060 ldrb r6, [r4, #64] @ zero_extendqisi2
5939 002e 012E cmp r6, #1
5940 0030 38D0 beq .L401
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5941 .loc 1 2811 5 discriminator 2 view .LVU2075
5942 0032 0126 movs r6, #1
5943 0034 84F84060 strb r6, [r4, #64]
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5944 .loc 1 2811 5 discriminator 2 view .LVU2076
2813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5945 .loc 1 2813 5 discriminator 2 view .LVU2077
2813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
5946 .loc 1 2813 23 is_stmt 0 discriminator 2 view .LVU2078
5947 0038 2226 movs r6, #34
5948 003a 84F84160 strb r6, [r4, #65]
2814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5949 .loc 1 2814 5 is_stmt 1 discriminator 2 view .LVU2079
2814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
5950 .loc 1 2814 23 is_stmt 0 discriminator 2 view .LVU2080
5951 003e 4026 movs r6, #64
5952 0040 84F84260 strb r6, [r4, #66]
2815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5953 .loc 1 2815 5 is_stmt 1 discriminator 2 view .LVU2081
2815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5954 .loc 1 2815 23 is_stmt 0 discriminator 2 view .LVU2082
5955 0044 0026 movs r6, #0
5956 0046 6664 str r6, [r4, #68]
2818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5957 .loc 1 2818 5 is_stmt 1 discriminator 2 view .LVU2083
2818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
5958 .loc 1 2818 23 is_stmt 0 discriminator 2 view .LVU2084
5959 0048 069E ldr r6, [sp, #24]
5960 004a 6662 str r6, [r4, #36]
2819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
5961 .loc 1 2819 5 is_stmt 1 discriminator 2 view .LVU2085
2819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
5962 .loc 1 2819 23 is_stmt 0 discriminator 2 view .LVU2086
5963 004c 6385 strh r3, [r4, #42] @ movhi
2820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_IT;
5964 .loc 1 2820 5 is_stmt 1 discriminator 2 view .LVU2087
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 267
2820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_IT;
5965 .loc 1 2820 23 is_stmt 0 discriminator 2 view .LVU2088
5966 004e 164B ldr r3, .L404
5967 0050 E362 str r3, [r4, #44]
2821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
5968 .loc 1 2821 5 is_stmt 1 discriminator 2 view .LVU2089
2821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
5969 .loc 1 2821 23 is_stmt 0 discriminator 2 view .LVU2090
5970 0052 164B ldr r3, .L404+4
5971 0054 6363 str r3, [r4, #52]
2822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5972 .loc 1 2822 5 is_stmt 1 discriminator 2 view .LVU2091
2822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5973 .loc 1 2822 23 is_stmt 0 discriminator 2 view .LVU2092
5974 0056 E164 str r1, [r4, #76]
2825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5975 .loc 1 2825 5 is_stmt 1 discriminator 2 view .LVU2093
2825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
5976 .loc 1 2825 8 is_stmt 0 discriminator 2 view .LVU2094
5977 0058 012D cmp r5, #1
5978 005a 18D0 beq .L403
2837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5979 .loc 1 2837 7 is_stmt 1 view .LVU2095
2837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5980 .loc 1 2837 30 is_stmt 0 view .LVU2096
5981 005c 130A lsrs r3, r2, #8
2837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5982 .loc 1 2837 28 view .LVU2097
5983 005e 8362 str r3, [r0, #40]
2840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5984 .loc 1 2840 7 is_stmt 1 view .LVU2098
2840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5985 .loc 1 2840 26 is_stmt 0 view .LVU2099
5986 0060 D2B2 uxtb r2, r2
5987 .LVL385:
2840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
5988 .loc 1 2840 24 view .LVU2100
5989 0062 2265 str r2, [r4, #80]
5990 .L398:
2843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5991 .loc 1 2843 5 is_stmt 1 view .LVU2101
5992 0064 124B ldr r3, .L404+8
5993 0066 0093 str r3, [sp]
5994 0068 0023 movs r3, #0
5995 006a EAB2 uxtb r2, r5
5996 006c 2046 mov r0, r4
5997 006e FFF7FEFF bl I2C_TransferConfig
5998 .LVL386:
2846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
5999 .loc 1 2846 5 view .LVU2102
2846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6000 .loc 1 2846 5 view .LVU2103
6001 0072 0025 movs r5, #0
6002 0074 84F84050 strb r5, [r4, #64]
2846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6003 .loc 1 2846 5 view .LVU2104
2856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 268
6004 .loc 1 2856 5 view .LVU2105
6005 0078 0321 movs r1, #3
6006 007a 2046 mov r0, r4
6007 007c FFF7FEFF bl I2C_Enable_IRQ
6008 .LVL387:
2858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6009 .loc 1 2858 5 view .LVU2106
2858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6010 .loc 1 2858 12 is_stmt 0 view .LVU2107
6011 0080 2846 mov r0, r5
6012 0082 0BE0 b .L394
6013 .LVL388:
6014 .L395:
2801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6015 .loc 1 2801 7 is_stmt 1 view .LVU2108
2801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6016 .loc 1 2801 23 is_stmt 0 view .LVU2109
6017 0084 4FF40073 mov r3, #512
6018 0088 6364 str r3, [r4, #68]
2802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6019 .loc 1 2802 7 is_stmt 1 view .LVU2110
2802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6020 .loc 1 2802 15 is_stmt 0 view .LVU2111
6021 008a 0120 movs r0, #1
6022 008c 06E0 b .L394
6023 .L403:
2828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6024 .loc 1 2828 7 is_stmt 1 view .LVU2112
2828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6025 .loc 1 2828 30 is_stmt 0 view .LVU2113
6026 008e D2B2 uxtb r2, r2
6027 .LVL389:
2828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6028 .loc 1 2828 28 view .LVU2114
6029 0090 8262 str r2, [r0, #40]
2831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6030 .loc 1 2831 7 is_stmt 1 view .LVU2115
2831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6031 .loc 1 2831 24 is_stmt 0 view .LVU2116
6032 0092 4FF0FF33 mov r3, #-1
6033 0096 2365 str r3, [r4, #80]
6034 0098 E4E7 b .L398
6035 .LVL390:
6036 .L399:
2862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6037 .loc 1 2862 12 view .LVU2117
6038 009a 0220 movs r0, #2
6039 .LVL391:
6040 .L394:
2864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6041 .loc 1 2864 1 view .LVU2118
6042 009c 02B0 add sp, sp, #8
6043 .cfi_remember_state
6044 .cfi_def_cfa_offset 16
6045 @ sp needed
6046 009e 70BD pop {r4, r5, r6, pc}
6047 .LVL392:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 269
6048 .L400:
6049 .cfi_restore_state
2807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6050 .loc 1 2807 14 view .LVU2119
6051 00a0 0220 movs r0, #2
6052 00a2 FBE7 b .L394
6053 .L401:
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6054 .loc 1 2811 5 view .LVU2120
6055 00a4 0220 movs r0, #2
6056 00a6 F9E7 b .L394
6057 .L405:
6058 .align 2
6059 .L404:
6060 00a8 0000FFFF .word -65536
6061 00ac 00000000 .word I2C_Mem_ISR_IT
6062 00b0 00200080 .word -2147475456
6063 .cfi_endproc
6064 .LFE149:
6066 .section .text.HAL_I2C_Mem_Write_DMA,"ax",%progbits
6067 .align 1
6068 .global HAL_I2C_Mem_Write_DMA
6069 .syntax unified
6070 .thumb
6071 .thumb_func
6073 HAL_I2C_Mem_Write_DMA:
6074 .LVL393:
6075 .LFB150:
2880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
6076 .loc 1 2880 1 is_stmt 1 view -0
6077 .cfi_startproc
6078 @ args = 8, pretend = 0, frame = 0
6079 @ frame_needed = 0, uses_anonymous_args = 0
2880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
6080 .loc 1 2880 1 is_stmt 0 view .LVU2122
6081 0000 F0B5 push {r4, r5, r6, r7, lr}
6082 .cfi_def_cfa_offset 20
6083 .cfi_offset 4, -20
6084 .cfi_offset 5, -16
6085 .cfi_offset 6, -12
6086 .cfi_offset 7, -8
6087 .cfi_offset 14, -4
6088 0002 83B0 sub sp, sp, #12
6089 .cfi_def_cfa_offset 32
6090 0004 0446 mov r4, r0
6091 0006 0E46 mov r6, r1
6092 0008 1F46 mov r7, r3
6093 000a 0899 ldr r1, [sp, #32]
6094 .LVL394:
2880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
6095 .loc 1 2880 1 view .LVU2123
6096 000c BDF82430 ldrh r3, [sp, #36]
6097 .LVL395:
2881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6098 .loc 1 2881 3 is_stmt 1 view .LVU2124
2884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6099 .loc 1 2884 3 view .LVU2125
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 270
2886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6100 .loc 1 2886 3 view .LVU2126
2886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6101 .loc 1 2886 11 is_stmt 0 view .LVU2127
6102 0010 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
6103 .LVL396:
2886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6104 .loc 1 2886 11 view .LVU2128
6105 0014 C0B2 uxtb r0, r0
2886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6106 .loc 1 2886 6 view .LVU2129
6107 0016 2028 cmp r0, #32
6108 0018 7AD1 bne .L417
2888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6109 .loc 1 2888 5 is_stmt 1 view .LVU2130
2888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6110 .loc 1 2888 8 is_stmt 0 view .LVU2131
6111 001a 0029 cmp r1, #0
6112 001c 4BD0 beq .L408
2888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6113 .loc 1 2888 25 discriminator 1 view .LVU2132
6114 001e 002B cmp r3, #0
6115 0020 49D0 beq .L408
2894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6116 .loc 1 2894 5 is_stmt 1 view .LVU2133
2894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6117 .loc 1 2894 9 is_stmt 0 view .LVU2134
6118 0022 2068 ldr r0, [r4]
6119 0024 8569 ldr r5, [r0, #24]
2894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6120 .loc 1 2894 8 view .LVU2135
6121 0026 15F4004F tst r5, #32768
6122 002a 75D1 bne .L418
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6123 .loc 1 2900 5 is_stmt 1 view .LVU2136
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6124 .loc 1 2900 5 view .LVU2137
6125 002c 94F84050 ldrb r5, [r4, #64] @ zero_extendqisi2
6126 0030 012D cmp r5, #1
6127 0032 73D0 beq .L419
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6128 .loc 1 2900 5 discriminator 2 view .LVU2138
6129 0034 0125 movs r5, #1
6130 0036 84F84050 strb r5, [r4, #64]
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6131 .loc 1 2900 5 discriminator 2 view .LVU2139
2902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
6132 .loc 1 2902 5 discriminator 2 view .LVU2140
2902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
6133 .loc 1 2902 23 is_stmt 0 discriminator 2 view .LVU2141
6134 003a 2125 movs r5, #33
6135 003c 84F84150 strb r5, [r4, #65]
2903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6136 .loc 1 2903 5 is_stmt 1 discriminator 2 view .LVU2142
2903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6137 .loc 1 2903 23 is_stmt 0 discriminator 2 view .LVU2143
6138 0040 4025 movs r5, #64
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 271
6139 0042 84F84250 strb r5, [r4, #66]
2904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6140 .loc 1 2904 5 is_stmt 1 discriminator 2 view .LVU2144
2904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6141 .loc 1 2904 23 is_stmt 0 discriminator 2 view .LVU2145
6142 0046 0025 movs r5, #0
6143 0048 6564 str r5, [r4, #68]
2907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
6144 .loc 1 2907 5 is_stmt 1 discriminator 2 view .LVU2146
2907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
6145 .loc 1 2907 23 is_stmt 0 discriminator 2 view .LVU2147
6146 004a 6162 str r1, [r4, #36]
2908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6147 .loc 1 2908 5 is_stmt 1 discriminator 2 view .LVU2148
2908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6148 .loc 1 2908 23 is_stmt 0 discriminator 2 view .LVU2149
6149 004c 6385 strh r3, [r4, #42] @ movhi
2909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_DMA;
6150 .loc 1 2909 5 is_stmt 1 discriminator 2 view .LVU2150
2909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_DMA;
6151 .loc 1 2909 23 is_stmt 0 discriminator 2 view .LVU2151
6152 004e 344B ldr r3, .L424
6153 0050 E362 str r3, [r4, #44]
2910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
6154 .loc 1 2910 5 is_stmt 1 discriminator 2 view .LVU2152
2910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
6155 .loc 1 2910 23 is_stmt 0 discriminator 2 view .LVU2153
6156 0052 344B ldr r3, .L424+4
6157 0054 6363 str r3, [r4, #52]
2911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6158 .loc 1 2911 5 is_stmt 1 discriminator 2 view .LVU2154
2911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6159 .loc 1 2911 23 is_stmt 0 discriminator 2 view .LVU2155
6160 0056 E664 str r6, [r4, #76]
2913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6161 .loc 1 2913 5 is_stmt 1 discriminator 2 view .LVU2156
2913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6162 .loc 1 2913 13 is_stmt 0 discriminator 2 view .LVU2157
6163 0058 638D ldrh r3, [r4, #42]
6164 005a 9BB2 uxth r3, r3
2913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6165 .loc 1 2913 8 discriminator 2 view .LVU2158
6166 005c FF2B cmp r3, #255
6167 005e 2FD9 bls .L410
2915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6168 .loc 1 2915 7 is_stmt 1 view .LVU2159
2915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6169 .loc 1 2915 22 is_stmt 0 view .LVU2160
6170 0060 FF23 movs r3, #255
6171 0062 2385 strh r3, [r4, #40] @ movhi
6172 .L411:
2923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6173 .loc 1 2923 5 is_stmt 1 view .LVU2161
2923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6174 .loc 1 2923 8 is_stmt 0 view .LVU2162
6175 0064 012F cmp r7, #1
6176 0066 2ED0 beq .L422
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 272
2935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6177 .loc 1 2935 7 is_stmt 1 view .LVU2163
2935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6178 .loc 1 2935 30 is_stmt 0 view .LVU2164
6179 0068 130A lsrs r3, r2, #8
2935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6180 .loc 1 2935 28 view .LVU2165
6181 006a 8362 str r3, [r0, #40]
2938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6182 .loc 1 2938 7 is_stmt 1 view .LVU2166
2938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6183 .loc 1 2938 26 is_stmt 0 view .LVU2167
6184 006c D2B2 uxtb r2, r2
6185 .LVL397:
2938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6186 .loc 1 2938 24 view .LVU2168
6187 006e 2265 str r2, [r4, #80]
6188 .L413:
2941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6189 .loc 1 2941 5 is_stmt 1 view .LVU2169
2941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6190 .loc 1 2941 13 is_stmt 0 view .LVU2170
6191 0070 A36B ldr r3, [r4, #56]
2941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6192 .loc 1 2941 8 view .LVU2171
6193 0072 002B cmp r3, #0
6194 0074 2DD0 beq .L414
2944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6195 .loc 1 2944 7 is_stmt 1 view .LVU2172
2944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6196 .loc 1 2944 38 is_stmt 0 view .LVU2173
6197 0076 2C4A ldr r2, .L424+8
6198 0078 9A62 str r2, [r3, #40]
2947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6199 .loc 1 2947 7 is_stmt 1 view .LVU2174
2947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6200 .loc 1 2947 11 is_stmt 0 view .LVU2175
6201 007a A36B ldr r3, [r4, #56]
2947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6202 .loc 1 2947 39 view .LVU2176
6203 007c 2B4A ldr r2, .L424+12
6204 007e 1A63 str r2, [r3, #48]
2950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
6205 .loc 1 2950 7 is_stmt 1 view .LVU2177
2950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
6206 .loc 1 2950 11 is_stmt 0 view .LVU2178
6207 0080 A26B ldr r2, [r4, #56]
2950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
6208 .loc 1 2950 42 view .LVU2179
6209 0082 0023 movs r3, #0
6210 0084 D362 str r3, [r2, #44]
2951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6211 .loc 1 2951 7 is_stmt 1 view .LVU2180
2951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6212 .loc 1 2951 11 is_stmt 0 view .LVU2181
6213 0086 A26B ldr r2, [r4, #56]
2951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 273
6214 .loc 1 2951 39 view .LVU2182
6215 0088 5363 str r3, [r2, #52]
2954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
6216 .loc 1 2954 7 is_stmt 1 view .LVU2183
2954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
6217 .loc 1 2954 86 is_stmt 0 view .LVU2184
6218 008a 2268 ldr r2, [r4]
2954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
6219 .loc 1 2954 23 view .LVU2185
6220 008c 238D ldrh r3, [r4, #40]
6221 008e 2832 adds r2, r2, #40
6222 0090 A06B ldr r0, [r4, #56]
6223 0092 FFF7FEFF bl HAL_DMA_Start_IT
6224 .LVL398:
2972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6225 .loc 1 2972 5 is_stmt 1 view .LVU2186
2972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6226 .loc 1 2972 8 is_stmt 0 view .LVU2187
6227 0096 0546 mov r5, r0
6228 0098 48B3 cbz r0, .L423
2992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6229 .loc 1 2992 7 is_stmt 1 view .LVU2188
2992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6230 .loc 1 2992 23 is_stmt 0 view .LVU2189
6231 009a 2023 movs r3, #32
6232 009c 84F84130 strb r3, [r4, #65]
2993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6233 .loc 1 2993 7 is_stmt 1 view .LVU2190
2993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6234 .loc 1 2993 23 is_stmt 0 view .LVU2191
6235 00a0 0022 movs r2, #0
6236 00a2 84F84220 strb r2, [r4, #66]
2996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6237 .loc 1 2996 7 is_stmt 1 view .LVU2192
2996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6238 .loc 1 2996 11 is_stmt 0 view .LVU2193
6239 00a6 636C ldr r3, [r4, #68]
2996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6240 .loc 1 2996 23 view .LVU2194
6241 00a8 43F01003 orr r3, r3, #16
6242 00ac 6364 str r3, [r4, #68]
2999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6243 .loc 1 2999 7 is_stmt 1 view .LVU2195
2999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6244 .loc 1 2999 7 view .LVU2196
6245 00ae 84F84020 strb r2, [r4, #64]
2999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6246 .loc 1 2999 7 view .LVU2197
3001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6247 .loc 1 3001 7 view .LVU2198
3001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6248 .loc 1 3001 14 is_stmt 0 view .LVU2199
6249 00b2 0125 movs r5, #1
6250 00b4 2DE0 b .L407
6251 .LVL399:
6252 .L408:
2890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 274
6253 .loc 1 2890 7 is_stmt 1 view .LVU2200
2890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6254 .loc 1 2890 23 is_stmt 0 view .LVU2201
6255 00b6 4FF40073 mov r3, #512
6256 00ba 6364 str r3, [r4, #68]
2891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6257 .loc 1 2891 7 is_stmt 1 view .LVU2202
2891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6258 .loc 1 2891 15 is_stmt 0 view .LVU2203
6259 00bc 0125 movs r5, #1
6260 00be 28E0 b .L407
6261 .L410:
2919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6262 .loc 1 2919 7 is_stmt 1 view .LVU2204
2919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6263 .loc 1 2919 28 is_stmt 0 view .LVU2205
6264 00c0 638D ldrh r3, [r4, #42]
2919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6265 .loc 1 2919 22 view .LVU2206
6266 00c2 2385 strh r3, [r4, #40] @ movhi
6267 00c4 CEE7 b .L411
6268 .L422:
2926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6269 .loc 1 2926 7 is_stmt 1 view .LVU2207
2926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6270 .loc 1 2926 30 is_stmt 0 view .LVU2208
6271 00c6 D2B2 uxtb r2, r2
6272 .LVL400:
2926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6273 .loc 1 2926 28 view .LVU2209
6274 00c8 8262 str r2, [r0, #40]
2929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6275 .loc 1 2929 7 is_stmt 1 view .LVU2210
2929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6276 .loc 1 2929 24 is_stmt 0 view .LVU2211
6277 00ca 4FF0FF33 mov r3, #-1
6278 00ce 2365 str r3, [r4, #80]
6279 00d0 CEE7 b .L413
6280 .L414:
2960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6281 .loc 1 2960 7 is_stmt 1 view .LVU2212
2960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6282 .loc 1 2960 23 is_stmt 0 view .LVU2213
6283 00d2 2023 movs r3, #32
6284 00d4 84F84130 strb r3, [r4, #65]
2961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6285 .loc 1 2961 7 is_stmt 1 view .LVU2214
2961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6286 .loc 1 2961 23 is_stmt 0 view .LVU2215
6287 00d8 0022 movs r2, #0
6288 00da 84F84220 strb r2, [r4, #66]
2964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6289 .loc 1 2964 7 is_stmt 1 view .LVU2216
2964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6290 .loc 1 2964 11 is_stmt 0 view .LVU2217
6291 00de 636C ldr r3, [r4, #68]
2964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 275
6292 .loc 1 2964 23 view .LVU2218
6293 00e0 43F08003 orr r3, r3, #128
6294 00e4 6364 str r3, [r4, #68]
2967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6295 .loc 1 2967 7 is_stmt 1 view .LVU2219
2967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6296 .loc 1 2967 7 view .LVU2220
6297 00e6 84F84020 strb r2, [r4, #64]
2967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6298 .loc 1 2967 7 view .LVU2221
2969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6299 .loc 1 2969 7 view .LVU2222
2969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6300 .loc 1 2969 14 is_stmt 0 view .LVU2223
6301 00ea 0125 movs r5, #1
6302 00ec 11E0 b .L407
6303 .LVL401:
6304 .L423:
2975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6305 .loc 1 2975 7 is_stmt 1 view .LVU2224
6306 00ee 104B ldr r3, .L424+16
6307 00f0 0093 str r3, [sp]
6308 00f2 4FF08073 mov r3, #16777216
6309 00f6 FAB2 uxtb r2, r7
6310 00f8 3146 mov r1, r6
6311 00fa 2046 mov r0, r4
6312 .LVL402:
2975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6313 .loc 1 2975 7 is_stmt 0 view .LVU2225
6314 00fc FFF7FEFF bl I2C_TransferConfig
6315 .LVL403:
2978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6316 .loc 1 2978 7 is_stmt 1 view .LVU2226
2978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6317 .loc 1 2978 7 view .LVU2227
6318 0100 0023 movs r3, #0
6319 0102 84F84030 strb r3, [r4, #64]
2978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6320 .loc 1 2978 7 view .LVU2228
2987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6321 .loc 1 2987 7 view .LVU2229
6322 0106 0121 movs r1, #1
6323 0108 2046 mov r0, r4
6324 010a FFF7FEFF bl I2C_Enable_IRQ
6325 .LVL404:
3004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6326 .loc 1 3004 5 view .LVU2230
3004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6327 .loc 1 3004 12 is_stmt 0 view .LVU2231
6328 010e 00E0 b .L407
6329 .LVL405:
6330 .L417:
3008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6331 .loc 1 3008 12 view .LVU2232
6332 0110 0225 movs r5, #2
6333 .LVL406:
6334 .L407:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 276
3010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6335 .loc 1 3010 1 view .LVU2233
6336 0112 2846 mov r0, r5
6337 0114 03B0 add sp, sp, #12
6338 .cfi_remember_state
6339 .cfi_def_cfa_offset 20
6340 @ sp needed
6341 0116 F0BD pop {r4, r5, r6, r7, pc}
6342 .LVL407:
6343 .L418:
6344 .cfi_restore_state
2896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6345 .loc 1 2896 14 view .LVU2234
6346 0118 0225 movs r5, #2
6347 011a FAE7 b .L407
6348 .L419:
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6349 .loc 1 2900 5 view .LVU2235
6350 011c 0225 movs r5, #2
6351 011e F8E7 b .L407
6352 .L425:
6353 .align 2
6354 .L424:
6355 0120 0000FFFF .word -65536
6356 0124 00000000 .word I2C_Mem_ISR_DMA
6357 0128 00000000 .word I2C_DMAMasterTransmitCplt
6358 012c 00000000 .word I2C_DMAError
6359 0130 00200080 .word -2147475456
6360 .cfi_endproc
6361 .LFE150:
6363 .section .text.HAL_I2C_Mem_Read_DMA,"ax",%progbits
6364 .align 1
6365 .global HAL_I2C_Mem_Read_DMA
6366 .syntax unified
6367 .thumb
6368 .thumb_func
6370 HAL_I2C_Mem_Read_DMA:
6371 .LVL408:
6372 .LFB151:
3026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
6373 .loc 1 3026 1 is_stmt 1 view -0
6374 .cfi_startproc
6375 @ args = 8, pretend = 0, frame = 0
6376 @ frame_needed = 0, uses_anonymous_args = 0
3026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
6377 .loc 1 3026 1 is_stmt 0 view .LVU2237
6378 0000 F0B5 push {r4, r5, r6, r7, lr}
6379 .cfi_def_cfa_offset 20
6380 .cfi_offset 4, -20
6381 .cfi_offset 5, -16
6382 .cfi_offset 6, -12
6383 .cfi_offset 7, -8
6384 .cfi_offset 14, -4
6385 0002 83B0 sub sp, sp, #12
6386 .cfi_def_cfa_offset 32
6387 0004 0446 mov r4, r0
6388 0006 1F46 mov r7, r3
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 277
6389 0008 089D ldr r5, [sp, #32]
6390 000a BDF82430 ldrh r3, [sp, #36]
6391 .LVL409:
3027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6392 .loc 1 3027 3 is_stmt 1 view .LVU2238
3030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6393 .loc 1 3030 3 view .LVU2239
3032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6394 .loc 1 3032 3 view .LVU2240
3032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6395 .loc 1 3032 11 is_stmt 0 view .LVU2241
6396 000e 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
6397 .LVL410:
3032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6398 .loc 1 3032 11 view .LVU2242
6399 0012 C0B2 uxtb r0, r0
3032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6400 .loc 1 3032 6 view .LVU2243
6401 0014 2028 cmp r0, #32
6402 0016 7BD1 bne .L437
6403 0018 0E46 mov r6, r1
3034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6404 .loc 1 3034 5 is_stmt 1 view .LVU2244
3034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6405 .loc 1 3034 8 is_stmt 0 view .LVU2245
6406 001a 002D cmp r5, #0
6407 001c 4CD0 beq .L428
3034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6408 .loc 1 3034 25 discriminator 1 view .LVU2246
6409 001e 002B cmp r3, #0
6410 0020 4AD0 beq .L428
3040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6411 .loc 1 3040 5 is_stmt 1 view .LVU2247
3040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6412 .loc 1 3040 9 is_stmt 0 view .LVU2248
6413 0022 2168 ldr r1, [r4]
6414 .LVL411:
3040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6415 .loc 1 3040 9 view .LVU2249
6416 0024 8869 ldr r0, [r1, #24]
3040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6417 .loc 1 3040 8 view .LVU2250
6418 0026 10F4004F tst r0, #32768
6419 002a 75D1 bne .L438
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6420 .loc 1 3046 5 is_stmt 1 view .LVU2251
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6421 .loc 1 3046 5 view .LVU2252
6422 002c 94F84000 ldrb r0, [r4, #64] @ zero_extendqisi2
6423 0030 0128 cmp r0, #1
6424 0032 73D0 beq .L439
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6425 .loc 1 3046 5 discriminator 2 view .LVU2253
6426 0034 0120 movs r0, #1
6427 0036 84F84000 strb r0, [r4, #64]
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6428 .loc 1 3046 5 discriminator 2 view .LVU2254
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 278
3048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
6429 .loc 1 3048 5 discriminator 2 view .LVU2255
3048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MEM;
6430 .loc 1 3048 23 is_stmt 0 discriminator 2 view .LVU2256
6431 003a 2220 movs r0, #34
6432 003c 84F84100 strb r0, [r4, #65]
3049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6433 .loc 1 3049 5 is_stmt 1 discriminator 2 view .LVU2257
3049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6434 .loc 1 3049 23 is_stmt 0 discriminator 2 view .LVU2258
6435 0040 4020 movs r0, #64
6436 0042 84F84200 strb r0, [r4, #66]
3050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6437 .loc 1 3050 5 is_stmt 1 discriminator 2 view .LVU2259
3050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6438 .loc 1 3050 23 is_stmt 0 discriminator 2 view .LVU2260
6439 0046 0020 movs r0, #0
6440 0048 6064 str r0, [r4, #68]
3053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
6441 .loc 1 3053 5 is_stmt 1 discriminator 2 view .LVU2261
3053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
6442 .loc 1 3053 23 is_stmt 0 discriminator 2 view .LVU2262
6443 004a 6562 str r5, [r4, #36]
3054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6444 .loc 1 3054 5 is_stmt 1 discriminator 2 view .LVU2263
3054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
6445 .loc 1 3054 23 is_stmt 0 discriminator 2 view .LVU2264
6446 004c 6385 strh r3, [r4, #42] @ movhi
3055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_DMA;
6447 .loc 1 3055 5 is_stmt 1 discriminator 2 view .LVU2265
3055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Mem_ISR_DMA;
6448 .loc 1 3055 23 is_stmt 0 discriminator 2 view .LVU2266
6449 004e 344B ldr r3, .L444
6450 0050 E362 str r3, [r4, #44]
3056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
6451 .loc 1 3056 5 is_stmt 1 discriminator 2 view .LVU2267
3056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Devaddress = DevAddress;
6452 .loc 1 3056 23 is_stmt 0 discriminator 2 view .LVU2268
6453 0052 344B ldr r3, .L444+4
6454 0054 6363 str r3, [r4, #52]
3057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6455 .loc 1 3057 5 is_stmt 1 discriminator 2 view .LVU2269
3057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6456 .loc 1 3057 23 is_stmt 0 discriminator 2 view .LVU2270
6457 0056 E664 str r6, [r4, #76]
3059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6458 .loc 1 3059 5 is_stmt 1 discriminator 2 view .LVU2271
3059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6459 .loc 1 3059 13 is_stmt 0 discriminator 2 view .LVU2272
6460 0058 638D ldrh r3, [r4, #42]
6461 005a 9BB2 uxth r3, r3
3059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6462 .loc 1 3059 8 discriminator 2 view .LVU2273
6463 005c FF2B cmp r3, #255
6464 005e 30D9 bls .L430
3061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6465 .loc 1 3061 7 is_stmt 1 view .LVU2274
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 279
3061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6466 .loc 1 3061 22 is_stmt 0 view .LVU2275
6467 0060 FF23 movs r3, #255
6468 0062 2385 strh r3, [r4, #40] @ movhi
6469 .L431:
3069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6470 .loc 1 3069 5 is_stmt 1 view .LVU2276
3069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6471 .loc 1 3069 8 is_stmt 0 view .LVU2277
6472 0064 012F cmp r7, #1
6473 0066 2FD0 beq .L442
3081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6474 .loc 1 3081 7 is_stmt 1 view .LVU2278
3081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6475 .loc 1 3081 30 is_stmt 0 view .LVU2279
6476 0068 130A lsrs r3, r2, #8
3081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6477 .loc 1 3081 28 view .LVU2280
6478 006a 8B62 str r3, [r1, #40]
3084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6479 .loc 1 3084 7 is_stmt 1 view .LVU2281
3084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6480 .loc 1 3084 26 is_stmt 0 view .LVU2282
6481 006c D2B2 uxtb r2, r2
6482 .LVL412:
3084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6483 .loc 1 3084 24 view .LVU2283
6484 006e 2265 str r2, [r4, #80]
6485 .L433:
3087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6486 .loc 1 3087 5 is_stmt 1 view .LVU2284
3087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6487 .loc 1 3087 13 is_stmt 0 view .LVU2285
6488 0070 E36B ldr r3, [r4, #60]
3087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6489 .loc 1 3087 8 view .LVU2286
6490 0072 002B cmp r3, #0
6491 0074 2ED0 beq .L434
3090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6492 .loc 1 3090 7 is_stmt 1 view .LVU2287
3090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6493 .loc 1 3090 38 is_stmt 0 view .LVU2288
6494 0076 2C4A ldr r2, .L444+8
6495 0078 9A62 str r2, [r3, #40]
3093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6496 .loc 1 3093 7 is_stmt 1 view .LVU2289
3093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6497 .loc 1 3093 11 is_stmt 0 view .LVU2290
6498 007a E36B ldr r3, [r4, #60]
3093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6499 .loc 1 3093 39 view .LVU2291
6500 007c 2B4A ldr r2, .L444+12
6501 007e 1A63 str r2, [r3, #48]
3096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
6502 .loc 1 3096 7 is_stmt 1 view .LVU2292
3096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
6503 .loc 1 3096 11 is_stmt 0 view .LVU2293
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 280
6504 0080 E26B ldr r2, [r4, #60]
3096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
6505 .loc 1 3096 42 view .LVU2294
6506 0082 0023 movs r3, #0
6507 0084 D362 str r3, [r2, #44]
3097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6508 .loc 1 3097 7 is_stmt 1 view .LVU2295
3097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6509 .loc 1 3097 11 is_stmt 0 view .LVU2296
6510 0086 E26B ldr r2, [r4, #60]
3097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6511 .loc 1 3097 39 view .LVU2297
6512 0088 5363 str r3, [r2, #52]
3100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
6513 .loc 1 3100 7 is_stmt 1 view .LVU2298
3100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
6514 .loc 1 3100 69 is_stmt 0 view .LVU2299
6515 008a 2168 ldr r1, [r4]
3100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
6516 .loc 1 3100 23 view .LVU2300
6517 008c 238D ldrh r3, [r4, #40]
6518 008e 2A46 mov r2, r5
6519 0090 2431 adds r1, r1, #36
6520 0092 E06B ldr r0, [r4, #60]
6521 0094 FFF7FEFF bl HAL_DMA_Start_IT
6522 .LVL413:
3118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6523 .loc 1 3118 5 is_stmt 1 view .LVU2301
3118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6524 .loc 1 3118 8 is_stmt 0 view .LVU2302
6525 0098 0546 mov r5, r0
6526 009a 48B3 cbz r0, .L443
3138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6527 .loc 1 3138 7 is_stmt 1 view .LVU2303
3138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6528 .loc 1 3138 23 is_stmt 0 view .LVU2304
6529 009c 2023 movs r3, #32
6530 009e 84F84130 strb r3, [r4, #65]
3139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6531 .loc 1 3139 7 is_stmt 1 view .LVU2305
3139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6532 .loc 1 3139 23 is_stmt 0 view .LVU2306
6533 00a2 0022 movs r2, #0
6534 00a4 84F84220 strb r2, [r4, #66]
3142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6535 .loc 1 3142 7 is_stmt 1 view .LVU2307
3142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6536 .loc 1 3142 11 is_stmt 0 view .LVU2308
6537 00a8 636C ldr r3, [r4, #68]
3142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6538 .loc 1 3142 23 view .LVU2309
6539 00aa 43F01003 orr r3, r3, #16
6540 00ae 6364 str r3, [r4, #68]
3145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6541 .loc 1 3145 7 is_stmt 1 view .LVU2310
3145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6542 .loc 1 3145 7 view .LVU2311
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 281
6543 00b0 84F84020 strb r2, [r4, #64]
3145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6544 .loc 1 3145 7 view .LVU2312
3147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6545 .loc 1 3147 7 view .LVU2313
3147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6546 .loc 1 3147 14 is_stmt 0 view .LVU2314
6547 00b4 0125 movs r5, #1
6548 00b6 2CE0 b .L427
6549 .LVL414:
6550 .L428:
3036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6551 .loc 1 3036 7 is_stmt 1 view .LVU2315
3036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
6552 .loc 1 3036 23 is_stmt 0 view .LVU2316
6553 00b8 4FF40073 mov r3, #512
6554 00bc 6364 str r3, [r4, #68]
3037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6555 .loc 1 3037 7 is_stmt 1 view .LVU2317
3037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6556 .loc 1 3037 15 is_stmt 0 view .LVU2318
6557 00be 0125 movs r5, #1
6558 00c0 27E0 b .L427
6559 .LVL415:
6560 .L430:
3065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6561 .loc 1 3065 7 is_stmt 1 view .LVU2319
3065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6562 .loc 1 3065 28 is_stmt 0 view .LVU2320
6563 00c2 638D ldrh r3, [r4, #42]
3065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6564 .loc 1 3065 22 view .LVU2321
6565 00c4 2385 strh r3, [r4, #40] @ movhi
6566 00c6 CDE7 b .L431
6567 .L442:
3072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6568 .loc 1 3072 7 is_stmt 1 view .LVU2322
3072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6569 .loc 1 3072 30 is_stmt 0 view .LVU2323
6570 00c8 D2B2 uxtb r2, r2
6571 .LVL416:
3072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6572 .loc 1 3072 28 view .LVU2324
6573 00ca 8A62 str r2, [r1, #40]
3075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6574 .loc 1 3075 7 is_stmt 1 view .LVU2325
3075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6575 .loc 1 3075 24 is_stmt 0 view .LVU2326
6576 00cc 4FF0FF33 mov r3, #-1
6577 00d0 2365 str r3, [r4, #80]
6578 00d2 CDE7 b .L433
6579 .L434:
3106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6580 .loc 1 3106 7 is_stmt 1 view .LVU2327
3106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
6581 .loc 1 3106 23 is_stmt 0 view .LVU2328
6582 00d4 2023 movs r3, #32
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 282
6583 00d6 84F84130 strb r3, [r4, #65]
3107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6584 .loc 1 3107 7 is_stmt 1 view .LVU2329
3107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6585 .loc 1 3107 23 is_stmt 0 view .LVU2330
6586 00da 0022 movs r2, #0
6587 00dc 84F84220 strb r2, [r4, #66]
3110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6588 .loc 1 3110 7 is_stmt 1 view .LVU2331
3110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6589 .loc 1 3110 11 is_stmt 0 view .LVU2332
6590 00e0 636C ldr r3, [r4, #68]
3110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6591 .loc 1 3110 23 view .LVU2333
6592 00e2 43F08003 orr r3, r3, #128
6593 00e6 6364 str r3, [r4, #68]
3113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6594 .loc 1 3113 7 is_stmt 1 view .LVU2334
3113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6595 .loc 1 3113 7 view .LVU2335
6596 00e8 84F84020 strb r2, [r4, #64]
3113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6597 .loc 1 3113 7 view .LVU2336
3115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6598 .loc 1 3115 7 view .LVU2337
3115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6599 .loc 1 3115 14 is_stmt 0 view .LVU2338
6600 00ec 0125 movs r5, #1
6601 00ee 10E0 b .L427
6602 .LVL417:
6603 .L443:
3121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6604 .loc 1 3121 7 is_stmt 1 view .LVU2339
6605 00f0 0F4B ldr r3, .L444+16
6606 00f2 0093 str r3, [sp]
6607 00f4 0023 movs r3, #0
6608 00f6 FAB2 uxtb r2, r7
6609 00f8 3146 mov r1, r6
6610 00fa 2046 mov r0, r4
6611 .LVL418:
3121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6612 .loc 1 3121 7 is_stmt 0 view .LVU2340
6613 00fc FFF7FEFF bl I2C_TransferConfig
6614 .LVL419:
3124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6615 .loc 1 3124 7 is_stmt 1 view .LVU2341
3124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6616 .loc 1 3124 7 view .LVU2342
6617 0100 0023 movs r3, #0
6618 0102 84F84030 strb r3, [r4, #64]
3124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6619 .loc 1 3124 7 view .LVU2343
3133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6620 .loc 1 3133 7 view .LVU2344
6621 0106 0121 movs r1, #1
6622 0108 2046 mov r0, r4
6623 010a FFF7FEFF bl I2C_Enable_IRQ
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 283
6624 .LVL420:
3150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6625 .loc 1 3150 5 view .LVU2345
3150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6626 .loc 1 3150 12 is_stmt 0 view .LVU2346
6627 010e 00E0 b .L427
6628 .LVL421:
6629 .L437:
3154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6630 .loc 1 3154 12 view .LVU2347
6631 0110 0225 movs r5, #2
6632 .LVL422:
6633 .L427:
3156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6634 .loc 1 3156 1 view .LVU2348
6635 0112 2846 mov r0, r5
6636 0114 03B0 add sp, sp, #12
6637 .cfi_remember_state
6638 .cfi_def_cfa_offset 20
6639 @ sp needed
6640 0116 F0BD pop {r4, r5, r6, r7, pc}
6641 .LVL423:
6642 .L438:
6643 .cfi_restore_state
3042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6644 .loc 1 3042 14 view .LVU2349
6645 0118 0225 movs r5, #2
6646 011a FAE7 b .L427
6647 .L439:
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6648 .loc 1 3046 5 view .LVU2350
6649 011c 0225 movs r5, #2
6650 011e F8E7 b .L427
6651 .L445:
6652 .align 2
6653 .L444:
6654 0120 0000FFFF .word -65536
6655 0124 00000000 .word I2C_Mem_ISR_DMA
6656 0128 00000000 .word I2C_DMAMasterReceiveCplt
6657 012c 00000000 .word I2C_DMAError
6658 0130 00200080 .word -2147475456
6659 .cfi_endproc
6660 .LFE151:
6662 .section .text.HAL_I2C_IsDeviceReady,"ax",%progbits
6663 .align 1
6664 .global HAL_I2C_IsDeviceReady
6665 .syntax unified
6666 .thumb
6667 .thumb_func
6669 HAL_I2C_IsDeviceReady:
6670 .LVL424:
6671 .LFB152:
3171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
6672 .loc 1 3171 1 is_stmt 1 view -0
6673 .cfi_startproc
6674 @ args = 0, pretend = 0, frame = 8
6675 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 284
3171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tickstart;
6676 .loc 1 3171 1 is_stmt 0 view .LVU2352
6677 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
6678 .cfi_def_cfa_offset 28
6679 .cfi_offset 4, -28
6680 .cfi_offset 5, -24
6681 .cfi_offset 6, -20
6682 .cfi_offset 7, -16
6683 .cfi_offset 8, -12
6684 .cfi_offset 9, -8
6685 .cfi_offset 14, -4
6686 0004 85B0 sub sp, sp, #20
6687 .cfi_def_cfa_offset 48
6688 0006 1D46 mov r5, r3
3172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6689 .loc 1 3172 3 is_stmt 1 view .LVU2353
3174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6690 .loc 1 3174 3 view .LVU2354
3174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6691 .loc 1 3174 17 is_stmt 0 view .LVU2355
6692 0008 0023 movs r3, #0
6693 .LVL425:
3174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6694 .loc 1 3174 17 view .LVU2356
6695 000a 0393 str r3, [sp, #12]
3176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** FlagStatus tmp2;
6696 .loc 1 3176 3 is_stmt 1 view .LVU2357
3177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6697 .loc 1 3177 3 view .LVU2358
3179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6698 .loc 1 3179 3 view .LVU2359
3179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6699 .loc 1 3179 11 is_stmt 0 view .LVU2360
6700 000c 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
6701 0010 DBB2 uxtb r3, r3
3179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6702 .loc 1 3179 6 view .LVU2361
6703 0012 202B cmp r3, #32
6704 0014 40F0A080 bne .L458
6705 0018 0646 mov r6, r0
6706 001a 8946 mov r9, r1
6707 001c 9046 mov r8, r2
3181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6708 .loc 1 3181 5 is_stmt 1 view .LVU2362
3181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6709 .loc 1 3181 9 is_stmt 0 view .LVU2363
6710 001e 0368 ldr r3, [r0]
6711 0020 9B69 ldr r3, [r3, #24]
3181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6712 .loc 1 3181 8 view .LVU2364
6713 0022 13F4004F tst r3, #32768
6714 0026 40F09980 bne .L459
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6715 .loc 1 3187 5 is_stmt 1 view .LVU2365
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6716 .loc 1 3187 5 view .LVU2366
6717 002a 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 285
6718 002e 012B cmp r3, #1
6719 0030 00F09680 beq .L460
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6720 .loc 1 3187 5 discriminator 2 view .LVU2367
6721 0034 0123 movs r3, #1
6722 0036 80F84030 strb r3, [r0, #64]
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6723 .loc 1 3187 5 discriminator 2 view .LVU2368
3189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6724 .loc 1 3189 5 discriminator 2 view .LVU2369
3189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
6725 .loc 1 3189 17 is_stmt 0 discriminator 2 view .LVU2370
6726 003a 2423 movs r3, #36
6727 003c 80F84130 strb r3, [r0, #65]
3190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6728 .loc 1 3190 5 is_stmt 1 discriminator 2 view .LVU2371
3190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6729 .loc 1 3190 21 is_stmt 0 discriminator 2 view .LVU2372
6730 0040 0023 movs r3, #0
6731 0042 4364 str r3, [r0, #68]
6732 0044 44E0 b .L457
6733 .LVL426:
6734 .L468:
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6735 .loc 1 3195 29 discriminator 1 view .LVU2373
6736 0046 C9F30903 ubfx r3, r9, #0, #10
6737 004a 43F00073 orr r3, r3, #33554432
6738 004e 43F40053 orr r3, r3, #8192
6739 0052 46E0 b .L449
6740 .LVL427:
6741 .L451:
3223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
6742 .loc 1 3223 9 is_stmt 1 view .LVU2374
3223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
6743 .loc 1 3223 16 is_stmt 0 view .LVU2375
6744 0054 3368 ldr r3, [r6]
6745 0056 9C69 ldr r4, [r3, #24]
6746 .LVL428:
3223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
6747 .loc 1 3223 16 view .LVU2376
6748 0058 C4F34014 ubfx r4, r4, #5, #1
6749 .LVL429:
3224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6750 .loc 1 3224 9 is_stmt 1 view .LVU2377
3224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6751 .loc 1 3224 16 is_stmt 0 view .LVU2378
6752 005c 9B69 ldr r3, [r3, #24]
6753 005e C3F30013 ubfx r3, r3, #4, #1
6754 .LVL430:
6755 .L450:
3204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6756 .loc 1 3204 30 is_stmt 1 view .LVU2379
6757 0062 C4B9 cbnz r4, .L453
3204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6758 .loc 1 3204 30 is_stmt 0 discriminator 1 view .LVU2380
6759 0064 BBB9 cbnz r3, .L453
3206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 286
6760 .loc 1 3206 9 is_stmt 1 view .LVU2381
3206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6761 .loc 1 3206 12 is_stmt 0 view .LVU2382
6762 0066 B5F1FF3F cmp r5, #-1
6763 006a F3D0 beq .L451
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6764 .loc 1 3208 11 is_stmt 1 view .LVU2383
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6765 .loc 1 3208 17 is_stmt 0 view .LVU2384
6766 006c FFF7FEFF bl HAL_GetTick
6767 .LVL431:
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6768 .loc 1 3208 31 view .LVU2385
6769 0070 C01B subs r0, r0, r7
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6770 .loc 1 3208 14 view .LVU2386
6771 0072 A842 cmp r0, r5
6772 0074 01D8 bhi .L452
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6773 .loc 1 3208 55 discriminator 1 view .LVU2387
6774 0076 002D cmp r5, #0
6775 0078 ECD1 bne .L451
6776 .L452:
3211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6777 .loc 1 3211 13 is_stmt 1 view .LVU2388
3211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6778 .loc 1 3211 25 is_stmt 0 view .LVU2389
6779 007a 2023 movs r3, #32
6780 007c 86F84130 strb r3, [r6, #65]
3214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6781 .loc 1 3214 13 is_stmt 1 view .LVU2390
3214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6782 .loc 1 3214 17 is_stmt 0 view .LVU2391
6783 0080 736C ldr r3, [r6, #68]
3214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6784 .loc 1 3214 29 view .LVU2392
6785 0082 43F02003 orr r3, r3, #32
6786 0086 7364 str r3, [r6, #68]
3217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6787 .loc 1 3217 13 is_stmt 1 view .LVU2393
3217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6788 .loc 1 3217 13 view .LVU2394
6789 0088 0023 movs r3, #0
6790 008a 86F84030 strb r3, [r6, #64]
3217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6791 .loc 1 3217 13 view .LVU2395
3219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6792 .loc 1 3219 13 view .LVU2396
3219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6793 .loc 1 3219 20 is_stmt 0 view .LVU2397
6794 008e 0120 movs r0, #1
6795 .LVL432:
6796 .L447:
3297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6797 .loc 1 3297 1 view .LVU2398
6798 0090 05B0 add sp, sp, #20
6799 .cfi_remember_state
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 287
6800 .cfi_def_cfa_offset 28
6801 @ sp needed
6802 0092 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
6803 .LVL433:
6804 .L453:
6805 .cfi_restore_state
3228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6806 .loc 1 3228 7 is_stmt 1 view .LVU2399
3228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6807 .loc 1 3228 11 is_stmt 0 view .LVU2400
6808 0096 3368 ldr r3, [r6]
6809 .LVL434:
3228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6810 .loc 1 3228 11 view .LVU2401
6811 0098 9B69 ldr r3, [r3, #24]
3228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6812 .loc 1 3228 10 view .LVU2402
6813 009a 13F0100F tst r3, #16
6814 009e 2DD0 beq .L465
3250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6815 .loc 1 3250 9 is_stmt 1 view .LVU2403
3250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6816 .loc 1 3250 13 is_stmt 0 view .LVU2404
6817 00a0 0097 str r7, [sp]
6818 00a2 2B46 mov r3, r5
6819 00a4 0022 movs r2, #0
6820 00a6 2021 movs r1, #32
6821 00a8 3046 mov r0, r6
6822 00aa FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
6823 .LVL435:
3250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6824 .loc 1 3250 12 view .LVU2405
6825 00ae 0028 cmp r0, #0
6826 00b0 5AD1 bne .L462
3256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6827 .loc 1 3256 9 is_stmt 1 view .LVU2406
6828 00b2 3368 ldr r3, [r6]
6829 00b4 1022 movs r2, #16
6830 00b6 DA61 str r2, [r3, #28]
3259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6831 .loc 1 3259 9 view .LVU2407
6832 00b8 3368 ldr r3, [r6]
6833 00ba 2022 movs r2, #32
6834 00bc DA61 str r2, [r3, #28]
3263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6835 .loc 1 3263 7 view .LVU2408
3263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6836 .loc 1 3263 22 is_stmt 0 view .LVU2409
6837 00be 039B ldr r3, [sp, #12]
3263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6838 .loc 1 3263 10 view .LVU2410
6839 00c0 4345 cmp r3, r8
6840 00c2 2CD0 beq .L466
6841 .L456:
3279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** } while (I2C_Trials < Trials);
6842 .loc 1 3279 7 is_stmt 1 view .LVU2411
3279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** } while (I2C_Trials < Trials);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 288
6843 .loc 1 3279 17 is_stmt 0 view .LVU2412
6844 00c4 039B ldr r3, [sp, #12]
6845 00c6 0133 adds r3, r3, #1
6846 00c8 0393 str r3, [sp, #12]
3280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6847 .loc 1 3280 25 is_stmt 1 view .LVU2413
6848 00ca 039B ldr r3, [sp, #12]
6849 00cc 4345 cmp r3, r8
6850 00ce 37D2 bcs .L467
6851 .LVL436:
6852 .L457:
3192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6853 .loc 1 3192 5 view .LVU2414
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6854 .loc 1 3195 7 view .LVU2415
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6855 .loc 1 3195 29 is_stmt 0 view .LVU2416
6856 00d0 F368 ldr r3, [r6, #12]
6857 00d2 012B cmp r3, #1
6858 00d4 B7D0 beq .L468
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6859 .loc 1 3195 29 discriminator 2 view .LVU2417
6860 00d6 C9F30903 ubfx r3, r9, #0, #10
6861 00da 43F00073 orr r3, r3, #33554432
6862 00de 43F42053 orr r3, r3, #10240
6863 .L449:
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6864 .loc 1 3195 11 discriminator 4 view .LVU2418
6865 00e2 3268 ldr r2, [r6]
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6866 .loc 1 3195 27 discriminator 4 view .LVU2419
6867 00e4 5360 str r3, [r2, #4]
3199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6868 .loc 1 3199 7 is_stmt 1 discriminator 4 view .LVU2420
3199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6869 .loc 1 3199 19 is_stmt 0 discriminator 4 view .LVU2421
6870 00e6 FFF7FEFF bl HAL_GetTick
6871 .LVL437:
6872 00ea 0746 mov r7, r0
6873 .LVL438:
3201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
6874 .loc 1 3201 7 is_stmt 1 discriminator 4 view .LVU2422
3201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** tmp2 = __HAL_I2C_GET_FLAG(hi2c, I2C_FLAG_AF);
6875 .loc 1 3201 14 is_stmt 0 discriminator 4 view .LVU2423
6876 00ec 3368 ldr r3, [r6]
6877 00ee 9C69 ldr r4, [r3, #24]
6878 00f0 C4F34014 ubfx r4, r4, #5, #1
6879 .LVL439:
3202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6880 .loc 1 3202 7 is_stmt 1 discriminator 4 view .LVU2424
3202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6881 .loc 1 3202 14 is_stmt 0 discriminator 4 view .LVU2425
6882 00f4 9B69 ldr r3, [r3, #24]
6883 00f6 C3F30013 ubfx r3, r3, #4, #1
6884 .LVL440:
3204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6885 .loc 1 3204 7 is_stmt 1 discriminator 4 view .LVU2426
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 289
3204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6886 .loc 1 3204 13 is_stmt 0 discriminator 4 view .LVU2427
6887 00fa B2E7 b .L450
6888 .LVL441:
6889 .L465:
3231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6890 .loc 1 3231 9 is_stmt 1 view .LVU2428
3231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6891 .loc 1 3231 13 is_stmt 0 view .LVU2429
6892 00fc 0097 str r7, [sp]
6893 00fe 2B46 mov r3, r5
6894 0100 0022 movs r2, #0
6895 0102 2021 movs r1, #32
6896 0104 3046 mov r0, r6
6897 0106 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
6898 .LVL442:
3231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6899 .loc 1 3231 12 view .LVU2430
6900 010a 58BB cbnz r0, .L461
3237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6901 .loc 1 3237 9 is_stmt 1 view .LVU2431
6902 010c 3268 ldr r2, [r6]
6903 010e 2023 movs r3, #32
6904 0110 D361 str r3, [r2, #28]
3240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6905 .loc 1 3240 9 view .LVU2432
3240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6906 .loc 1 3240 21 is_stmt 0 view .LVU2433
6907 0112 86F84130 strb r3, [r6, #65]
3243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6908 .loc 1 3243 9 is_stmt 1 view .LVU2434
3243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6909 .loc 1 3243 9 view .LVU2435
6910 0116 0023 movs r3, #0
6911 0118 86F84030 strb r3, [r6, #64]
3243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6912 .loc 1 3243 9 view .LVU2436
3245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6913 .loc 1 3245 9 view .LVU2437
3245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6914 .loc 1 3245 16 is_stmt 0 view .LVU2438
6915 011c B8E7 b .L447
6916 .L466:
3266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6917 .loc 1 3266 9 is_stmt 1 view .LVU2439
3266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6918 .loc 1 3266 13 is_stmt 0 view .LVU2440
6919 011e 3268 ldr r2, [r6]
3266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6920 .loc 1 3266 23 view .LVU2441
6921 0120 5368 ldr r3, [r2, #4]
3266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6922 .loc 1 3266 29 view .LVU2442
6923 0122 43F48043 orr r3, r3, #16384
6924 0126 5360 str r3, [r2, #4]
3269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6925 .loc 1 3269 9 is_stmt 1 view .LVU2443
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 290
3269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6926 .loc 1 3269 13 is_stmt 0 view .LVU2444
6927 0128 0097 str r7, [sp]
6928 012a 2B46 mov r3, r5
6929 012c 0022 movs r2, #0
6930 012e 2021 movs r1, #32
6931 0130 3046 mov r0, r6
6932 0132 FFF7FEFF bl I2C_WaitOnFlagUntilTimeout
6933 .LVL443:
3269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
6934 .loc 1 3269 12 view .LVU2445
6935 0136 C8B9 cbnz r0, .L463
3275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6936 .loc 1 3275 9 is_stmt 1 view .LVU2446
6937 0138 3368 ldr r3, [r6]
6938 013a 2022 movs r2, #32
6939 013c DA61 str r2, [r3, #28]
6940 013e C1E7 b .L456
6941 .L467:
3283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6942 .loc 1 3283 5 view .LVU2447
3283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6943 .loc 1 3283 17 is_stmt 0 view .LVU2448
6944 0140 2023 movs r3, #32
6945 0142 86F84130 strb r3, [r6, #65]
3286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6946 .loc 1 3286 5 is_stmt 1 view .LVU2449
3286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6947 .loc 1 3286 9 is_stmt 0 view .LVU2450
6948 0146 736C ldr r3, [r6, #68]
3286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6949 .loc 1 3286 21 view .LVU2451
6950 0148 43F02003 orr r3, r3, #32
6951 014c 7364 str r3, [r6, #68]
3289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6952 .loc 1 3289 5 is_stmt 1 view .LVU2452
3289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6953 .loc 1 3289 5 view .LVU2453
6954 014e 0023 movs r3, #0
6955 0150 86F84030 strb r3, [r6, #64]
3289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6956 .loc 1 3289 5 view .LVU2454
3291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6957 .loc 1 3291 5 view .LVU2455
3291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6958 .loc 1 3291 12 is_stmt 0 view .LVU2456
6959 0154 0120 movs r0, #1
6960 0156 9BE7 b .L447
6961 .LVL444:
6962 .L458:
3295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6963 .loc 1 3295 12 view .LVU2457
6964 0158 0220 movs r0, #2
6965 .LVL445:
3295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6966 .loc 1 3295 12 view .LVU2458
6967 015a 99E7 b .L447
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 291
6968 .LVL446:
6969 .L459:
3183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6970 .loc 1 3183 14 view .LVU2459
6971 015c 0220 movs r0, #2
6972 .LVL447:
3183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6973 .loc 1 3183 14 view .LVU2460
6974 015e 97E7 b .L447
6975 .LVL448:
6976 .L460:
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6977 .loc 1 3187 5 view .LVU2461
6978 0160 0220 movs r0, #2
6979 .LVL449:
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
6980 .loc 1 3187 5 view .LVU2462
6981 0162 95E7 b .L447
6982 .LVL450:
6983 .L461:
3233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6984 .loc 1 3233 18 view .LVU2463
6985 0164 0120 movs r0, #1
6986 0166 93E7 b .L447
6987 .L462:
3252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6988 .loc 1 3252 18 view .LVU2464
6989 0168 0120 movs r0, #1
6990 016a 91E7 b .L447
6991 .L463:
3271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
6992 .loc 1 3271 18 view .LVU2465
6993 016c 0120 movs r0, #1
6994 016e 8FE7 b .L447
6995 .cfi_endproc
6996 .LFE152:
6998 .section .text.HAL_I2C_Master_Seq_Transmit_IT,"ax",%progbits
6999 .align 1
7000 .global HAL_I2C_Master_Seq_Transmit_IT
7001 .syntax unified
7002 .thumb
7003 .thumb_func
7005 HAL_I2C_Master_Seq_Transmit_IT:
7006 .LVL451:
7007 .LFB153:
3313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7008 .loc 1 3313 1 is_stmt 1 view -0
7009 .cfi_startproc
7010 @ args = 4, pretend = 0, frame = 0
7011 @ frame_needed = 0, uses_anonymous_args = 0
3313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7012 .loc 1 3313 1 is_stmt 0 view .LVU2467
7013 0000 70B5 push {r4, r5, r6, lr}
7014 .cfi_def_cfa_offset 16
7015 .cfi_offset 4, -16
7016 .cfi_offset 5, -12
7017 .cfi_offset 6, -8
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 292
7018 .cfi_offset 14, -4
7019 0002 82B0 sub sp, sp, #8
7020 .cfi_def_cfa_offset 24
7021 0004 0446 mov r4, r0
3314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_WRITE;
7022 .loc 1 3314 3 is_stmt 1 view .LVU2468
3315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7023 .loc 1 3315 3 view .LVU2469
7024 .LVL452:
3318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7025 .loc 1 3318 3 view .LVU2470
3320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7026 .loc 1 3320 3 view .LVU2471
3320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7027 .loc 1 3320 11 is_stmt 0 view .LVU2472
7028 0006 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
7029 .LVL453:
3320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7030 .loc 1 3320 11 view .LVU2473
7031 000a C0B2 uxtb r0, r0
3320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7032 .loc 1 3320 6 view .LVU2474
7033 000c 2028 cmp r0, #32
7034 000e 49D1 bne .L475
7035 0010 0D46 mov r5, r1
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7036 .loc 1 3323 5 is_stmt 1 view .LVU2475
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7037 .loc 1 3323 5 view .LVU2476
7038 0012 94F84010 ldrb r1, [r4, #64] @ zero_extendqisi2
7039 .LVL454:
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7040 .loc 1 3323 5 is_stmt 0 view .LVU2477
7041 0016 0129 cmp r1, #1
7042 0018 46D0 beq .L476
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7043 .loc 1 3323 5 is_stmt 1 discriminator 2 view .LVU2478
7044 001a 0121 movs r1, #1
7045 001c 84F84010 strb r1, [r4, #64]
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7046 .loc 1 3323 5 discriminator 2 view .LVU2479
3325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7047 .loc 1 3325 5 discriminator 2 view .LVU2480
3325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7048 .loc 1 3325 21 is_stmt 0 discriminator 2 view .LVU2481
7049 0020 2121 movs r1, #33
7050 0022 84F84110 strb r1, [r4, #65]
3326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7051 .loc 1 3326 5 is_stmt 1 discriminator 2 view .LVU2482
3326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7052 .loc 1 3326 21 is_stmt 0 discriminator 2 view .LVU2483
7053 0026 1021 movs r1, #16
7054 0028 84F84210 strb r1, [r4, #66]
3327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7055 .loc 1 3327 5 is_stmt 1 discriminator 2 view .LVU2484
3327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7056 .loc 1 3327 21 is_stmt 0 discriminator 2 view .LVU2485
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 293
7057 002c 0021 movs r1, #0
7058 002e 6164 str r1, [r4, #68]
3330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7059 .loc 1 3330 5 is_stmt 1 discriminator 2 view .LVU2486
3330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7060 .loc 1 3330 23 is_stmt 0 discriminator 2 view .LVU2487
7061 0030 6262 str r2, [r4, #36]
3331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7062 .loc 1 3331 5 is_stmt 1 discriminator 2 view .LVU2488
3331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7063 .loc 1 3331 23 is_stmt 0 discriminator 2 view .LVU2489
7064 0032 6385 strh r3, [r4, #42] @ movhi
3332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
7065 .loc 1 3332 5 is_stmt 1 discriminator 2 view .LVU2490
3332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
7066 .loc 1 3332 23 is_stmt 0 discriminator 2 view .LVU2491
7067 0034 069B ldr r3, [sp, #24]
7068 .LVL455:
3332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
7069 .loc 1 3332 23 discriminator 2 view .LVU2492
7070 0036 E362 str r3, [r4, #44]
7071 .LVL456:
3333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7072 .loc 1 3333 5 is_stmt 1 discriminator 2 view .LVU2493
3333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7073 .loc 1 3333 23 is_stmt 0 discriminator 2 view .LVU2494
7074 0038 1C4B ldr r3, .L480
7075 003a 6363 str r3, [r4, #52]
3336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7076 .loc 1 3336 5 is_stmt 1 discriminator 2 view .LVU2495
3336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7077 .loc 1 3336 13 is_stmt 0 discriminator 2 view .LVU2496
7078 003c 638D ldrh r3, [r4, #42]
7079 003e 9BB2 uxth r3, r3
3336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7080 .loc 1 3336 8 discriminator 2 view .LVU2497
7081 0040 FF2B cmp r3, #255
7082 0042 0ED9 bls .L471
3338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7083 .loc 1 3338 7 is_stmt 1 view .LVU2498
3338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7084 .loc 1 3338 22 is_stmt 0 view .LVU2499
7085 0044 FF23 movs r3, #255
7086 0046 2385 strh r3, [r4, #40] @ movhi
3339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7087 .loc 1 3339 7 is_stmt 1 view .LVU2500
7088 .LVL457:
3339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7089 .loc 1 3339 16 is_stmt 0 view .LVU2501
7090 0048 4FF08076 mov r6, #16777216
7091 .LVL458:
7092 .L472:
3350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7093 .loc 1 3350 5 is_stmt 1 view .LVU2502
3350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7094 .loc 1 3350 14 is_stmt 0 view .LVU2503
7095 004c 236B ldr r3, [r4, #48]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 294
3350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7096 .loc 1 3350 8 view .LVU2504
7097 004e 112B cmp r3, #17
7098 0050 0BD1 bne .L473
3351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7099 .loc 1 3351 10 view .LVU2505
7100 0052 069B ldr r3, [sp, #24]
7101 0054 AA2B cmp r3, #170
7102 0056 08D0 beq .L473
3351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7103 .loc 1 3351 10 discriminator 2 view .LVU2506
7104 0058 B3F52A4F cmp r3, #43520
7105 005c 05D0 beq .L473
3353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7106 .loc 1 3353 19 view .LVU2507
7107 005e 0023 movs r3, #0
7108 0060 0CE0 b .L474
7109 .LVL459:
7110 .L471:
3343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7111 .loc 1 3343 7 is_stmt 1 view .LVU2508
3343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7112 .loc 1 3343 28 is_stmt 0 view .LVU2509
7113 0062 638D ldrh r3, [r4, #42]
3343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7114 .loc 1 3343 22 view .LVU2510
7115 0064 2385 strh r3, [r4, #40] @ movhi
3344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7116 .loc 1 3344 7 is_stmt 1 view .LVU2511
3344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7117 .loc 1 3344 16 is_stmt 0 view .LVU2512
7118 0066 E66A ldr r6, [r4, #44]
7119 .LVL460:
3344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7120 .loc 1 3344 16 view .LVU2513
7121 0068 F0E7 b .L472
7122 .L473:
3358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7123 .loc 1 3358 7 is_stmt 1 view .LVU2514
7124 006a 2046 mov r0, r4
7125 006c FFF7FEFF bl I2C_ConvertOtherXferOptions
7126 .LVL461:
3361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7127 .loc 1 3361 7 view .LVU2515
3361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7128 .loc 1 3361 15 is_stmt 0 view .LVU2516
7129 0070 638D ldrh r3, [r4, #42]
7130 0072 9BB2 uxth r3, r3
3361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7131 .loc 1 3361 10 view .LVU2517
7132 0074 FF2B cmp r3, #255
7133 0076 13D8 bhi .L478
3363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7134 .loc 1 3363 9 is_stmt 1 view .LVU2518
3363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7135 .loc 1 3363 18 is_stmt 0 view .LVU2519
7136 0078 E66A ldr r6, [r4, #44]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 295
7137 .LVL462:
3315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7138 .loc 1 3315 12 view .LVU2520
7139 007a 0D4B ldr r3, .L480+4
7140 .L474:
7141 .LVL463:
3368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7142 .loc 1 3368 5 is_stmt 1 view .LVU2521
7143 007c 0093 str r3, [sp]
7144 007e 3346 mov r3, r6
7145 .LVL464:
3368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7146 .loc 1 3368 5 is_stmt 0 view .LVU2522
7147 0080 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
7148 0084 2946 mov r1, r5
7149 0086 2046 mov r0, r4
7150 0088 FFF7FEFF bl I2C_TransferConfig
7151 .LVL465:
3371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7152 .loc 1 3371 5 is_stmt 1 view .LVU2523
3371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7153 .loc 1 3371 5 view .LVU2524
7154 008c 0025 movs r5, #0
7155 008e 84F84050 strb r5, [r4, #64]
3371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7156 .loc 1 3371 5 view .LVU2525
3380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7157 .loc 1 3380 5 view .LVU2526
7158 0092 0121 movs r1, #1
7159 0094 2046 mov r0, r4
7160 0096 FFF7FEFF bl I2C_Enable_IRQ
7161 .LVL466:
3382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7162 .loc 1 3382 5 view .LVU2527
3382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7163 .loc 1 3382 12 is_stmt 0 view .LVU2528
7164 009a 2846 mov r0, r5
7165 .LVL467:
7166 .L470:
3388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7167 .loc 1 3388 1 view .LVU2529
7168 009c 02B0 add sp, sp, #8
7169 .cfi_remember_state
7170 .cfi_def_cfa_offset 16
7171 @ sp needed
7172 009e 70BD pop {r4, r5, r6, pc}
7173 .LVL468:
7174 .L478:
7175 .cfi_restore_state
3315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7176 .loc 1 3315 12 view .LVU2530
7177 00a0 034B ldr r3, .L480+4
7178 00a2 EBE7 b .L474
7179 .LVL469:
7180 .L475:
3386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7181 .loc 1 3386 12 view .LVU2531
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 296
7182 00a4 0220 movs r0, #2
7183 00a6 F9E7 b .L470
7184 .LVL470:
7185 .L476:
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7186 .loc 1 3323 5 view .LVU2532
7187 00a8 0220 movs r0, #2
7188 00aa F7E7 b .L470
7189 .L481:
7190 .align 2
7191 .L480:
7192 00ac 00000000 .word I2C_Master_ISR_IT
7193 00b0 00200080 .word -2147475456
7194 .cfi_endproc
7195 .LFE153:
7197 .section .text.HAL_I2C_Master_Seq_Transmit_DMA,"ax",%progbits
7198 .align 1
7199 .global HAL_I2C_Master_Seq_Transmit_DMA
7200 .syntax unified
7201 .thumb
7202 .thumb_func
7204 HAL_I2C_Master_Seq_Transmit_DMA:
7205 .LVL471:
7206 .LFB154:
3404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7207 .loc 1 3404 1 is_stmt 1 view -0
7208 .cfi_startproc
7209 @ args = 4, pretend = 0, frame = 0
7210 @ frame_needed = 0, uses_anonymous_args = 0
3404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7211 .loc 1 3404 1 is_stmt 0 view .LVU2534
7212 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
7213 .cfi_def_cfa_offset 24
7214 .cfi_offset 4, -24
7215 .cfi_offset 5, -20
7216 .cfi_offset 6, -16
7217 .cfi_offset 7, -12
7218 .cfi_offset 8, -8
7219 .cfi_offset 14, -4
7220 0004 82B0 sub sp, sp, #8
7221 .cfi_def_cfa_offset 32
7222 0006 0446 mov r4, r0
7223 0008 1546 mov r5, r2
7224 000a 089A ldr r2, [sp, #32]
7225 .LVL472:
3405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_WRITE;
7226 .loc 1 3405 3 is_stmt 1 view .LVU2535
3406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
7227 .loc 1 3406 3 view .LVU2536
3407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7228 .loc 1 3407 3 view .LVU2537
3410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7229 .loc 1 3410 3 view .LVU2538
3412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7230 .loc 1 3412 3 view .LVU2539
3412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7231 .loc 1 3412 11 is_stmt 0 view .LVU2540
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 297
7232 000c 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
7233 .LVL473:
3412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7234 .loc 1 3412 11 view .LVU2541
7235 0010 C0B2 uxtb r0, r0
3412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7236 .loc 1 3412 6 view .LVU2542
7237 0012 2028 cmp r0, #32
7238 0014 40F09D80 bne .L493
7239 0018 0E46 mov r6, r1
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7240 .loc 1 3415 5 is_stmt 1 view .LVU2543
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7241 .loc 1 3415 5 view .LVU2544
7242 001a 94F84010 ldrb r1, [r4, #64] @ zero_extendqisi2
7243 .LVL474:
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7244 .loc 1 3415 5 is_stmt 0 view .LVU2545
7245 001e 0129 cmp r1, #1
7246 0020 00F09B80 beq .L494
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7247 .loc 1 3415 5 is_stmt 1 discriminator 2 view .LVU2546
7248 0024 0121 movs r1, #1
7249 0026 84F84010 strb r1, [r4, #64]
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7250 .loc 1 3415 5 discriminator 2 view .LVU2547
3417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7251 .loc 1 3417 5 discriminator 2 view .LVU2548
3417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7252 .loc 1 3417 21 is_stmt 0 discriminator 2 view .LVU2549
7253 002a 2121 movs r1, #33
7254 002c 84F84110 strb r1, [r4, #65]
3418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7255 .loc 1 3418 5 is_stmt 1 discriminator 2 view .LVU2550
3418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7256 .loc 1 3418 21 is_stmt 0 discriminator 2 view .LVU2551
7257 0030 1021 movs r1, #16
7258 0032 84F84210 strb r1, [r4, #66]
3419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7259 .loc 1 3419 5 is_stmt 1 discriminator 2 view .LVU2552
3419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7260 .loc 1 3419 21 is_stmt 0 discriminator 2 view .LVU2553
7261 0036 0021 movs r1, #0
7262 0038 6164 str r1, [r4, #68]
3422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7263 .loc 1 3422 5 is_stmt 1 discriminator 2 view .LVU2554
3422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7264 .loc 1 3422 23 is_stmt 0 discriminator 2 view .LVU2555
7265 003a 6562 str r5, [r4, #36]
3423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7266 .loc 1 3423 5 is_stmt 1 discriminator 2 view .LVU2556
3423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7267 .loc 1 3423 23 is_stmt 0 discriminator 2 view .LVU2557
7268 003c 6385 strh r3, [r4, #42] @ movhi
3424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
7269 .loc 1 3424 5 is_stmt 1 discriminator 2 view .LVU2558
3424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 298
7270 .loc 1 3424 23 is_stmt 0 discriminator 2 view .LVU2559
7271 003e E262 str r2, [r4, #44]
3425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7272 .loc 1 3425 5 is_stmt 1 discriminator 2 view .LVU2560
3425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7273 .loc 1 3425 23 is_stmt 0 discriminator 2 view .LVU2561
7274 0040 474B ldr r3, .L500
7275 .LVL475:
3425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7276 .loc 1 3425 23 discriminator 2 view .LVU2562
7277 0042 6363 str r3, [r4, #52]
3428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7278 .loc 1 3428 5 is_stmt 1 discriminator 2 view .LVU2563
3428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7279 .loc 1 3428 13 is_stmt 0 discriminator 2 view .LVU2564
7280 0044 638D ldrh r3, [r4, #42]
7281 0046 9BB2 uxth r3, r3
3428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7282 .loc 1 3428 8 discriminator 2 view .LVU2565
7283 0048 FF2B cmp r3, #255
7284 004a 0ED9 bls .L484
3430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7285 .loc 1 3430 7 is_stmt 1 view .LVU2566
3430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7286 .loc 1 3430 22 is_stmt 0 view .LVU2567
7287 004c FF23 movs r3, #255
7288 004e 2385 strh r3, [r4, #40] @ movhi
3431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7289 .loc 1 3431 7 is_stmt 1 view .LVU2568
7290 .LVL476:
3431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7291 .loc 1 3431 16 is_stmt 0 view .LVU2569
7292 0050 4FF08077 mov r7, #16777216
7293 .LVL477:
7294 .L485:
3442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7295 .loc 1 3442 5 is_stmt 1 view .LVU2570
3442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7296 .loc 1 3442 14 is_stmt 0 view .LVU2571
7297 0054 236B ldr r3, [r4, #48]
3442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7298 .loc 1 3442 8 view .LVU2572
7299 0056 112B cmp r3, #17
7300 0058 0BD1 bne .L486
3443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7301 .loc 1 3443 10 view .LVU2573
7302 005a AA2A cmp r2, #170
7303 005c 09D0 beq .L486
3443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7304 .loc 1 3443 10 discriminator 2 view .LVU2574
7305 005e B2F52A4F cmp r2, #43520
7306 0062 06D0 beq .L486
3445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7307 .loc 1 3445 19 view .LVU2575
7308 0064 4FF00008 mov r8, #0
7309 0068 0DE0 b .L487
7310 .LVL478:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 299
7311 .L484:
3435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7312 .loc 1 3435 7 is_stmt 1 view .LVU2576
3435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7313 .loc 1 3435 28 is_stmt 0 view .LVU2577
7314 006a 638D ldrh r3, [r4, #42]
3435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7315 .loc 1 3435 22 view .LVU2578
7316 006c 2385 strh r3, [r4, #40] @ movhi
3436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7317 .loc 1 3436 7 is_stmt 1 view .LVU2579
3436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7318 .loc 1 3436 16 is_stmt 0 view .LVU2580
7319 006e E76A ldr r7, [r4, #44]
7320 .LVL479:
3436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7321 .loc 1 3436 16 view .LVU2581
7322 0070 F0E7 b .L485
7323 .L486:
3450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7324 .loc 1 3450 7 is_stmt 1 view .LVU2582
7325 0072 2046 mov r0, r4
7326 0074 FFF7FEFF bl I2C_ConvertOtherXferOptions
7327 .LVL480:
3453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7328 .loc 1 3453 7 view .LVU2583
3453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7329 .loc 1 3453 15 is_stmt 0 view .LVU2584
7330 0078 638D ldrh r3, [r4, #42]
7331 007a 9BB2 uxth r3, r3
3453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7332 .loc 1 3453 10 view .LVU2585
7333 007c FF2B cmp r3, #255
7334 007e 27D8 bhi .L496
3455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7335 .loc 1 3455 9 is_stmt 1 view .LVU2586
3455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7336 .loc 1 3455 18 is_stmt 0 view .LVU2587
7337 0080 E76A ldr r7, [r4, #44]
7338 .LVL481:
3406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
7339 .loc 1 3406 12 view .LVU2588
7340 0082 DFF8EC80 ldr r8, .L500+16
7341 .L487:
7342 .LVL482:
3459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7343 .loc 1 3459 5 is_stmt 1 view .LVU2589
3459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7344 .loc 1 3459 13 is_stmt 0 view .LVU2590
7345 0086 228D ldrh r2, [r4, #40]
3459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7346 .loc 1 3459 8 view .LVU2591
7347 0088 002A cmp r2, #0
7348 008a 4ED0 beq .L488
3461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7349 .loc 1 3461 7 is_stmt 1 view .LVU2592
3461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 300
7350 .loc 1 3461 15 is_stmt 0 view .LVU2593
7351 008c A36B ldr r3, [r4, #56]
3461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7352 .loc 1 3461 10 view .LVU2594
7353 008e 13B3 cbz r3, .L489
3464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7354 .loc 1 3464 9 is_stmt 1 view .LVU2595
3464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7355 .loc 1 3464 40 is_stmt 0 view .LVU2596
7356 0090 344A ldr r2, .L500+4
7357 0092 9A62 str r2, [r3, #40]
3467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7358 .loc 1 3467 9 is_stmt 1 view .LVU2597
3467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7359 .loc 1 3467 13 is_stmt 0 view .LVU2598
7360 0094 A36B ldr r3, [r4, #56]
3467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7361 .loc 1 3467 41 view .LVU2599
7362 0096 344A ldr r2, .L500+8
7363 0098 1A63 str r2, [r3, #48]
3470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
7364 .loc 1 3470 9 is_stmt 1 view .LVU2600
3470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
7365 .loc 1 3470 13 is_stmt 0 view .LVU2601
7366 009a A26B ldr r2, [r4, #56]
3470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
7367 .loc 1 3470 44 view .LVU2602
7368 009c 0023 movs r3, #0
7369 009e D362 str r3, [r2, #44]
3471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7370 .loc 1 3471 9 is_stmt 1 view .LVU2603
3471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7371 .loc 1 3471 13 is_stmt 0 view .LVU2604
7372 00a0 A26B ldr r2, [r4, #56]
3471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7373 .loc 1 3471 41 view .LVU2605
7374 00a2 5363 str r3, [r2, #52]
3474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
7375 .loc 1 3474 9 is_stmt 1 view .LVU2606
3474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
7376 .loc 1 3474 88 is_stmt 0 view .LVU2607
7377 00a4 2268 ldr r2, [r4]
3474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
7378 .loc 1 3474 25 view .LVU2608
7379 00a6 238D ldrh r3, [r4, #40]
7380 00a8 2832 adds r2, r2, #40
7381 00aa 2946 mov r1, r5
7382 00ac A06B ldr r0, [r4, #56]
7383 00ae FFF7FEFF bl HAL_DMA_Start_IT
7384 .LVL483:
3492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7385 .loc 1 3492 7 is_stmt 1 view .LVU2609
3492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7386 .loc 1 3492 10 is_stmt 0 view .LVU2610
7387 00b2 F0B1 cbz r0, .L499
3515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7388 .loc 1 3515 9 is_stmt 1 view .LVU2611
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 301
3515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7389 .loc 1 3515 25 is_stmt 0 view .LVU2612
7390 00b4 2023 movs r3, #32
7391 00b6 84F84130 strb r3, [r4, #65]
3516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7392 .loc 1 3516 9 is_stmt 1 view .LVU2613
3516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7393 .loc 1 3516 25 is_stmt 0 view .LVU2614
7394 00ba 0022 movs r2, #0
7395 00bc 84F84220 strb r2, [r4, #66]
3519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7396 .loc 1 3519 9 is_stmt 1 view .LVU2615
3519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7397 .loc 1 3519 13 is_stmt 0 view .LVU2616
7398 00c0 636C ldr r3, [r4, #68]
3519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7399 .loc 1 3519 25 view .LVU2617
7400 00c2 43F01003 orr r3, r3, #16
7401 00c6 6364 str r3, [r4, #68]
3522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7402 .loc 1 3522 9 is_stmt 1 view .LVU2618
3522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7403 .loc 1 3522 9 view .LVU2619
7404 00c8 84F84020 strb r2, [r4, #64]
3522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7405 .loc 1 3522 9 view .LVU2620
3524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7406 .loc 1 3524 9 view .LVU2621
3524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7407 .loc 1 3524 16 is_stmt 0 view .LVU2622
7408 00cc 0120 movs r0, #1
7409 .LVL484:
3524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7410 .loc 1 3524 16 view .LVU2623
7411 00ce 41E0 b .L483
7412 .LVL485:
7413 .L496:
3406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
7414 .loc 1 3406 12 view .LVU2624
7415 00d0 DFF89C80 ldr r8, .L500+16
7416 00d4 D7E7 b .L487
7417 .LVL486:
7418 .L489:
3480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7419 .loc 1 3480 9 is_stmt 1 view .LVU2625
3480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7420 .loc 1 3480 25 is_stmt 0 view .LVU2626
7421 00d6 2023 movs r3, #32
7422 00d8 84F84130 strb r3, [r4, #65]
3481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7423 .loc 1 3481 9 is_stmt 1 view .LVU2627
3481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7424 .loc 1 3481 25 is_stmt 0 view .LVU2628
7425 00dc 0022 movs r2, #0
7426 00de 84F84220 strb r2, [r4, #66]
3484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7427 .loc 1 3484 9 is_stmt 1 view .LVU2629
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 302
3484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7428 .loc 1 3484 13 is_stmt 0 view .LVU2630
7429 00e2 636C ldr r3, [r4, #68]
3484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7430 .loc 1 3484 25 view .LVU2631
7431 00e4 43F08003 orr r3, r3, #128
7432 00e8 6364 str r3, [r4, #68]
3487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7433 .loc 1 3487 9 is_stmt 1 view .LVU2632
3487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7434 .loc 1 3487 9 view .LVU2633
7435 00ea 84F84020 strb r2, [r4, #64]
3487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7436 .loc 1 3487 9 view .LVU2634
3489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7437 .loc 1 3489 9 view .LVU2635
3489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7438 .loc 1 3489 16 is_stmt 0 view .LVU2636
7439 00ee 0120 movs r0, #1
7440 00f0 30E0 b .L483
7441 .LVL487:
7442 .L499:
3495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7443 .loc 1 3495 9 is_stmt 1 view .LVU2637
7444 00f2 CDF80080 str r8, [sp]
7445 00f6 3B46 mov r3, r7
7446 00f8 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
7447 00fc 3146 mov r1, r6
7448 00fe 2046 mov r0, r4
7449 .LVL488:
3495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7450 .loc 1 3495 9 is_stmt 0 view .LVU2638
7451 0100 FFF7FEFF bl I2C_TransferConfig
7452 .LVL489:
3498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7453 .loc 1 3498 9 is_stmt 1 view .LVU2639
3498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7454 .loc 1 3498 13 is_stmt 0 view .LVU2640
7455 0104 638D ldrh r3, [r4, #42]
7456 0106 9BB2 uxth r3, r3
3498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7457 .loc 1 3498 32 view .LVU2641
7458 0108 228D ldrh r2, [r4, #40]
3498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7459 .loc 1 3498 25 view .LVU2642
7460 010a 9B1A subs r3, r3, r2
7461 010c 9BB2 uxth r3, r3
7462 010e 6385 strh r3, [r4, #42] @ movhi
3501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7463 .loc 1 3501 9 is_stmt 1 view .LVU2643
3501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7464 .loc 1 3501 9 view .LVU2644
7465 0110 0023 movs r3, #0
7466 0112 84F84030 strb r3, [r4, #64]
3501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7467 .loc 1 3501 9 view .LVU2645
3507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 303
7468 .loc 1 3507 9 view .LVU2646
7469 0116 1021 movs r1, #16
7470 0118 2046 mov r0, r4
7471 011a FFF7FEFF bl I2C_Enable_IRQ
7472 .LVL490:
3510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7473 .loc 1 3510 9 view .LVU2647
3510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7474 .loc 1 3510 13 is_stmt 0 view .LVU2648
7475 011e 2268 ldr r2, [r4]
3510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7476 .loc 1 3510 23 view .LVU2649
7477 0120 1368 ldr r3, [r2]
3510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7478 .loc 1 3510 29 view .LVU2650
7479 0122 43F48043 orr r3, r3, #16384
7480 0126 1360 str r3, [r2]
7481 0128 11E0 b .L492
7482 .LVL491:
7483 .L488:
3530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7484 .loc 1 3530 7 is_stmt 1 view .LVU2651
3530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7485 .loc 1 3530 21 is_stmt 0 view .LVU2652
7486 012a 104B ldr r3, .L500+12
7487 012c 6363 str r3, [r4, #52]
3534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_WRITE);
7488 .loc 1 3534 7 is_stmt 1 view .LVU2653
7489 012e 104B ldr r3, .L500+16
7490 0130 0093 str r3, [sp]
7491 0132 4FF00073 mov r3, #33554432
7492 0136 D2B2 uxtb r2, r2
7493 0138 3146 mov r1, r6
7494 013a 2046 mov r0, r4
7495 013c FFF7FEFF bl I2C_TransferConfig
7496 .LVL492:
3538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7497 .loc 1 3538 7 view .LVU2654
3538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7498 .loc 1 3538 7 view .LVU2655
7499 0140 0023 movs r3, #0
7500 0142 84F84030 strb r3, [r4, #64]
3538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7501 .loc 1 3538 7 view .LVU2656
3547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7502 .loc 1 3547 7 view .LVU2657
7503 0146 0121 movs r1, #1
7504 0148 2046 mov r0, r4
7505 014a FFF7FEFF bl I2C_Enable_IRQ
7506 .LVL493:
7507 .L492:
3550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7508 .loc 1 3550 5 view .LVU2658
3550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7509 .loc 1 3550 12 is_stmt 0 view .LVU2659
7510 014e 0020 movs r0, #0
7511 0150 00E0 b .L483
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 304
7512 .LVL494:
7513 .L493:
3554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7514 .loc 1 3554 12 view .LVU2660
7515 0152 0220 movs r0, #2
7516 .LVL495:
7517 .L483:
3556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7518 .loc 1 3556 1 view .LVU2661
7519 0154 02B0 add sp, sp, #8
7520 .cfi_remember_state
7521 .cfi_def_cfa_offset 24
7522 @ sp needed
7523 0156 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
7524 .LVL496:
7525 .L494:
7526 .cfi_restore_state
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7527 .loc 1 3415 5 view .LVU2662
7528 015a 0220 movs r0, #2
7529 015c FAE7 b .L483
7530 .L501:
7531 015e 00BF .align 2
7532 .L500:
7533 0160 00000000 .word I2C_Master_ISR_DMA
7534 0164 00000000 .word I2C_DMAMasterTransmitCplt
7535 0168 00000000 .word I2C_DMAError
7536 016c 00000000 .word I2C_Master_ISR_IT
7537 0170 00200080 .word -2147475456
7538 .cfi_endproc
7539 .LFE154:
7541 .section .text.HAL_I2C_Master_Seq_Receive_IT,"ax",%progbits
7542 .align 1
7543 .global HAL_I2C_Master_Seq_Receive_IT
7544 .syntax unified
7545 .thumb
7546 .thumb_func
7548 HAL_I2C_Master_Seq_Receive_IT:
7549 .LVL497:
7550 .LFB155:
3572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7551 .loc 1 3572 1 is_stmt 1 view -0
7552 .cfi_startproc
7553 @ args = 4, pretend = 0, frame = 0
7554 @ frame_needed = 0, uses_anonymous_args = 0
3572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7555 .loc 1 3572 1 is_stmt 0 view .LVU2664
7556 0000 70B5 push {r4, r5, r6, lr}
7557 .cfi_def_cfa_offset 16
7558 .cfi_offset 4, -16
7559 .cfi_offset 5, -12
7560 .cfi_offset 6, -8
7561 .cfi_offset 14, -4
7562 0002 82B0 sub sp, sp, #8
7563 .cfi_def_cfa_offset 24
7564 0004 0446 mov r4, r0
3573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_READ;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 305
7565 .loc 1 3573 3 is_stmt 1 view .LVU2665
3574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7566 .loc 1 3574 3 view .LVU2666
7567 .LVL498:
3577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7568 .loc 1 3577 3 view .LVU2667
3579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7569 .loc 1 3579 3 view .LVU2668
3579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7570 .loc 1 3579 11 is_stmt 0 view .LVU2669
7571 0006 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
7572 .LVL499:
3579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7573 .loc 1 3579 11 view .LVU2670
7574 000a C0B2 uxtb r0, r0
3579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7575 .loc 1 3579 6 view .LVU2671
7576 000c 2028 cmp r0, #32
7577 000e 49D1 bne .L508
7578 0010 0D46 mov r5, r1
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7579 .loc 1 3582 5 is_stmt 1 view .LVU2672
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7580 .loc 1 3582 5 view .LVU2673
7581 0012 94F84010 ldrb r1, [r4, #64] @ zero_extendqisi2
7582 .LVL500:
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7583 .loc 1 3582 5 is_stmt 0 view .LVU2674
7584 0016 0129 cmp r1, #1
7585 0018 46D0 beq .L509
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7586 .loc 1 3582 5 is_stmt 1 discriminator 2 view .LVU2675
7587 001a 0121 movs r1, #1
7588 001c 84F84010 strb r1, [r4, #64]
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7589 .loc 1 3582 5 discriminator 2 view .LVU2676
3584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7590 .loc 1 3584 5 discriminator 2 view .LVU2677
3584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7591 .loc 1 3584 21 is_stmt 0 discriminator 2 view .LVU2678
7592 0020 2221 movs r1, #34
7593 0022 84F84110 strb r1, [r4, #65]
3585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7594 .loc 1 3585 5 is_stmt 1 discriminator 2 view .LVU2679
3585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7595 .loc 1 3585 21 is_stmt 0 discriminator 2 view .LVU2680
7596 0026 1021 movs r1, #16
7597 0028 84F84210 strb r1, [r4, #66]
3586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7598 .loc 1 3586 5 is_stmt 1 discriminator 2 view .LVU2681
3586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7599 .loc 1 3586 21 is_stmt 0 discriminator 2 view .LVU2682
7600 002c 0021 movs r1, #0
7601 002e 6164 str r1, [r4, #68]
3589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7602 .loc 1 3589 5 is_stmt 1 discriminator 2 view .LVU2683
3589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 306
7603 .loc 1 3589 23 is_stmt 0 discriminator 2 view .LVU2684
7604 0030 6262 str r2, [r4, #36]
3590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7605 .loc 1 3590 5 is_stmt 1 discriminator 2 view .LVU2685
3590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7606 .loc 1 3590 23 is_stmt 0 discriminator 2 view .LVU2686
7607 0032 6385 strh r3, [r4, #42] @ movhi
3591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
7608 .loc 1 3591 5 is_stmt 1 discriminator 2 view .LVU2687
3591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
7609 .loc 1 3591 23 is_stmt 0 discriminator 2 view .LVU2688
7610 0034 069B ldr r3, [sp, #24]
7611 .LVL501:
3591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_IT;
7612 .loc 1 3591 23 discriminator 2 view .LVU2689
7613 0036 E362 str r3, [r4, #44]
7614 .LVL502:
3592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7615 .loc 1 3592 5 is_stmt 1 discriminator 2 view .LVU2690
3592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7616 .loc 1 3592 23 is_stmt 0 discriminator 2 view .LVU2691
7617 0038 1C4B ldr r3, .L513
7618 003a 6363 str r3, [r4, #52]
3595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7619 .loc 1 3595 5 is_stmt 1 discriminator 2 view .LVU2692
3595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7620 .loc 1 3595 13 is_stmt 0 discriminator 2 view .LVU2693
7621 003c 638D ldrh r3, [r4, #42]
7622 003e 9BB2 uxth r3, r3
3595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7623 .loc 1 3595 8 discriminator 2 view .LVU2694
7624 0040 FF2B cmp r3, #255
7625 0042 0ED9 bls .L504
3597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7626 .loc 1 3597 7 is_stmt 1 view .LVU2695
3597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7627 .loc 1 3597 22 is_stmt 0 view .LVU2696
7628 0044 FF23 movs r3, #255
7629 0046 2385 strh r3, [r4, #40] @ movhi
3598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7630 .loc 1 3598 7 is_stmt 1 view .LVU2697
7631 .LVL503:
3598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7632 .loc 1 3598 16 is_stmt 0 view .LVU2698
7633 0048 4FF08076 mov r6, #16777216
7634 .LVL504:
7635 .L505:
3609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7636 .loc 1 3609 5 is_stmt 1 view .LVU2699
3609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7637 .loc 1 3609 14 is_stmt 0 view .LVU2700
7638 004c 236B ldr r3, [r4, #48]
3609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7639 .loc 1 3609 8 view .LVU2701
7640 004e 122B cmp r3, #18
7641 0050 0BD1 bne .L506
3610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 307
7642 .loc 1 3610 10 view .LVU2702
7643 0052 069B ldr r3, [sp, #24]
7644 0054 AA2B cmp r3, #170
7645 0056 08D0 beq .L506
3610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7646 .loc 1 3610 10 discriminator 2 view .LVU2703
7647 0058 B3F52A4F cmp r3, #43520
7648 005c 05D0 beq .L506
3612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7649 .loc 1 3612 19 view .LVU2704
7650 005e 0023 movs r3, #0
7651 0060 0CE0 b .L507
7652 .LVL505:
7653 .L504:
3602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7654 .loc 1 3602 7 is_stmt 1 view .LVU2705
3602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7655 .loc 1 3602 28 is_stmt 0 view .LVU2706
7656 0062 638D ldrh r3, [r4, #42]
3602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7657 .loc 1 3602 22 view .LVU2707
7658 0064 2385 strh r3, [r4, #40] @ movhi
3603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7659 .loc 1 3603 7 is_stmt 1 view .LVU2708
3603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7660 .loc 1 3603 16 is_stmt 0 view .LVU2709
7661 0066 E66A ldr r6, [r4, #44]
7662 .LVL506:
3603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7663 .loc 1 3603 16 view .LVU2710
7664 0068 F0E7 b .L505
7665 .L506:
3617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7666 .loc 1 3617 7 is_stmt 1 view .LVU2711
7667 006a 2046 mov r0, r4
7668 006c FFF7FEFF bl I2C_ConvertOtherXferOptions
7669 .LVL507:
3620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7670 .loc 1 3620 7 view .LVU2712
3620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7671 .loc 1 3620 15 is_stmt 0 view .LVU2713
7672 0070 638D ldrh r3, [r4, #42]
7673 0072 9BB2 uxth r3, r3
3620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7674 .loc 1 3620 10 view .LVU2714
7675 0074 FF2B cmp r3, #255
7676 0076 13D8 bhi .L511
3622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7677 .loc 1 3622 9 is_stmt 1 view .LVU2715
3622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7678 .loc 1 3622 18 is_stmt 0 view .LVU2716
7679 0078 E66A ldr r6, [r4, #44]
7680 .LVL508:
3574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7681 .loc 1 3574 12 view .LVU2717
7682 007a 0D4B ldr r3, .L513+4
7683 .L507:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 308
7684 .LVL509:
3627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7685 .loc 1 3627 5 is_stmt 1 view .LVU2718
7686 007c 0093 str r3, [sp]
7687 007e 3346 mov r3, r6
7688 .LVL510:
3627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7689 .loc 1 3627 5 is_stmt 0 view .LVU2719
7690 0080 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
7691 0084 2946 mov r1, r5
7692 0086 2046 mov r0, r4
7693 0088 FFF7FEFF bl I2C_TransferConfig
7694 .LVL511:
3630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7695 .loc 1 3630 5 is_stmt 1 view .LVU2720
3630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7696 .loc 1 3630 5 view .LVU2721
7697 008c 0025 movs r5, #0
7698 008e 84F84050 strb r5, [r4, #64]
3630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7699 .loc 1 3630 5 view .LVU2722
3635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7700 .loc 1 3635 5 view .LVU2723
7701 0092 0221 movs r1, #2
7702 0094 2046 mov r0, r4
7703 0096 FFF7FEFF bl I2C_Enable_IRQ
7704 .LVL512:
3637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7705 .loc 1 3637 5 view .LVU2724
3637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7706 .loc 1 3637 12 is_stmt 0 view .LVU2725
7707 009a 2846 mov r0, r5
7708 .LVL513:
7709 .L503:
3643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7710 .loc 1 3643 1 view .LVU2726
7711 009c 02B0 add sp, sp, #8
7712 .cfi_remember_state
7713 .cfi_def_cfa_offset 16
7714 @ sp needed
7715 009e 70BD pop {r4, r5, r6, pc}
7716 .LVL514:
7717 .L511:
7718 .cfi_restore_state
3574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7719 .loc 1 3574 12 view .LVU2727
7720 00a0 034B ldr r3, .L513+4
7721 00a2 EBE7 b .L507
7722 .LVL515:
7723 .L508:
3641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7724 .loc 1 3641 12 view .LVU2728
7725 00a4 0220 movs r0, #2
7726 00a6 F9E7 b .L503
7727 .LVL516:
7728 .L509:
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 309
7729 .loc 1 3582 5 view .LVU2729
7730 00a8 0220 movs r0, #2
7731 00aa F7E7 b .L503
7732 .L514:
7733 .align 2
7734 .L513:
7735 00ac 00000000 .word I2C_Master_ISR_IT
7736 00b0 00240080 .word -2147474432
7737 .cfi_endproc
7738 .LFE155:
7740 .section .text.HAL_I2C_Master_Seq_Receive_DMA,"ax",%progbits
7741 .align 1
7742 .global HAL_I2C_Master_Seq_Receive_DMA
7743 .syntax unified
7744 .thumb
7745 .thumb_func
7747 HAL_I2C_Master_Seq_Receive_DMA:
7748 .LVL517:
7749 .LFB156:
3659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7750 .loc 1 3659 1 is_stmt 1 view -0
7751 .cfi_startproc
7752 @ args = 4, pretend = 0, frame = 0
7753 @ frame_needed = 0, uses_anonymous_args = 0
3659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
7754 .loc 1 3659 1 is_stmt 0 view .LVU2731
7755 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
7756 .cfi_def_cfa_offset 24
7757 .cfi_offset 4, -24
7758 .cfi_offset 5, -20
7759 .cfi_offset 6, -16
7760 .cfi_offset 7, -12
7761 .cfi_offset 8, -8
7762 .cfi_offset 14, -4
7763 0004 82B0 sub sp, sp, #8
7764 .cfi_def_cfa_offset 32
7765 0006 0446 mov r4, r0
7766 0008 1546 mov r5, r2
7767 000a 089A ldr r2, [sp, #32]
7768 .LVL518:
3660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xferrequest = I2C_GENERATE_START_READ;
7769 .loc 1 3660 3 is_stmt 1 view .LVU2732
3661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
7770 .loc 1 3661 3 view .LVU2733
3662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7771 .loc 1 3662 3 view .LVU2734
3665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7772 .loc 1 3665 3 view .LVU2735
3667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7773 .loc 1 3667 3 view .LVU2736
3667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7774 .loc 1 3667 11 is_stmt 0 view .LVU2737
7775 000c 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
7776 .LVL519:
3667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7777 .loc 1 3667 11 view .LVU2738
7778 0010 C0B2 uxtb r0, r0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 310
3667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7779 .loc 1 3667 6 view .LVU2739
7780 0012 2028 cmp r0, #32
7781 0014 40F09D80 bne .L526
7782 0018 0E46 mov r6, r1
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7783 .loc 1 3670 5 is_stmt 1 view .LVU2740
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7784 .loc 1 3670 5 view .LVU2741
7785 001a 94F84010 ldrb r1, [r4, #64] @ zero_extendqisi2
7786 .LVL520:
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7787 .loc 1 3670 5 is_stmt 0 view .LVU2742
7788 001e 0129 cmp r1, #1
7789 0020 00F09B80 beq .L527
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7790 .loc 1 3670 5 is_stmt 1 discriminator 2 view .LVU2743
7791 0024 0121 movs r1, #1
7792 0026 84F84010 strb r1, [r4, #64]
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7793 .loc 1 3670 5 discriminator 2 view .LVU2744
3672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7794 .loc 1 3672 5 discriminator 2 view .LVU2745
3672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_MASTER;
7795 .loc 1 3672 21 is_stmt 0 discriminator 2 view .LVU2746
7796 002a 2221 movs r1, #34
7797 002c 84F84110 strb r1, [r4, #65]
3673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7798 .loc 1 3673 5 is_stmt 1 discriminator 2 view .LVU2747
3673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
7799 .loc 1 3673 21 is_stmt 0 discriminator 2 view .LVU2748
7800 0030 1021 movs r1, #16
7801 0032 84F84210 strb r1, [r4, #66]
3674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7802 .loc 1 3674 5 is_stmt 1 discriminator 2 view .LVU2749
3674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7803 .loc 1 3674 21 is_stmt 0 discriminator 2 view .LVU2750
7804 0036 0021 movs r1, #0
7805 0038 6164 str r1, [r4, #68]
3677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7806 .loc 1 3677 5 is_stmt 1 discriminator 2 view .LVU2751
3677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
7807 .loc 1 3677 23 is_stmt 0 discriminator 2 view .LVU2752
7808 003a 6562 str r5, [r4, #36]
3678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7809 .loc 1 3678 5 is_stmt 1 discriminator 2 view .LVU2753
3678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
7810 .loc 1 3678 23 is_stmt 0 discriminator 2 view .LVU2754
7811 003c 6385 strh r3, [r4, #42] @ movhi
3679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
7812 .loc 1 3679 5 is_stmt 1 discriminator 2 view .LVU2755
3679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Master_ISR_DMA;
7813 .loc 1 3679 23 is_stmt 0 discriminator 2 view .LVU2756
7814 003e E262 str r2, [r4, #44]
3680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7815 .loc 1 3680 5 is_stmt 1 discriminator 2 view .LVU2757
3680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 311
7816 .loc 1 3680 23 is_stmt 0 discriminator 2 view .LVU2758
7817 0040 474B ldr r3, .L533
7818 .LVL521:
3680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7819 .loc 1 3680 23 discriminator 2 view .LVU2759
7820 0042 6363 str r3, [r4, #52]
3683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7821 .loc 1 3683 5 is_stmt 1 discriminator 2 view .LVU2760
3683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7822 .loc 1 3683 13 is_stmt 0 discriminator 2 view .LVU2761
7823 0044 638D ldrh r3, [r4, #42]
7824 0046 9BB2 uxth r3, r3
3683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7825 .loc 1 3683 8 discriminator 2 view .LVU2762
7826 0048 FF2B cmp r3, #255
7827 004a 0ED9 bls .L517
3685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7828 .loc 1 3685 7 is_stmt 1 view .LVU2763
3685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
7829 .loc 1 3685 22 is_stmt 0 view .LVU2764
7830 004c FF23 movs r3, #255
7831 004e 2385 strh r3, [r4, #40] @ movhi
3686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7832 .loc 1 3686 7 is_stmt 1 view .LVU2765
7833 .LVL522:
3686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7834 .loc 1 3686 16 is_stmt 0 view .LVU2766
7835 0050 4FF08077 mov r7, #16777216
7836 .LVL523:
7837 .L518:
3697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7838 .loc 1 3697 5 is_stmt 1 view .LVU2767
3697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7839 .loc 1 3697 14 is_stmt 0 view .LVU2768
7840 0054 236B ldr r3, [r4, #48]
3697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (IS_I2C_TRANSFER_OTHER_OPTIONS_REQUEST(XferOptions) == 0))
7841 .loc 1 3697 8 view .LVU2769
7842 0056 122B cmp r3, #18
7843 0058 0BD1 bne .L519
3698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7844 .loc 1 3698 10 view .LVU2770
7845 005a AA2A cmp r2, #170
7846 005c 09D0 beq .L519
3698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7847 .loc 1 3698 10 discriminator 2 view .LVU2771
7848 005e B2F52A4F cmp r2, #43520
7849 0062 06D0 beq .L519
3700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7850 .loc 1 3700 19 view .LVU2772
7851 0064 4FF00008 mov r8, #0
7852 0068 0DE0 b .L520
7853 .LVL524:
7854 .L517:
3690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7855 .loc 1 3690 7 is_stmt 1 view .LVU2773
3690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7856 .loc 1 3690 28 is_stmt 0 view .LVU2774
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 312
7857 006a 638D ldrh r3, [r4, #42]
3690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = hi2c->XferOptions;
7858 .loc 1 3690 22 view .LVU2775
7859 006c 2385 strh r3, [r4, #40] @ movhi
3691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7860 .loc 1 3691 7 is_stmt 1 view .LVU2776
3691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7861 .loc 1 3691 16 is_stmt 0 view .LVU2777
7862 006e E76A ldr r7, [r4, #44]
7863 .LVL525:
3691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7864 .loc 1 3691 16 view .LVU2778
7865 0070 F0E7 b .L518
7866 .L519:
3705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7867 .loc 1 3705 7 is_stmt 1 view .LVU2779
7868 0072 2046 mov r0, r4
7869 0074 FFF7FEFF bl I2C_ConvertOtherXferOptions
7870 .LVL526:
3708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7871 .loc 1 3708 7 view .LVU2780
3708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7872 .loc 1 3708 15 is_stmt 0 view .LVU2781
7873 0078 638D ldrh r3, [r4, #42]
7874 007a 9BB2 uxth r3, r3
3708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7875 .loc 1 3708 10 view .LVU2782
7876 007c FF2B cmp r3, #255
7877 007e 27D8 bhi .L529
3710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7878 .loc 1 3710 9 is_stmt 1 view .LVU2783
3710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7879 .loc 1 3710 18 is_stmt 0 view .LVU2784
7880 0080 E76A ldr r7, [r4, #44]
7881 .LVL527:
3661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
7882 .loc 1 3661 12 view .LVU2785
7883 0082 DFF8EC80 ldr r8, .L533+16
7884 .L520:
7885 .LVL528:
3714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7886 .loc 1 3714 5 is_stmt 1 view .LVU2786
3714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7887 .loc 1 3714 13 is_stmt 0 view .LVU2787
7888 0086 228D ldrh r2, [r4, #40]
3714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7889 .loc 1 3714 8 view .LVU2788
7890 0088 002A cmp r2, #0
7891 008a 4ED0 beq .L521
3716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7892 .loc 1 3716 7 is_stmt 1 view .LVU2789
3716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7893 .loc 1 3716 15 is_stmt 0 view .LVU2790
7894 008c E36B ldr r3, [r4, #60]
3716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7895 .loc 1 3716 10 view .LVU2791
7896 008e 13B3 cbz r3, .L522
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 313
3719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7897 .loc 1 3719 9 is_stmt 1 view .LVU2792
3719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7898 .loc 1 3719 40 is_stmt 0 view .LVU2793
7899 0090 344A ldr r2, .L533+4
7900 0092 9A62 str r2, [r3, #40]
3722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7901 .loc 1 3722 9 is_stmt 1 view .LVU2794
3722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7902 .loc 1 3722 13 is_stmt 0 view .LVU2795
7903 0094 E36B ldr r3, [r4, #60]
3722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7904 .loc 1 3722 41 view .LVU2796
7905 0096 344A ldr r2, .L533+8
7906 0098 1A63 str r2, [r3, #48]
3725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
7907 .loc 1 3725 9 is_stmt 1 view .LVU2797
3725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
7908 .loc 1 3725 13 is_stmt 0 view .LVU2798
7909 009a E26B ldr r2, [r4, #60]
3725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
7910 .loc 1 3725 44 view .LVU2799
7911 009c 0023 movs r3, #0
7912 009e D362 str r3, [r2, #44]
3726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7913 .loc 1 3726 9 is_stmt 1 view .LVU2800
3726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7914 .loc 1 3726 13 is_stmt 0 view .LVU2801
7915 00a0 E26B ldr r2, [r4, #60]
3726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7916 .loc 1 3726 41 view .LVU2802
7917 00a2 5363 str r3, [r2, #52]
3729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
7918 .loc 1 3729 9 is_stmt 1 view .LVU2803
3729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
7919 .loc 1 3729 71 is_stmt 0 view .LVU2804
7920 00a4 2168 ldr r1, [r4]
3729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
7921 .loc 1 3729 25 view .LVU2805
7922 00a6 238D ldrh r3, [r4, #40]
7923 00a8 2A46 mov r2, r5
7924 00aa 2431 adds r1, r1, #36
7925 00ac E06B ldr r0, [r4, #60]
7926 00ae FFF7FEFF bl HAL_DMA_Start_IT
7927 .LVL529:
3747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7928 .loc 1 3747 7 is_stmt 1 view .LVU2806
3747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
7929 .loc 1 3747 10 is_stmt 0 view .LVU2807
7930 00b2 F0B1 cbz r0, .L532
3770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7931 .loc 1 3770 9 is_stmt 1 view .LVU2808
3770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7932 .loc 1 3770 25 is_stmt 0 view .LVU2809
7933 00b4 2023 movs r3, #32
7934 00b6 84F84130 strb r3, [r4, #65]
3771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 314
7935 .loc 1 3771 9 is_stmt 1 view .LVU2810
3771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7936 .loc 1 3771 25 is_stmt 0 view .LVU2811
7937 00ba 0022 movs r2, #0
7938 00bc 84F84220 strb r2, [r4, #66]
3774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7939 .loc 1 3774 9 is_stmt 1 view .LVU2812
3774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7940 .loc 1 3774 13 is_stmt 0 view .LVU2813
7941 00c0 636C ldr r3, [r4, #68]
3774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7942 .loc 1 3774 25 view .LVU2814
7943 00c2 43F01003 orr r3, r3, #16
7944 00c6 6364 str r3, [r4, #68]
3777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7945 .loc 1 3777 9 is_stmt 1 view .LVU2815
3777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7946 .loc 1 3777 9 view .LVU2816
7947 00c8 84F84020 strb r2, [r4, #64]
3777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7948 .loc 1 3777 9 view .LVU2817
3779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7949 .loc 1 3779 9 view .LVU2818
3779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7950 .loc 1 3779 16 is_stmt 0 view .LVU2819
7951 00cc 0120 movs r0, #1
7952 .LVL530:
3779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7953 .loc 1 3779 16 view .LVU2820
7954 00ce 41E0 b .L516
7955 .LVL531:
7956 .L529:
3661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
7957 .loc 1 3661 12 view .LVU2821
7958 00d0 DFF89C80 ldr r8, .L533+16
7959 00d4 D7E7 b .L520
7960 .LVL532:
7961 .L522:
3735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7962 .loc 1 3735 9 is_stmt 1 view .LVU2822
3735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
7963 .loc 1 3735 25 is_stmt 0 view .LVU2823
7964 00d6 2023 movs r3, #32
7965 00d8 84F84130 strb r3, [r4, #65]
3736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7966 .loc 1 3736 9 is_stmt 1 view .LVU2824
3736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7967 .loc 1 3736 25 is_stmt 0 view .LVU2825
7968 00dc 0022 movs r2, #0
7969 00de 84F84220 strb r2, [r4, #66]
3739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7970 .loc 1 3739 9 is_stmt 1 view .LVU2826
3739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7971 .loc 1 3739 13 is_stmt 0 view .LVU2827
7972 00e2 636C ldr r3, [r4, #68]
3739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7973 .loc 1 3739 25 view .LVU2828
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 315
7974 00e4 43F08003 orr r3, r3, #128
7975 00e8 6364 str r3, [r4, #68]
3742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7976 .loc 1 3742 9 is_stmt 1 view .LVU2829
3742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7977 .loc 1 3742 9 view .LVU2830
7978 00ea 84F84020 strb r2, [r4, #64]
3742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7979 .loc 1 3742 9 view .LVU2831
3744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7980 .loc 1 3744 9 view .LVU2832
3744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
7981 .loc 1 3744 16 is_stmt 0 view .LVU2833
7982 00ee 0120 movs r0, #1
7983 00f0 30E0 b .L516
7984 .LVL533:
7985 .L532:
3750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7986 .loc 1 3750 9 is_stmt 1 view .LVU2834
7987 00f2 CDF80080 str r8, [sp]
7988 00f6 3B46 mov r3, r7
7989 00f8 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
7990 00fc 3146 mov r1, r6
7991 00fe 2046 mov r0, r4
7992 .LVL534:
3750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7993 .loc 1 3750 9 is_stmt 0 view .LVU2835
7994 0100 FFF7FEFF bl I2C_TransferConfig
7995 .LVL535:
3753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7996 .loc 1 3753 9 is_stmt 1 view .LVU2836
3753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
7997 .loc 1 3753 13 is_stmt 0 view .LVU2837
7998 0104 638D ldrh r3, [r4, #42]
7999 0106 9BB2 uxth r3, r3
3753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8000 .loc 1 3753 32 view .LVU2838
8001 0108 228D ldrh r2, [r4, #40]
3753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8002 .loc 1 3753 25 view .LVU2839
8003 010a 9B1A subs r3, r3, r2
8004 010c 9BB2 uxth r3, r3
8005 010e 6385 strh r3, [r4, #42] @ movhi
3756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8006 .loc 1 3756 9 is_stmt 1 view .LVU2840
3756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8007 .loc 1 3756 9 view .LVU2841
8008 0110 0023 movs r3, #0
8009 0112 84F84030 strb r3, [r4, #64]
3756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8010 .loc 1 3756 9 view .LVU2842
3762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8011 .loc 1 3762 9 view .LVU2843
8012 0116 1021 movs r1, #16
8013 0118 2046 mov r0, r4
8014 011a FFF7FEFF bl I2C_Enable_IRQ
8015 .LVL536:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 316
3765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8016 .loc 1 3765 9 view .LVU2844
3765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8017 .loc 1 3765 13 is_stmt 0 view .LVU2845
8018 011e 2268 ldr r2, [r4]
3765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8019 .loc 1 3765 23 view .LVU2846
8020 0120 1368 ldr r3, [r2]
3765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8021 .loc 1 3765 29 view .LVU2847
8022 0122 43F40043 orr r3, r3, #32768
8023 0126 1360 str r3, [r2]
8024 0128 11E0 b .L525
8025 .LVL537:
8026 .L521:
3785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8027 .loc 1 3785 7 is_stmt 1 view .LVU2848
3785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8028 .loc 1 3785 21 is_stmt 0 view .LVU2849
8029 012a 104B ldr r3, .L533+12
8030 012c 6363 str r3, [r4, #52]
3789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_GENERATE_START_READ);
8031 .loc 1 3789 7 is_stmt 1 view .LVU2850
8032 012e 104B ldr r3, .L533+16
8033 0130 0093 str r3, [sp]
8034 0132 4FF00073 mov r3, #33554432
8035 0136 D2B2 uxtb r2, r2
8036 0138 3146 mov r1, r6
8037 013a 2046 mov r0, r4
8038 013c FFF7FEFF bl I2C_TransferConfig
8039 .LVL538:
3793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8040 .loc 1 3793 7 view .LVU2851
3793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8041 .loc 1 3793 7 view .LVU2852
8042 0140 0023 movs r3, #0
8043 0142 84F84030 strb r3, [r4, #64]
3793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8044 .loc 1 3793 7 view .LVU2853
3802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8045 .loc 1 3802 7 view .LVU2854
8046 0146 0121 movs r1, #1
8047 0148 2046 mov r0, r4
8048 014a FFF7FEFF bl I2C_Enable_IRQ
8049 .LVL539:
8050 .L525:
3805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8051 .loc 1 3805 5 view .LVU2855
3805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8052 .loc 1 3805 12 is_stmt 0 view .LVU2856
8053 014e 0020 movs r0, #0
8054 0150 00E0 b .L516
8055 .LVL540:
8056 .L526:
3809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8057 .loc 1 3809 12 view .LVU2857
8058 0152 0220 movs r0, #2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 317
8059 .LVL541:
8060 .L516:
3811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8061 .loc 1 3811 1 view .LVU2858
8062 0154 02B0 add sp, sp, #8
8063 .cfi_remember_state
8064 .cfi_def_cfa_offset 24
8065 @ sp needed
8066 0156 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
8067 .LVL542:
8068 .L527:
8069 .cfi_restore_state
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8070 .loc 1 3670 5 view .LVU2859
8071 015a 0220 movs r0, #2
8072 015c FAE7 b .L516
8073 .L534:
8074 015e 00BF .align 2
8075 .L533:
8076 0160 00000000 .word I2C_Master_ISR_DMA
8077 0164 00000000 .word I2C_DMAMasterReceiveCplt
8078 0168 00000000 .word I2C_DMAError
8079 016c 00000000 .word I2C_Master_ISR_IT
8080 0170 00240080 .word -2147474432
8081 .cfi_endproc
8082 .LFE156:
8084 .section .text.HAL_I2C_Slave_Seq_Transmit_IT,"ax",%progbits
8085 .align 1
8086 .global HAL_I2C_Slave_Seq_Transmit_IT
8087 .syntax unified
8088 .thumb
8089 .thumb_func
8091 HAL_I2C_Slave_Seq_Transmit_IT:
8092 .LVL543:
8093 .LFB157:
3825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8094 .loc 1 3825 1 is_stmt 1 view -0
8095 .cfi_startproc
8096 @ args = 0, pretend = 0, frame = 0
8097 @ frame_needed = 0, uses_anonymous_args = 0
3825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8098 .loc 1 3825 1 is_stmt 0 view .LVU2861
8099 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
8100 .cfi_def_cfa_offset 24
8101 .cfi_offset 3, -24
8102 .cfi_offset 4, -20
8103 .cfi_offset 5, -16
8104 .cfi_offset 6, -12
8105 .cfi_offset 7, -8
8106 .cfi_offset 14, -4
8107 0002 0446 mov r4, r0
3827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8108 .loc 1 3827 3 is_stmt 1 view .LVU2862
3830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8109 .loc 1 3830 3 view .LVU2863
3832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8110 .loc 1 3832 3 view .LVU2864
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 318
3832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8111 .loc 1 3832 22 is_stmt 0 view .LVU2865
8112 0004 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
8113 .LVL544:
3832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8114 .loc 1 3832 6 view .LVU2866
8115 0008 00F02800 and r0, r0, #40
8116 000c 2828 cmp r0, #40
8117 000e 5ED1 bne .L541
8118 0010 0F46 mov r7, r1
8119 0012 1646 mov r6, r2
8120 0014 1D46 mov r5, r3
3834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8121 .loc 1 3834 5 is_stmt 1 view .LVU2867
3834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8122 .loc 1 3834 8 is_stmt 0 view .LVU2868
8123 0016 01B1 cbz r1, .L537
3834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8124 .loc 1 3834 25 discriminator 1 view .LVU2869
8125 0018 22B9 cbnz r2, .L538
8126 .L537:
3836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8127 .loc 1 3836 7 is_stmt 1 view .LVU2870
3836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8128 .loc 1 3836 23 is_stmt 0 view .LVU2871
8129 001a 4FF40073 mov r3, #512
8130 .LVL545:
3836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8131 .loc 1 3836 23 view .LVU2872
8132 001e 6364 str r3, [r4, #68]
3837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8133 .loc 1 3837 7 is_stmt 1 view .LVU2873
3837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8134 .loc 1 3837 15 is_stmt 0 view .LVU2874
8135 0020 0120 movs r0, #1
8136 0022 55E0 b .L536
8137 .LVL546:
8138 .L538:
3841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8139 .loc 1 3841 5 is_stmt 1 view .LVU2875
8140 0024 48F20101 movw r1, #32769
8141 .LVL547:
3841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8142 .loc 1 3841 5 is_stmt 0 view .LVU2876
8143 0028 2046 mov r0, r4
8144 002a FFF7FEFF bl I2C_Disable_IRQ
8145 .LVL548:
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8146 .loc 1 3844 5 is_stmt 1 view .LVU2877
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8147 .loc 1 3844 5 view .LVU2878
8148 002e 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
8149 0032 012B cmp r3, #1
8150 0034 4DD0 beq .L542
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8151 .loc 1 3844 5 discriminator 2 view .LVU2879
8152 0036 0123 movs r3, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 319
8153 0038 84F84030 strb r3, [r4, #64]
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8154 .loc 1 3844 5 discriminator 2 view .LVU2880
3848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8155 .loc 1 3848 5 discriminator 2 view .LVU2881
3848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8156 .loc 1 3848 13 is_stmt 0 discriminator 2 view .LVU2882
8157 003c 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
8158 0040 DBB2 uxtb r3, r3
3848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8159 .loc 1 3848 8 discriminator 2 view .LVU2883
8160 0042 2A2B cmp r3, #42
8161 0044 28D0 beq .L544
8162 .L539:
3874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
8163 .loc 1 3874 5 is_stmt 1 view .LVU2884
3874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
8164 .loc 1 3874 21 is_stmt 0 view .LVU2885
8165 0046 2923 movs r3, #41
8166 0048 84F84130 strb r3, [r4, #65]
3875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
8167 .loc 1 3875 5 is_stmt 1 view .LVU2886
3875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
8168 .loc 1 3875 21 is_stmt 0 view .LVU2887
8169 004c 2023 movs r3, #32
8170 004e 84F84230 strb r3, [r4, #66]
3876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8171 .loc 1 3876 5 is_stmt 1 view .LVU2888
3876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8172 .loc 1 3876 21 is_stmt 0 view .LVU2889
8173 0052 0023 movs r3, #0
8174 0054 6364 str r3, [r4, #68]
3879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8175 .loc 1 3879 5 is_stmt 1 view .LVU2890
3879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8176 .loc 1 3879 9 is_stmt 0 view .LVU2891
8177 0056 2268 ldr r2, [r4]
3879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8178 .loc 1 3879 19 view .LVU2892
8179 0058 5368 ldr r3, [r2, #4]
3879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8180 .loc 1 3879 25 view .LVU2893
8181 005a 23F40043 bic r3, r3, #32768
8182 005e 5360 str r3, [r2, #4]
3882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
8183 .loc 1 3882 5 is_stmt 1 view .LVU2894
3882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
8184 .loc 1 3882 23 is_stmt 0 view .LVU2895
8185 0060 6762 str r7, [r4, #36]
3883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
8186 .loc 1 3883 5 is_stmt 1 view .LVU2896
3883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
8187 .loc 1 3883 23 is_stmt 0 view .LVU2897
8188 0062 6685 strh r6, [r4, #42] @ movhi
3884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8189 .loc 1 3884 5 is_stmt 1 view .LVU2898
3884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 320
8190 .loc 1 3884 29 is_stmt 0 view .LVU2899
8191 0064 638D ldrh r3, [r4, #42]
3884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8192 .loc 1 3884 23 view .LVU2900
8193 0066 2385 strh r3, [r4, #40] @ movhi
3885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
8194 .loc 1 3885 5 is_stmt 1 view .LVU2901
3885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
8195 .loc 1 3885 23 is_stmt 0 view .LVU2902
8196 0068 E562 str r5, [r4, #44]
3886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8197 .loc 1 3886 5 is_stmt 1 view .LVU2903
3886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8198 .loc 1 3886 23 is_stmt 0 view .LVU2904
8199 006a 1B4B ldr r3, .L545
8200 006c 6363 str r3, [r4, #52]
3888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_RECEIVE) && (tmp != RESET))
8201 .loc 1 3888 5 is_stmt 1 view .LVU2905
3888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_RECEIVE) && (tmp != RESET))
8202 .loc 1 3888 11 is_stmt 0 view .LVU2906
8203 006e 2268 ldr r2, [r4]
8204 0070 9369 ldr r3, [r2, #24]
8205 0072 03F00803 and r3, r3, #8
8206 .LVL549:
3889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8207 .loc 1 3889 5 is_stmt 1 view .LVU2907
3889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8208 .loc 1 3889 10 is_stmt 0 view .LVU2908
8209 0076 9169 ldr r1, [r2, #24]
3889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8210 .loc 1 3889 8 view .LVU2909
8211 0078 11F4803F tst r1, #65536
8212 007c 02D0 beq .L540
3889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8213 .loc 1 3889 54 discriminator 1 view .LVU2910
8214 007e 0BB1 cbz r3, .L540
3893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8215 .loc 1 3893 7 is_stmt 1 view .LVU2911
8216 0080 0823 movs r3, #8
8217 .LVL550:
3893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8218 .loc 1 3893 7 is_stmt 0 view .LVU2912
8219 0082 D361 str r3, [r2, #28]
8220 .L540:
3897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8221 .loc 1 3897 5 is_stmt 1 view .LVU2913
3897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8222 .loc 1 3897 5 view .LVU2914
8223 0084 0025 movs r5, #0
8224 .LVL551:
3897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8225 .loc 1 3897 5 is_stmt 0 view .LVU2915
8226 0086 84F84050 strb r5, [r4, #64]
3897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8227 .loc 1 3897 5 is_stmt 1 view .LVU2916
3903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8228 .loc 1 3903 5 view .LVU2917
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 321
8229 008a 48F20101 movw r1, #32769
8230 008e 2046 mov r0, r4
8231 0090 FFF7FEFF bl I2C_Enable_IRQ
8232 .LVL552:
3905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8233 .loc 1 3905 5 view .LVU2918
3905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8234 .loc 1 3905 12 is_stmt 0 view .LVU2919
8235 0094 2846 mov r0, r5
8236 0096 1BE0 b .L536
8237 .LVL553:
8238 .L544:
3851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8239 .loc 1 3851 7 is_stmt 1 view .LVU2920
8240 0098 0221 movs r1, #2
8241 009a 2046 mov r0, r4
8242 009c FFF7FEFF bl I2C_Disable_IRQ
8243 .LVL554:
3854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8244 .loc 1 3854 7 view .LVU2921
3854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8245 .loc 1 3854 16 is_stmt 0 view .LVU2922
8246 00a0 2368 ldr r3, [r4]
3854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8247 .loc 1 3854 26 view .LVU2923
8248 00a2 1A68 ldr r2, [r3]
3854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8249 .loc 1 3854 10 view .LVU2924
8250 00a4 12F4004F tst r2, #32768
8251 00a8 CDD0 beq .L539
3856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8252 .loc 1 3856 9 is_stmt 1 view .LVU2925
3856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8253 .loc 1 3856 23 is_stmt 0 view .LVU2926
8254 00aa 1A68 ldr r2, [r3]
3856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8255 .loc 1 3856 29 view .LVU2927
8256 00ac 22F40042 bic r2, r2, #32768
8257 00b0 1A60 str r2, [r3]
3858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8258 .loc 1 3858 9 is_stmt 1 view .LVU2928
3858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8259 .loc 1 3858 17 is_stmt 0 view .LVU2929
8260 00b2 E36B ldr r3, [r4, #60]
3858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8261 .loc 1 3858 12 view .LVU2930
8262 00b4 002B cmp r3, #0
8263 00b6 C6D0 beq .L539
3862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8264 .loc 1 3862 11 is_stmt 1 view .LVU2931
3862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8265 .loc 1 3862 43 is_stmt 0 view .LVU2932
8266 00b8 084A ldr r2, .L545+4
8267 00ba 5A63 str r2, [r3, #52]
3865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8268 .loc 1 3865 11 is_stmt 1 view .LVU2933
3865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 322
8269 .loc 1 3865 15 is_stmt 0 view .LVU2934
8270 00bc E06B ldr r0, [r4, #60]
8271 00be FFF7FEFF bl HAL_DMA_Abort_IT
8272 .LVL555:
3865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8273 .loc 1 3865 14 view .LVU2935
8274 00c2 0028 cmp r0, #0
8275 00c4 BFD0 beq .L539
3868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8276 .loc 1 3868 13 is_stmt 1 view .LVU2936
3868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8277 .loc 1 3868 17 is_stmt 0 view .LVU2937
8278 00c6 E06B ldr r0, [r4, #60]
3868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8279 .loc 1 3868 25 view .LVU2938
8280 00c8 436B ldr r3, [r0, #52]
3868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8281 .loc 1 3868 13 view .LVU2939
8282 00ca 9847 blx r3
8283 .LVL556:
8284 00cc BBE7 b .L539
8285 .LVL557:
8286 .L541:
3909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8287 .loc 1 3909 12 view .LVU2940
8288 00ce 0120 movs r0, #1
8289 .LVL558:
8290 .L536:
3911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8291 .loc 1 3911 1 view .LVU2941
8292 00d0 F8BD pop {r3, r4, r5, r6, r7, pc}
8293 .LVL559:
8294 .L542:
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8295 .loc 1 3844 5 view .LVU2942
8296 00d2 0220 movs r0, #2
8297 00d4 FCE7 b .L536
8298 .L546:
8299 00d6 00BF .align 2
8300 .L545:
8301 00d8 00000000 .word I2C_Slave_ISR_IT
8302 00dc 00000000 .word I2C_DMAAbort
8303 .cfi_endproc
8304 .LFE157:
8306 .section .text.HAL_I2C_Slave_Seq_Transmit_DMA,"ax",%progbits
8307 .align 1
8308 .global HAL_I2C_Slave_Seq_Transmit_DMA
8309 .syntax unified
8310 .thumb
8311 .thumb_func
8313 HAL_I2C_Slave_Seq_Transmit_DMA:
8314 .LVL560:
8315 .LFB158:
3925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8316 .loc 1 3925 1 is_stmt 1 view -0
8317 .cfi_startproc
8318 @ args = 0, pretend = 0, frame = 0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 323
8319 @ frame_needed = 0, uses_anonymous_args = 0
3925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8320 .loc 1 3925 1 is_stmt 0 view .LVU2944
8321 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
8322 .cfi_def_cfa_offset 24
8323 .cfi_offset 3, -24
8324 .cfi_offset 4, -20
8325 .cfi_offset 5, -16
8326 .cfi_offset 6, -12
8327 .cfi_offset 7, -8
8328 .cfi_offset 14, -4
8329 0002 0446 mov r4, r0
3927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
8330 .loc 1 3927 3 is_stmt 1 view .LVU2945
3928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8331 .loc 1 3928 3 view .LVU2946
3931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8332 .loc 1 3931 3 view .LVU2947
3933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8333 .loc 1 3933 3 view .LVU2948
3933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8334 .loc 1 3933 22 is_stmt 0 view .LVU2949
8335 0004 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
8336 .LVL561:
3933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8337 .loc 1 3933 6 view .LVU2950
8338 0008 00F02800 and r0, r0, #40
8339 000c 2828 cmp r0, #40
8340 000e 40F0C080 bne .L558
8341 0012 0F46 mov r7, r1
8342 0014 1646 mov r6, r2
8343 0016 1D46 mov r5, r3
3935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8344 .loc 1 3935 5 is_stmt 1 view .LVU2951
3935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8345 .loc 1 3935 8 is_stmt 0 view .LVU2952
8346 0018 0029 cmp r1, #0
8347 001a 51D0 beq .L549
3935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8348 .loc 1 3935 25 discriminator 1 view .LVU2953
8349 001c 002A cmp r2, #0
8350 001e 4FD0 beq .L549
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8351 .loc 1 3942 5 is_stmt 1 view .LVU2954
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8352 .loc 1 3942 5 view .LVU2955
8353 0020 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
8354 .LVL562:
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8355 .loc 1 3942 5 is_stmt 0 view .LVU2956
8356 0024 012B cmp r3, #1
8357 0026 00F0B780 beq .L559
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8358 .loc 1 3942 5 is_stmt 1 discriminator 2 view .LVU2957
8359 002a 0123 movs r3, #1
8360 002c 84F84030 strb r3, [r4, #64]
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 324
8361 .loc 1 3942 5 discriminator 2 view .LVU2958
3945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8362 .loc 1 3945 5 discriminator 2 view .LVU2959
8363 0030 48F20101 movw r1, #32769
8364 .LVL563:
3945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8365 .loc 1 3945 5 is_stmt 0 discriminator 2 view .LVU2960
8366 0034 2046 mov r0, r4
8367 0036 FFF7FEFF bl I2C_Disable_IRQ
8368 .LVL564:
3949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8369 .loc 1 3949 5 is_stmt 1 discriminator 2 view .LVU2961
3949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8370 .loc 1 3949 13 is_stmt 0 discriminator 2 view .LVU2962
8371 003a 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
8372 003e DBB2 uxtb r3, r3
3949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8373 .loc 1 3949 8 discriminator 2 view .LVU2963
8374 0040 2A2B cmp r3, #42
8375 0042 42D0 beq .L562
3974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8376 .loc 1 3974 10 is_stmt 1 view .LVU2964
3974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8377 .loc 1 3974 18 is_stmt 0 view .LVU2965
8378 0044 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
8379 0048 DBB2 uxtb r3, r3
3974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8380 .loc 1 3974 13 view .LVU2966
8381 004a 292B cmp r3, #41
8382 004c 59D0 beq .L563
8383 .L552:
3999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8384 .loc 1 3999 5 is_stmt 1 view .LVU2967
4001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
8385 .loc 1 4001 5 view .LVU2968
4001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
8386 .loc 1 4001 21 is_stmt 0 view .LVU2969
8387 004e 2923 movs r3, #41
8388 0050 84F84130 strb r3, [r4, #65]
4002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
8389 .loc 1 4002 5 is_stmt 1 view .LVU2970
4002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
8390 .loc 1 4002 21 is_stmt 0 view .LVU2971
8391 0054 2023 movs r3, #32
8392 0056 84F84230 strb r3, [r4, #66]
4003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8393 .loc 1 4003 5 is_stmt 1 view .LVU2972
4003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8394 .loc 1 4003 21 is_stmt 0 view .LVU2973
8395 005a 0023 movs r3, #0
8396 005c 6364 str r3, [r4, #68]
4006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8397 .loc 1 4006 5 is_stmt 1 view .LVU2974
4006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8398 .loc 1 4006 9 is_stmt 0 view .LVU2975
8399 005e 2268 ldr r2, [r4]
4006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 325
8400 .loc 1 4006 19 view .LVU2976
8401 0060 5368 ldr r3, [r2, #4]
4006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8402 .loc 1 4006 25 view .LVU2977
8403 0062 23F40043 bic r3, r3, #32768
8404 0066 5360 str r3, [r2, #4]
4009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
8405 .loc 1 4009 5 is_stmt 1 view .LVU2978
4009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
8406 .loc 1 4009 23 is_stmt 0 view .LVU2979
8407 0068 6762 str r7, [r4, #36]
4010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
8408 .loc 1 4010 5 is_stmt 1 view .LVU2980
4010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
8409 .loc 1 4010 23 is_stmt 0 view .LVU2981
8410 006a 6685 strh r6, [r4, #42] @ movhi
4011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8411 .loc 1 4011 5 is_stmt 1 view .LVU2982
4011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8412 .loc 1 4011 29 is_stmt 0 view .LVU2983
8413 006c 638D ldrh r3, [r4, #42]
4011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8414 .loc 1 4011 23 view .LVU2984
8415 006e 2385 strh r3, [r4, #40] @ movhi
4012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
8416 .loc 1 4012 5 is_stmt 1 view .LVU2985
4012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
8417 .loc 1 4012 23 is_stmt 0 view .LVU2986
8418 0070 E562 str r5, [r4, #44]
4013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8419 .loc 1 4013 5 is_stmt 1 view .LVU2987
4013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8420 .loc 1 4013 23 is_stmt 0 view .LVU2988
8421 0072 4A4B ldr r3, .L564
8422 0074 6363 str r3, [r4, #52]
4015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8423 .loc 1 4015 5 is_stmt 1 view .LVU2989
4015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8424 .loc 1 4015 13 is_stmt 0 view .LVU2990
8425 0076 A36B ldr r3, [r4, #56]
4015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8426 .loc 1 4015 8 view .LVU2991
8427 0078 002B cmp r3, #0
8428 007a 59D0 beq .L553
4018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8429 .loc 1 4018 7 is_stmt 1 view .LVU2992
4018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8430 .loc 1 4018 38 is_stmt 0 view .LVU2993
8431 007c 484A ldr r2, .L564+4
8432 007e 9A62 str r2, [r3, #40]
4021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8433 .loc 1 4021 7 is_stmt 1 view .LVU2994
4021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8434 .loc 1 4021 11 is_stmt 0 view .LVU2995
8435 0080 A36B ldr r3, [r4, #56]
4021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8436 .loc 1 4021 39 view .LVU2996
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 326
8437 0082 484A ldr r2, .L564+8
8438 0084 1A63 str r2, [r3, #48]
4024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
8439 .loc 1 4024 7 is_stmt 1 view .LVU2997
4024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
8440 .loc 1 4024 11 is_stmt 0 view .LVU2998
8441 0086 A26B ldr r2, [r4, #56]
4024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmatx->XferAbortCallback = NULL;
8442 .loc 1 4024 42 view .LVU2999
8443 0088 0023 movs r3, #0
8444 008a D362 str r3, [r2, #44]
4025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8445 .loc 1 4025 7 is_stmt 1 view .LVU3000
4025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8446 .loc 1 4025 11 is_stmt 0 view .LVU3001
8447 008c A26B ldr r2, [r4, #56]
4025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8448 .loc 1 4025 39 view .LVU3002
8449 008e 5363 str r3, [r2, #52]
4028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
8450 .loc 1 4028 7 is_stmt 1 view .LVU3003
4028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
8451 .loc 1 4028 86 is_stmt 0 view .LVU3004
8452 0090 2268 ldr r2, [r4]
4028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize);
8453 .loc 1 4028 23 view .LVU3005
8454 0092 238D ldrh r3, [r4, #40]
8455 0094 2832 adds r2, r2, #40
8456 0096 3946 mov r1, r7
8457 0098 A06B ldr r0, [r4, #56]
8458 009a FFF7FEFF bl HAL_DMA_Start_IT
8459 .LVL565:
4046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8460 .loc 1 4046 5 is_stmt 1 view .LVU3006
4046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8461 .loc 1 4046 8 is_stmt 0 view .LVU3007
8462 009e 0546 mov r5, r0
8463 .LVL566:
4046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8464 .loc 1 4046 8 view .LVU3008
8465 00a0 0028 cmp r0, #0
8466 00a2 53D0 beq .L554
4057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
8467 .loc 1 4057 7 is_stmt 1 view .LVU3009
4057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
8468 .loc 1 4057 23 is_stmt 0 view .LVU3010
8469 00a4 2823 movs r3, #40
8470 00a6 84F84130 strb r3, [r4, #65]
4058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8471 .loc 1 4058 7 is_stmt 1 view .LVU3011
4058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8472 .loc 1 4058 23 is_stmt 0 view .LVU3012
8473 00aa 0022 movs r2, #0
8474 00ac 84F84220 strb r2, [r4, #66]
4061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8475 .loc 1 4061 7 is_stmt 1 view .LVU3013
4061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 327
8476 .loc 1 4061 11 is_stmt 0 view .LVU3014
8477 00b0 636C ldr r3, [r4, #68]
4061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8478 .loc 1 4061 23 view .LVU3015
8479 00b2 43F01003 orr r3, r3, #16
8480 00b6 6364 str r3, [r4, #68]
4064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8481 .loc 1 4064 7 is_stmt 1 view .LVU3016
4064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8482 .loc 1 4064 7 view .LVU3017
8483 00b8 84F84020 strb r2, [r4, #64]
4064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8484 .loc 1 4064 7 view .LVU3018
4066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8485 .loc 1 4066 7 view .LVU3019
4066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8486 .loc 1 4066 14 is_stmt 0 view .LVU3020
8487 00bc 0125 movs r5, #1
8488 00be 69E0 b .L548
8489 .LVL567:
8490 .L549:
3937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8491 .loc 1 3937 7 is_stmt 1 view .LVU3021
3937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8492 .loc 1 3937 23 is_stmt 0 view .LVU3022
8493 00c0 4FF40073 mov r3, #512
8494 .LVL568:
3937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8495 .loc 1 3937 23 view .LVU3023
8496 00c4 6364 str r3, [r4, #68]
3938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8497 .loc 1 3938 7 is_stmt 1 view .LVU3024
3938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8498 .loc 1 3938 15 is_stmt 0 view .LVU3025
8499 00c6 0125 movs r5, #1
8500 .LVL569:
3938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8501 .loc 1 3938 15 view .LVU3026
8502 00c8 64E0 b .L548
8503 .LVL570:
8504 .L562:
3952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8505 .loc 1 3952 7 is_stmt 1 view .LVU3027
8506 00ca 0221 movs r1, #2
8507 00cc 2046 mov r0, r4
8508 00ce FFF7FEFF bl I2C_Disable_IRQ
8509 .LVL571:
3954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8510 .loc 1 3954 7 view .LVU3028
3954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8511 .loc 1 3954 16 is_stmt 0 view .LVU3029
8512 00d2 2368 ldr r3, [r4]
3954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8513 .loc 1 3954 26 view .LVU3030
8514 00d4 1A68 ldr r2, [r3]
3954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8515 .loc 1 3954 10 view .LVU3031
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 328
8516 00d6 12F4004F tst r2, #32768
8517 00da B8D0 beq .L552
3957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8518 .loc 1 3957 9 is_stmt 1 view .LVU3032
3957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8519 .loc 1 3957 17 is_stmt 0 view .LVU3033
8520 00dc E26B ldr r2, [r4, #60]
3957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8521 .loc 1 3957 12 view .LVU3034
8522 00de 002A cmp r2, #0
8523 00e0 B5D0 beq .L552
3959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8524 .loc 1 3959 11 is_stmt 1 view .LVU3035
3959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8525 .loc 1 3959 25 is_stmt 0 view .LVU3036
8526 00e2 1A68 ldr r2, [r3]
3959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8527 .loc 1 3959 31 view .LVU3037
8528 00e4 22F40042 bic r2, r2, #32768
8529 00e8 1A60 str r2, [r3]
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8530 .loc 1 3963 11 is_stmt 1 view .LVU3038
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8531 .loc 1 3963 15 is_stmt 0 view .LVU3039
8532 00ea E36B ldr r3, [r4, #60]
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8533 .loc 1 3963 43 view .LVU3040
8534 00ec 2E4A ldr r2, .L564+12
8535 00ee 5A63 str r2, [r3, #52]
3966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8536 .loc 1 3966 11 is_stmt 1 view .LVU3041
3966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8537 .loc 1 3966 15 is_stmt 0 view .LVU3042
8538 00f0 E06B ldr r0, [r4, #60]
8539 00f2 FFF7FEFF bl HAL_DMA_Abort_IT
8540 .LVL572:
3966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8541 .loc 1 3966 14 view .LVU3043
8542 00f6 0028 cmp r0, #0
8543 00f8 A9D0 beq .L552
3969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8544 .loc 1 3969 13 is_stmt 1 view .LVU3044
3969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8545 .loc 1 3969 17 is_stmt 0 view .LVU3045
8546 00fa E06B ldr r0, [r4, #60]
3969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8547 .loc 1 3969 25 view .LVU3046
8548 00fc 436B ldr r3, [r0, #52]
3969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8549 .loc 1 3969 13 view .LVU3047
8550 00fe 9847 blx r3
8551 .LVL573:
8552 0100 A5E7 b .L552
8553 .L563:
3976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8554 .loc 1 3976 7 is_stmt 1 view .LVU3048
3976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 329
8555 .loc 1 3976 16 is_stmt 0 view .LVU3049
8556 0102 2368 ldr r3, [r4]
3976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8557 .loc 1 3976 26 view .LVU3050
8558 0104 1A68 ldr r2, [r3]
3976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8559 .loc 1 3976 10 view .LVU3051
8560 0106 12F4804F tst r2, #16384
8561 010a A0D0 beq .L552
3978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8562 .loc 1 3978 9 is_stmt 1 view .LVU3052
3978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8563 .loc 1 3978 23 is_stmt 0 view .LVU3053
8564 010c 1A68 ldr r2, [r3]
3978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8565 .loc 1 3978 29 view .LVU3054
8566 010e 22F48042 bic r2, r2, #16384
8567 0112 1A60 str r2, [r3]
3981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8568 .loc 1 3981 9 is_stmt 1 view .LVU3055
3981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8569 .loc 1 3981 17 is_stmt 0 view .LVU3056
8570 0114 A36B ldr r3, [r4, #56]
3981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8571 .loc 1 3981 12 view .LVU3057
8572 0116 002B cmp r3, #0
8573 0118 99D0 beq .L552
3985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8574 .loc 1 3985 11 is_stmt 1 view .LVU3058
3985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8575 .loc 1 3985 43 is_stmt 0 view .LVU3059
8576 011a 234A ldr r2, .L564+12
8577 011c 5A63 str r2, [r3, #52]
3988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8578 .loc 1 3988 11 is_stmt 1 view .LVU3060
3988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8579 .loc 1 3988 15 is_stmt 0 view .LVU3061
8580 011e A06B ldr r0, [r4, #56]
8581 0120 FFF7FEFF bl HAL_DMA_Abort_IT
8582 .LVL574:
3988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8583 .loc 1 3988 14 view .LVU3062
8584 0124 0028 cmp r0, #0
8585 0126 92D0 beq .L552
3991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8586 .loc 1 3991 13 is_stmt 1 view .LVU3063
3991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8587 .loc 1 3991 17 is_stmt 0 view .LVU3064
8588 0128 A06B ldr r0, [r4, #56]
3991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8589 .loc 1 3991 25 view .LVU3065
8590 012a 436B ldr r3, [r0, #52]
3991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8591 .loc 1 3991 13 view .LVU3066
8592 012c 9847 blx r3
8593 .LVL575:
8594 012e 8EE7 b .L552
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 330
8595 .L553:
4034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
8596 .loc 1 4034 7 is_stmt 1 view .LVU3067
4034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
8597 .loc 1 4034 23 is_stmt 0 view .LVU3068
8598 0130 2823 movs r3, #40
8599 0132 84F84130 strb r3, [r4, #65]
4035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8600 .loc 1 4035 7 is_stmt 1 view .LVU3069
4035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8601 .loc 1 4035 23 is_stmt 0 view .LVU3070
8602 0136 0022 movs r2, #0
8603 0138 84F84220 strb r2, [r4, #66]
4038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8604 .loc 1 4038 7 is_stmt 1 view .LVU3071
4038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8605 .loc 1 4038 11 is_stmt 0 view .LVU3072
8606 013c 636C ldr r3, [r4, #68]
4038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8607 .loc 1 4038 23 view .LVU3073
8608 013e 43F08003 orr r3, r3, #128
8609 0142 6364 str r3, [r4, #68]
4041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8610 .loc 1 4041 7 is_stmt 1 view .LVU3074
4041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8611 .loc 1 4041 7 view .LVU3075
8612 0144 84F84020 strb r2, [r4, #64]
4041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8613 .loc 1 4041 7 view .LVU3076
4043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8614 .loc 1 4043 7 view .LVU3077
4043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8615 .loc 1 4043 14 is_stmt 0 view .LVU3078
8616 0148 0125 movs r5, #1
8617 .LVL576:
4043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8618 .loc 1 4043 14 view .LVU3079
8619 014a 23E0 b .L548
8620 .LVL577:
8621 .L554:
4049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8622 .loc 1 4049 7 is_stmt 1 view .LVU3080
4049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8623 .loc 1 4049 11 is_stmt 0 view .LVU3081
8624 014c 638D ldrh r3, [r4, #42]
8625 014e 9BB2 uxth r3, r3
4049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8626 .loc 1 4049 30 view .LVU3082
8627 0150 228D ldrh r2, [r4, #40]
4049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8628 .loc 1 4049 23 view .LVU3083
8629 0152 9B1A subs r3, r3, r2
8630 0154 9BB2 uxth r3, r3
8631 0156 6385 strh r3, [r4, #42] @ movhi
4052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8632 .loc 1 4052 7 is_stmt 1 view .LVU3084
4052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 331
8633 .loc 1 4052 22 is_stmt 0 view .LVU3085
8634 0158 0023 movs r3, #0
8635 015a 2385 strh r3, [r4, #40] @ movhi
4069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_RECEIVE) && (tmp != RESET))
8636 .loc 1 4069 5 is_stmt 1 view .LVU3086
4069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_RECEIVE) && (tmp != RESET))
8637 .loc 1 4069 11 is_stmt 0 view .LVU3087
8638 015c 2268 ldr r2, [r4]
8639 015e 9369 ldr r3, [r2, #24]
8640 0160 03F00803 and r3, r3, #8
8641 .LVL578:
4070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8642 .loc 1 4070 5 is_stmt 1 view .LVU3088
4070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8643 .loc 1 4070 10 is_stmt 0 view .LVU3089
8644 0164 9169 ldr r1, [r2, #24]
4070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8645 .loc 1 4070 8 view .LVU3090
8646 0166 11F4803F tst r1, #65536
8647 016a 0DD1 bne .L556
8648 .LVL579:
8649 .L557:
4078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8650 .loc 1 4078 5 is_stmt 1 view .LVU3091
4078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8651 .loc 1 4078 5 view .LVU3092
8652 016c 0023 movs r3, #0
8653 016e 84F84030 strb r3, [r4, #64]
4078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8654 .loc 1 4078 5 view .LVU3093
4081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8655 .loc 1 4081 5 view .LVU3094
4081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8656 .loc 1 4081 9 is_stmt 0 view .LVU3095
8657 0172 2268 ldr r2, [r4]
4081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8658 .loc 1 4081 19 view .LVU3096
8659 0174 1368 ldr r3, [r2]
4081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8660 .loc 1 4081 25 view .LVU3097
8661 0176 43F48043 orr r3, r3, #16384
8662 017a 1360 str r3, [r2]
4087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8663 .loc 1 4087 5 is_stmt 1 view .LVU3098
8664 017c 4FF40041 mov r1, #32768
8665 0180 2046 mov r0, r4
8666 .LVL580:
4087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8667 .loc 1 4087 5 is_stmt 0 view .LVU3099
8668 0182 FFF7FEFF bl I2C_Enable_IRQ
8669 .LVL581:
4089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8670 .loc 1 4089 5 is_stmt 1 view .LVU3100
4089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8671 .loc 1 4089 12 is_stmt 0 view .LVU3101
8672 0186 05E0 b .L548
8673 .LVL582:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 332
8674 .L556:
4070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8675 .loc 1 4070 54 discriminator 1 view .LVU3102
8676 0188 002B cmp r3, #0
8677 018a EFD0 beq .L557
4074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8678 .loc 1 4074 7 is_stmt 1 view .LVU3103
8679 018c 0823 movs r3, #8
8680 .LVL583:
4074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8681 .loc 1 4074 7 is_stmt 0 view .LVU3104
8682 018e D361 str r3, [r2, #28]
8683 0190 ECE7 b .L557
8684 .LVL584:
8685 .L558:
4093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8686 .loc 1 4093 12 view .LVU3105
8687 0192 0125 movs r5, #1
8688 .LVL585:
8689 .L548:
4095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8690 .loc 1 4095 1 view .LVU3106
8691 0194 2846 mov r0, r5
8692 0196 F8BD pop {r3, r4, r5, r6, r7, pc}
8693 .LVL586:
8694 .L559:
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8695 .loc 1 3942 5 view .LVU3107
8696 0198 0225 movs r5, #2
8697 .LVL587:
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8698 .loc 1 3942 5 view .LVU3108
8699 019a FBE7 b .L548
8700 .L565:
8701 .align 2
8702 .L564:
8703 019c 00000000 .word I2C_Slave_ISR_DMA
8704 01a0 00000000 .word I2C_DMASlaveTransmitCplt
8705 01a4 00000000 .word I2C_DMAError
8706 01a8 00000000 .word I2C_DMAAbort
8707 .cfi_endproc
8708 .LFE158:
8710 .section .text.HAL_I2C_Slave_Seq_Receive_IT,"ax",%progbits
8711 .align 1
8712 .global HAL_I2C_Slave_Seq_Receive_IT
8713 .syntax unified
8714 .thumb
8715 .thumb_func
8717 HAL_I2C_Slave_Seq_Receive_IT:
8718 .LVL588:
8719 .LFB159:
4109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8720 .loc 1 4109 1 is_stmt 1 view -0
8721 .cfi_startproc
8722 @ args = 0, pretend = 0, frame = 0
8723 @ frame_needed = 0, uses_anonymous_args = 0
4109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 333
8724 .loc 1 4109 1 is_stmt 0 view .LVU3110
8725 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
8726 .cfi_def_cfa_offset 24
8727 .cfi_offset 3, -24
8728 .cfi_offset 4, -20
8729 .cfi_offset 5, -16
8730 .cfi_offset 6, -12
8731 .cfi_offset 7, -8
8732 .cfi_offset 14, -4
8733 0002 0446 mov r4, r0
4111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8734 .loc 1 4111 3 is_stmt 1 view .LVU3111
4114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8735 .loc 1 4114 3 view .LVU3112
4116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8736 .loc 1 4116 3 view .LVU3113
4116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8737 .loc 1 4116 22 is_stmt 0 view .LVU3114
8738 0004 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
8739 .LVL589:
4116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8740 .loc 1 4116 6 view .LVU3115
8741 0008 00F02800 and r0, r0, #40
8742 000c 2828 cmp r0, #40
8743 000e 5ED1 bne .L572
8744 0010 0F46 mov r7, r1
8745 0012 1646 mov r6, r2
8746 0014 1D46 mov r5, r3
4118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8747 .loc 1 4118 5 is_stmt 1 view .LVU3116
4118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8748 .loc 1 4118 8 is_stmt 0 view .LVU3117
8749 0016 01B1 cbz r1, .L568
4118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8750 .loc 1 4118 25 discriminator 1 view .LVU3118
8751 0018 22B9 cbnz r2, .L569
8752 .L568:
4120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8753 .loc 1 4120 7 is_stmt 1 view .LVU3119
4120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8754 .loc 1 4120 23 is_stmt 0 view .LVU3120
8755 001a 4FF40073 mov r3, #512
8756 .LVL590:
4120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8757 .loc 1 4120 23 view .LVU3121
8758 001e 6364 str r3, [r4, #68]
4121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8759 .loc 1 4121 7 is_stmt 1 view .LVU3122
4121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8760 .loc 1 4121 15 is_stmt 0 view .LVU3123
8761 0020 0120 movs r0, #1
8762 0022 55E0 b .L567
8763 .LVL591:
8764 .L569:
4125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8765 .loc 1 4125 5 is_stmt 1 view .LVU3124
8766 0024 48F20201 movw r1, #32770
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 334
8767 .LVL592:
4125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8768 .loc 1 4125 5 is_stmt 0 view .LVU3125
8769 0028 2046 mov r0, r4
8770 002a FFF7FEFF bl I2C_Disable_IRQ
8771 .LVL593:
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8772 .loc 1 4128 5 is_stmt 1 view .LVU3126
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8773 .loc 1 4128 5 view .LVU3127
8774 002e 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
8775 0032 012B cmp r3, #1
8776 0034 4DD0 beq .L573
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8777 .loc 1 4128 5 discriminator 2 view .LVU3128
8778 0036 0123 movs r3, #1
8779 0038 84F84030 strb r3, [r4, #64]
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8780 .loc 1 4128 5 discriminator 2 view .LVU3129
4132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8781 .loc 1 4132 5 discriminator 2 view .LVU3130
4132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8782 .loc 1 4132 13 is_stmt 0 discriminator 2 view .LVU3131
8783 003c 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
8784 0040 DBB2 uxtb r3, r3
4132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8785 .loc 1 4132 8 discriminator 2 view .LVU3132
8786 0042 292B cmp r3, #41
8787 0044 28D0 beq .L575
8788 .L570:
4158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
8789 .loc 1 4158 5 is_stmt 1 view .LVU3133
4158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
8790 .loc 1 4158 21 is_stmt 0 view .LVU3134
8791 0046 2A23 movs r3, #42
8792 0048 84F84130 strb r3, [r4, #65]
4159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
8793 .loc 1 4159 5 is_stmt 1 view .LVU3135
4159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
8794 .loc 1 4159 21 is_stmt 0 view .LVU3136
8795 004c 2023 movs r3, #32
8796 004e 84F84230 strb r3, [r4, #66]
4160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8797 .loc 1 4160 5 is_stmt 1 view .LVU3137
4160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8798 .loc 1 4160 21 is_stmt 0 view .LVU3138
8799 0052 0023 movs r3, #0
8800 0054 6364 str r3, [r4, #68]
4163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8801 .loc 1 4163 5 is_stmt 1 view .LVU3139
4163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8802 .loc 1 4163 9 is_stmt 0 view .LVU3140
8803 0056 2268 ldr r2, [r4]
4163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8804 .loc 1 4163 19 view .LVU3141
8805 0058 5368 ldr r3, [r2, #4]
4163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 335
8806 .loc 1 4163 25 view .LVU3142
8807 005a 23F40043 bic r3, r3, #32768
8808 005e 5360 str r3, [r2, #4]
4166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
8809 .loc 1 4166 5 is_stmt 1 view .LVU3143
4166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
8810 .loc 1 4166 23 is_stmt 0 view .LVU3144
8811 0060 6762 str r7, [r4, #36]
4167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
8812 .loc 1 4167 5 is_stmt 1 view .LVU3145
4167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
8813 .loc 1 4167 23 is_stmt 0 view .LVU3146
8814 0062 6685 strh r6, [r4, #42] @ movhi
4168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8815 .loc 1 4168 5 is_stmt 1 view .LVU3147
4168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8816 .loc 1 4168 29 is_stmt 0 view .LVU3148
8817 0064 638D ldrh r3, [r4, #42]
4168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
8818 .loc 1 4168 23 view .LVU3149
8819 0066 2385 strh r3, [r4, #40] @ movhi
4169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
8820 .loc 1 4169 5 is_stmt 1 view .LVU3150
4169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
8821 .loc 1 4169 23 is_stmt 0 view .LVU3151
8822 0068 E562 str r5, [r4, #44]
4170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8823 .loc 1 4170 5 is_stmt 1 view .LVU3152
4170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8824 .loc 1 4170 23 is_stmt 0 view .LVU3153
8825 006a 1B4B ldr r3, .L576
8826 006c 6363 str r3, [r4, #52]
4172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_TRANSMIT) && (tmp != RESET))
8827 .loc 1 4172 5 is_stmt 1 view .LVU3154
4172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_TRANSMIT) && (tmp != RESET))
8828 .loc 1 4172 11 is_stmt 0 view .LVU3155
8829 006e 2268 ldr r2, [r4]
8830 0070 9369 ldr r3, [r2, #24]
8831 0072 03F00803 and r3, r3, #8
8832 .LVL594:
4173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8833 .loc 1 4173 5 is_stmt 1 view .LVU3156
4173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8834 .loc 1 4173 10 is_stmt 0 view .LVU3157
8835 0076 9169 ldr r1, [r2, #24]
4173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8836 .loc 1 4173 8 view .LVU3158
8837 0078 11F4803F tst r1, #65536
8838 007c 02D1 bne .L571
4173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8839 .loc 1 4173 55 discriminator 1 view .LVU3159
8840 007e 0BB1 cbz r3, .L571
4177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8841 .loc 1 4177 7 is_stmt 1 view .LVU3160
8842 0080 0823 movs r3, #8
8843 .LVL595:
4177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 336
8844 .loc 1 4177 7 is_stmt 0 view .LVU3161
8845 0082 D361 str r3, [r2, #28]
8846 .L571:
4181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8847 .loc 1 4181 5 is_stmt 1 view .LVU3162
4181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8848 .loc 1 4181 5 view .LVU3163
8849 0084 0025 movs r5, #0
8850 .LVL596:
4181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8851 .loc 1 4181 5 is_stmt 0 view .LVU3164
8852 0086 84F84050 strb r5, [r4, #64]
4181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8853 .loc 1 4181 5 is_stmt 1 view .LVU3165
4187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8854 .loc 1 4187 5 view .LVU3166
8855 008a 48F20201 movw r1, #32770
8856 008e 2046 mov r0, r4
8857 0090 FFF7FEFF bl I2C_Enable_IRQ
8858 .LVL597:
4189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8859 .loc 1 4189 5 view .LVU3167
4189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8860 .loc 1 4189 12 is_stmt 0 view .LVU3168
8861 0094 2846 mov r0, r5
8862 0096 1BE0 b .L567
8863 .LVL598:
8864 .L575:
4135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8865 .loc 1 4135 7 is_stmt 1 view .LVU3169
8866 0098 0121 movs r1, #1
8867 009a 2046 mov r0, r4
8868 009c FFF7FEFF bl I2C_Disable_IRQ
8869 .LVL599:
4137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8870 .loc 1 4137 7 view .LVU3170
4137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8871 .loc 1 4137 16 is_stmt 0 view .LVU3171
8872 00a0 2368 ldr r3, [r4]
4137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8873 .loc 1 4137 26 view .LVU3172
8874 00a2 1A68 ldr r2, [r3]
4137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8875 .loc 1 4137 10 view .LVU3173
8876 00a4 12F4804F tst r2, #16384
8877 00a8 CDD0 beq .L570
4139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8878 .loc 1 4139 9 is_stmt 1 view .LVU3174
4139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8879 .loc 1 4139 23 is_stmt 0 view .LVU3175
8880 00aa 1A68 ldr r2, [r3]
4139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8881 .loc 1 4139 29 view .LVU3176
8882 00ac 22F48042 bic r2, r2, #16384
8883 00b0 1A60 str r2, [r3]
4142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8884 .loc 1 4142 9 is_stmt 1 view .LVU3177
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 337
4142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8885 .loc 1 4142 17 is_stmt 0 view .LVU3178
8886 00b2 A36B ldr r3, [r4, #56]
4142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8887 .loc 1 4142 12 view .LVU3179
8888 00b4 002B cmp r3, #0
8889 00b6 C6D0 beq .L570
4146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8890 .loc 1 4146 11 is_stmt 1 view .LVU3180
4146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8891 .loc 1 4146 43 is_stmt 0 view .LVU3181
8892 00b8 084A ldr r2, .L576+4
8893 00ba 5A63 str r2, [r3, #52]
4149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8894 .loc 1 4149 11 is_stmt 1 view .LVU3182
4149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8895 .loc 1 4149 15 is_stmt 0 view .LVU3183
8896 00bc A06B ldr r0, [r4, #56]
8897 00be FFF7FEFF bl HAL_DMA_Abort_IT
8898 .LVL600:
4149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8899 .loc 1 4149 14 view .LVU3184
8900 00c2 0028 cmp r0, #0
8901 00c4 BFD0 beq .L570
4152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8902 .loc 1 4152 13 is_stmt 1 view .LVU3185
4152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8903 .loc 1 4152 17 is_stmt 0 view .LVU3186
8904 00c6 A06B ldr r0, [r4, #56]
4152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8905 .loc 1 4152 25 view .LVU3187
8906 00c8 436B ldr r3, [r0, #52]
4152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8907 .loc 1 4152 13 view .LVU3188
8908 00ca 9847 blx r3
8909 .LVL601:
8910 00cc BBE7 b .L570
8911 .LVL602:
8912 .L572:
4193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8913 .loc 1 4193 12 view .LVU3189
8914 00ce 0120 movs r0, #1
8915 .LVL603:
8916 .L567:
4195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8917 .loc 1 4195 1 view .LVU3190
8918 00d0 F8BD pop {r3, r4, r5, r6, r7, pc}
8919 .LVL604:
8920 .L573:
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8921 .loc 1 4128 5 view .LVU3191
8922 00d2 0220 movs r0, #2
8923 00d4 FCE7 b .L567
8924 .L577:
8925 00d6 00BF .align 2
8926 .L576:
8927 00d8 00000000 .word I2C_Slave_ISR_IT
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 338
8928 00dc 00000000 .word I2C_DMAAbort
8929 .cfi_endproc
8930 .LFE159:
8932 .section .text.HAL_I2C_Slave_Seq_Receive_DMA,"ax",%progbits
8933 .align 1
8934 .global HAL_I2C_Slave_Seq_Receive_DMA
8935 .syntax unified
8936 .thumb
8937 .thumb_func
8939 HAL_I2C_Slave_Seq_Receive_DMA:
8940 .LVL605:
8941 .LFB160:
4209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8942 .loc 1 4209 1 is_stmt 1 view -0
8943 .cfi_startproc
8944 @ args = 0, pretend = 0, frame = 0
8945 @ frame_needed = 0, uses_anonymous_args = 0
4209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
8946 .loc 1 4209 1 is_stmt 0 view .LVU3193
8947 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
8948 .cfi_def_cfa_offset 24
8949 .cfi_offset 3, -24
8950 .cfi_offset 4, -20
8951 .cfi_offset 5, -16
8952 .cfi_offset 6, -12
8953 .cfi_offset 7, -8
8954 .cfi_offset 14, -4
8955 0002 0446 mov r4, r0
4211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_StatusTypeDef dmaxferstatus;
8956 .loc 1 4211 3 is_stmt 1 view .LVU3194
4212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8957 .loc 1 4212 3 view .LVU3195
4215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8958 .loc 1 4215 3 view .LVU3196
4217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8959 .loc 1 4217 3 view .LVU3197
4217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8960 .loc 1 4217 22 is_stmt 0 view .LVU3198
8961 0004 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
8962 .LVL606:
4217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8963 .loc 1 4217 6 view .LVU3199
8964 0008 00F02800 and r0, r0, #40
8965 000c 2828 cmp r0, #40
8966 000e 40F0BE80 bne .L589
8967 0012 0F46 mov r7, r1
8968 0014 1646 mov r6, r2
8969 0016 1D46 mov r5, r3
4219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8970 .loc 1 4219 5 is_stmt 1 view .LVU3200
4219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8971 .loc 1 4219 8 is_stmt 0 view .LVU3201
8972 0018 01B1 cbz r1, .L580
4219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
8973 .loc 1 4219 25 discriminator 1 view .LVU3202
8974 001a 22B9 cbnz r2, .L581
8975 .L580:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 339
4221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8976 .loc 1 4221 7 is_stmt 1 view .LVU3203
4221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8977 .loc 1 4221 23 is_stmt 0 view .LVU3204
8978 001c 4FF40073 mov r3, #512
8979 .LVL607:
4221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return HAL_ERROR;
8980 .loc 1 4221 23 view .LVU3205
8981 0020 6364 str r3, [r4, #68]
4222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8982 .loc 1 4222 7 is_stmt 1 view .LVU3206
4222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8983 .loc 1 4222 15 is_stmt 0 view .LVU3207
8984 0022 0125 movs r5, #1
8985 .LVL608:
4222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
8986 .loc 1 4222 15 view .LVU3208
8987 0024 B4E0 b .L579
8988 .LVL609:
8989 .L581:
4226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8990 .loc 1 4226 5 is_stmt 1 view .LVU3209
8991 0026 48F20201 movw r1, #32770
8992 .LVL610:
4226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8993 .loc 1 4226 5 is_stmt 0 view .LVU3210
8994 002a 2046 mov r0, r4
8995 002c FFF7FEFF bl I2C_Disable_IRQ
8996 .LVL611:
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8997 .loc 1 4229 5 is_stmt 1 view .LVU3211
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
8998 .loc 1 4229 5 view .LVU3212
8999 0030 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
9000 0034 012B cmp r3, #1
9001 0036 00F0AD80 beq .L590
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9002 .loc 1 4229 5 discriminator 2 view .LVU3213
9003 003a 0123 movs r3, #1
9004 003c 84F84030 strb r3, [r4, #64]
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9005 .loc 1 4229 5 discriminator 2 view .LVU3214
4233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9006 .loc 1 4233 5 discriminator 2 view .LVU3215
4233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9007 .loc 1 4233 13 is_stmt 0 discriminator 2 view .LVU3216
9008 0040 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
9009 0044 DBB2 uxtb r3, r3
4233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9010 .loc 1 4233 8 discriminator 2 view .LVU3217
9011 0046 292B cmp r3, #41
9012 0048 3DD0 beq .L593
4258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9013 .loc 1 4258 10 is_stmt 1 view .LVU3218
4258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9014 .loc 1 4258 18 is_stmt 0 view .LVU3219
9015 004a 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 340
9016 004e DBB2 uxtb r3, r3
4258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9017 .loc 1 4258 13 view .LVU3220
9018 0050 2A2B cmp r3, #42
9019 0052 54D0 beq .L594
9020 .L583:
4283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9021 .loc 1 4283 5 is_stmt 1 view .LVU3221
4285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
9022 .loc 1 4285 5 view .LVU3222
4285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_SLAVE;
9023 .loc 1 4285 21 is_stmt 0 view .LVU3223
9024 0054 2A23 movs r3, #42
9025 0056 84F84130 strb r3, [r4, #65]
4286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
9026 .loc 1 4286 5 is_stmt 1 view .LVU3224
4286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode = HAL_I2C_ERROR_NONE;
9027 .loc 1 4286 21 is_stmt 0 view .LVU3225
9028 005a 2023 movs r3, #32
9029 005c 84F84230 strb r3, [r4, #66]
4287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9030 .loc 1 4287 5 is_stmt 1 view .LVU3226
4287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9031 .loc 1 4287 21 is_stmt 0 view .LVU3227
9032 0060 0023 movs r3, #0
9033 0062 6364 str r3, [r4, #68]
4290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9034 .loc 1 4290 5 is_stmt 1 view .LVU3228
4290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9035 .loc 1 4290 9 is_stmt 0 view .LVU3229
9036 0064 2268 ldr r2, [r4]
4290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9037 .loc 1 4290 19 view .LVU3230
9038 0066 5368 ldr r3, [r2, #4]
4290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9039 .loc 1 4290 25 view .LVU3231
9040 0068 23F40043 bic r3, r3, #32768
9041 006c 5360 str r3, [r2, #4]
4293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
9042 .loc 1 4293 5 is_stmt 1 view .LVU3232
4293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = Size;
9043 .loc 1 4293 23 is_stmt 0 view .LVU3233
9044 006e 6762 str r7, [r4, #36]
4294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
9045 .loc 1 4294 5 is_stmt 1 view .LVU3234
4294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize = hi2c->XferCount;
9046 .loc 1 4294 23 is_stmt 0 view .LVU3235
9047 0070 6685 strh r6, [r4, #42] @ movhi
4295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
9048 .loc 1 4295 5 is_stmt 1 view .LVU3236
4295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
9049 .loc 1 4295 29 is_stmt 0 view .LVU3237
9050 0072 638D ldrh r3, [r4, #42]
4295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = XferOptions;
9051 .loc 1 4295 23 view .LVU3238
9052 0074 2385 strh r3, [r4, #40] @ movhi
4296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 341
9053 .loc 1 4296 5 is_stmt 1 view .LVU3239
4296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_DMA;
9054 .loc 1 4296 23 is_stmt 0 view .LVU3240
9055 0076 E562 str r5, [r4, #44]
4297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9056 .loc 1 4297 5 is_stmt 1 view .LVU3241
4297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9057 .loc 1 4297 23 is_stmt 0 view .LVU3242
9058 0078 474B ldr r3, .L595
9059 007a 6363 str r3, [r4, #52]
4299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9060 .loc 1 4299 5 is_stmt 1 view .LVU3243
4299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9061 .loc 1 4299 13 is_stmt 0 view .LVU3244
9062 007c E36B ldr r3, [r4, #60]
4299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9063 .loc 1 4299 8 view .LVU3245
9064 007e 002B cmp r3, #0
9065 0080 54D0 beq .L584
4302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9066 .loc 1 4302 7 is_stmt 1 view .LVU3246
4302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9067 .loc 1 4302 38 is_stmt 0 view .LVU3247
9068 0082 464A ldr r2, .L595+4
9069 0084 9A62 str r2, [r3, #40]
4305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9070 .loc 1 4305 7 is_stmt 1 view .LVU3248
4305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9071 .loc 1 4305 11 is_stmt 0 view .LVU3249
9072 0086 E36B ldr r3, [r4, #60]
4305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9073 .loc 1 4305 39 view .LVU3250
9074 0088 454A ldr r2, .L595+8
9075 008a 1A63 str r2, [r3, #48]
4308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
9076 .loc 1 4308 7 is_stmt 1 view .LVU3251
4308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
9077 .loc 1 4308 11 is_stmt 0 view .LVU3252
9078 008c E26B ldr r2, [r4, #60]
4308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->hdmarx->XferAbortCallback = NULL;
9079 .loc 1 4308 42 view .LVU3253
9080 008e 0023 movs r3, #0
9081 0090 D362 str r3, [r2, #44]
4309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9082 .loc 1 4309 7 is_stmt 1 view .LVU3254
4309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9083 .loc 1 4309 11 is_stmt 0 view .LVU3255
9084 0092 E26B ldr r2, [r4, #60]
4309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9085 .loc 1 4309 39 view .LVU3256
9086 0094 5363 str r3, [r2, #52]
4312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)pData, hi2c->XferSize);
9087 .loc 1 4312 7 is_stmt 1 view .LVU3257
4312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)pData, hi2c->XferSize);
9088 .loc 1 4312 69 is_stmt 0 view .LVU3258
9089 0096 2168 ldr r1, [r4]
4312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (uint32_t)pData, hi2c->XferSize);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 342
9090 .loc 1 4312 23 view .LVU3259
9091 0098 238D ldrh r3, [r4, #40]
9092 009a 3A46 mov r2, r7
9093 009c 2431 adds r1, r1, #36
9094 009e E06B ldr r0, [r4, #60]
9095 00a0 FFF7FEFF bl HAL_DMA_Start_IT
9096 .LVL612:
4330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9097 .loc 1 4330 5 is_stmt 1 view .LVU3260
4330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9098 .loc 1 4330 8 is_stmt 0 view .LVU3261
9099 00a4 0546 mov r5, r0
9100 .LVL613:
4330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9101 .loc 1 4330 8 view .LVU3262
9102 00a6 0028 cmp r0, #0
9103 00a8 4ED0 beq .L585
4341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
9104 .loc 1 4341 7 is_stmt 1 view .LVU3263
4341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
9105 .loc 1 4341 23 is_stmt 0 view .LVU3264
9106 00aa 2823 movs r3, #40
9107 00ac 84F84130 strb r3, [r4, #65]
4342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9108 .loc 1 4342 7 is_stmt 1 view .LVU3265
4342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9109 .loc 1 4342 23 is_stmt 0 view .LVU3266
9110 00b0 0022 movs r2, #0
9111 00b2 84F84220 strb r2, [r4, #66]
4345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9112 .loc 1 4345 7 is_stmt 1 view .LVU3267
4345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9113 .loc 1 4345 11 is_stmt 0 view .LVU3268
9114 00b6 636C ldr r3, [r4, #68]
4345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9115 .loc 1 4345 23 view .LVU3269
9116 00b8 43F01003 orr r3, r3, #16
9117 00bc 6364 str r3, [r4, #68]
4348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9118 .loc 1 4348 7 is_stmt 1 view .LVU3270
4348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9119 .loc 1 4348 7 view .LVU3271
9120 00be 84F84020 strb r2, [r4, #64]
4348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9121 .loc 1 4348 7 view .LVU3272
4350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9122 .loc 1 4350 7 view .LVU3273
4350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9123 .loc 1 4350 14 is_stmt 0 view .LVU3274
9124 00c2 0125 movs r5, #1
9125 00c4 64E0 b .L579
9126 .LVL614:
9127 .L593:
4236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9128 .loc 1 4236 7 is_stmt 1 view .LVU3275
9129 00c6 0121 movs r1, #1
9130 00c8 2046 mov r0, r4
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 343
9131 00ca FFF7FEFF bl I2C_Disable_IRQ
9132 .LVL615:
4238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9133 .loc 1 4238 7 view .LVU3276
4238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9134 .loc 1 4238 16 is_stmt 0 view .LVU3277
9135 00ce 2368 ldr r3, [r4]
4238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9136 .loc 1 4238 26 view .LVU3278
9137 00d0 1A68 ldr r2, [r3]
4238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9138 .loc 1 4238 10 view .LVU3279
9139 00d2 12F4804F tst r2, #16384
9140 00d6 BDD0 beq .L583
4241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9141 .loc 1 4241 9 is_stmt 1 view .LVU3280
4241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9142 .loc 1 4241 17 is_stmt 0 view .LVU3281
9143 00d8 A26B ldr r2, [r4, #56]
4241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9144 .loc 1 4241 12 view .LVU3282
9145 00da 002A cmp r2, #0
9146 00dc BAD0 beq .L583
4243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9147 .loc 1 4243 11 is_stmt 1 view .LVU3283
4243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9148 .loc 1 4243 25 is_stmt 0 view .LVU3284
9149 00de 1A68 ldr r2, [r3]
4243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9150 .loc 1 4243 31 view .LVU3285
9151 00e0 22F48042 bic r2, r2, #16384
9152 00e4 1A60 str r2, [r3]
4247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9153 .loc 1 4247 11 is_stmt 1 view .LVU3286
4247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9154 .loc 1 4247 15 is_stmt 0 view .LVU3287
9155 00e6 A36B ldr r3, [r4, #56]
4247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9156 .loc 1 4247 43 view .LVU3288
9157 00e8 2E4A ldr r2, .L595+12
9158 00ea 5A63 str r2, [r3, #52]
4250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9159 .loc 1 4250 11 is_stmt 1 view .LVU3289
4250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9160 .loc 1 4250 15 is_stmt 0 view .LVU3290
9161 00ec A06B ldr r0, [r4, #56]
9162 00ee FFF7FEFF bl HAL_DMA_Abort_IT
9163 .LVL616:
4250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9164 .loc 1 4250 14 view .LVU3291
9165 00f2 0028 cmp r0, #0
9166 00f4 AED0 beq .L583
4253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9167 .loc 1 4253 13 is_stmt 1 view .LVU3292
4253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9168 .loc 1 4253 17 is_stmt 0 view .LVU3293
9169 00f6 A06B ldr r0, [r4, #56]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 344
4253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9170 .loc 1 4253 25 view .LVU3294
9171 00f8 436B ldr r3, [r0, #52]
4253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9172 .loc 1 4253 13 view .LVU3295
9173 00fa 9847 blx r3
9174 .LVL617:
9175 00fc AAE7 b .L583
9176 .L594:
4260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9177 .loc 1 4260 7 is_stmt 1 view .LVU3296
4260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9178 .loc 1 4260 16 is_stmt 0 view .LVU3297
9179 00fe 2368 ldr r3, [r4]
4260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9180 .loc 1 4260 26 view .LVU3298
9181 0100 1A68 ldr r2, [r3]
4260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9182 .loc 1 4260 10 view .LVU3299
9183 0102 12F4004F tst r2, #32768
9184 0106 A5D0 beq .L583
4262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9185 .loc 1 4262 9 is_stmt 1 view .LVU3300
4262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9186 .loc 1 4262 23 is_stmt 0 view .LVU3301
9187 0108 1A68 ldr r2, [r3]
4262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9188 .loc 1 4262 29 view .LVU3302
9189 010a 22F40042 bic r2, r2, #32768
9190 010e 1A60 str r2, [r3]
4265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9191 .loc 1 4265 9 is_stmt 1 view .LVU3303
4265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9192 .loc 1 4265 17 is_stmt 0 view .LVU3304
9193 0110 E36B ldr r3, [r4, #60]
4265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9194 .loc 1 4265 12 view .LVU3305
9195 0112 002B cmp r3, #0
9196 0114 9ED0 beq .L583
4269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9197 .loc 1 4269 11 is_stmt 1 view .LVU3306
4269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9198 .loc 1 4269 43 is_stmt 0 view .LVU3307
9199 0116 234A ldr r2, .L595+12
9200 0118 5A63 str r2, [r3, #52]
4272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9201 .loc 1 4272 11 is_stmt 1 view .LVU3308
4272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9202 .loc 1 4272 15 is_stmt 0 view .LVU3309
9203 011a E06B ldr r0, [r4, #60]
9204 011c FFF7FEFF bl HAL_DMA_Abort_IT
9205 .LVL618:
4272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9206 .loc 1 4272 14 view .LVU3310
9207 0120 0028 cmp r0, #0
9208 0122 97D0 beq .L583
4275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 345
9209 .loc 1 4275 13 is_stmt 1 view .LVU3311
4275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9210 .loc 1 4275 17 is_stmt 0 view .LVU3312
9211 0124 E06B ldr r0, [r4, #60]
4275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9212 .loc 1 4275 25 view .LVU3313
9213 0126 436B ldr r3, [r0, #52]
4275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9214 .loc 1 4275 13 view .LVU3314
9215 0128 9847 blx r3
9216 .LVL619:
9217 012a 93E7 b .L583
9218 .L584:
4318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
9219 .loc 1 4318 7 is_stmt 1 view .LVU3315
4318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
9220 .loc 1 4318 23 is_stmt 0 view .LVU3316
9221 012c 2823 movs r3, #40
9222 012e 84F84130 strb r3, [r4, #65]
4319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9223 .loc 1 4319 7 is_stmt 1 view .LVU3317
4319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9224 .loc 1 4319 23 is_stmt 0 view .LVU3318
9225 0132 0022 movs r2, #0
9226 0134 84F84220 strb r2, [r4, #66]
4322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9227 .loc 1 4322 7 is_stmt 1 view .LVU3319
4322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9228 .loc 1 4322 11 is_stmt 0 view .LVU3320
9229 0138 636C ldr r3, [r4, #68]
4322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9230 .loc 1 4322 23 view .LVU3321
9231 013a 43F08003 orr r3, r3, #128
9232 013e 6364 str r3, [r4, #68]
4325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9233 .loc 1 4325 7 is_stmt 1 view .LVU3322
4325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9234 .loc 1 4325 7 view .LVU3323
9235 0140 84F84020 strb r2, [r4, #64]
4325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9236 .loc 1 4325 7 view .LVU3324
4327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9237 .loc 1 4327 7 view .LVU3325
4327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9238 .loc 1 4327 14 is_stmt 0 view .LVU3326
9239 0144 0125 movs r5, #1
9240 .LVL620:
4327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9241 .loc 1 4327 14 view .LVU3327
9242 0146 23E0 b .L579
9243 .LVL621:
9244 .L585:
4333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9245 .loc 1 4333 7 is_stmt 1 view .LVU3328
4333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9246 .loc 1 4333 11 is_stmt 0 view .LVU3329
9247 0148 638D ldrh r3, [r4, #42]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 346
9248 014a 9BB2 uxth r3, r3
4333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9249 .loc 1 4333 30 view .LVU3330
9250 014c 228D ldrh r2, [r4, #40]
4333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9251 .loc 1 4333 23 view .LVU3331
9252 014e 9B1A subs r3, r3, r2
9253 0150 9BB2 uxth r3, r3
9254 0152 6385 strh r3, [r4, #42] @ movhi
4336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9255 .loc 1 4336 7 is_stmt 1 view .LVU3332
4336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9256 .loc 1 4336 22 is_stmt 0 view .LVU3333
9257 0154 0023 movs r3, #0
9258 0156 2385 strh r3, [r4, #40] @ movhi
4353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_TRANSMIT) && (tmp != RESET))
9259 .loc 1 4353 5 is_stmt 1 view .LVU3334
4353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if ((I2C_GET_DIR(hi2c) == I2C_DIRECTION_TRANSMIT) && (tmp != RESET))
9260 .loc 1 4353 11 is_stmt 0 view .LVU3335
9261 0158 2268 ldr r2, [r4]
9262 015a 9369 ldr r3, [r2, #24]
9263 015c 03F00803 and r3, r3, #8
9264 .LVL622:
4354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9265 .loc 1 4354 5 is_stmt 1 view .LVU3336
4354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9266 .loc 1 4354 10 is_stmt 0 view .LVU3337
9267 0160 9169 ldr r1, [r2, #24]
4354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9268 .loc 1 4354 8 view .LVU3338
9269 0162 11F4803F tst r1, #65536
9270 0166 0DD0 beq .L587
9271 .LVL623:
9272 .L588:
4362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9273 .loc 1 4362 5 is_stmt 1 view .LVU3339
4362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9274 .loc 1 4362 5 view .LVU3340
9275 0168 0023 movs r3, #0
9276 016a 84F84030 strb r3, [r4, #64]
4362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9277 .loc 1 4362 5 view .LVU3341
4365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9278 .loc 1 4365 5 view .LVU3342
4365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9279 .loc 1 4365 9 is_stmt 0 view .LVU3343
9280 016e 2268 ldr r2, [r4]
4365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9281 .loc 1 4365 19 view .LVU3344
9282 0170 1368 ldr r3, [r2]
4365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9283 .loc 1 4365 25 view .LVU3345
9284 0172 43F40043 orr r3, r3, #32768
9285 0176 1360 str r3, [r2]
4371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9286 .loc 1 4371 5 is_stmt 1 view .LVU3346
9287 0178 48F20201 movw r1, #32770
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 347
9288 017c 2046 mov r0, r4
9289 .LVL624:
4371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9290 .loc 1 4371 5 is_stmt 0 view .LVU3347
9291 017e FFF7FEFF bl I2C_Enable_IRQ
9292 .LVL625:
4373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9293 .loc 1 4373 5 is_stmt 1 view .LVU3348
4373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9294 .loc 1 4373 12 is_stmt 0 view .LVU3349
9295 0182 05E0 b .L579
9296 .LVL626:
9297 .L587:
4354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9298 .loc 1 4354 55 discriminator 1 view .LVU3350
9299 0184 002B cmp r3, #0
9300 0186 EFD0 beq .L588
4358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9301 .loc 1 4358 7 is_stmt 1 view .LVU3351
9302 0188 0823 movs r3, #8
9303 .LVL627:
4358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9304 .loc 1 4358 7 is_stmt 0 view .LVU3352
9305 018a D361 str r3, [r2, #28]
9306 018c ECE7 b .L588
9307 .LVL628:
9308 .L589:
4377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9309 .loc 1 4377 12 view .LVU3353
9310 018e 0125 movs r5, #1
9311 .LVL629:
9312 .L579:
4379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9313 .loc 1 4379 1 view .LVU3354
9314 0190 2846 mov r0, r5
9315 0192 F8BD pop {r3, r4, r5, r6, r7, pc}
9316 .LVL630:
9317 .L590:
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9318 .loc 1 4229 5 view .LVU3355
9319 0194 0225 movs r5, #2
9320 .LVL631:
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9321 .loc 1 4229 5 view .LVU3356
9322 0196 FBE7 b .L579
9323 .L596:
9324 .align 2
9325 .L595:
9326 0198 00000000 .word I2C_Slave_ISR_DMA
9327 019c 00000000 .word I2C_DMASlaveReceiveCplt
9328 01a0 00000000 .word I2C_DMAError
9329 01a4 00000000 .word I2C_DMAAbort
9330 .cfi_endproc
9331 .LFE160:
9333 .section .text.HAL_I2C_EnableListen_IT,"ax",%progbits
9334 .align 1
9335 .global HAL_I2C_EnableListen_IT
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 348
9336 .syntax unified
9337 .thumb
9338 .thumb_func
9340 HAL_I2C_EnableListen_IT:
9341 .LVL632:
9342 .LFB161:
4388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
9343 .loc 1 4388 1 is_stmt 1 view -0
9344 .cfi_startproc
9345 @ args = 0, pretend = 0, frame = 0
9346 @ frame_needed = 0, uses_anonymous_args = 0
4388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_READY)
9347 .loc 1 4388 1 is_stmt 0 view .LVU3358
9348 0000 08B5 push {r3, lr}
9349 .cfi_def_cfa_offset 8
9350 .cfi_offset 3, -8
9351 .cfi_offset 14, -4
4389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9352 .loc 1 4389 3 is_stmt 1 view .LVU3359
4389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9353 .loc 1 4389 11 is_stmt 0 view .LVU3360
9354 0002 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
9355 0006 DBB2 uxtb r3, r3
4389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9356 .loc 1 4389 6 view .LVU3361
9357 0008 202B cmp r3, #32
9358 000a 01D0 beq .L601
4401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9359 .loc 1 4401 12 view .LVU3362
9360 000c 0220 movs r0, #2
9361 .LVL633:
9362 .L598:
4403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9363 .loc 1 4403 1 view .LVU3363
9364 000e 08BD pop {r3, pc}
9365 .LVL634:
9366 .L601:
4391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
9367 .loc 1 4391 5 is_stmt 1 view .LVU3364
4391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
9368 .loc 1 4391 17 is_stmt 0 view .LVU3365
9369 0010 2823 movs r3, #40
9370 0012 80F84130 strb r3, [r0, #65]
4392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9371 .loc 1 4392 5 is_stmt 1 view .LVU3366
4392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9372 .loc 1 4392 19 is_stmt 0 view .LVU3367
9373 0016 044B ldr r3, .L602
9374 0018 4363 str r3, [r0, #52]
4395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9375 .loc 1 4395 5 is_stmt 1 view .LVU3368
9376 001a 4FF40041 mov r1, #32768
9377 001e FFF7FEFF bl I2C_Enable_IRQ
9378 .LVL635:
4397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9379 .loc 1 4397 5 view .LVU3369
4397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 349
9380 .loc 1 4397 12 is_stmt 0 view .LVU3370
9381 0022 0020 movs r0, #0
9382 0024 F3E7 b .L598
9383 .L603:
9384 0026 00BF .align 2
9385 .L602:
9386 0028 00000000 .word I2C_Slave_ISR_IT
9387 .cfi_endproc
9388 .LFE161:
9390 .section .text.HAL_I2C_DisableListen_IT,"ax",%progbits
9391 .align 1
9392 .global HAL_I2C_DisableListen_IT
9393 .syntax unified
9394 .thumb
9395 .thumb_func
9397 HAL_I2C_DisableListen_IT:
9398 .LVL636:
9399 .LFB162:
4412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
9400 .loc 1 4412 1 is_stmt 1 view -0
9401 .cfi_startproc
9402 @ args = 0, pretend = 0, frame = 0
9403 @ frame_needed = 0, uses_anonymous_args = 0
4414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9404 .loc 1 4414 3 view .LVU3372
4417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9405 .loc 1 4417 3 view .LVU3373
4417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9406 .loc 1 4417 11 is_stmt 0 view .LVU3374
9407 0000 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
9408 0004 DBB2 uxtb r3, r3
4417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9409 .loc 1 4417 6 view .LVU3375
9410 0006 282B cmp r3, #40
9411 0008 01D0 beq .L611
4432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9412 .loc 1 4432 12 view .LVU3376
9413 000a 0220 movs r0, #2
9414 .LVL637:
4434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9415 .loc 1 4434 1 view .LVU3377
9416 000c 7047 bx lr
9417 .LVL638:
9418 .L611:
4412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Declaration of tmp to prevent undefined behavior of volatile usage */
9419 .loc 1 4412 1 view .LVU3378
9420 000e 10B5 push {r4, lr}
9421 .cfi_def_cfa_offset 8
9422 .cfi_offset 4, -8
9423 .cfi_offset 14, -4
4419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = tmp | (uint32_t)(hi2c->Mode);
9424 .loc 1 4419 5 is_stmt 1 view .LVU3379
4419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = tmp | (uint32_t)(hi2c->Mode);
9425 .loc 1 4419 26 is_stmt 0 view .LVU3380
9426 0010 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2
9427 .LVL639:
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 350
9428 .loc 1 4420 5 is_stmt 1 view .LVU3381
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
9429 .loc 1 4420 48 is_stmt 0 view .LVU3382
9430 0014 90F84230 ldrb r3, [r0, #66] @ zero_extendqisi2
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
9431 .loc 1 4420 31 view .LVU3383
9432 0018 02F00302 and r2, r2, #3
9433 .LVL640:
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
9434 .loc 1 4420 31 view .LVU3384
9435 001c 1343 orrs r3, r3, r2
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
9436 .loc 1 4420 25 view .LVU3385
9437 001e 0363 str r3, [r0, #48]
4421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
9438 .loc 1 4421 5 is_stmt 1 view .LVU3386
4421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
9439 .loc 1 4421 17 is_stmt 0 view .LVU3387
9440 0020 2023 movs r3, #32
9441 0022 80F84130 strb r3, [r0, #65]
4422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
9442 .loc 1 4422 5 is_stmt 1 view .LVU3388
4422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
9443 .loc 1 4422 16 is_stmt 0 view .LVU3389
9444 0026 0024 movs r4, #0
9445 0028 80F84240 strb r4, [r0, #66]
4423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9446 .loc 1 4423 5 is_stmt 1 view .LVU3390
4423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9447 .loc 1 4423 19 is_stmt 0 view .LVU3391
9448 002c 4463 str r4, [r0, #52]
4426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9449 .loc 1 4426 5 is_stmt 1 view .LVU3392
9450 002e 4FF40041 mov r1, #32768
9451 0032 FFF7FEFF bl I2C_Disable_IRQ
9452 .LVL641:
4428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9453 .loc 1 4428 5 view .LVU3393
4428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9454 .loc 1 4428 12 is_stmt 0 view .LVU3394
9455 0036 2046 mov r0, r4
4434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9456 .loc 1 4434 1 view .LVU3395
9457 0038 10BD pop {r4, pc}
9458 .cfi_endproc
9459 .LFE162:
9461 .section .text.HAL_I2C_Master_Abort_IT,"ax",%progbits
9462 .align 1
9463 .global HAL_I2C_Master_Abort_IT
9464 .syntax unified
9465 .thumb
9466 .thumb_func
9468 HAL_I2C_Master_Abort_IT:
9469 .LVL642:
9470 .LFB163:
4445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Mode == HAL_I2C_MODE_MASTER)
9471 .loc 1 4445 1 is_stmt 1 view -0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 351
9472 .cfi_startproc
9473 @ args = 0, pretend = 0, frame = 0
9474 @ frame_needed = 0, uses_anonymous_args = 0
4446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9475 .loc 1 4446 3 view .LVU3397
4446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9476 .loc 1 4446 11 is_stmt 0 view .LVU3398
9477 0000 90F84230 ldrb r3, [r0, #66] @ zero_extendqisi2
9478 0004 DBB2 uxtb r3, r3
4446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9479 .loc 1 4446 6 view .LVU3399
9480 0006 102B cmp r3, #16
9481 0008 36D1 bne .L616
4445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->Mode == HAL_I2C_MODE_MASTER)
9482 .loc 1 4445 1 view .LVU3400
9483 000a 30B5 push {r4, r5, lr}
9484 .cfi_def_cfa_offset 12
9485 .cfi_offset 4, -12
9486 .cfi_offset 5, -8
9487 .cfi_offset 14, -4
9488 000c 83B0 sub sp, sp, #12
9489 .cfi_def_cfa_offset 24
9490 000e 0446 mov r4, r0
9491 0010 0D46 mov r5, r1
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9492 .loc 1 4449 5 is_stmt 1 view .LVU3401
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9493 .loc 1 4449 5 view .LVU3402
9494 0012 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
9495 0016 012B cmp r3, #1
9496 0018 30D0 beq .L617
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9497 .loc 1 4449 5 discriminator 2 view .LVU3403
9498 001a 0123 movs r3, #1
9499 001c 80F84030 strb r3, [r0, #64]
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9500 .loc 1 4449 5 discriminator 2 view .LVU3404
4452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9501 .loc 1 4452 5 discriminator 2 view .LVU3405
4452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9502 .loc 1 4452 13 is_stmt 0 discriminator 2 view .LVU3406
9503 0020 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
9504 0024 DBB2 uxtb r3, r3
4452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9505 .loc 1 4452 8 discriminator 2 view .LVU3407
9506 0026 212B cmp r3, #33
9507 0028 1AD0 beq .L622
4457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9508 .loc 1 4457 10 is_stmt 1 view .LVU3408
4457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9509 .loc 1 4457 18 is_stmt 0 view .LVU3409
9510 002a 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
9511 002e DBB2 uxtb r3, r3
4457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9512 .loc 1 4457 13 view .LVU3410
9513 0030 222B cmp r3, #34
9514 0032 1BD0 beq .L623
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 352
9515 .LVL643:
9516 .L615:
4465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9517 .loc 1 4465 5 is_stmt 1 view .LVU3411
4468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9518 .loc 1 4468 5 view .LVU3412
4468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9519 .loc 1 4468 17 is_stmt 0 view .LVU3413
9520 0034 6023 movs r3, #96
9521 0036 84F84130 strb r3, [r4, #65]
4472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9522 .loc 1 4472 5 is_stmt 1 view .LVU3414
9523 003a 114B ldr r3, .L624
9524 003c 0093 str r3, [sp]
9525 003e 4FF00073 mov r3, #33554432
9526 0042 0122 movs r2, #1
9527 0044 2946 mov r1, r5
9528 0046 2046 mov r0, r4
9529 0048 FFF7FEFF bl I2C_TransferConfig
9530 .LVL644:
4475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9531 .loc 1 4475 5 view .LVU3415
4475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9532 .loc 1 4475 5 view .LVU3416
9533 004c 0025 movs r5, #0
9534 004e 84F84050 strb r5, [r4, #64]
4475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9535 .loc 1 4475 5 view .LVU3417
4480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9536 .loc 1 4480 5 view .LVU3418
9537 0052 2021 movs r1, #32
9538 0054 2046 mov r0, r4
9539 0056 FFF7FEFF bl I2C_Enable_IRQ
9540 .LVL645:
4482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9541 .loc 1 4482 5 view .LVU3419
4482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9542 .loc 1 4482 12 is_stmt 0 view .LVU3420
9543 005a 2846 mov r0, r5
9544 .L613:
4490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9545 .loc 1 4490 1 view .LVU3421
9546 005c 03B0 add sp, sp, #12
9547 .cfi_remember_state
9548 .cfi_def_cfa_offset 12
9549 @ sp needed
9550 005e 30BD pop {r4, r5, pc}
9551 .LVL646:
9552 .L622:
9553 .cfi_restore_state
4454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
9554 .loc 1 4454 7 is_stmt 1 view .LVU3422
9555 0060 0121 movs r1, #1
9556 .LVL647:
4454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
9557 .loc 1 4454 7 is_stmt 0 view .LVU3423
9558 0062 FFF7FEFF bl I2C_Disable_IRQ
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 353
9559 .LVL648:
4455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9560 .loc 1 4455 7 is_stmt 1 view .LVU3424
4455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9561 .loc 1 4455 27 is_stmt 0 view .LVU3425
9562 0066 1123 movs r3, #17
9563 0068 2363 str r3, [r4, #48]
9564 006a E3E7 b .L615
9565 .LVL649:
9566 .L623:
4459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
9567 .loc 1 4459 7 is_stmt 1 view .LVU3426
9568 006c 0221 movs r1, #2
9569 .LVL650:
4459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
9570 .loc 1 4459 7 is_stmt 0 view .LVU3427
9571 006e FFF7FEFF bl I2C_Disable_IRQ
9572 .LVL651:
4460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9573 .loc 1 4460 7 is_stmt 1 view .LVU3428
4460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9574 .loc 1 4460 27 is_stmt 0 view .LVU3429
9575 0072 1223 movs r3, #18
9576 0074 2363 str r3, [r4, #48]
9577 0076 DDE7 b .L615
9578 .LVL652:
9579 .L616:
9580 .cfi_def_cfa_offset 0
9581 .cfi_restore 4
9582 .cfi_restore 5
9583 .cfi_restore 14
4488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9584 .loc 1 4488 12 view .LVU3430
9585 0078 0120 movs r0, #1
9586 .LVL653:
4490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9587 .loc 1 4490 1 view .LVU3431
9588 007a 7047 bx lr
9589 .LVL654:
9590 .L617:
9591 .cfi_def_cfa_offset 24
9592 .cfi_offset 4, -12
9593 .cfi_offset 5, -8
9594 .cfi_offset 14, -4
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9595 .loc 1 4449 5 view .LVU3432
9596 007c 0220 movs r0, #2
9597 .LVL655:
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9598 .loc 1 4449 5 view .LVU3433
9599 007e EDE7 b .L613
9600 .L625:
9601 .align 2
9602 .L624:
9603 0080 00400080 .word -2147467264
9604 .cfi_endproc
9605 .LFE163:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 354
9607 .section .text.HAL_I2C_EV_IRQHandler,"ax",%progbits
9608 .align 1
9609 .global HAL_I2C_EV_IRQHandler
9610 .syntax unified
9611 .thumb
9612 .thumb_func
9614 HAL_I2C_EV_IRQHandler:
9615 .LVL656:
9616 .LFB164:
4507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Get current IT Flags and IT sources value */
9617 .loc 1 4507 1 is_stmt 1 view -0
9618 .cfi_startproc
9619 @ args = 0, pretend = 0, frame = 0
9620 @ frame_needed = 0, uses_anonymous_args = 0
4507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Get current IT Flags and IT sources value */
9621 .loc 1 4507 1 is_stmt 0 view .LVU3435
9622 0000 08B5 push {r3, lr}
9623 .cfi_def_cfa_offset 8
9624 .cfi_offset 3, -8
9625 .cfi_offset 14, -4
4509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
9626 .loc 1 4509 3 is_stmt 1 view .LVU3436
4509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
9627 .loc 1 4509 24 is_stmt 0 view .LVU3437
9628 0002 0368 ldr r3, [r0]
4509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
9629 .loc 1 4509 12 view .LVU3438
9630 0004 9969 ldr r1, [r3, #24]
9631 .LVL657:
4510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9632 .loc 1 4510 3 is_stmt 1 view .LVU3439
4510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9633 .loc 1 4510 12 is_stmt 0 view .LVU3440
9634 0006 1A68 ldr r2, [r3]
9635 .LVL658:
4513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9636 .loc 1 4513 3 is_stmt 1 view .LVU3441
4513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9637 .loc 1 4513 11 is_stmt 0 view .LVU3442
9638 0008 436B ldr r3, [r0, #52]
4513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9639 .loc 1 4513 6 view .LVU3443
9640 000a 03B1 cbz r3, .L626
4515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9641 .loc 1 4515 5 is_stmt 1 view .LVU3444
9642 000c 9847 blx r3
9643 .LVL659:
9644 .L626:
4517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9645 .loc 1 4517 1 is_stmt 0 view .LVU3445
9646 000e 08BD pop {r3, pc}
9647 .cfi_endproc
9648 .LFE164:
9650 .section .text.HAL_I2C_MasterTxCpltCallback,"ax",%progbits
9651 .align 1
9652 .weak HAL_I2C_MasterTxCpltCallback
9653 .syntax unified
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 355
9654 .thumb
9655 .thumb_func
9657 HAL_I2C_MasterTxCpltCallback:
9658 .LVL660:
9659 .LFB166:
4578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
9660 .loc 1 4578 1 is_stmt 1 view -0
9661 .cfi_startproc
9662 @ args = 0, pretend = 0, frame = 0
9663 @ frame_needed = 0, uses_anonymous_args = 0
9664 @ link register save eliminated.
4580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9665 .loc 1 4580 3 view .LVU3447
4585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9666 .loc 1 4585 1 is_stmt 0 view .LVU3448
9667 0000 7047 bx lr
9668 .cfi_endproc
9669 .LFE166:
9671 .section .text.HAL_I2C_MasterRxCpltCallback,"ax",%progbits
9672 .align 1
9673 .weak HAL_I2C_MasterRxCpltCallback
9674 .syntax unified
9675 .thumb
9676 .thumb_func
9678 HAL_I2C_MasterRxCpltCallback:
9679 .LVL661:
9680 .LFB167:
4594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
9681 .loc 1 4594 1 is_stmt 1 view -0
9682 .cfi_startproc
9683 @ args = 0, pretend = 0, frame = 0
9684 @ frame_needed = 0, uses_anonymous_args = 0
9685 @ link register save eliminated.
4596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9686 .loc 1 4596 3 view .LVU3450
4601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9687 .loc 1 4601 1 is_stmt 0 view .LVU3451
9688 0000 7047 bx lr
9689 .cfi_endproc
9690 .LFE167:
9692 .section .text.I2C_ITMasterSeqCplt,"ax",%progbits
9693 .align 1
9694 .syntax unified
9695 .thumb
9696 .thumb_func
9698 I2C_ITMasterSeqCplt:
9699 .LVL662:
9700 .LFB188:
5855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset I2C handle mode */
9701 .loc 1 5855 1 is_stmt 1 view -0
9702 .cfi_startproc
9703 @ args = 0, pretend = 0, frame = 0
9704 @ frame_needed = 0, uses_anonymous_args = 0
5855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset I2C handle mode */
9705 .loc 1 5855 1 is_stmt 0 view .LVU3453
9706 0000 38B5 push {r3, r4, r5, lr}
9707 .cfi_def_cfa_offset 16
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 356
9708 .cfi_offset 3, -16
9709 .cfi_offset 4, -12
9710 .cfi_offset 5, -8
9711 .cfi_offset 14, -4
9712 0002 0446 mov r4, r0
5857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9713 .loc 1 5857 3 is_stmt 1 view .LVU3454
5857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9714 .loc 1 5857 14 is_stmt 0 view .LVU3455
9715 0004 0023 movs r3, #0
9716 0006 80F84230 strb r3, [r0, #66]
5861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9717 .loc 1 5861 3 is_stmt 1 view .LVU3456
5861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9718 .loc 1 5861 11 is_stmt 0 view .LVU3457
9719 000a 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
9720 000e DBB2 uxtb r3, r3
5861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9721 .loc 1 5861 6 view .LVU3458
9722 0010 212B cmp r3, #33
9723 0012 0FD0 beq .L635
5883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
9724 .loc 1 5883 5 is_stmt 1 view .LVU3459
5883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
9725 .loc 1 5883 25 is_stmt 0 view .LVU3460
9726 0014 2023 movs r3, #32
9727 0016 80F84130 strb r3, [r0, #65]
5884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
9728 .loc 1 5884 5 is_stmt 1 view .LVU3461
5884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
9729 .loc 1 5884 25 is_stmt 0 view .LVU3462
9730 001a 1223 movs r3, #18
9731 001c 0363 str r3, [r0, #48]
5885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9732 .loc 1 5885 5 is_stmt 1 view .LVU3463
5885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9733 .loc 1 5885 25 is_stmt 0 view .LVU3464
9734 001e 0025 movs r5, #0
9735 0020 4563 str r5, [r0, #52]
5888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9736 .loc 1 5888 5 is_stmt 1 view .LVU3465
9737 0022 0221 movs r1, #2
9738 0024 FFF7FEFF bl I2C_Disable_IRQ
9739 .LVL663:
5891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9740 .loc 1 5891 5 view .LVU3466
5891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9741 .loc 1 5891 5 view .LVU3467
9742 0028 84F84050 strb r5, [r4, #64]
5891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9743 .loc 1 5891 5 view .LVU3468
5897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
9744 .loc 1 5897 5 view .LVU3469
9745 002c 2046 mov r0, r4
9746 002e FFF7FEFF bl HAL_I2C_MasterRxCpltCallback
9747 .LVL664:
9748 .L631:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 357
5900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9749 .loc 1 5900 1 is_stmt 0 view .LVU3470
9750 0032 38BD pop {r3, r4, r5, pc}
9751 .LVL665:
9752 .L635:
5863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
9753 .loc 1 5863 5 is_stmt 1 view .LVU3471
5863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
9754 .loc 1 5863 25 is_stmt 0 view .LVU3472
9755 0034 2023 movs r3, #32
9756 0036 80F84130 strb r3, [r0, #65]
5864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
9757 .loc 1 5864 5 is_stmt 1 view .LVU3473
5864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
9758 .loc 1 5864 25 is_stmt 0 view .LVU3474
9759 003a 1123 movs r3, #17
9760 003c 0363 str r3, [r0, #48]
5865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9761 .loc 1 5865 5 is_stmt 1 view .LVU3475
5865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9762 .loc 1 5865 25 is_stmt 0 view .LVU3476
9763 003e 0025 movs r5, #0
9764 0040 4563 str r5, [r0, #52]
5868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9765 .loc 1 5868 5 is_stmt 1 view .LVU3477
9766 0042 0121 movs r1, #1
9767 0044 FFF7FEFF bl I2C_Disable_IRQ
9768 .LVL666:
5871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9769 .loc 1 5871 5 view .LVU3478
5871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9770 .loc 1 5871 5 view .LVU3479
9771 0048 84F84050 strb r5, [r4, #64]
5871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9772 .loc 1 5871 5 view .LVU3480
5877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
9773 .loc 1 5877 5 view .LVU3481
9774 004c 2046 mov r0, r4
9775 004e FFF7FEFF bl HAL_I2C_MasterTxCpltCallback
9776 .LVL667:
9777 0052 EEE7 b .L631
9778 .cfi_endproc
9779 .LFE188:
9781 .section .text.HAL_I2C_SlaveTxCpltCallback,"ax",%progbits
9782 .align 1
9783 .weak HAL_I2C_SlaveTxCpltCallback
9784 .syntax unified
9785 .thumb
9786 .thumb_func
9788 HAL_I2C_SlaveTxCpltCallback:
9789 .LVL668:
9790 .LFB168:
4609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
9791 .loc 1 4609 1 view -0
9792 .cfi_startproc
9793 @ args = 0, pretend = 0, frame = 0
9794 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 358
9795 @ link register save eliminated.
4611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9796 .loc 1 4611 3 view .LVU3483
4616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9797 .loc 1 4616 1 is_stmt 0 view .LVU3484
9798 0000 7047 bx lr
9799 .cfi_endproc
9800 .LFE168:
9802 .section .text.HAL_I2C_SlaveRxCpltCallback,"ax",%progbits
9803 .align 1
9804 .weak HAL_I2C_SlaveRxCpltCallback
9805 .syntax unified
9806 .thumb
9807 .thumb_func
9809 HAL_I2C_SlaveRxCpltCallback:
9810 .LVL669:
9811 .LFB169:
4625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
9812 .loc 1 4625 1 is_stmt 1 view -0
9813 .cfi_startproc
9814 @ args = 0, pretend = 0, frame = 0
9815 @ frame_needed = 0, uses_anonymous_args = 0
9816 @ link register save eliminated.
4627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9817 .loc 1 4627 3 view .LVU3486
4632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9818 .loc 1 4632 1 is_stmt 0 view .LVU3487
9819 0000 7047 bx lr
9820 .cfi_endproc
9821 .LFE169:
9823 .section .text.I2C_ITSlaveSeqCplt,"ax",%progbits
9824 .align 1
9825 .syntax unified
9826 .thumb
9827 .thumb_func
9829 I2C_ITSlaveSeqCplt:
9830 .LVL670:
9831 .LFB189:
5908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpcr1value = READ_REG(hi2c->Instance->CR1);
9832 .loc 1 5908 1 is_stmt 1 view -0
9833 .cfi_startproc
9834 @ args = 0, pretend = 0, frame = 0
9835 @ frame_needed = 0, uses_anonymous_args = 0
5908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpcr1value = READ_REG(hi2c->Instance->CR1);
9836 .loc 1 5908 1 is_stmt 0 view .LVU3489
9837 0000 10B5 push {r4, lr}
9838 .cfi_def_cfa_offset 8
9839 .cfi_offset 4, -8
9840 .cfi_offset 14, -4
9841 0002 0446 mov r4, r0
5909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9842 .loc 1 5909 3 is_stmt 1 view .LVU3490
5909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9843 .loc 1 5909 26 is_stmt 0 view .LVU3491
9844 0004 0368 ldr r3, [r0]
5909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9845 .loc 1 5909 12 view .LVU3492
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 359
9846 0006 1A68 ldr r2, [r3]
9847 .LVL671:
5912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9848 .loc 1 5912 3 is_stmt 1 view .LVU3493
5912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9849 .loc 1 5912 14 is_stmt 0 view .LVU3494
9850 0008 0021 movs r1, #0
9851 000a 80F84210 strb r1, [r0, #66]
5915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9852 .loc 1 5915 3 is_stmt 1 view .LVU3495
5915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9853 .loc 1 5915 6 is_stmt 0 view .LVU3496
9854 000e 12F4804F tst r2, #16384
9855 0012 0ED0 beq .L639
5918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9856 .loc 1 5918 5 is_stmt 1 view .LVU3497
5918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9857 .loc 1 5918 19 is_stmt 0 view .LVU3498
9858 0014 1A68 ldr r2, [r3]
9859 .LVL672:
5918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9860 .loc 1 5918 25 view .LVU3499
9861 0016 22F48042 bic r2, r2, #16384
9862 001a 1A60 str r2, [r3]
9863 .L640:
5928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9864 .loc 1 5928 3 is_stmt 1 view .LVU3500
5930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9865 .loc 1 5930 3 view .LVU3501
5930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9866 .loc 1 5930 11 is_stmt 0 view .LVU3502
9867 001c 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
9868 0020 DBB2 uxtb r3, r3
5930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9869 .loc 1 5930 6 view .LVU3503
9870 0022 292B cmp r3, #41
9871 0024 0DD0 beq .L644
5950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9872 .loc 1 5950 8 is_stmt 1 view .LVU3504
5950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9873 .loc 1 5950 16 is_stmt 0 view .LVU3505
9874 0026 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
9875 002a DBB2 uxtb r3, r3
5950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9876 .loc 1 5950 11 view .LVU3506
9877 002c 2A2B cmp r3, #42
9878 002e 18D0 beq .L645
9879 .LVL673:
9880 .L638:
5973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9881 .loc 1 5973 1 view .LVU3507
9882 0030 10BD pop {r4, pc}
9883 .LVL674:
9884 .L639:
5920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9885 .loc 1 5920 8 is_stmt 1 view .LVU3508
5920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 360
9886 .loc 1 5920 11 is_stmt 0 view .LVU3509
9887 0032 12F4004F tst r2, #32768
9888 0036 F1D0 beq .L640
5923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9889 .loc 1 5923 5 is_stmt 1 view .LVU3510
5923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9890 .loc 1 5923 19 is_stmt 0 view .LVU3511
9891 0038 1A68 ldr r2, [r3]
9892 .LVL675:
5923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9893 .loc 1 5923 25 view .LVU3512
9894 003a 22F40042 bic r2, r2, #32768
9895 003e 1A60 str r2, [r3]
9896 0040 ECE7 b .L640
9897 .L644:
5933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
9898 .loc 1 5933 5 is_stmt 1 view .LVU3513
5933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
9899 .loc 1 5933 25 is_stmt 0 view .LVU3514
9900 0042 2823 movs r3, #40
9901 0044 84F84130 strb r3, [r4, #65]
5934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9902 .loc 1 5934 5 is_stmt 1 view .LVU3515
5934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9903 .loc 1 5934 25 is_stmt 0 view .LVU3516
9904 0048 2123 movs r3, #33
9905 004a 2363 str r3, [r4, #48]
5937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9906 .loc 1 5937 5 is_stmt 1 view .LVU3517
9907 004c 0121 movs r1, #1
9908 004e 2046 mov r0, r4
9909 .LVL676:
5937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9910 .loc 1 5937 5 is_stmt 0 view .LVU3518
9911 0050 FFF7FEFF bl I2C_Disable_IRQ
9912 .LVL677:
5940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9913 .loc 1 5940 5 is_stmt 1 view .LVU3519
5940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9914 .loc 1 5940 5 view .LVU3520
9915 0054 0023 movs r3, #0
9916 0056 84F84030 strb r3, [r4, #64]
5940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9917 .loc 1 5940 5 view .LVU3521
5946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
9918 .loc 1 5946 5 view .LVU3522
9919 005a 2046 mov r0, r4
9920 005c FFF7FEFF bl HAL_I2C_SlaveTxCpltCallback
9921 .LVL678:
9922 0060 E6E7 b .L638
9923 .LVL679:
9924 .L645:
5953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
9925 .loc 1 5953 5 view .LVU3523
5953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
9926 .loc 1 5953 25 is_stmt 0 view .LVU3524
9927 0062 2823 movs r3, #40
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 361
9928 0064 84F84130 strb r3, [r4, #65]
5954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9929 .loc 1 5954 5 is_stmt 1 view .LVU3525
5954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9930 .loc 1 5954 25 is_stmt 0 view .LVU3526
9931 0068 2223 movs r3, #34
9932 006a 2363 str r3, [r4, #48]
5957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9933 .loc 1 5957 5 is_stmt 1 view .LVU3527
9934 006c 0221 movs r1, #2
9935 006e 2046 mov r0, r4
9936 .LVL680:
5957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9937 .loc 1 5957 5 is_stmt 0 view .LVU3528
9938 0070 FFF7FEFF bl I2C_Disable_IRQ
9939 .LVL681:
5960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9940 .loc 1 5960 5 is_stmt 1 view .LVU3529
5960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9941 .loc 1 5960 5 view .LVU3530
9942 0074 0023 movs r3, #0
9943 0076 84F84030 strb r3, [r4, #64]
5960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9944 .loc 1 5960 5 view .LVU3531
5966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
9945 .loc 1 5966 5 view .LVU3532
9946 007a 2046 mov r0, r4
9947 007c FFF7FEFF bl HAL_I2C_SlaveRxCpltCallback
9948 .LVL682:
5972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9949 .loc 1 5972 3 view .LVU3533
5973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9950 .loc 1 5973 1 is_stmt 0 view .LVU3534
9951 0080 D6E7 b .L638
9952 .cfi_endproc
9953 .LFE189:
9955 .section .text.I2C_DMASlaveTransmitCplt,"ax",%progbits
9956 .align 1
9957 .syntax unified
9958 .thumb
9959 .thumb_func
9961 I2C_DMASlaveTransmitCplt:
9962 .LVL683:
9963 .LFB197:
6576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
9964 .loc 1 6576 1 is_stmt 1 view -0
9965 .cfi_startproc
9966 @ args = 0, pretend = 0, frame = 0
9967 @ frame_needed = 0, uses_anonymous_args = 0
6576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
9968 .loc 1 6576 1 is_stmt 0 view .LVU3536
9969 0000 08B5 push {r3, lr}
9970 .cfi_def_cfa_offset 8
9971 .cfi_offset 3, -8
9972 .cfi_offset 14, -4
6578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
9973 .loc 1 6578 3 is_stmt 1 view .LVU3537
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 362
6578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
9974 .loc 1 6578 22 is_stmt 0 view .LVU3538
9975 0002 406A ldr r0, [r0, #36]
9976 .LVL684:
6579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9977 .loc 1 6579 3 is_stmt 1 view .LVU3539
6579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9978 .loc 1 6579 12 is_stmt 0 view .LVU3540
9979 0004 C36A ldr r3, [r0, #44]
9980 .LVL685:
6581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9981 .loc 1 6581 3 is_stmt 1 view .LVU3541
6581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9982 .loc 1 6581 6 is_stmt 0 view .LVU3542
9983 0006 B3F1807F cmp r3, #16777216
9984 000a 00D0 beq .L647
6581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
9985 .loc 1 6581 38 discriminator 1 view .LVU3543
9986 000c 33B9 cbnz r3, .L646
9987 .L647:
6584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9988 .loc 1 6584 5 is_stmt 1 view .LVU3544
6584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9989 .loc 1 6584 9 is_stmt 0 view .LVU3545
9990 000e 0268 ldr r2, [r0]
6584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9991 .loc 1 6584 19 view .LVU3546
9992 0010 1368 ldr r3, [r2]
9993 .LVL686:
6584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
9994 .loc 1 6584 25 view .LVU3547
9995 0012 23F48043 bic r3, r3, #16384
9996 0016 1360 str r3, [r2]
6588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
9997 .loc 1 6588 5 is_stmt 1 view .LVU3548
9998 0018 FFF7FEFF bl I2C_ITSlaveSeqCplt
9999 .LVL687:
10000 .L646:
6596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10001 .loc 1 6596 1 is_stmt 0 view .LVU3549
10002 001c 08BD pop {r3, pc}
10003 .cfi_endproc
10004 .LFE197:
10006 .section .text.I2C_DMASlaveReceiveCplt,"ax",%progbits
10007 .align 1
10008 .syntax unified
10009 .thumb
10010 .thumb_func
10012 I2C_DMASlaveReceiveCplt:
10013 .LVL688:
10014 .LFB199:
6656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
10015 .loc 1 6656 1 is_stmt 1 view -0
10016 .cfi_startproc
10017 @ args = 0, pretend = 0, frame = 0
10018 @ frame_needed = 0, uses_anonymous_args = 0
6656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 363
10019 .loc 1 6656 1 is_stmt 0 view .LVU3551
10020 0000 08B5 push {r3, lr}
10021 .cfi_def_cfa_offset 8
10022 .cfi_offset 3, -8
10023 .cfi_offset 14, -4
6658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
10024 .loc 1 6658 3 is_stmt 1 view .LVU3552
6658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
10025 .loc 1 6658 22 is_stmt 0 view .LVU3553
10026 0002 406A ldr r0, [r0, #36]
10027 .LVL689:
6659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10028 .loc 1 6659 3 is_stmt 1 view .LVU3554
6659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10029 .loc 1 6659 12 is_stmt 0 view .LVU3555
10030 0004 C26A ldr r2, [r0, #44]
10031 .LVL690:
6661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
10032 .loc 1 6661 3 is_stmt 1 view .LVU3556
6661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
10033 .loc 1 6661 8 is_stmt 0 view .LVU3557
10034 0006 C36B ldr r3, [r0, #60]
10035 0008 1B68 ldr r3, [r3]
10036 000a 5B68 ldr r3, [r3, #4]
6661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
10037 .loc 1 6661 6 view .LVU3558
10038 000c 13B9 cbnz r3, .L650
6661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
10039 .loc 1 6661 53 discriminator 1 view .LVU3559
10040 000e 12F5803F cmn r2, #65536
10041 0012 00D1 bne .L653
10042 .LVL691:
10043 .L650:
6676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10044 .loc 1 6676 1 view .LVU3560
10045 0014 08BD pop {r3, pc}
10046 .LVL692:
10047 .L653:
6665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10048 .loc 1 6665 5 is_stmt 1 view .LVU3561
6665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10049 .loc 1 6665 9 is_stmt 0 view .LVU3562
10050 0016 0268 ldr r2, [r0]
10051 .LVL693:
6665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10052 .loc 1 6665 19 view .LVU3563
10053 0018 1368 ldr r3, [r2]
6665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10054 .loc 1 6665 25 view .LVU3564
10055 001a 23F40043 bic r3, r3, #32768
10056 001e 1360 str r3, [r2]
6668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10057 .loc 1 6668 5 is_stmt 1 view .LVU3565
10058 0020 FFF7FEFF bl I2C_ITSlaveSeqCplt
10059 .LVL694:
6675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10060 .loc 1 6675 3 view .LVU3566
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 364
6676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10061 .loc 1 6676 1 is_stmt 0 view .LVU3567
10062 0024 F6E7 b .L650
10063 .cfi_endproc
10064 .LFE199:
10066 .section .text.HAL_I2C_AddrCallback,"ax",%progbits
10067 .align 1
10068 .weak HAL_I2C_AddrCallback
10069 .syntax unified
10070 .thumb
10071 .thumb_func
10073 HAL_I2C_AddrCallback:
10074 .LVL695:
10075 .LFB170:
4643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
10076 .loc 1 4643 1 is_stmt 1 view -0
10077 .cfi_startproc
10078 @ args = 0, pretend = 0, frame = 0
10079 @ frame_needed = 0, uses_anonymous_args = 0
10080 @ link register save eliminated.
4645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(TransferDirection);
10081 .loc 1 4645 3 view .LVU3569
4646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(AddrMatchCode);
10082 .loc 1 4646 3 view .LVU3570
4647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10083 .loc 1 4647 3 view .LVU3571
4652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10084 .loc 1 4652 1 is_stmt 0 view .LVU3572
10085 0000 7047 bx lr
10086 .cfi_endproc
10087 .LFE170:
10089 .section .text.I2C_ITAddrCplt,"ax",%progbits
10090 .align 1
10091 .syntax unified
10092 .thumb
10093 .thumb_func
10095 I2C_ITAddrCplt:
10096 .LVL696:
10097 .LFB187:
5760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint8_t transferdirection;
10098 .loc 1 5760 1 is_stmt 1 view -0
10099 .cfi_startproc
10100 @ args = 0, pretend = 0, frame = 0
10101 @ frame_needed = 0, uses_anonymous_args = 0
5760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint8_t transferdirection;
10102 .loc 1 5760 1 is_stmt 0 view .LVU3574
10103 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
10104 .cfi_def_cfa_offset 24
10105 .cfi_offset 3, -24
10106 .cfi_offset 4, -20
10107 .cfi_offset 5, -16
10108 .cfi_offset 6, -12
10109 .cfi_offset 7, -8
10110 .cfi_offset 14, -4
10111 0002 0446 mov r4, r0
5761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t slaveaddrcode;
10112 .loc 1 5761 3 is_stmt 1 view .LVU3575
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 365
5762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t ownadd1code;
10113 .loc 1 5762 3 view .LVU3576
5763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t ownadd2code;
10114 .loc 1 5763 3 view .LVU3577
5764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10115 .loc 1 5764 3 view .LVU3578
5767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10116 .loc 1 5767 3 view .LVU3579
5770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10117 .loc 1 5770 3 view .LVU3580
5770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10118 .loc 1 5770 22 is_stmt 0 view .LVU3581
10119 0004 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
5770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10120 .loc 1 5770 6 view .LVU3582
10121 0008 03F02803 and r3, r3, #40
10122 000c 282B cmp r3, #40
10123 000e 06D0 beq .L661
5842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10124 .loc 1 5842 5 is_stmt 1 view .LVU3583
10125 0010 0368 ldr r3, [r0]
10126 0012 0822 movs r2, #8
10127 0014 DA61 str r2, [r3, #28]
5845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10128 .loc 1 5845 5 view .LVU3584
5845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10129 .loc 1 5845 5 view .LVU3585
10130 0016 0023 movs r3, #0
10131 0018 80F84030 strb r3, [r0, #64]
5845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10132 .loc 1 5845 5 view .LVU3586
10133 .LVL697:
10134 .L655:
5847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10135 .loc 1 5847 1 is_stmt 0 view .LVU3587
10136 001c F8BD pop {r3, r4, r5, r6, r7, pc}
10137 .LVL698:
10138 .L661:
5772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** slaveaddrcode = I2C_GET_ADDR_MATCH(hi2c);
10139 .loc 1 5772 5 is_stmt 1 view .LVU3588
5772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** slaveaddrcode = I2C_GET_ADDR_MATCH(hi2c);
10140 .loc 1 5772 25 is_stmt 0 view .LVU3589
10141 001e 0368 ldr r3, [r0]
10142 0020 9E69 ldr r6, [r3, #24]
5772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** slaveaddrcode = I2C_GET_ADDR_MATCH(hi2c);
10143 .loc 1 5772 23 view .LVU3590
10144 0022 C6F30046 ubfx r6, r6, #16, #1
10145 .LVL699:
5773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd1code = I2C_GET_OWN_ADDRESS1(hi2c);
10146 .loc 1 5773 5 is_stmt 1 view .LVU3591
5773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd1code = I2C_GET_OWN_ADDRESS1(hi2c);
10147 .loc 1 5773 25 is_stmt 0 view .LVU3592
10148 0026 9A69 ldr r2, [r3, #24]
10149 0028 120C lsrs r2, r2, #16
5773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd1code = I2C_GET_OWN_ADDRESS1(hi2c);
10150 .loc 1 5773 23 view .LVU3593
10151 002a 02F0FE05 and r5, r2, #254
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 366
10152 .LVL700:
5774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd2code = I2C_GET_OWN_ADDRESS2(hi2c);
10153 .loc 1 5774 5 is_stmt 1 view .LVU3594
5774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd2code = I2C_GET_OWN_ADDRESS2(hi2c);
10154 .loc 1 5774 25 is_stmt 0 view .LVU3595
10155 002e 9A68 ldr r2, [r3, #8]
5774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** ownadd2code = I2C_GET_OWN_ADDRESS2(hi2c);
10156 .loc 1 5774 23 view .LVU3596
10157 0030 C2F30902 ubfx r2, r2, #0, #10
10158 .LVL701:
5775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10159 .loc 1 5775 5 is_stmt 1 view .LVU3597
5775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10160 .loc 1 5775 25 is_stmt 0 view .LVU3598
10161 0034 DF68 ldr r7, [r3, #12]
5775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10162 .loc 1 5775 23 view .LVU3599
10163 0036 07F0FE07 and r7, r7, #254
10164 .LVL702:
5778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10165 .loc 1 5778 5 is_stmt 1 view .LVU3600
5778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10166 .loc 1 5778 19 is_stmt 0 view .LVU3601
10167 003a C168 ldr r1, [r0, #12]
10168 .LVL703:
5778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10169 .loc 1 5778 8 view .LVU3602
10170 003c 0229 cmp r1, #2
10171 003e 22D1 bne .L657
5780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10172 .loc 1 5780 7 is_stmt 1 view .LVU3603
5780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10173 .loc 1 5780 44 is_stmt 0 view .LVU3604
10174 0040 85EAD215 eor r5, r5, r2, lsr #7
10175 .LVL704:
5780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10176 .loc 1 5780 10 view .LVU3605
10177 0044 15F0060F tst r5, #6
10178 0048 10D1 bne .L658
5782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->AddrEventCount++;
10179 .loc 1 5782 9 is_stmt 1 view .LVU3606
10180 .LVL705:
5783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->AddrEventCount == 2U)
10181 .loc 1 5783 9 view .LVU3607
5783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->AddrEventCount == 2U)
10182 .loc 1 5783 13 is_stmt 0 view .LVU3608
10183 004a 816C ldr r1, [r0, #72]
5783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->AddrEventCount == 2U)
10184 .loc 1 5783 29 view .LVU3609
10185 004c 0131 adds r1, r1, #1
10186 004e 8164 str r1, [r0, #72]
5784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10187 .loc 1 5784 9 is_stmt 1 view .LVU3610
5784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10188 .loc 1 5784 17 is_stmt 0 view .LVU3611
10189 0050 816C ldr r1, [r0, #72]
5784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 367
10190 .loc 1 5784 12 view .LVU3612
10191 0052 0229 cmp r1, #2
10192 0054 E2D1 bne .L655
5787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10193 .loc 1 5787 11 is_stmt 1 view .LVU3613
5787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10194 .loc 1 5787 32 is_stmt 0 view .LVU3614
10195 0056 0021 movs r1, #0
10196 0058 8164 str r1, [r0, #72]
5790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10197 .loc 1 5790 11 is_stmt 1 view .LVU3615
10198 005a 0820 movs r0, #8
10199 .LVL706:
5790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10200 .loc 1 5790 11 is_stmt 0 view .LVU3616
10201 005c D861 str r0, [r3, #28]
5793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10202 .loc 1 5793 11 is_stmt 1 view .LVU3617
5793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10203 .loc 1 5793 11 view .LVU3618
10204 005e 84F84010 strb r1, [r4, #64]
5793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10205 .loc 1 5793 11 view .LVU3619
5799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10206 .loc 1 5799 11 view .LVU3620
10207 0062 3146 mov r1, r6
10208 0064 2046 mov r0, r4
10209 0066 FFF7FEFF bl HAL_I2C_AddrCallback
10210 .LVL707:
5799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10211 .loc 1 5799 11 is_stmt 0 view .LVU3621
10212 006a D7E7 b .L655
10213 .LVL708:
10214 .L658:
5805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10215 .loc 1 5805 9 is_stmt 1 view .LVU3622
5808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10216 .loc 1 5808 9 view .LVU3623
10217 006c 4FF40041 mov r1, #32768
10218 0070 FFF7FEFF bl I2C_Disable_IRQ
10219 .LVL709:
5811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10220 .loc 1 5811 9 view .LVU3624
5811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10221 .loc 1 5811 9 view .LVU3625
10222 0074 0023 movs r3, #0
10223 0076 84F84030 strb r3, [r4, #64]
5811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10224 .loc 1 5811 9 view .LVU3626
5817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10225 .loc 1 5817 9 view .LVU3627
10226 007a 3A46 mov r2, r7
10227 007c 3146 mov r1, r6
10228 007e 2046 mov r0, r4
10229 0080 FFF7FEFF bl HAL_I2C_AddrCallback
10230 .LVL710:
10231 0084 CAE7 b .L655
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 368
10232 .LVL711:
10233 .L657:
5825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10234 .loc 1 5825 7 view .LVU3628
10235 0086 4FF40041 mov r1, #32768
10236 008a FFF7FEFF bl I2C_Disable_IRQ
10237 .LVL712:
5828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10238 .loc 1 5828 7 view .LVU3629
5828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10239 .loc 1 5828 7 view .LVU3630
10240 008e 0023 movs r3, #0
10241 0090 84F84030 strb r3, [r4, #64]
5828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10242 .loc 1 5828 7 view .LVU3631
5834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10243 .loc 1 5834 7 view .LVU3632
10244 0094 2A46 mov r2, r5
10245 0096 3146 mov r1, r6
10246 0098 2046 mov r0, r4
10247 009a FFF7FEFF bl HAL_I2C_AddrCallback
10248 .LVL713:
10249 009e BDE7 b .L655
10250 .cfi_endproc
10251 .LFE187:
10253 .section .text.HAL_I2C_ListenCpltCallback,"ax",%progbits
10254 .align 1
10255 .weak HAL_I2C_ListenCpltCallback
10256 .syntax unified
10257 .thumb
10258 .thumb_func
10260 HAL_I2C_ListenCpltCallback:
10261 .LVL714:
10262 .LFB171:
4661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
10263 .loc 1 4661 1 view -0
10264 .cfi_startproc
10265 @ args = 0, pretend = 0, frame = 0
10266 @ frame_needed = 0, uses_anonymous_args = 0
10267 @ link register save eliminated.
4663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10268 .loc 1 4663 3 view .LVU3634
4668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10269 .loc 1 4668 1 is_stmt 0 view .LVU3635
10270 0000 7047 bx lr
10271 .cfi_endproc
10272 .LFE171:
10274 .section .text.I2C_ITListenCplt,"ax",%progbits
10275 .align 1
10276 .syntax unified
10277 .thumb
10278 .thumb_func
10280 I2C_ITListenCplt:
10281 .LVL715:
10282 .LFB192:
6284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset handle parameters */
10283 .loc 1 6284 1 is_stmt 1 view -0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 369
10284 .cfi_startproc
10285 @ args = 0, pretend = 0, frame = 0
10286 @ frame_needed = 0, uses_anonymous_args = 0
6284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Reset handle parameters */
10287 .loc 1 6284 1 is_stmt 0 view .LVU3637
10288 0000 10B5 push {r4, lr}
10289 .cfi_def_cfa_offset 8
10290 .cfi_offset 4, -8
10291 .cfi_offset 14, -4
10292 0002 0446 mov r4, r0
6286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
10293 .loc 1 6286 3 is_stmt 1 view .LVU3638
6286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
10294 .loc 1 6286 21 is_stmt 0 view .LVU3639
10295 0004 174B ldr r3, .L666
10296 0006 C362 str r3, [r0, #44]
6287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
10297 .loc 1 6287 3 is_stmt 1 view .LVU3640
6287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
10298 .loc 1 6287 23 is_stmt 0 view .LVU3641
10299 0008 0023 movs r3, #0
10300 000a 0363 str r3, [r0, #48]
6288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
10301 .loc 1 6288 3 is_stmt 1 view .LVU3642
6288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->Mode = HAL_I2C_MODE_NONE;
10302 .loc 1 6288 15 is_stmt 0 view .LVU3643
10303 000c 2022 movs r2, #32
10304 000e 80F84120 strb r2, [r0, #65]
6289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
10305 .loc 1 6289 3 is_stmt 1 view .LVU3644
6289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
10306 .loc 1 6289 14 is_stmt 0 view .LVU3645
10307 0012 80F84230 strb r3, [r0, #66]
6290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10308 .loc 1 6290 3 is_stmt 1 view .LVU3646
6290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10309 .loc 1 6290 17 is_stmt 0 view .LVU3647
10310 0016 4363 str r3, [r0, #52]
6293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10311 .loc 1 6293 3 is_stmt 1 view .LVU3648
6293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10312 .loc 1 6293 6 is_stmt 0 view .LVU3649
10313 0018 11F0040F tst r1, #4
10314 001c 13D0 beq .L664
6296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10315 .loc 1 6296 5 is_stmt 1 view .LVU3650
6296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10316 .loc 1 6296 36 is_stmt 0 view .LVU3651
10317 001e 0368 ldr r3, [r0]
6296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10318 .loc 1 6296 46 view .LVU3652
10319 0020 5A6A ldr r2, [r3, #36]
6296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10320 .loc 1 6296 10 view .LVU3653
10321 0022 436A ldr r3, [r0, #36]
6296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10322 .loc 1 6296 21 view .LVU3654
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 370
10323 0024 1A70 strb r2, [r3]
6299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10324 .loc 1 6299 5 is_stmt 1 view .LVU3655
6299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10325 .loc 1 6299 9 is_stmt 0 view .LVU3656
10326 0026 436A ldr r3, [r0, #36]
6299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10327 .loc 1 6299 19 view .LVU3657
10328 0028 0133 adds r3, r3, #1
10329 002a 4362 str r3, [r0, #36]
6301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10330 .loc 1 6301 5 is_stmt 1 view .LVU3658
6301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10331 .loc 1 6301 14 is_stmt 0 view .LVU3659
10332 002c 038D ldrh r3, [r0, #40]
6301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10333 .loc 1 6301 8 view .LVU3660
10334 002e 53B1 cbz r3, .L664
6303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
10335 .loc 1 6303 7 is_stmt 1 view .LVU3661
6303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
10336 .loc 1 6303 21 is_stmt 0 view .LVU3662
10337 0030 013B subs r3, r3, #1
10338 0032 0385 strh r3, [r0, #40] @ movhi
6304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10339 .loc 1 6304 7 is_stmt 1 view .LVU3663
6304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10340 .loc 1 6304 11 is_stmt 0 view .LVU3664
10341 0034 438D ldrh r3, [r0, #42]
10342 0036 9BB2 uxth r3, r3
6304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10343 .loc 1 6304 22 view .LVU3665
10344 0038 013B subs r3, r3, #1
10345 003a 9BB2 uxth r3, r3
10346 003c 4385 strh r3, [r0, #42] @ movhi
6307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10347 .loc 1 6307 7 is_stmt 1 view .LVU3666
6307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10348 .loc 1 6307 11 is_stmt 0 view .LVU3667
10349 003e 436C ldr r3, [r0, #68]
6307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10350 .loc 1 6307 23 view .LVU3668
10351 0040 43F00403 orr r3, r3, #4
10352 0044 4364 str r3, [r0, #68]
10353 .L664:
6312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10354 .loc 1 6312 3 is_stmt 1 view .LVU3669
10355 0046 48F20301 movw r1, #32771
10356 .LVL716:
6312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10357 .loc 1 6312 3 is_stmt 0 view .LVU3670
10358 004a 2046 mov r0, r4
10359 .LVL717:
6312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10360 .loc 1 6312 3 view .LVU3671
10361 004c FFF7FEFF bl I2C_Disable_IRQ
10362 .LVL718:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 371
6315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10363 .loc 1 6315 3 is_stmt 1 view .LVU3672
10364 0050 2368 ldr r3, [r4]
10365 0052 1022 movs r2, #16
10366 0054 DA61 str r2, [r3, #28]
6318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10367 .loc 1 6318 3 view .LVU3673
6318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10368 .loc 1 6318 3 view .LVU3674
10369 0056 0023 movs r3, #0
10370 0058 84F84030 strb r3, [r4, #64]
6318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10371 .loc 1 6318 3 view .LVU3675
6324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10372 .loc 1 6324 3 view .LVU3676
10373 005c 2046 mov r0, r4
10374 005e FFF7FEFF bl HAL_I2C_ListenCpltCallback
10375 .LVL719:
6326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10376 .loc 1 6326 1 is_stmt 0 view .LVU3677
10377 0062 10BD pop {r4, pc}
10378 .LVL720:
10379 .L667:
6326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10380 .loc 1 6326 1 view .LVU3678
10381 .align 2
10382 .L666:
10383 0064 0000FFFF .word -65536
10384 .cfi_endproc
10385 .LFE192:
10387 .section .text.HAL_I2C_MemTxCpltCallback,"ax",%progbits
10388 .align 1
10389 .weak HAL_I2C_MemTxCpltCallback
10390 .syntax unified
10391 .thumb
10392 .thumb_func
10394 HAL_I2C_MemTxCpltCallback:
10395 .LVL721:
10396 .LFB172:
4677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
10397 .loc 1 4677 1 is_stmt 1 view -0
10398 .cfi_startproc
10399 @ args = 0, pretend = 0, frame = 0
10400 @ frame_needed = 0, uses_anonymous_args = 0
10401 @ link register save eliminated.
4679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10402 .loc 1 4679 3 view .LVU3680
4684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10403 .loc 1 4684 1 is_stmt 0 view .LVU3681
10404 0000 7047 bx lr
10405 .cfi_endproc
10406 .LFE172:
10408 .section .text.HAL_I2C_MemRxCpltCallback,"ax",%progbits
10409 .align 1
10410 .weak HAL_I2C_MemRxCpltCallback
10411 .syntax unified
10412 .thumb
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 372
10413 .thumb_func
10415 HAL_I2C_MemRxCpltCallback:
10416 .LVL722:
10417 .LFB173:
4693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
10418 .loc 1 4693 1 is_stmt 1 view -0
10419 .cfi_startproc
10420 @ args = 0, pretend = 0, frame = 0
10421 @ frame_needed = 0, uses_anonymous_args = 0
10422 @ link register save eliminated.
4695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10423 .loc 1 4695 3 view .LVU3683
4700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10424 .loc 1 4700 1 is_stmt 0 view .LVU3684
10425 0000 7047 bx lr
10426 .cfi_endproc
10427 .LFE173:
10429 .section .text.HAL_I2C_ErrorCallback,"ax",%progbits
10430 .align 1
10431 .weak HAL_I2C_ErrorCallback
10432 .syntax unified
10433 .thumb
10434 .thumb_func
10436 HAL_I2C_ErrorCallback:
10437 .LVL723:
10438 .LFB174:
4709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
10439 .loc 1 4709 1 is_stmt 1 view -0
10440 .cfi_startproc
10441 @ args = 0, pretend = 0, frame = 0
10442 @ frame_needed = 0, uses_anonymous_args = 0
10443 @ link register save eliminated.
4711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10444 .loc 1 4711 3 view .LVU3686
4716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10445 .loc 1 4716 1 is_stmt 0 view .LVU3687
10446 0000 7047 bx lr
10447 .cfi_endproc
10448 .LFE174:
10450 .section .text.HAL_I2C_AbortCpltCallback,"ax",%progbits
10451 .align 1
10452 .weak HAL_I2C_AbortCpltCallback
10453 .syntax unified
10454 .thumb
10455 .thumb_func
10457 HAL_I2C_AbortCpltCallback:
10458 .LVL724:
10459 .LFB175:
4725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Prevent unused argument(s) compilation warning */
10460 .loc 1 4725 1 is_stmt 1 view -0
10461 .cfi_startproc
10462 @ args = 0, pretend = 0, frame = 0
10463 @ frame_needed = 0, uses_anonymous_args = 0
10464 @ link register save eliminated.
4727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10465 .loc 1 4727 3 view .LVU3689
4732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 373
10466 .loc 1 4732 1 is_stmt 0 view .LVU3690
10467 0000 7047 bx lr
10468 .cfi_endproc
10469 .LFE175:
10471 .section .text.I2C_TreatErrorCallback,"ax",%progbits
10472 .align 1
10473 .syntax unified
10474 .thumb
10475 .thumb_func
10477 I2C_TreatErrorCallback:
10478 .LVL725:
10479 .LFB194:
6466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_ABORT)
10480 .loc 1 6466 1 is_stmt 1 view -0
10481 .cfi_startproc
10482 @ args = 0, pretend = 0, frame = 0
10483 @ frame_needed = 0, uses_anonymous_args = 0
6466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->State == HAL_I2C_STATE_ABORT)
10484 .loc 1 6466 1 is_stmt 0 view .LVU3692
10485 0000 08B5 push {r3, lr}
10486 .cfi_def_cfa_offset 8
10487 .cfi_offset 3, -8
10488 .cfi_offset 14, -4
6467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10489 .loc 1 6467 3 is_stmt 1 view .LVU3693
6467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10490 .loc 1 6467 11 is_stmt 0 view .LVU3694
10491 0002 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
10492 0006 DBB2 uxtb r3, r3
6467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10493 .loc 1 6467 6 view .LVU3695
10494 0008 602B cmp r3, #96
10495 000a 06D0 beq .L676
6484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10496 .loc 1 6484 5 is_stmt 1 view .LVU3696
6484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10497 .loc 1 6484 25 is_stmt 0 view .LVU3697
10498 000c 0023 movs r3, #0
10499 000e 0363 str r3, [r0, #48]
6487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10500 .loc 1 6487 5 is_stmt 1 view .LVU3698
6487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10501 .loc 1 6487 5 view .LVU3699
10502 0010 80F84030 strb r3, [r0, #64]
6487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10503 .loc 1 6487 5 view .LVU3700
6493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10504 .loc 1 6493 5 view .LVU3701
10505 0014 FFF7FEFF bl HAL_I2C_ErrorCallback
10506 .LVL726:
10507 .L672:
6496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10508 .loc 1 6496 1 is_stmt 0 view .LVU3702
10509 0018 08BD pop {r3, pc}
10510 .LVL727:
10511 .L676:
6469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 374
10512 .loc 1 6469 5 is_stmt 1 view .LVU3703
6469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
10513 .loc 1 6469 17 is_stmt 0 view .LVU3704
10514 001a 2023 movs r3, #32
10515 001c 80F84130 strb r3, [r0, #65]
6470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10516 .loc 1 6470 5 is_stmt 1 view .LVU3705
6470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10517 .loc 1 6470 25 is_stmt 0 view .LVU3706
10518 0020 0023 movs r3, #0
10519 0022 0363 str r3, [r0, #48]
6473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10520 .loc 1 6473 5 is_stmt 1 view .LVU3707
6473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10521 .loc 1 6473 5 view .LVU3708
10522 0024 80F84030 strb r3, [r0, #64]
6473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10523 .loc 1 6473 5 view .LVU3709
6479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10524 .loc 1 6479 5 view .LVU3710
10525 0028 FFF7FEFF bl HAL_I2C_AbortCpltCallback
10526 .LVL728:
6479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
10527 .loc 1 6479 5 is_stmt 0 view .LVU3711
10528 002c F4E7 b .L672
10529 .cfi_endproc
10530 .LFE194:
10532 .section .text.I2C_ITError,"ax",%progbits
10533 .align 1
10534 .syntax unified
10535 .thumb
10536 .thumb_func
10538 I2C_ITError:
10539 .LVL729:
10540 .LFB193:
6335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate = hi2c->State;
10541 .loc 1 6335 1 is_stmt 1 view -0
10542 .cfi_startproc
10543 @ args = 0, pretend = 0, frame = 0
10544 @ frame_needed = 0, uses_anonymous_args = 0
6335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate = hi2c->State;
10545 .loc 1 6335 1 is_stmt 0 view .LVU3713
10546 0000 10B5 push {r4, lr}
10547 .cfi_def_cfa_offset 8
10548 .cfi_offset 4, -8
10549 .cfi_offset 14, -4
10550 0002 0446 mov r4, r0
6336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10551 .loc 1 6336 3 is_stmt 1 view .LVU3714
6336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10552 .loc 1 6336 24 is_stmt 0 view .LVU3715
10553 0004 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
10554 .LVL730:
6338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10555 .loc 1 6338 3 is_stmt 1 view .LVU3716
6341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
10556 .loc 1 6341 3 view .LVU3717
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 375
6341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
10557 .loc 1 6341 23 is_stmt 0 view .LVU3718
10558 0008 0022 movs r2, #0
10559 000a 80F84220 strb r2, [r0, #66]
6342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = 0U;
10560 .loc 1 6342 3 is_stmt 1 view .LVU3719
6342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = 0U;
10561 .loc 1 6342 23 is_stmt 0 view .LVU3720
10562 000e 4548 ldr r0, .L692
10563 .LVL731:
6342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount = 0U;
10564 .loc 1 6342 23 view .LVU3721
10565 0010 E062 str r0, [r4, #44]
6343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10566 .loc 1 6343 3 is_stmt 1 view .LVU3722
6343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10567 .loc 1 6343 23 is_stmt 0 view .LVU3723
10568 0012 6285 strh r2, [r4, #42] @ movhi
6346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10569 .loc 1 6346 3 is_stmt 1 view .LVU3724
6346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10570 .loc 1 6346 7 is_stmt 0 view .LVU3725
10571 0014 626C ldr r2, [r4, #68]
6346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10572 .loc 1 6346 19 view .LVU3726
10573 0016 0A43 orrs r2, r2, r1
10574 0018 6264 str r2, [r4, #68]
6349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpstate == HAL_I2C_STATE_BUSY_TX_LISTEN) ||
10575 .loc 1 6349 3 is_stmt 1 view .LVU3727
6350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpstate == HAL_I2C_STATE_BUSY_RX_LISTEN))
10576 .loc 1 6350 50 is_stmt 0 view .LVU3728
10577 001a 283B subs r3, r3, #40
10578 .LVL732:
6350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpstate == HAL_I2C_STATE_BUSY_RX_LISTEN))
10579 .loc 1 6350 50 view .LVU3729
10580 001c DBB2 uxtb r3, r3
6349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpstate == HAL_I2C_STATE_BUSY_TX_LISTEN) ||
10581 .loc 1 6349 6 view .LVU3730
10582 001e 022B cmp r3, #2
10583 0020 19D8 bhi .L678
6354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10584 .loc 1 6354 5 is_stmt 1 view .LVU3731
10585 0022 0321 movs r1, #3
10586 .LVL733:
6354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10587 .loc 1 6354 5 is_stmt 0 view .LVU3732
10588 0024 2046 mov r0, r4
10589 0026 FFF7FEFF bl I2C_Disable_IRQ
10590 .LVL734:
6357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
10591 .loc 1 6357 5 is_stmt 1 view .LVU3733
6357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = I2C_Slave_ISR_IT;
10592 .loc 1 6357 25 is_stmt 0 view .LVU3734
10593 002a 2823 movs r3, #40
10594 002c 84F84130 strb r3, [r4, #65]
6358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10595 .loc 1 6358 5 is_stmt 1 view .LVU3735
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 376
6358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10596 .loc 1 6358 25 is_stmt 0 view .LVU3736
10597 0030 3D4B ldr r3, .L692+4
10598 0032 6363 str r3, [r4, #52]
10599 .L679:
6393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10600 .loc 1 6393 3 is_stmt 1 view .LVU3737
6393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10601 .loc 1 6393 20 is_stmt 0 view .LVU3738
10602 0034 236B ldr r3, [r4, #48]
10603 .LVL735:
6395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_TX)))
10604 .loc 1 6395 3 is_stmt 1 view .LVU3739
6395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_TX)))
10605 .loc 1 6395 12 is_stmt 0 view .LVU3740
10606 0036 A26B ldr r2, [r4, #56]
6395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_TX)))
10607 .loc 1 6395 6 view .LVU3741
10608 0038 1AB1 cbz r2, .L682
6395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_TX)))
10609 .loc 1 6395 30 discriminator 1 view .LVU3742
10610 003a 112B cmp r3, #17
10611 003c 30D0 beq .L683
6395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_TX)))
10612 .loc 1 6395 81 discriminator 2 view .LVU3743
10613 003e 212B cmp r3, #33
10614 0040 2ED0 beq .L683
10615 .L682:
6425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_RX)))
10616 .loc 1 6425 8 is_stmt 1 view .LVU3744
6425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_RX)))
10617 .loc 1 6425 17 is_stmt 0 view .LVU3745
10618 0042 E26B ldr r2, [r4, #60]
6425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_RX)))
10619 .loc 1 6425 11 view .LVU3746
10620 0044 1AB1 cbz r2, .L687
6425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_RX)))
10621 .loc 1 6425 35 discriminator 1 view .LVU3747
10622 0046 122B cmp r3, #18
10623 0048 4BD0 beq .L688
6425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmppreviousstate == I2C_STATE_SLAVE_BUSY_RX)))
10624 .loc 1 6425 86 discriminator 2 view .LVU3748
10625 004a 222B cmp r3, #34
10626 004c 49D0 beq .L688
10627 .L687:
6456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10628 .loc 1 6456 5 is_stmt 1 view .LVU3749
10629 004e 2046 mov r0, r4
10630 0050 FFF7FEFF bl I2C_TreatErrorCallback
10631 .LVL736:
10632 .L677:
6458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10633 .loc 1 6458 1 is_stmt 0 view .LVU3750
10634 0054 10BD pop {r4, pc}
10635 .LVL737:
10636 .L678:
6363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 377
10637 .loc 1 6363 5 is_stmt 1 view .LVU3751
10638 0056 48F20301 movw r1, #32771
10639 .LVL738:
6363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10640 .loc 1 6363 5 is_stmt 0 view .LVU3752
10641 005a 2046 mov r0, r4
10642 005c FFF7FEFF bl I2C_Disable_IRQ
10643 .LVL739:
6366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10644 .loc 1 6366 5 is_stmt 1 view .LVU3753
10645 0060 2046 mov r0, r4
10646 0062 FFF7FEFF bl I2C_Flush_TXDR
10647 .LVL740:
6370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10648 .loc 1 6370 5 view .LVU3754
6370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10649 .loc 1 6370 13 is_stmt 0 view .LVU3755
10650 0066 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
10651 006a DBB2 uxtb r3, r3
6370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10652 .loc 1 6370 8 view .LVU3756
10653 006c 602B cmp r3, #96
10654 006e 14D0 beq .L680
6373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10655 .loc 1 6373 7 is_stmt 1 view .LVU3757
6373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10656 .loc 1 6373 27 is_stmt 0 view .LVU3758
10657 0070 2023 movs r3, #32
10658 0072 84F84130 strb r3, [r4, #65]
6376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10659 .loc 1 6376 7 is_stmt 1 view .LVU3759
6376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10660 .loc 1 6376 11 is_stmt 0 view .LVU3760
10661 0076 2368 ldr r3, [r4]
10662 0078 9A69 ldr r2, [r3, #24]
6376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10663 .loc 1 6376 10 view .LVU3761
10664 007a 12F0200F tst r2, #32
10665 007e 0CD0 beq .L680
6378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10666 .loc 1 6378 9 is_stmt 1 view .LVU3762
6378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10667 .loc 1 6378 13 is_stmt 0 view .LVU3763
10668 0080 9A69 ldr r2, [r3, #24]
6378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10669 .loc 1 6378 12 view .LVU3764
10670 0082 12F0100F tst r2, #16
10671 0086 05D0 beq .L681
6380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->ErrorCode |= HAL_I2C_ERROR_AF;
10672 .loc 1 6380 11 is_stmt 1 view .LVU3765
10673 0088 1022 movs r2, #16
10674 008a DA61 str r2, [r3, #28]
6381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10675 .loc 1 6381 11 view .LVU3766
6381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10676 .loc 1 6381 15 is_stmt 0 view .LVU3767
10677 008c 636C ldr r3, [r4, #68]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 378
6381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10678 .loc 1 6381 27 view .LVU3768
10679 008e 43F00403 orr r3, r3, #4
10680 0092 6364 str r3, [r4, #68]
10681 .L681:
6385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10682 .loc 1 6385 9 is_stmt 1 view .LVU3769
10683 0094 2368 ldr r3, [r4]
10684 0096 2022 movs r2, #32
10685 0098 DA61 str r2, [r3, #28]
10686 .L680:
6389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10687 .loc 1 6389 5 view .LVU3770
6389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10688 .loc 1 6389 25 is_stmt 0 view .LVU3771
10689 009a 0023 movs r3, #0
10690 009c 6363 str r3, [r4, #52]
10691 009e C9E7 b .L679
10692 .LVL741:
10693 .L683:
6398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10694 .loc 1 6398 5 is_stmt 1 view .LVU3772
6398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10695 .loc 1 6398 14 is_stmt 0 view .LVU3773
10696 00a0 2368 ldr r3, [r4]
10697 .LVL742:
6398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10698 .loc 1 6398 24 view .LVU3774
10699 00a2 1A68 ldr r2, [r3]
6398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10700 .loc 1 6398 8 view .LVU3775
10701 00a4 12F4804F tst r2, #16384
10702 00a8 03D0 beq .L684
6400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10703 .loc 1 6400 7 is_stmt 1 view .LVU3776
6400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10704 .loc 1 6400 21 is_stmt 0 view .LVU3777
10705 00aa 1A68 ldr r2, [r3]
6400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10706 .loc 1 6400 27 view .LVU3778
10707 00ac 22F48042 bic r2, r2, #16384
10708 00b0 1A60 str r2, [r3]
10709 .L684:
6403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10710 .loc 1 6403 5 is_stmt 1 view .LVU3779
6403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10711 .loc 1 6403 9 is_stmt 0 view .LVU3780
10712 00b2 A06B ldr r0, [r4, #56]
10713 00b4 FFF7FEFF bl HAL_DMA_GetState
10714 .LVL743:
6403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10715 .loc 1 6403 8 view .LVU3781
10716 00b8 0128 cmp r0, #1
10717 00ba 0ED0 beq .L685
6407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10718 .loc 1 6407 7 is_stmt 1 view .LVU3782
6407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 379
10719 .loc 1 6407 11 is_stmt 0 view .LVU3783
10720 00bc A36B ldr r3, [r4, #56]
6407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10721 .loc 1 6407 39 view .LVU3784
10722 00be 1B4A ldr r2, .L692+8
10723 00c0 5A63 str r2, [r3, #52]
6410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10724 .loc 1 6410 7 is_stmt 1 view .LVU3785
6410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10725 .loc 1 6410 7 view .LVU3786
10726 00c2 0023 movs r3, #0
10727 00c4 84F84030 strb r3, [r4, #64]
6410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10728 .loc 1 6410 7 view .LVU3787
6413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10729 .loc 1 6413 7 view .LVU3788
6413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10730 .loc 1 6413 11 is_stmt 0 view .LVU3789
10731 00c8 A06B ldr r0, [r4, #56]
10732 00ca FFF7FEFF bl HAL_DMA_Abort_IT
10733 .LVL744:
6413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10734 .loc 1 6413 10 view .LVU3790
10735 00ce 0028 cmp r0, #0
10736 00d0 C0D0 beq .L677
6416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10737 .loc 1 6416 9 is_stmt 1 view .LVU3791
6416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10738 .loc 1 6416 13 is_stmt 0 view .LVU3792
10739 00d2 A06B ldr r0, [r4, #56]
6416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10740 .loc 1 6416 21 view .LVU3793
10741 00d4 436B ldr r3, [r0, #52]
6416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10742 .loc 1 6416 9 view .LVU3794
10743 00d6 9847 blx r3
10744 .LVL745:
10745 00d8 BCE7 b .L677
10746 .L685:
6421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10747 .loc 1 6421 7 is_stmt 1 view .LVU3795
10748 00da 2046 mov r0, r4
10749 00dc FFF7FEFF bl I2C_TreatErrorCallback
10750 .LVL746:
10751 00e0 B8E7 b .L677
10752 .LVL747:
10753 .L688:
6428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10754 .loc 1 6428 5 view .LVU3796
6428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10755 .loc 1 6428 14 is_stmt 0 view .LVU3797
10756 00e2 2368 ldr r3, [r4]
10757 .LVL748:
6428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10758 .loc 1 6428 24 view .LVU3798
10759 00e4 1A68 ldr r2, [r3]
6428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 380
10760 .loc 1 6428 8 view .LVU3799
10761 00e6 12F4004F tst r2, #32768
10762 00ea 03D0 beq .L689
6430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10763 .loc 1 6430 7 is_stmt 1 view .LVU3800
6430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10764 .loc 1 6430 21 is_stmt 0 view .LVU3801
10765 00ec 1A68 ldr r2, [r3]
6430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10766 .loc 1 6430 27 view .LVU3802
10767 00ee 22F40042 bic r2, r2, #32768
10768 00f2 1A60 str r2, [r3]
10769 .L689:
6433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10770 .loc 1 6433 5 is_stmt 1 view .LVU3803
6433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10771 .loc 1 6433 9 is_stmt 0 view .LVU3804
10772 00f4 E06B ldr r0, [r4, #60]
10773 00f6 FFF7FEFF bl HAL_DMA_GetState
10774 .LVL749:
6433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10775 .loc 1 6433 8 view .LVU3805
10776 00fa 0128 cmp r0, #1
10777 00fc 0ED0 beq .L690
6437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10778 .loc 1 6437 7 is_stmt 1 view .LVU3806
6437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10779 .loc 1 6437 11 is_stmt 0 view .LVU3807
10780 00fe E36B ldr r3, [r4, #60]
6437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10781 .loc 1 6437 39 view .LVU3808
10782 0100 0A4A ldr r2, .L692+8
10783 0102 5A63 str r2, [r3, #52]
6440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10784 .loc 1 6440 7 is_stmt 1 view .LVU3809
6440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10785 .loc 1 6440 7 view .LVU3810
10786 0104 0023 movs r3, #0
10787 0106 84F84030 strb r3, [r4, #64]
6440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10788 .loc 1 6440 7 view .LVU3811
6443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10789 .loc 1 6443 7 view .LVU3812
6443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10790 .loc 1 6443 11 is_stmt 0 view .LVU3813
10791 010a E06B ldr r0, [r4, #60]
10792 010c FFF7FEFF bl HAL_DMA_Abort_IT
10793 .LVL750:
6443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10794 .loc 1 6443 10 view .LVU3814
10795 0110 0028 cmp r0, #0
10796 0112 9FD0 beq .L677
6446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10797 .loc 1 6446 9 is_stmt 1 view .LVU3815
6446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10798 .loc 1 6446 13 is_stmt 0 view .LVU3816
10799 0114 E06B ldr r0, [r4, #60]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 381
6446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10800 .loc 1 6446 21 view .LVU3817
10801 0116 436B ldr r3, [r0, #52]
6446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10802 .loc 1 6446 9 view .LVU3818
10803 0118 9847 blx r3
10804 .LVL751:
10805 011a 9BE7 b .L677
10806 .L690:
6451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10807 .loc 1 6451 7 is_stmt 1 view .LVU3819
10808 011c 2046 mov r0, r4
10809 011e FFF7FEFF bl I2C_TreatErrorCallback
10810 .LVL752:
10811 0122 97E7 b .L677
10812 .L693:
10813 .align 2
10814 .L692:
10815 0124 0000FFFF .word -65536
10816 0128 00000000 .word I2C_Slave_ISR_IT
10817 012c 00000000 .word I2C_DMAAbort
10818 .cfi_endproc
10819 .LFE193:
10821 .section .text.I2C_ITSlaveCplt,"ax",%progbits
10822 .align 1
10823 .syntax unified
10824 .thumb
10825 .thumb_func
10827 I2C_ITSlaveCplt:
10828 .LVL753:
10829 .LFB191:
6125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpcr1value = READ_REG(hi2c->Instance->CR1);
10830 .loc 1 6125 1 view -0
10831 .cfi_startproc
10832 @ args = 0, pretend = 0, frame = 0
10833 @ frame_needed = 0, uses_anonymous_args = 0
6125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpcr1value = READ_REG(hi2c->Instance->CR1);
10834 .loc 1 6125 1 is_stmt 0 view .LVU3821
10835 0000 70B5 push {r4, r5, r6, lr}
10836 .cfi_def_cfa_offset 16
10837 .cfi_offset 4, -16
10838 .cfi_offset 5, -12
10839 .cfi_offset 6, -8
10840 .cfi_offset 14, -4
10841 0002 0446 mov r4, r0
10842 0004 0D46 mov r5, r1
6126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
10843 .loc 1 6126 3 is_stmt 1 view .LVU3822
6126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
10844 .loc 1 6126 26 is_stmt 0 view .LVU3823
10845 0006 0268 ldr r2, [r0]
6126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
10846 .loc 1 6126 12 view .LVU3824
10847 0008 1668 ldr r6, [r2]
10848 .LVL754:
6127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate = hi2c->State;
10849 .loc 1 6127 3 is_stmt 1 view .LVU3825
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 382
6128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10850 .loc 1 6128 3 view .LVU3826
6128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10851 .loc 1 6128 24 is_stmt 0 view .LVU3827
10852 000a 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
10853 000e DBB2 uxtb r3, r3
10854 .LVL755:
6131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10855 .loc 1 6131 3 is_stmt 1 view .LVU3828
10856 0010 2021 movs r1, #32
10857 .LVL756:
6131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10858 .loc 1 6131 3 is_stmt 0 view .LVU3829
10859 0012 D161 str r1, [r2, #28]
6134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10860 .loc 1 6134 3 is_stmt 1 view .LVU3830
6134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10861 .loc 1 6134 6 is_stmt 0 view .LVU3831
10862 0014 212B cmp r3, #33
10863 0016 0DD0 beq .L695
6134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10864 .loc 1 6134 43 discriminator 1 view .LVU3832
10865 0018 292B cmp r3, #41
10866 001a 0BD0 beq .L695
6139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10867 .loc 1 6139 8 is_stmt 1 view .LVU3833
6139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10868 .loc 1 6139 11 is_stmt 0 view .LVU3834
10869 001c 222B cmp r3, #34
10870 001e 01D0 beq .L698
6139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10871 .loc 1 6139 48 discriminator 1 view .LVU3835
10872 0020 2A2B cmp r3, #42
10873 0022 0ED1 bne .L697
10874 .L698:
6141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
10875 .loc 1 6141 5 is_stmt 1 view .LVU3836
10876 0024 48F20201 movw r1, #32770
10877 0028 2046 mov r0, r4
10878 .LVL757:
6141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_RX;
10879 .loc 1 6141 5 is_stmt 0 view .LVU3837
10880 002a FFF7FEFF bl I2C_Disable_IRQ
10881 .LVL758:
6142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10882 .loc 1 6142 5 is_stmt 1 view .LVU3838
6142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10883 .loc 1 6142 25 is_stmt 0 view .LVU3839
10884 002e 2223 movs r3, #34
10885 0030 2363 str r3, [r4, #48]
10886 0032 06E0 b .L697
10887 .LVL759:
10888 .L695:
6136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
10889 .loc 1 6136 5 is_stmt 1 view .LVU3840
10890 0034 48F20101 movw r1, #32769
10891 0038 2046 mov r0, r4
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 383
10892 .LVL760:
6136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_SLAVE_BUSY_TX;
10893 .loc 1 6136 5 is_stmt 0 view .LVU3841
10894 003a FFF7FEFF bl I2C_Disable_IRQ
10895 .LVL761:
6137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10896 .loc 1 6137 5 is_stmt 1 view .LVU3842
6137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10897 .loc 1 6137 25 is_stmt 0 view .LVU3843
10898 003e 2123 movs r3, #33
10899 0040 2363 str r3, [r4, #48]
10900 .L697:
6150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10901 .loc 1 6150 3 is_stmt 1 view .LVU3844
6150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10902 .loc 1 6150 7 is_stmt 0 view .LVU3845
10903 0042 2268 ldr r2, [r4]
6150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10904 .loc 1 6150 17 view .LVU3846
10905 0044 5368 ldr r3, [r2, #4]
6150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10906 .loc 1 6150 23 view .LVU3847
10907 0046 43F40043 orr r3, r3, #32768
10908 004a 5360 str r3, [r2, #4]
6153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10909 .loc 1 6153 3 is_stmt 1 view .LVU3848
10910 004c 2268 ldr r2, [r4]
10911 004e 5368 ldr r3, [r2, #4]
10912 0050 23F0FF73 bic r3, r3, #33423360
10913 0054 23F48B33 bic r3, r3, #71168
10914 0058 23F4FF73 bic r3, r3, #510
10915 005c 23F00103 bic r3, r3, #1
10916 0060 5360 str r3, [r2, #4]
6156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10917 .loc 1 6156 3 view .LVU3849
10918 0062 2046 mov r0, r4
10919 0064 FFF7FEFF bl I2C_Flush_TXDR
10920 .LVL762:
6159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10921 .loc 1 6159 3 view .LVU3850
6159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10922 .loc 1 6159 6 is_stmt 0 view .LVU3851
10923 0068 16F4804F tst r6, #16384
10924 006c 40D0 beq .L699
6162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10925 .loc 1 6162 5 is_stmt 1 view .LVU3852
6162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10926 .loc 1 6162 9 is_stmt 0 view .LVU3853
10927 006e 2268 ldr r2, [r4]
6162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10928 .loc 1 6162 19 view .LVU3854
10929 0070 1368 ldr r3, [r2]
6162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10930 .loc 1 6162 25 view .LVU3855
10931 0072 23F48043 bic r3, r3, #16384
10932 0076 1360 str r3, [r2]
6164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 384
10933 .loc 1 6164 5 is_stmt 1 view .LVU3856
6164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10934 .loc 1 6164 13 is_stmt 0 view .LVU3857
10935 0078 A36B ldr r3, [r4, #56]
6164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10936 .loc 1 6164 8 view .LVU3858
10937 007a 1BB1 cbz r3, .L700
6166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10938 .loc 1 6166 7 is_stmt 1 view .LVU3859
6166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10939 .loc 1 6166 35 is_stmt 0 view .LVU3860
10940 007c 1B68 ldr r3, [r3]
10941 007e 5B68 ldr r3, [r3, #4]
6166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10942 .loc 1 6166 25 view .LVU3861
10943 0080 9BB2 uxth r3, r3
6166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10944 .loc 1 6166 23 view .LVU3862
10945 0082 6385 strh r3, [r4, #42] @ movhi
10946 .L700:
6182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10947 .loc 1 6182 3 is_stmt 1 view .LVU3863
6185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10948 .loc 1 6185 3 view .LVU3864
6185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10949 .loc 1 6185 6 is_stmt 0 view .LVU3865
10950 0084 15F0040F tst r5, #4
10951 0088 11D0 beq .L701
6188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10952 .loc 1 6188 5 is_stmt 1 view .LVU3866
6188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10953 .loc 1 6188 16 is_stmt 0 view .LVU3867
10954 008a 25F00405 bic r5, r5, #4
10955 .LVL763:
6191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10956 .loc 1 6191 5 is_stmt 1 view .LVU3868
6191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10957 .loc 1 6191 36 is_stmt 0 view .LVU3869
10958 008e 2368 ldr r3, [r4]
6191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10959 .loc 1 6191 46 view .LVU3870
10960 0090 5A6A ldr r2, [r3, #36]
6191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10961 .loc 1 6191 10 view .LVU3871
10962 0092 636A ldr r3, [r4, #36]
6191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10963 .loc 1 6191 21 view .LVU3872
10964 0094 1A70 strb r2, [r3]
6194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10965 .loc 1 6194 5 is_stmt 1 view .LVU3873
6194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10966 .loc 1 6194 9 is_stmt 0 view .LVU3874
10967 0096 636A ldr r3, [r4, #36]
6194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
10968 .loc 1 6194 19 view .LVU3875
10969 0098 0133 adds r3, r3, #1
10970 009a 6362 str r3, [r4, #36]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 385
6196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10971 .loc 1 6196 5 is_stmt 1 view .LVU3876
6196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10972 .loc 1 6196 14 is_stmt 0 view .LVU3877
10973 009c 238D ldrh r3, [r4, #40]
6196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10974 .loc 1 6196 8 view .LVU3878
10975 009e 33B1 cbz r3, .L701
6198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
10976 .loc 1 6198 7 is_stmt 1 view .LVU3879
6198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
10977 .loc 1 6198 21 is_stmt 0 view .LVU3880
10978 00a0 013B subs r3, r3, #1
10979 00a2 2385 strh r3, [r4, #40] @ movhi
6199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10980 .loc 1 6199 7 is_stmt 1 view .LVU3881
6199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10981 .loc 1 6199 11 is_stmt 0 view .LVU3882
10982 00a4 638D ldrh r3, [r4, #42]
10983 00a6 9BB2 uxth r3, r3
6199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10984 .loc 1 6199 22 view .LVU3883
10985 00a8 013B subs r3, r3, #1
10986 00aa 9BB2 uxth r3, r3
10987 00ac 6385 strh r3, [r4, #42] @ movhi
10988 .L701:
6204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10989 .loc 1 6204 3 is_stmt 1 view .LVU3884
6204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10990 .loc 1 6204 11 is_stmt 0 view .LVU3885
10991 00ae 638D ldrh r3, [r4, #42]
10992 00b0 9BB2 uxth r3, r3
6204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
10993 .loc 1 6204 6 view .LVU3886
10994 00b2 1BB1 cbz r3, .L702
6207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10995 .loc 1 6207 5 is_stmt 1 view .LVU3887
6207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10996 .loc 1 6207 9 is_stmt 0 view .LVU3888
10997 00b4 636C ldr r3, [r4, #68]
6207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
10998 .loc 1 6207 21 view .LVU3889
10999 00b6 43F00403 orr r3, r3, #4
11000 00ba 6364 str r3, [r4, #68]
11001 .L702:
6210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
11002 .loc 1 6210 3 is_stmt 1 view .LVU3890
6210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferISR = NULL;
11003 .loc 1 6210 14 is_stmt 0 view .LVU3891
11004 00bc 0023 movs r3, #0
11005 00be 84F84230 strb r3, [r4, #66]
6211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11006 .loc 1 6211 3 is_stmt 1 view .LVU3892
6211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11007 .loc 1 6211 17 is_stmt 0 view .LVU3893
11008 00c2 6363 str r3, [r4, #52]
6213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 386
11009 .loc 1 6213 3 is_stmt 1 view .LVU3894
6213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11010 .loc 1 6213 11 is_stmt 0 view .LVU3895
11011 00c4 636C ldr r3, [r4, #68]
6213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11012 .loc 1 6213 6 view .LVU3896
11013 00c6 1BBB cbnz r3, .L708
6225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11014 .loc 1 6225 8 is_stmt 1 view .LVU3897
6225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11015 .loc 1 6225 16 is_stmt 0 view .LVU3898
11016 00c8 E36A ldr r3, [r4, #44]
6225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11017 .loc 1 6225 11 view .LVU3899
11018 00ca 13F5803F cmn r3, #65536
11019 00ce 2DD1 bne .L709
6245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11020 .loc 1 6245 8 is_stmt 1 view .LVU3900
6245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11021 .loc 1 6245 16 is_stmt 0 view .LVU3901
11022 00d0 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11023 00d4 DBB2 uxtb r3, r3
6245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11024 .loc 1 6245 11 view .LVU3902
11025 00d6 222B cmp r3, #34
11026 00d8 38D0 beq .L710
6262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11027 .loc 1 6262 5 is_stmt 1 view .LVU3903
6262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11028 .loc 1 6262 17 is_stmt 0 view .LVU3904
11029 00da 2023 movs r3, #32
11030 00dc 84F84130 strb r3, [r4, #65]
6263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11031 .loc 1 6263 5 is_stmt 1 view .LVU3905
6263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11032 .loc 1 6263 25 is_stmt 0 view .LVU3906
11033 00e0 0023 movs r3, #0
11034 00e2 2363 str r3, [r4, #48]
6266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11035 .loc 1 6266 5 is_stmt 1 view .LVU3907
6266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11036 .loc 1 6266 5 view .LVU3908
11037 00e4 84F84030 strb r3, [r4, #64]
6266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11038 .loc 1 6266 5 view .LVU3909
6272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11039 .loc 1 6272 5 view .LVU3910
11040 00e8 2046 mov r0, r4
11041 00ea FFF7FEFF bl HAL_I2C_SlaveTxCpltCallback
11042 .LVL764:
6275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11043 .loc 1 6275 1 is_stmt 0 view .LVU3911
11044 00ee 2CE0 b .L694
11045 .LVL765:
11046 .L699:
6169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11047 .loc 1 6169 8 is_stmt 1 view .LVU3912
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 387
6169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11048 .loc 1 6169 11 is_stmt 0 view .LVU3913
11049 00f0 16F4004F tst r6, #32768
11050 00f4 C6D0 beq .L700
6172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11051 .loc 1 6172 5 is_stmt 1 view .LVU3914
6172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11052 .loc 1 6172 9 is_stmt 0 view .LVU3915
11053 00f6 2268 ldr r2, [r4]
6172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11054 .loc 1 6172 19 view .LVU3916
11055 00f8 1368 ldr r3, [r2]
6172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11056 .loc 1 6172 25 view .LVU3917
11057 00fa 23F40043 bic r3, r3, #32768
11058 00fe 1360 str r3, [r2]
6174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11059 .loc 1 6174 5 is_stmt 1 view .LVU3918
6174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11060 .loc 1 6174 13 is_stmt 0 view .LVU3919
11061 0100 E36B ldr r3, [r4, #60]
6174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11062 .loc 1 6174 8 view .LVU3920
11063 0102 002B cmp r3, #0
11064 0104 BED0 beq .L700
6176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11065 .loc 1 6176 7 is_stmt 1 view .LVU3921
6176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11066 .loc 1 6176 35 is_stmt 0 view .LVU3922
11067 0106 1B68 ldr r3, [r3]
11068 0108 5B68 ldr r3, [r3, #4]
6176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11069 .loc 1 6176 25 view .LVU3923
11070 010a 9BB2 uxth r3, r3
6176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11071 .loc 1 6176 23 view .LVU3924
11072 010c 6385 strh r3, [r4, #42] @ movhi
11073 010e B9E7 b .L700
11074 .LVL766:
11075 .L708:
6216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11076 .loc 1 6216 5 is_stmt 1 view .LVU3925
6216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11077 .loc 1 6216 27 is_stmt 0 view .LVU3926
11078 0110 616C ldr r1, [r4, #68]
6216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11079 .loc 1 6216 5 view .LVU3927
11080 0112 2046 mov r0, r4
11081 0114 FFF7FEFF bl I2C_ITError
11082 .LVL767:
6219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11083 .loc 1 6219 5 is_stmt 1 view .LVU3928
6219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11084 .loc 1 6219 13 is_stmt 0 view .LVU3929
11085 0118 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11086 011c DBB2 uxtb r3, r3
6219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 388
11087 .loc 1 6219 8 view .LVU3930
11088 011e 282B cmp r3, #40
11089 0120 13D1 bne .L694
6222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11090 .loc 1 6222 7 is_stmt 1 view .LVU3931
11091 0122 2946 mov r1, r5
11092 0124 2046 mov r0, r4
11093 0126 FFF7FEFF bl I2C_ITListenCplt
11094 .LVL768:
11095 012a 0EE0 b .L694
11096 .L709:
6228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11097 .loc 1 6228 5 view .LVU3932
11098 012c 2046 mov r0, r4
11099 012e FFF7FEFF bl I2C_ITSlaveSeqCplt
11100 .LVL769:
6230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
11101 .loc 1 6230 5 view .LVU3933
6230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->State = HAL_I2C_STATE_READY;
11102 .loc 1 6230 23 is_stmt 0 view .LVU3934
11103 0132 0C4B ldr r3, .L711
11104 0134 E362 str r3, [r4, #44]
6231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11105 .loc 1 6231 5 is_stmt 1 view .LVU3935
6231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11106 .loc 1 6231 17 is_stmt 0 view .LVU3936
11107 0136 2023 movs r3, #32
11108 0138 84F84130 strb r3, [r4, #65]
6232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11109 .loc 1 6232 5 is_stmt 1 view .LVU3937
6232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11110 .loc 1 6232 25 is_stmt 0 view .LVU3938
11111 013c 0023 movs r3, #0
11112 013e 2363 str r3, [r4, #48]
6235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11113 .loc 1 6235 5 is_stmt 1 view .LVU3939
6235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11114 .loc 1 6235 5 view .LVU3940
11115 0140 84F84030 strb r3, [r4, #64]
6235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11116 .loc 1 6235 5 view .LVU3941
6241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11117 .loc 1 6241 5 view .LVU3942
11118 0144 2046 mov r0, r4
11119 0146 FFF7FEFF bl HAL_I2C_ListenCpltCallback
11120 .LVL770:
11121 .L694:
6275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11122 .loc 1 6275 1 is_stmt 0 view .LVU3943
11123 014a 70BD pop {r4, r5, r6, pc}
11124 .LVL771:
11125 .L710:
6247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11126 .loc 1 6247 5 is_stmt 1 view .LVU3944
6247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11127 .loc 1 6247 17 is_stmt 0 view .LVU3945
11128 014c 2023 movs r3, #32
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 389
11129 014e 84F84130 strb r3, [r4, #65]
6248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11130 .loc 1 6248 5 is_stmt 1 view .LVU3946
6248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11131 .loc 1 6248 25 is_stmt 0 view .LVU3947
11132 0152 0023 movs r3, #0
11133 0154 2363 str r3, [r4, #48]
6251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11134 .loc 1 6251 5 is_stmt 1 view .LVU3948
6251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11135 .loc 1 6251 5 view .LVU3949
11136 0156 84F84030 strb r3, [r4, #64]
6251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11137 .loc 1 6251 5 view .LVU3950
6257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11138 .loc 1 6257 5 view .LVU3951
11139 015a 2046 mov r0, r4
11140 015c FFF7FEFF bl HAL_I2C_SlaveRxCpltCallback
11141 .LVL772:
11142 0160 F3E7 b .L694
11143 .L712:
11144 0162 00BF .align 2
11145 .L711:
11146 0164 0000FFFF .word -65536
11147 .cfi_endproc
11148 .LFE191:
11150 .section .text.I2C_Slave_ISR_IT,"ax",%progbits
11151 .align 1
11152 .syntax unified
11153 .thumb
11154 .thumb_func
11156 I2C_Slave_ISR_IT:
11157 .LVL773:
11158 .LFB181:
5092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
11159 .loc 1 5092 1 view -0
11160 .cfi_startproc
11161 @ args = 0, pretend = 0, frame = 0
11162 @ frame_needed = 0, uses_anonymous_args = 0
5092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
11163 .loc 1 5092 1 is_stmt 0 view .LVU3953
11164 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
11165 .cfi_def_cfa_offset 24
11166 .cfi_offset 3, -24
11167 .cfi_offset 4, -20
11168 .cfi_offset 5, -16
11169 .cfi_offset 6, -12
11170 .cfi_offset 7, -8
11171 .cfi_offset 14, -4
5093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
11172 .loc 1 5093 3 is_stmt 1 view .LVU3954
5093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
11173 .loc 1 5093 12 is_stmt 0 view .LVU3955
11174 0002 C76A ldr r7, [r0, #44]
11175 .LVL774:
5094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11176 .loc 1 5094 3 is_stmt 1 view .LVU3956
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 390
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11177 .loc 1 5097 3 view .LVU3957
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11178 .loc 1 5097 3 view .LVU3958
11179 0004 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
11180 0008 012B cmp r3, #1
11181 000a 00F09E80 beq .L727
11182 000e 0446 mov r4, r0
11183 0010 0D46 mov r5, r1
11184 0012 1646 mov r6, r2
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11185 .loc 1 5097 3 discriminator 2 view .LVU3959
11186 0014 0123 movs r3, #1
11187 0016 80F84030 strb r3, [r0, #64]
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11188 .loc 1 5097 3 discriminator 2 view .LVU3960
5100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
11189 .loc 1 5100 3 discriminator 2 view .LVU3961
5100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
11190 .loc 1 5100 6 is_stmt 0 discriminator 2 view .LVU3962
11191 001a 11F0200F tst r1, #32
11192 001e 02D0 beq .L715
5100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
11193 .loc 1 5100 61 discriminator 1 view .LVU3963
11194 0020 12F0200F tst r2, #32
11195 0024 19D1 bne .L729
11196 .LVL775:
11197 .L715:
5107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
11198 .loc 1 5107 3 is_stmt 1 view .LVU3964
5107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
11199 .loc 1 5107 6 is_stmt 0 view .LVU3965
11200 0026 15F0100F tst r5, #16
11201 002a 3ED0 beq .L716
5107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
11202 .loc 1 5107 58 discriminator 1 view .LVU3966
11203 002c 16F0100F tst r6, #16
11204 0030 3BD0 beq .L716
5114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11205 .loc 1 5114 5 is_stmt 1 view .LVU3967
5114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11206 .loc 1 5114 13 is_stmt 0 view .LVU3968
11207 0032 638D ldrh r3, [r4, #42]
11208 0034 9BB2 uxth r3, r3
5114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11209 .loc 1 5114 8 view .LVU3969
11210 0036 43BB cbnz r3, .L717
5116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
11211 .loc 1 5116 7 is_stmt 1 view .LVU3970
5116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
11212 .loc 1 5116 16 is_stmt 0 view .LVU3971
11213 0038 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11214 003c DBB2 uxtb r3, r3
5116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
11215 .loc 1 5116 10 view .LVU3972
11216 003e 282B cmp r3, #40
11217 0040 0ED0 beq .L730
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 391
11218 .L718:
5123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11219 .loc 1 5123 12 is_stmt 1 view .LVU3973
5123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11220 .loc 1 5123 21 is_stmt 0 view .LVU3974
11221 0042 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11222 0046 DBB2 uxtb r3, r3
5123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11223 .loc 1 5123 15 view .LVU3975
11224 0048 292B cmp r3, #41
11225 004a 11D0 beq .L731
11226 .L720:
5138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11227 .loc 1 5138 9 is_stmt 1 view .LVU3976
11228 004c 2368 ldr r3, [r4]
11229 004e 1022 movs r2, #16
11230 0050 DA61 str r2, [r3, #28]
11231 .L719:
5215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11232 .loc 1 5215 3 view .LVU3977
5218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11233 .loc 1 5218 3 view .LVU3978
5218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11234 .loc 1 5218 3 view .LVU3979
11235 0052 0020 movs r0, #0
11236 0054 84F84000 strb r0, [r4, #64]
5218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11237 .loc 1 5218 3 view .LVU3980
5220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11238 .loc 1 5220 3 view .LVU3981
11239 .LVL776:
11240 .L714:
5221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11241 .loc 1 5221 1 is_stmt 0 view .LVU3982
11242 0058 F8BD pop {r3, r4, r5, r6, r7, pc}
11243 .LVL777:
11244 .L729:
5104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11245 .loc 1 5104 5 is_stmt 1 view .LVU3983
11246 005a FFF7FEFF bl I2C_ITSlaveCplt
11247 .LVL778:
5104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11248 .loc 1 5104 5 is_stmt 0 view .LVU3984
11249 005e E2E7 b .L715
11250 .L730:
5116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
11251 .loc 1 5116 49 discriminator 1 view .LVU3985
11252 0060 B7F1007F cmp r7, #33554432
11253 0064 EDD1 bne .L718
5121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11254 .loc 1 5121 9 is_stmt 1 view .LVU3986
11255 0066 2946 mov r1, r5
11256 0068 2046 mov r0, r4
11257 006a FFF7FEFF bl I2C_ITListenCplt
11258 .LVL779:
11259 006e F0E7 b .L719
11260 .L731:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 392
5123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11261 .loc 1 5123 62 is_stmt 0 discriminator 1 view .LVU3987
11262 0070 17F5803F cmn r7, #65536
11263 0074 EAD0 beq .L720
5126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11264 .loc 1 5126 9 is_stmt 1 view .LVU3988
11265 0076 2368 ldr r3, [r4]
11266 0078 1022 movs r2, #16
11267 007a DA61 str r2, [r3, #28]
5129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11268 .loc 1 5129 9 view .LVU3989
11269 007c 2046 mov r0, r4
11270 007e FFF7FEFF bl I2C_Flush_TXDR
11271 .LVL780:
5133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11272 .loc 1 5133 9 view .LVU3990
11273 0082 2046 mov r0, r4
11274 0084 FFF7FEFF bl I2C_ITSlaveSeqCplt
11275 .LVL781:
11276 0088 E3E7 b .L719
11277 .L717:
5145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11278 .loc 1 5145 7 view .LVU3991
11279 008a 2368 ldr r3, [r4]
11280 008c 1022 movs r2, #16
11281 008e DA61 str r2, [r3, #28]
5148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11282 .loc 1 5148 7 view .LVU3992
5148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11283 .loc 1 5148 11 is_stmt 0 view .LVU3993
11284 0090 636C ldr r3, [r4, #68]
5148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11285 .loc 1 5148 23 view .LVU3994
11286 0092 43F00403 orr r3, r3, #4
11287 0096 6364 str r3, [r4, #68]
5150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11288 .loc 1 5150 7 is_stmt 1 view .LVU3995
5150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11289 .loc 1 5150 10 is_stmt 0 view .LVU3996
11290 0098 17B1 cbz r7, .L721
5150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11291 .loc 1 5150 43 discriminator 1 view .LVU3997
11292 009a B7F1807F cmp r7, #16777216
11293 009e D8D1 bne .L719
11294 .L721:
5153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11295 .loc 1 5153 9 is_stmt 1 view .LVU3998
5153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11296 .loc 1 5153 31 is_stmt 0 view .LVU3999
11297 00a0 616C ldr r1, [r4, #68]
5153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11298 .loc 1 5153 9 view .LVU4000
11299 00a2 2046 mov r0, r4
11300 00a4 FFF7FEFF bl I2C_ITError
11301 .LVL782:
11302 00a8 D3E7 b .L719
11303 .L716:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 393
5157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
11304 .loc 1 5157 8 is_stmt 1 view .LVU4001
5157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
11305 .loc 1 5157 11 is_stmt 0 view .LVU4002
11306 00aa 15F0040F tst r5, #4
11307 00ae 1FD0 beq .L722
5157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
11308 .loc 1 5157 65 discriminator 1 view .LVU4003
11309 00b0 16F0040F tst r6, #4
11310 00b4 1CD0 beq .L722
5160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11311 .loc 1 5160 5 is_stmt 1 view .LVU4004
5160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11312 .loc 1 5160 13 is_stmt 0 view .LVU4005
11313 00b6 638D ldrh r3, [r4, #42]
11314 00b8 9BB2 uxth r3, r3
5160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11315 .loc 1 5160 8 view .LVU4006
11316 00ba 73B1 cbz r3, .L723
5163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11317 .loc 1 5163 7 is_stmt 1 view .LVU4007
5163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11318 .loc 1 5163 38 is_stmt 0 view .LVU4008
11319 00bc 2368 ldr r3, [r4]
5163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11320 .loc 1 5163 48 view .LVU4009
11321 00be 5A6A ldr r2, [r3, #36]
5163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11322 .loc 1 5163 12 view .LVU4010
11323 00c0 636A ldr r3, [r4, #36]
5163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11324 .loc 1 5163 23 view .LVU4011
11325 00c2 1A70 strb r2, [r3]
5166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11326 .loc 1 5166 7 is_stmt 1 view .LVU4012
5166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11327 .loc 1 5166 11 is_stmt 0 view .LVU4013
11328 00c4 636A ldr r3, [r4, #36]
5166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11329 .loc 1 5166 21 view .LVU4014
11330 00c6 0133 adds r3, r3, #1
11331 00c8 6362 str r3, [r4, #36]
5168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11332 .loc 1 5168 7 is_stmt 1 view .LVU4015
5168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11333 .loc 1 5168 11 is_stmt 0 view .LVU4016
11334 00ca 238D ldrh r3, [r4, #40]
5168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11335 .loc 1 5168 21 view .LVU4017
11336 00cc 013B subs r3, r3, #1
11337 00ce 2385 strh r3, [r4, #40] @ movhi
5169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11338 .loc 1 5169 7 is_stmt 1 view .LVU4018
5169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11339 .loc 1 5169 11 is_stmt 0 view .LVU4019
11340 00d0 638D ldrh r3, [r4, #42]
11341 00d2 9BB2 uxth r3, r3
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 394
5169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11342 .loc 1 5169 22 view .LVU4020
11343 00d4 013B subs r3, r3, #1
11344 00d6 9BB2 uxth r3, r3
11345 00d8 6385 strh r3, [r4, #42] @ movhi
11346 .L723:
5172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
11347 .loc 1 5172 5 is_stmt 1 view .LVU4021
5172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
11348 .loc 1 5172 14 is_stmt 0 view .LVU4022
11349 00da 638D ldrh r3, [r4, #42]
11350 00dc 9BB2 uxth r3, r3
5172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
11351 .loc 1 5172 8 view .LVU4023
11352 00de 002B cmp r3, #0
11353 00e0 B7D1 bne .L719
5172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (tmpoptions != I2C_NO_OPTION_FRAME))
11354 .loc 1 5172 33 discriminator 1 view .LVU4024
11355 00e2 17F5803F cmn r7, #65536
11356 00e6 B4D0 beq .L719
5176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11357 .loc 1 5176 7 is_stmt 1 view .LVU4025
11358 00e8 2046 mov r0, r4
11359 00ea FFF7FEFF bl I2C_ITSlaveSeqCplt
11360 .LVL783:
11361 00ee B0E7 b .L719
11362 .L722:
5179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
11363 .loc 1 5179 8 view .LVU4026
5179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
11364 .loc 1 5179 11 is_stmt 0 view .LVU4027
11365 00f0 15F0080F tst r5, #8
11366 00f4 02D0 beq .L724
5179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
11367 .loc 1 5179 65 discriminator 1 view .LVU4028
11368 00f6 16F0080F tst r6, #8
11369 00fa 18D1 bne .L732
11370 .L724:
5184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
11371 .loc 1 5184 8 is_stmt 1 view .LVU4029
5184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
11372 .loc 1 5184 11 is_stmt 0 view .LVU4030
11373 00fc 15F0020F tst r5, #2
11374 0100 A7D0 beq .L719
5184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
11375 .loc 1 5184 65 discriminator 1 view .LVU4031
11376 0102 16F0020F tst r6, #2
11377 0106 A4D0 beq .L719
5191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11378 .loc 1 5191 5 is_stmt 1 view .LVU4032
5191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11379 .loc 1 5191 13 is_stmt 0 view .LVU4033
11380 0108 638D ldrh r3, [r4, #42]
11381 010a 9BB2 uxth r3, r3
5191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11382 .loc 1 5191 8 view .LVU4034
11383 010c A3B1 cbz r3, .L725
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 395
5194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11384 .loc 1 5194 7 is_stmt 1 view .LVU4035
5194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11385 .loc 1 5194 35 is_stmt 0 view .LVU4036
11386 010e 626A ldr r2, [r4, #36]
5194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11387 .loc 1 5194 11 view .LVU4037
11388 0110 2368 ldr r3, [r4]
5194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11389 .loc 1 5194 30 view .LVU4038
11390 0112 1278 ldrb r2, [r2] @ zero_extendqisi2
5194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11391 .loc 1 5194 28 view .LVU4039
11392 0114 9A62 str r2, [r3, #40]
5197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11393 .loc 1 5197 7 is_stmt 1 view .LVU4040
5197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11394 .loc 1 5197 11 is_stmt 0 view .LVU4041
11395 0116 636A ldr r3, [r4, #36]
5197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11396 .loc 1 5197 21 view .LVU4042
11397 0118 0133 adds r3, r3, #1
11398 011a 6362 str r3, [r4, #36]
5199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
11399 .loc 1 5199 7 is_stmt 1 view .LVU4043
5199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
11400 .loc 1 5199 11 is_stmt 0 view .LVU4044
11401 011c 638D ldrh r3, [r4, #42]
11402 011e 9BB2 uxth r3, r3
5199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize--;
11403 .loc 1 5199 22 view .LVU4045
11404 0120 013B subs r3, r3, #1
11405 0122 9BB2 uxth r3, r3
11406 0124 6385 strh r3, [r4, #42] @ movhi
5200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11407 .loc 1 5200 7 is_stmt 1 view .LVU4046
5200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11408 .loc 1 5200 11 is_stmt 0 view .LVU4047
11409 0126 238D ldrh r3, [r4, #40]
5200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11410 .loc 1 5200 21 view .LVU4048
11411 0128 013B subs r3, r3, #1
11412 012a 2385 strh r3, [r4, #40] @ movhi
11413 012c 91E7 b .L719
11414 .L732:
5182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11415 .loc 1 5182 5 is_stmt 1 view .LVU4049
11416 012e 2946 mov r1, r5
11417 0130 2046 mov r0, r4
11418 0132 FFF7FEFF bl I2C_ITAddrCplt
11419 .LVL784:
11420 0136 8CE7 b .L719
11421 .L725:
5204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11422 .loc 1 5204 7 view .LVU4050
5204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11423 .loc 1 5204 10 is_stmt 0 view .LVU4051
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 396
11424 0138 B7F1807F cmp r7, #16777216
11425 013c 01D0 beq .L726
5204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11426 .loc 1 5204 42 discriminator 1 view .LVU4052
11427 013e 002F cmp r7, #0
11428 0140 87D1 bne .L719
11429 .L726:
5208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11430 .loc 1 5208 9 is_stmt 1 view .LVU4053
11431 0142 2046 mov r0, r4
11432 0144 FFF7FEFF bl I2C_ITSlaveSeqCplt
11433 .LVL785:
11434 0148 83E7 b .L719
11435 .LVL786:
11436 .L727:
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11437 .loc 1 5097 3 is_stmt 0 view .LVU4054
11438 014a 0220 movs r0, #2
11439 .LVL787:
5097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11440 .loc 1 5097 3 view .LVU4055
11441 014c 84E7 b .L714
11442 .cfi_endproc
11443 .LFE181:
11445 .section .text.I2C_ITMasterCplt,"ax",%progbits
11446 .align 1
11447 .syntax unified
11448 .thumb
11449 .thumb_func
11451 I2C_ITMasterCplt:
11452 .LVL788:
11453 .LFB190:
5982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmperror;
11454 .loc 1 5982 1 is_stmt 1 view -0
11455 .cfi_startproc
11456 @ args = 0, pretend = 0, frame = 8
11457 @ frame_needed = 0, uses_anonymous_args = 0
5982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmperror;
11458 .loc 1 5982 1 is_stmt 0 view .LVU4057
11459 0000 30B5 push {r4, r5, lr}
11460 .cfi_def_cfa_offset 12
11461 .cfi_offset 4, -12
11462 .cfi_offset 5, -8
11463 .cfi_offset 14, -4
11464 0002 83B0 sub sp, sp, #12
11465 .cfi_def_cfa_offset 24
11466 0004 0446 mov r4, r0
11467 0006 0D46 mov r5, r1
5983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
11468 .loc 1 5983 3 is_stmt 1 view .LVU4058
5984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** __IO uint32_t tmpreg;
11469 .loc 1 5984 3 view .LVU4059
11470 .LVL789:
5985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11471 .loc 1 5985 3 view .LVU4060
5988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11472 .loc 1 5988 3 view .LVU4061
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 397
11473 0008 0368 ldr r3, [r0]
11474 000a 2022 movs r2, #32
11475 000c DA61 str r2, [r3, #28]
5991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11476 .loc 1 5991 3 view .LVU4062
5991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11477 .loc 1 5991 11 is_stmt 0 view .LVU4063
11478 000e 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
11479 0012 DBB2 uxtb r3, r3
5991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11480 .loc 1 5991 6 view .LVU4064
11481 0014 212B cmp r3, #33
11482 0016 33D0 beq .L745
5996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11483 .loc 1 5996 8 is_stmt 1 view .LVU4065
5996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11484 .loc 1 5996 16 is_stmt 0 view .LVU4066
11485 0018 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
11486 001c DBB2 uxtb r3, r3
5996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11487 .loc 1 5996 11 view .LVU4067
11488 001e 222B cmp r3, #34
11489 0020 34D0 beq .L746
11490 .LVL790:
11491 .L735:
6004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11492 .loc 1 6004 3 is_stmt 1 view .LVU4068
6007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11493 .loc 1 6007 3 view .LVU4069
11494 0022 2268 ldr r2, [r4]
11495 0024 5368 ldr r3, [r2, #4]
11496 0026 23F0FF73 bic r3, r3, #33423360
11497 002a 23F48B33 bic r3, r3, #71168
11498 002e 23F4FF73 bic r3, r3, #510
11499 0032 23F00103 bic r3, r3, #1
11500 0036 5360 str r3, [r2, #4]
6010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
11501 .loc 1 6010 3 view .LVU4070
6010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions = I2C_NO_OPTION_FRAME;
11502 .loc 1 6010 23 is_stmt 0 view .LVU4071
11503 0038 0023 movs r3, #0
11504 003a 6363 str r3, [r4, #52]
6011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11505 .loc 1 6011 3 is_stmt 1 view .LVU4072
6011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11506 .loc 1 6011 23 is_stmt 0 view .LVU4073
11507 003c A3F58033 sub r3, r3, #65536
11508 0040 E362 str r3, [r4, #44]
6013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11509 .loc 1 6013 3 is_stmt 1 view .LVU4074
6013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11510 .loc 1 6013 6 is_stmt 0 view .LVU4075
11511 0042 15F0100F tst r5, #16
11512 0046 06D0 beq .L736
6016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11513 .loc 1 6016 5 is_stmt 1 view .LVU4076
11514 0048 2368 ldr r3, [r4]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 398
11515 004a 1022 movs r2, #16
11516 004c DA61 str r2, [r3, #28]
6019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11517 .loc 1 6019 5 view .LVU4077
6019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11518 .loc 1 6019 9 is_stmt 0 view .LVU4078
11519 004e 636C ldr r3, [r4, #68]
6019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11520 .loc 1 6019 21 view .LVU4079
11521 0050 43F00403 orr r3, r3, #4
11522 0054 6364 str r3, [r4, #68]
11523 .L736:
6023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11524 .loc 1 6023 3 is_stmt 1 view .LVU4080
6023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11525 .loc 1 6023 12 is_stmt 0 view .LVU4081
11526 0056 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11527 005a DBB2 uxtb r3, r3
6023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11528 .loc 1 6023 6 view .LVU4082
11529 005c 602B cmp r3, #96
11530 005e 1BD0 beq .L747
11531 .L737:
6031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11532 .loc 1 6031 3 is_stmt 1 view .LVU4083
11533 0060 2046 mov r0, r4
11534 0062 FFF7FEFF bl I2C_Flush_TXDR
11535 .LVL791:
6034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11536 .loc 1 6034 3 view .LVU4084
6034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11537 .loc 1 6034 12 is_stmt 0 view .LVU4085
11538 0066 626C ldr r2, [r4, #68]
11539 .LVL792:
6037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11540 .loc 1 6037 3 is_stmt 1 view .LVU4086
6037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11541 .loc 1 6037 12 is_stmt 0 view .LVU4087
11542 0068 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11543 006c DBB2 uxtb r3, r3
6037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11544 .loc 1 6037 6 view .LVU4088
11545 006e 602B cmp r3, #96
11546 0070 00D0 beq .L738
6037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11547 .loc 1 6037 44 discriminator 1 view .LVU4089
11548 0072 D2B1 cbz r2, .L739
11549 .L738:
6040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11550 .loc 1 6040 5 is_stmt 1 view .LVU4090
6040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11551 .loc 1 6040 27 is_stmt 0 view .LVU4091
11552 0074 616C ldr r1, [r4, #68]
6040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11553 .loc 1 6040 5 view .LVU4092
11554 0076 2046 mov r0, r4
11555 0078 FFF7FEFF bl I2C_ITError
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 399
11556 .LVL793:
11557 .L733:
6116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11558 .loc 1 6116 1 view .LVU4093
11559 007c 03B0 add sp, sp, #12
11560 .cfi_remember_state
11561 .cfi_def_cfa_offset 12
11562 @ sp needed
11563 007e 30BD pop {r4, r5, pc}
11564 .LVL794:
11565 .L745:
11566 .cfi_restore_state
5993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
11567 .loc 1 5993 5 is_stmt 1 view .LVU4094
11568 0080 0121 movs r1, #1
11569 .LVL795:
5993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_TX;
11570 .loc 1 5993 5 is_stmt 0 view .LVU4095
11571 0082 FFF7FEFF bl I2C_Disable_IRQ
11572 .LVL796:
5994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11573 .loc 1 5994 5 is_stmt 1 view .LVU4096
5994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11574 .loc 1 5994 25 is_stmt 0 view .LVU4097
11575 0086 1123 movs r3, #17
11576 0088 2363 str r3, [r4, #48]
11577 008a CAE7 b .L735
11578 .LVL797:
11579 .L746:
5998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
11580 .loc 1 5998 5 is_stmt 1 view .LVU4098
11581 008c 0221 movs r1, #2
11582 .LVL798:
5998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_MASTER_BUSY_RX;
11583 .loc 1 5998 5 is_stmt 0 view .LVU4099
11584 008e FFF7FEFF bl I2C_Disable_IRQ
11585 .LVL799:
5999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11586 .loc 1 5999 5 is_stmt 1 view .LVU4100
5999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11587 .loc 1 5999 25 is_stmt 0 view .LVU4101
11588 0092 1223 movs r3, #18
11589 0094 2363 str r3, [r4, #48]
11590 0096 C4E7 b .L735
11591 .L747:
6023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11592 .loc 1 6023 44 discriminator 1 view .LVU4102
11593 0098 15F0040F tst r5, #4
11594 009c E0D0 beq .L737
6026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(tmpreg);
11595 .loc 1 6026 5 is_stmt 1 view .LVU4103
6026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(tmpreg);
11596 .loc 1 6026 27 is_stmt 0 view .LVU4104
11597 009e 2368 ldr r3, [r4]
6026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(tmpreg);
11598 .loc 1 6026 37 view .LVU4105
11599 00a0 5B6A ldr r3, [r3, #36]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 400
11600 00a2 DBB2 uxtb r3, r3
6026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** UNUSED(tmpreg);
11601 .loc 1 6026 12 view .LVU4106
11602 00a4 0193 str r3, [sp, #4]
6027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11603 .loc 1 6027 5 is_stmt 1 view .LVU4107
11604 00a6 019B ldr r3, [sp, #4]
11605 00a8 DAE7 b .L737
11606 .LVL800:
11607 .L739:
6043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11608 .loc 1 6043 8 view .LVU4108
6043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11609 .loc 1 6043 16 is_stmt 0 view .LVU4109
11610 00aa 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11611 00ae DBB2 uxtb r3, r3
6043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11612 .loc 1 6043 11 view .LVU4110
11613 00b0 212B cmp r3, #33
11614 00b2 17D0 beq .L748
6078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11615 .loc 1 6078 8 is_stmt 1 view .LVU4111
6078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11616 .loc 1 6078 16 is_stmt 0 view .LVU4112
11617 00b4 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
11618 00b8 DBB2 uxtb r3, r3
6078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11619 .loc 1 6078 11 view .LVU4113
11620 00ba 222B cmp r3, #34
11621 00bc DED1 bne .L733
6080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11622 .loc 1 6080 5 is_stmt 1 view .LVU4114
6080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11623 .loc 1 6080 17 is_stmt 0 view .LVU4115
11624 00be 2023 movs r3, #32
11625 00c0 84F84130 strb r3, [r4, #65]
6081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11626 .loc 1 6081 5 is_stmt 1 view .LVU4116
6081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11627 .loc 1 6081 25 is_stmt 0 view .LVU4117
11628 00c4 0023 movs r3, #0
11629 00c6 2363 str r3, [r4, #48]
6083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11630 .loc 1 6083 5 is_stmt 1 view .LVU4118
6083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11631 .loc 1 6083 13 is_stmt 0 view .LVU4119
11632 00c8 94F84230 ldrb r3, [r4, #66] @ zero_extendqisi2
11633 00cc DBB2 uxtb r3, r3
6083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11634 .loc 1 6083 8 view .LVU4120
11635 00ce 402B cmp r3, #64
11636 00d0 24D0 beq .L749
6099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11637 .loc 1 6099 7 is_stmt 1 view .LVU4121
6099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11638 .loc 1 6099 18 is_stmt 0 view .LVU4122
11639 00d2 0023 movs r3, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 401
11640 00d4 84F84230 strb r3, [r4, #66]
6102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11641 .loc 1 6102 7 is_stmt 1 view .LVU4123
6102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11642 .loc 1 6102 7 view .LVU4124
11643 00d8 84F84030 strb r3, [r4, #64]
6102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11644 .loc 1 6102 7 view .LVU4125
6108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11645 .loc 1 6108 7 view .LVU4126
11646 00dc 2046 mov r0, r4
11647 00de FFF7FEFF bl HAL_I2C_MasterRxCpltCallback
11648 .LVL801:
6115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11649 .loc 1 6115 3 view .LVU4127
6116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11650 .loc 1 6116 1 is_stmt 0 view .LVU4128
11651 00e2 CBE7 b .L733
11652 .LVL802:
11653 .L748:
6045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11654 .loc 1 6045 5 is_stmt 1 view .LVU4129
6045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->PreviousState = I2C_STATE_NONE;
11655 .loc 1 6045 17 is_stmt 0 view .LVU4130
11656 00e4 2023 movs r3, #32
11657 00e6 84F84130 strb r3, [r4, #65]
6046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11658 .loc 1 6046 5 is_stmt 1 view .LVU4131
6046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11659 .loc 1 6046 25 is_stmt 0 view .LVU4132
11660 00ea 0023 movs r3, #0
11661 00ec 2363 str r3, [r4, #48]
6048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11662 .loc 1 6048 5 is_stmt 1 view .LVU4133
6048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11663 .loc 1 6048 13 is_stmt 0 view .LVU4134
11664 00ee 94F84230 ldrb r3, [r4, #66] @ zero_extendqisi2
11665 00f2 DBB2 uxtb r3, r3
6048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11666 .loc 1 6048 8 view .LVU4135
11667 00f4 402B cmp r3, #64
11668 00f6 08D0 beq .L750
6064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11669 .loc 1 6064 7 is_stmt 1 view .LVU4136
6064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11670 .loc 1 6064 18 is_stmt 0 view .LVU4137
11671 00f8 0023 movs r3, #0
11672 00fa 84F84230 strb r3, [r4, #66]
6067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11673 .loc 1 6067 7 is_stmt 1 view .LVU4138
6067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11674 .loc 1 6067 7 view .LVU4139
11675 00fe 84F84030 strb r3, [r4, #64]
6067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11676 .loc 1 6067 7 view .LVU4140
6073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11677 .loc 1 6073 7 view .LVU4141
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 402
11678 0102 2046 mov r0, r4
11679 0104 FFF7FEFF bl HAL_I2C_MasterTxCpltCallback
11680 .LVL803:
6073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11681 .loc 1 6073 7 is_stmt 0 view .LVU4142
11682 0108 B8E7 b .L733
11683 .LVL804:
11684 .L750:
6050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11685 .loc 1 6050 7 is_stmt 1 view .LVU4143
6050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11686 .loc 1 6050 18 is_stmt 0 view .LVU4144
11687 010a 0023 movs r3, #0
11688 010c 84F84230 strb r3, [r4, #66]
6053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11689 .loc 1 6053 7 is_stmt 1 view .LVU4145
6053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11690 .loc 1 6053 7 view .LVU4146
11691 0110 84F84030 strb r3, [r4, #64]
6053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11692 .loc 1 6053 7 view .LVU4147
6059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11693 .loc 1 6059 7 view .LVU4148
11694 0114 2046 mov r0, r4
11695 0116 FFF7FEFF bl HAL_I2C_MemTxCpltCallback
11696 .LVL805:
6059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11697 .loc 1 6059 7 is_stmt 0 view .LVU4149
11698 011a AFE7 b .L733
11699 .LVL806:
11700 .L749:
6085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11701 .loc 1 6085 7 is_stmt 1 view .LVU4150
6085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11702 .loc 1 6085 18 is_stmt 0 view .LVU4151
11703 011c 0023 movs r3, #0
11704 011e 84F84230 strb r3, [r4, #66]
6088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11705 .loc 1 6088 7 is_stmt 1 view .LVU4152
6088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11706 .loc 1 6088 7 view .LVU4153
11707 0122 84F84030 strb r3, [r4, #64]
6088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11708 .loc 1 6088 7 view .LVU4154
6094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11709 .loc 1 6094 7 view .LVU4155
11710 0126 2046 mov r0, r4
11711 0128 FFF7FEFF bl HAL_I2C_MemRxCpltCallback
11712 .LVL807:
6094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** #endif /* USE_HAL_I2C_REGISTER_CALLBACKS */
11713 .loc 1 6094 7 is_stmt 0 view .LVU4156
11714 012c A6E7 b .L733
11715 .cfi_endproc
11716 .LFE190:
11718 .section .text.I2C_Master_ISR_IT,"ax",%progbits
11719 .align 1
11720 .syntax unified
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 403
11721 .thumb
11722 .thumb_func
11724 I2C_Master_ISR_IT:
11725 .LVL808:
11726 .LFB179:
4809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t devaddress;
11727 .loc 1 4809 1 is_stmt 1 view -0
11728 .cfi_startproc
11729 @ args = 0, pretend = 0, frame = 0
11730 @ frame_needed = 0, uses_anonymous_args = 0
4810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
11731 .loc 1 4810 3 view .LVU4158
4811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11732 .loc 1 4811 3 view .LVU4159
4814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11733 .loc 1 4814 3 view .LVU4160
4814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11734 .loc 1 4814 3 view .LVU4161
11735 0000 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
11736 0004 012B cmp r3, #1
11737 0006 00F0B980 beq .L765
4809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t devaddress;
11738 .loc 1 4809 1 is_stmt 0 discriminator 2 view .LVU4162
11739 000a 70B5 push {r4, r5, r6, lr}
11740 .cfi_def_cfa_offset 16
11741 .cfi_offset 4, -16
11742 .cfi_offset 5, -12
11743 .cfi_offset 6, -8
11744 .cfi_offset 14, -4
11745 000c 82B0 sub sp, sp, #8
11746 .cfi_def_cfa_offset 24
11747 000e 0446 mov r4, r0
11748 0010 0D46 mov r5, r1
11749 0012 1646 mov r6, r2
4814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11750 .loc 1 4814 3 is_stmt 1 discriminator 2 view .LVU4163
11751 0014 0123 movs r3, #1
11752 0016 80F84030 strb r3, [r0, #64]
4814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11753 .loc 1 4814 3 discriminator 2 view .LVU4164
4816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
11754 .loc 1 4816 3 discriminator 2 view .LVU4165
4816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
11755 .loc 1 4816 6 is_stmt 0 discriminator 2 view .LVU4166
11756 001a 11F0100F tst r1, #16
11757 001e 02D0 beq .L753
4816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
11758 .loc 1 4816 58 discriminator 1 view .LVU4167
11759 0020 12F0100F tst r2, #16
11760 0024 22D1 bne .L770
11761 .L753:
4830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
11762 .loc 1 4830 8 is_stmt 1 view .LVU4168
4830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
11763 .loc 1 4830 11 is_stmt 0 view .LVU4169
11764 0026 15F0040F tst r5, #4
11765 002a 29D0 beq .L755
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 404
4830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
11766 .loc 1 4830 65 discriminator 1 view .LVU4170
11767 002c 16F0040F tst r6, #4
11768 0030 26D0 beq .L755
4834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11769 .loc 1 4834 5 is_stmt 1 view .LVU4171
4834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11770 .loc 1 4834 16 is_stmt 0 view .LVU4172
11771 0032 25F00405 bic r5, r5, #4
11772 .LVL809:
4837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11773 .loc 1 4837 5 is_stmt 1 view .LVU4173
4837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11774 .loc 1 4837 36 is_stmt 0 view .LVU4174
11775 0036 2368 ldr r3, [r4]
4837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11776 .loc 1 4837 46 view .LVU4175
11777 0038 5A6A ldr r2, [r3, #36]
11778 .LVL810:
4837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11779 .loc 1 4837 10 view .LVU4176
11780 003a 636A ldr r3, [r4, #36]
4837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11781 .loc 1 4837 21 view .LVU4177
11782 003c 1A70 strb r2, [r3]
4840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11783 .loc 1 4840 5 is_stmt 1 view .LVU4178
4840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11784 .loc 1 4840 9 is_stmt 0 view .LVU4179
11785 003e 636A ldr r3, [r4, #36]
4840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11786 .loc 1 4840 19 view .LVU4180
11787 0040 0133 adds r3, r3, #1
11788 0042 6362 str r3, [r4, #36]
4842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11789 .loc 1 4842 5 is_stmt 1 view .LVU4181
4842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11790 .loc 1 4842 9 is_stmt 0 view .LVU4182
11791 0044 238D ldrh r3, [r4, #40]
4842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11792 .loc 1 4842 19 view .LVU4183
11793 0046 013B subs r3, r3, #1
11794 0048 2385 strh r3, [r4, #40] @ movhi
4843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11795 .loc 1 4843 5 is_stmt 1 view .LVU4184
4843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11796 .loc 1 4843 9 is_stmt 0 view .LVU4185
11797 004a 638D ldrh r3, [r4, #42]
11798 004c 9BB2 uxth r3, r3
4843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11799 .loc 1 4843 20 view .LVU4186
11800 004e 013B subs r3, r3, #1
11801 0050 9BB2 uxth r3, r3
11802 0052 6385 strh r3, [r4, #42] @ movhi
11803 .LVL811:
11804 .L754:
4930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 405
11805 .loc 1 4930 3 is_stmt 1 view .LVU4187
4932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
11806 .loc 1 4932 3 view .LVU4188
4932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
11807 .loc 1 4932 6 is_stmt 0 view .LVU4189
11808 0054 15F0200F tst r5, #32
11809 0058 03D0 beq .L764
4932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
11810 .loc 1 4932 61 discriminator 1 view .LVU4190
11811 005a 16F0200F tst r6, #32
11812 005e 40F08880 bne .L771
11813 .L764:
4940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11814 .loc 1 4940 3 is_stmt 1 view .LVU4191
4940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11815 .loc 1 4940 3 view .LVU4192
11816 0062 0020 movs r0, #0
11817 0064 84F84000 strb r0, [r4, #64]
4940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11818 .loc 1 4940 3 view .LVU4193
4942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11819 .loc 1 4942 3 view .LVU4194
4943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11820 .loc 1 4943 1 is_stmt 0 view .LVU4195
11821 0068 02B0 add sp, sp, #8
11822 .cfi_remember_state
11823 .cfi_def_cfa_offset 16
11824 @ sp needed
11825 006a 70BD pop {r4, r5, r6, pc}
11826 .LVL812:
11827 .L770:
11828 .cfi_restore_state
4820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11829 .loc 1 4820 5 is_stmt 1 view .LVU4196
11830 006c 0368 ldr r3, [r0]
11831 006e 1022 movs r2, #16
11832 .LVL813:
4820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11833 .loc 1 4820 5 is_stmt 0 view .LVU4197
11834 0070 DA61 str r2, [r3, #28]
4825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11835 .loc 1 4825 5 is_stmt 1 view .LVU4198
4825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11836 .loc 1 4825 9 is_stmt 0 view .LVU4199
11837 0072 436C ldr r3, [r0, #68]
4825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11838 .loc 1 4825 21 view .LVU4200
11839 0074 43F00403 orr r3, r3, #4
11840 0078 4364 str r3, [r0, #68]
4828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11841 .loc 1 4828 5 is_stmt 1 view .LVU4201
11842 007a FFF7FEFF bl I2C_Flush_TXDR
11843 .LVL814:
4828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11844 .loc 1 4828 5 is_stmt 0 view .LVU4202
11845 007e E9E7 b .L754
11846 .LVL815:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 406
11847 .L755:
4845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
11848 .loc 1 4845 8 is_stmt 1 view .LVU4203
4845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
11849 .loc 1 4845 11 is_stmt 0 view .LVU4204
11850 0080 15F0020F tst r5, #2
11851 0084 12D0 beq .L756
4845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
11852 .loc 1 4845 65 discriminator 1 view .LVU4205
11853 0086 16F0020F tst r6, #2
11854 008a 0FD0 beq .L756
4849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11855 .loc 1 4849 5 is_stmt 1 view .LVU4206
4849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11856 .loc 1 4849 33 is_stmt 0 view .LVU4207
11857 008c 626A ldr r2, [r4, #36]
11858 .LVL816:
4849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11859 .loc 1 4849 9 view .LVU4208
11860 008e 2368 ldr r3, [r4]
4849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11861 .loc 1 4849 28 view .LVU4209
11862 0090 1278 ldrb r2, [r2] @ zero_extendqisi2
4849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11863 .loc 1 4849 26 view .LVU4210
11864 0092 9A62 str r2, [r3, #40]
4852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11865 .loc 1 4852 5 is_stmt 1 view .LVU4211
4852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11866 .loc 1 4852 9 is_stmt 0 view .LVU4212
11867 0094 636A ldr r3, [r4, #36]
4852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11868 .loc 1 4852 19 view .LVU4213
11869 0096 0133 adds r3, r3, #1
11870 0098 6362 str r3, [r4, #36]
4854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11871 .loc 1 4854 5 is_stmt 1 view .LVU4214
4854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11872 .loc 1 4854 9 is_stmt 0 view .LVU4215
11873 009a 238D ldrh r3, [r4, #40]
4854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
11874 .loc 1 4854 19 view .LVU4216
11875 009c 013B subs r3, r3, #1
11876 009e 2385 strh r3, [r4, #40] @ movhi
4855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11877 .loc 1 4855 5 is_stmt 1 view .LVU4217
4855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11878 .loc 1 4855 9 is_stmt 0 view .LVU4218
11879 00a0 638D ldrh r3, [r4, #42]
11880 00a2 9BB2 uxth r3, r3
4855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11881 .loc 1 4855 20 view .LVU4219
11882 00a4 013B subs r3, r3, #1
11883 00a6 9BB2 uxth r3, r3
11884 00a8 6385 strh r3, [r4, #42] @ movhi
11885 00aa D3E7 b .L754
11886 .LVL817:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 407
11887 .L756:
4857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
11888 .loc 1 4857 8 is_stmt 1 view .LVU4220
4857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
11889 .loc 1 4857 11 is_stmt 0 view .LVU4221
11890 00ac 15F0800F tst r5, #128
11891 00b0 3FD0 beq .L757
4857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
11892 .loc 1 4857 64 discriminator 1 view .LVU4222
11893 00b2 16F0400F tst r6, #64
11894 00b6 3CD0 beq .L757
4860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11895 .loc 1 4860 5 is_stmt 1 view .LVU4223
4860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11896 .loc 1 4860 14 is_stmt 0 view .LVU4224
11897 00b8 638D ldrh r3, [r4, #42]
11898 00ba 9BB2 uxth r3, r3
4860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11899 .loc 1 4860 8 view .LVU4225
11900 00bc 5BB3 cbz r3, .L758
4860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11901 .loc 1 4860 41 discriminator 1 view .LVU4226
11902 00be 238D ldrh r3, [r4, #40]
4860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11903 .loc 1 4860 33 discriminator 1 view .LVU4227
11904 00c0 4BBB cbnz r3, .L758
4862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11905 .loc 1 4862 7 is_stmt 1 view .LVU4228
4862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11906 .loc 1 4862 35 is_stmt 0 view .LVU4229
11907 00c2 2368 ldr r3, [r4]
4862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11908 .loc 1 4862 45 view .LVU4230
11909 00c4 5968 ldr r1, [r3, #4]
11910 .LVL818:
4862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
11911 .loc 1 4862 18 view .LVU4231
11912 00c6 C1F30901 ubfx r1, r1, #0, #10
11913 .LVL819:
4864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11914 .loc 1 4864 7 is_stmt 1 view .LVU4232
4864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11915 .loc 1 4864 15 is_stmt 0 view .LVU4233
11916 00ca 638D ldrh r3, [r4, #42]
11917 00cc 9BB2 uxth r3, r3
4864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11918 .loc 1 4864 10 view .LVU4234
11919 00ce FF2B cmp r3, #255
11920 00d0 0ED8 bhi .L772
4871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
11921 .loc 1 4871 9 is_stmt 1 view .LVU4235
4871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
11922 .loc 1 4871 30 is_stmt 0 view .LVU4236
11923 00d2 628D ldrh r2, [r4, #42]
11924 .LVL820:
4871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
11925 .loc 1 4871 30 view .LVU4237
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 408
11926 00d4 92B2 uxth r2, r2
4871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
11927 .loc 1 4871 24 view .LVU4238
11928 00d6 2285 strh r2, [r4, #40] @ movhi
4872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11929 .loc 1 4872 9 is_stmt 1 view .LVU4239
4872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11930 .loc 1 4872 17 is_stmt 0 view .LVU4240
11931 00d8 E36A ldr r3, [r4, #44]
4872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11932 .loc 1 4872 12 view .LVU4241
11933 00da 13F5803F cmn r3, #65536
11934 00de 11D0 beq .L760
4874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions, I2C_NO_STARTSTOP);
11935 .loc 1 4874 11 is_stmt 1 view .LVU4242
4875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11936 .loc 1 4875 34 is_stmt 0 view .LVU4243
11937 00e0 E36A ldr r3, [r4, #44]
4874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions, I2C_NO_STARTSTOP);
11938 .loc 1 4874 11 view .LVU4244
11939 00e2 0020 movs r0, #0
11940 .LVL821:
4874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions, I2C_NO_STARTSTOP);
11941 .loc 1 4874 11 view .LVU4245
11942 00e4 0090 str r0, [sp]
11943 00e6 D2B2 uxtb r2, r2
11944 00e8 2046 mov r0, r4
11945 00ea FFF7FEFF bl I2C_TransferConfig
11946 .LVL822:
4874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferOptions, I2C_NO_STARTSTOP);
11947 .loc 1 4874 11 view .LVU4246
11948 00ee B1E7 b .L754
11949 .LVL823:
11950 .L772:
4866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_START
11951 .loc 1 4866 9 is_stmt 1 view .LVU4247
4866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_START
11952 .loc 1 4866 24 is_stmt 0 view .LVU4248
11953 00f0 FF22 movs r2, #255
11954 .LVL824:
4866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, devaddress, (uint8_t)hi2c->XferSize, I2C_RELOAD_MODE, I2C_NO_START
11955 .loc 1 4866 24 view .LVU4249
11956 00f2 2285 strh r2, [r4, #40] @ movhi
4867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11957 .loc 1 4867 9 is_stmt 1 view .LVU4250
11958 00f4 0023 movs r3, #0
11959 00f6 0093 str r3, [sp]
11960 00f8 4FF08073 mov r3, #16777216
11961 00fc 2046 mov r0, r4
11962 .LVL825:
4867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11963 .loc 1 4867 9 is_stmt 0 view .LVU4251
11964 00fe FFF7FEFF bl I2C_TransferConfig
11965 .LVL826:
4867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11966 .loc 1 4867 9 view .LVU4252
11967 0102 A7E7 b .L754
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 409
11968 .LVL827:
11969 .L760:
4879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
11970 .loc 1 4879 11 is_stmt 1 view .LVU4253
11971 0104 0023 movs r3, #0
11972 0106 0093 str r3, [sp]
11973 0108 4FF00073 mov r3, #33554432
11974 010c D2B2 uxtb r2, r2
11975 010e 2046 mov r0, r4
11976 .LVL828:
4879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
11977 .loc 1 4879 11 is_stmt 0 view .LVU4254
11978 0110 FFF7FEFF bl I2C_TransferConfig
11979 .LVL829:
4879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
11980 .loc 1 4879 11 view .LVU4255
11981 0114 9EE7 b .L754
11982 .LVL830:
11983 .L758:
4887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11984 .loc 1 4887 7 is_stmt 1 view .LVU4256
4887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11985 .loc 1 4887 11 is_stmt 0 view .LVU4257
11986 0116 2368 ldr r3, [r4]
11987 0118 5B68 ldr r3, [r3, #4]
4887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
11988 .loc 1 4887 10 view .LVU4258
11989 011a 13F0007F tst r3, #33554432
11990 011e 03D1 bne .L761
4890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11991 .loc 1 4890 9 is_stmt 1 view .LVU4259
11992 0120 2046 mov r0, r4
11993 .LVL831:
4890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11994 .loc 1 4890 9 is_stmt 0 view .LVU4260
11995 0122 FFF7FEFF bl I2C_ITMasterSeqCplt
11996 .LVL832:
4890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
11997 .loc 1 4890 9 view .LVU4261
11998 0126 95E7 b .L754
11999 .LVL833:
12000 .L761:
4896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12001 .loc 1 4896 9 is_stmt 1 view .LVU4262
12002 0128 4021 movs r1, #64
12003 .LVL834:
4896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12004 .loc 1 4896 9 is_stmt 0 view .LVU4263
12005 012a 2046 mov r0, r4
12006 .LVL835:
4896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12007 .loc 1 4896 9 view .LVU4264
12008 012c FFF7FEFF bl I2C_ITError
12009 .LVL836:
4896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12010 .loc 1 4896 9 view .LVU4265
12011 0130 90E7 b .L754
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 410
12012 .LVL837:
12013 .L757:
4900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12014 .loc 1 4900 8 is_stmt 1 view .LVU4266
4900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12015 .loc 1 4900 11 is_stmt 0 view .LVU4267
12016 0132 15F0400F tst r5, #64
12017 0136 8DD0 beq .L754
4900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12018 .loc 1 4900 63 discriminator 1 view .LVU4268
12019 0138 16F0400F tst r6, #64
12020 013c 8AD0 beq .L754
4903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12021 .loc 1 4903 5 is_stmt 1 view .LVU4269
4903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12022 .loc 1 4903 13 is_stmt 0 view .LVU4270
12023 013e 638D ldrh r3, [r4, #42]
12024 0140 9BB2 uxth r3, r3
4903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12025 .loc 1 4903 8 view .LVU4271
12026 0142 8BB9 cbnz r3, .L762
4905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12027 .loc 1 4905 7 is_stmt 1 view .LVU4272
4905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12028 .loc 1 4905 11 is_stmt 0 view .LVU4273
12029 0144 2368 ldr r3, [r4]
12030 0146 5A68 ldr r2, [r3, #4]
12031 .LVL838:
4905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12032 .loc 1 4905 10 view .LVU4274
12033 0148 12F0007F tst r2, #33554432
12034 014c 82D1 bne .L754
4908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12035 .loc 1 4908 9 is_stmt 1 view .LVU4275
4908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12036 .loc 1 4908 17 is_stmt 0 view .LVU4276
12037 014e E26A ldr r2, [r4, #44]
4908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12038 .loc 1 4908 12 view .LVU4277
12039 0150 12F5803F cmn r2, #65536
12040 0154 04D1 bne .L763
4911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12041 .loc 1 4911 11 is_stmt 1 view .LVU4278
4911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12042 .loc 1 4911 25 is_stmt 0 view .LVU4279
12043 0156 5A68 ldr r2, [r3, #4]
4911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12044 .loc 1 4911 31 view .LVU4280
12045 0158 42F48042 orr r2, r2, #16384
12046 015c 5A60 str r2, [r3, #4]
12047 015e 79E7 b .L754
12048 .L763:
4916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12049 .loc 1 4916 11 is_stmt 1 view .LVU4281
12050 0160 2046 mov r0, r4
12051 .LVL839:
4916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 411
12052 .loc 1 4916 11 is_stmt 0 view .LVU4282
12053 0162 FFF7FEFF bl I2C_ITMasterSeqCplt
12054 .LVL840:
4916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12055 .loc 1 4916 11 view .LVU4283
12056 0166 75E7 b .L754
12057 .LVL841:
12058 .L762:
4924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12059 .loc 1 4924 7 is_stmt 1 view .LVU4284
12060 0168 4021 movs r1, #64
12061 .LVL842:
4924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12062 .loc 1 4924 7 is_stmt 0 view .LVU4285
12063 016a 2046 mov r0, r4
12064 .LVL843:
4924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12065 .loc 1 4924 7 view .LVU4286
12066 016c FFF7FEFF bl I2C_ITError
12067 .LVL844:
4924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12068 .loc 1 4924 7 view .LVU4287
12069 0170 70E7 b .L754
12070 .LVL845:
12071 .L771:
4936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12072 .loc 1 4936 5 is_stmt 1 view .LVU4288
12073 0172 2946 mov r1, r5
12074 0174 2046 mov r0, r4
12075 0176 FFF7FEFF bl I2C_ITMasterCplt
12076 .LVL846:
12077 017a 72E7 b .L764
12078 .LVL847:
12079 .L765:
12080 .cfi_def_cfa_offset 0
12081 .cfi_restore 4
12082 .cfi_restore 5
12083 .cfi_restore 6
12084 .cfi_restore 14
4814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12085 .loc 1 4814 3 is_stmt 0 view .LVU4289
12086 017c 0220 movs r0, #2
12087 .LVL848:
4943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12088 .loc 1 4943 1 view .LVU4290
12089 017e 7047 bx lr
12090 .cfi_endproc
12091 .LFE179:
12093 .section .text.I2C_Mem_ISR_DMA,"ax",%progbits
12094 .align 1
12095 .syntax unified
12096 .thumb
12097 .thumb_func
12099 I2C_Mem_ISR_DMA:
12100 .LVL849:
12101 .LFB183:
5373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t direction = I2C_GENERATE_START_WRITE;
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 412
12102 .loc 1 5373 1 is_stmt 1 view -0
12103 .cfi_startproc
12104 @ args = 0, pretend = 0, frame = 0
12105 @ frame_needed = 0, uses_anonymous_args = 0
5374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12106 .loc 1 5374 3 view .LVU4292
5377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12107 .loc 1 5377 3 view .LVU4293
5377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12108 .loc 1 5377 3 view .LVU4294
12109 0000 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
12110 0004 012B cmp r3, #1
12111 0006 00F0BE80 beq .L788
5373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t direction = I2C_GENERATE_START_WRITE;
12112 .loc 1 5373 1 is_stmt 0 discriminator 2 view .LVU4295
12113 000a 10B5 push {r4, lr}
12114 .cfi_def_cfa_offset 8
12115 .cfi_offset 4, -8
12116 .cfi_offset 14, -4
12117 000c 82B0 sub sp, sp, #8
12118 .cfi_def_cfa_offset 16
12119 000e 0446 mov r4, r0
5377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12120 .loc 1 5377 3 is_stmt 1 discriminator 2 view .LVU4296
12121 0010 0123 movs r3, #1
12122 0012 80F84030 strb r3, [r0, #64]
5377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12123 .loc 1 5377 3 discriminator 2 view .LVU4297
5379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12124 .loc 1 5379 3 discriminator 2 view .LVU4298
5379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12125 .loc 1 5379 6 is_stmt 0 discriminator 2 view .LVU4299
12126 0016 11F0100F tst r1, #16
12127 001a 02D0 beq .L775
5379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12128 .loc 1 5379 55 discriminator 1 view .LVU4300
12129 001c 12F0100F tst r2, #16
12130 0020 10D1 bne .L794
12131 .L775:
5396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
12132 .loc 1 5396 8 is_stmt 1 view .LVU4301
5396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
12133 .loc 1 5396 11 is_stmt 0 view .LVU4302
12134 0022 11F0020F tst r1, #2
12135 0026 1BD0 beq .L777
5396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
12136 .loc 1 5396 62 discriminator 1 view .LVU4303
12137 0028 12F0020F tst r2, #2
12138 002c 18D0 beq .L777
5400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12139 .loc 1 5400 5 is_stmt 1 view .LVU4304
5400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12140 .loc 1 5400 9 is_stmt 0 view .LVU4305
12141 002e 2368 ldr r3, [r4]
5400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12142 .loc 1 5400 32 view .LVU4306
12143 0030 226D ldr r2, [r4, #80]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 413
12144 .LVL850:
5400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12145 .loc 1 5400 26 view .LVU4307
12146 0032 9A62 str r2, [r3, #40]
5403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12147 .loc 1 5403 5 is_stmt 1 view .LVU4308
5403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12148 .loc 1 5403 22 is_stmt 0 view .LVU4309
12149 0034 4FF0FF33 mov r3, #-1
12150 0038 2365 str r3, [r4, #80]
12151 .LVL851:
12152 .L776:
5494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12153 .loc 1 5494 3 is_stmt 1 view .LVU4310
5497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12154 .loc 1 5497 3 view .LVU4311
5497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12155 .loc 1 5497 3 view .LVU4312
12156 003a 0020 movs r0, #0
12157 003c 84F84000 strb r0, [r4, #64]
5497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12158 .loc 1 5497 3 view .LVU4313
5499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12159 .loc 1 5499 3 view .LVU4314
5500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12160 .loc 1 5500 1 is_stmt 0 view .LVU4315
12161 0040 02B0 add sp, sp, #8
12162 .cfi_remember_state
12163 .cfi_def_cfa_offset 8
12164 @ sp needed
12165 0042 10BD pop {r4, pc}
12166 .LVL852:
12167 .L794:
12168 .cfi_restore_state
5383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12169 .loc 1 5383 5 is_stmt 1 view .LVU4316
12170 0044 0368 ldr r3, [r0]
12171 0046 1022 movs r2, #16
12172 .LVL853:
5383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12173 .loc 1 5383 5 is_stmt 0 view .LVU4317
12174 0048 DA61 str r2, [r3, #28]
5386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12175 .loc 1 5386 5 is_stmt 1 view .LVU4318
5386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12176 .loc 1 5386 9 is_stmt 0 view .LVU4319
12177 004a 436C ldr r3, [r0, #68]
5386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12178 .loc 1 5386 21 view .LVU4320
12179 004c 43F00403 orr r3, r3, #4
12180 0050 4364 str r3, [r0, #68]
5391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12181 .loc 1 5391 5 is_stmt 1 view .LVU4321
12182 0052 2021 movs r1, #32
12183 .LVL854:
5391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12184 .loc 1 5391 5 is_stmt 0 view .LVU4322
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 414
12185 0054 FFF7FEFF bl I2C_Enable_IRQ
12186 .LVL855:
5394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12187 .loc 1 5394 5 is_stmt 1 view .LVU4323
12188 0058 2046 mov r0, r4
12189 005a FFF7FEFF bl I2C_Flush_TXDR
12190 .LVL856:
12191 005e ECE7 b .L776
12192 .LVL857:
12193 .L777:
5405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12194 .loc 1 5405 8 view .LVU4324
5405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12195 .loc 1 5405 11 is_stmt 0 view .LVU4325
12196 0060 11F0800F tst r1, #128
12197 0064 02D0 beq .L778
5405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12198 .loc 1 5405 61 discriminator 1 view .LVU4326
12199 0066 12F0400F tst r2, #64
12200 006a 2AD1 bne .L795
12201 .L778:
5447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12202 .loc 1 5447 8 is_stmt 1 view .LVU4327
5447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12203 .loc 1 5447 11 is_stmt 0 view .LVU4328
12204 006c 11F0400F tst r1, #64
12205 0070 7DD0 beq .L783
5447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12206 .loc 1 5447 60 discriminator 1 view .LVU4329
12207 0072 12F0400F tst r2, #64
12208 0076 7AD0 beq .L783
5450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12209 .loc 1 5450 5 is_stmt 1 view .LVU4330
5450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12210 .loc 1 5450 13 is_stmt 0 view .LVU4331
12211 0078 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12212 007c DBB2 uxtb r3, r3
5450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12213 .loc 1 5450 8 view .LVU4332
12214 007e 222B cmp r3, #34
12215 0080 60D0 beq .L789
5374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12216 .loc 1 5374 12 view .LVU4333
12217 0082 4248 ldr r0, .L798
12218 .LVL858:
12219 .L784:
5455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12220 .loc 1 5455 5 is_stmt 1 view .LVU4334
5455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12221 .loc 1 5455 13 is_stmt 0 view .LVU4335
12222 0084 638D ldrh r3, [r4, #42]
12223 0086 9BB2 uxth r3, r3
5455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12224 .loc 1 5455 8 view .LVU4336
12225 0088 FF2B cmp r3, #255
12226 008a 5DD9 bls .L785
5457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 415
12227 .loc 1 5457 7 is_stmt 1 view .LVU4337
5457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12228 .loc 1 5457 22 is_stmt 0 view .LVU4338
12229 008c FF22 movs r2, #255
12230 .LVL859:
5457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12231 .loc 1 5457 22 view .LVU4339
12232 008e 2285 strh r2, [r4, #40] @ movhi
5460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
12233 .loc 1 5460 7 is_stmt 1 view .LVU4340
5460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
12234 .loc 1 5460 46 is_stmt 0 view .LVU4341
12235 0090 E16C ldr r1, [r4, #76]
12236 .LVL860:
5460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
12237 .loc 1 5460 7 view .LVU4342
12238 0092 0090 str r0, [sp]
12239 0094 4FF08073 mov r3, #16777216
12240 0098 89B2 uxth r1, r1
12241 009a 2046 mov r0, r4
12242 .LVL861:
5460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
12243 .loc 1 5460 7 view .LVU4343
12244 009c FFF7FEFF bl I2C_TransferConfig
12245 .LVL862:
12246 .L786:
5473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12247 .loc 1 5473 5 is_stmt 1 view .LVU4344
5473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12248 .loc 1 5473 9 is_stmt 0 view .LVU4345
12249 00a0 638D ldrh r3, [r4, #42]
12250 00a2 9BB2 uxth r3, r3
5473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12251 .loc 1 5473 28 view .LVU4346
12252 00a4 228D ldrh r2, [r4, #40]
5473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12253 .loc 1 5473 21 view .LVU4347
12254 00a6 9B1A subs r3, r3, r2
12255 00a8 9BB2 uxth r3, r3
12256 00aa 6385 strh r3, [r4, #42] @ movhi
5476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12257 .loc 1 5476 5 is_stmt 1 view .LVU4348
5476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12258 .loc 1 5476 13 is_stmt 0 view .LVU4349
12259 00ac 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12260 00b0 DBB2 uxtb r3, r3
5476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12261 .loc 1 5476 8 view .LVU4350
12262 00b2 222B cmp r3, #34
12263 00b4 55D0 beq .L796
5482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12264 .loc 1 5482 7 is_stmt 1 view .LVU4351
5482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12265 .loc 1 5482 11 is_stmt 0 view .LVU4352
12266 00b6 2268 ldr r2, [r4]
5482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12267 .loc 1 5482 21 view .LVU4353
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 416
12268 00b8 1368 ldr r3, [r2]
5482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12269 .loc 1 5482 27 view .LVU4354
12270 00ba 43F48043 orr r3, r3, #16384
12271 00be 1360 str r3, [r2]
12272 00c0 BBE7 b .L776
12273 .LVL863:
12274 .L795:
5409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12275 .loc 1 5409 5 is_stmt 1 view .LVU4355
12276 00c2 1021 movs r1, #16
12277 .LVL864:
5409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12278 .loc 1 5409 5 is_stmt 0 view .LVU4356
12279 00c4 2046 mov r0, r4
12280 .LVL865:
5409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12281 .loc 1 5409 5 view .LVU4357
12282 00c6 FFF7FEFF bl I2C_Enable_IRQ
12283 .LVL866:
5411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12284 .loc 1 5411 5 is_stmt 1 view .LVU4358
5411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12285 .loc 1 5411 13 is_stmt 0 view .LVU4359
12286 00ca 638D ldrh r3, [r4, #42]
12287 00cc 9BB2 uxth r3, r3
5411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12288 .loc 1 5411 8 view .LVU4360
12289 00ce 002B cmp r3, #0
12290 00d0 33D0 beq .L779
5414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12291 .loc 1 5414 7 is_stmt 1 view .LVU4361
5414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12292 .loc 1 5414 15 is_stmt 0 view .LVU4362
12293 00d2 638D ldrh r3, [r4, #42]
12294 00d4 9BB2 uxth r3, r3
5414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12295 .loc 1 5414 10 view .LVU4363
12296 00d6 FF2B cmp r3, #255
12297 00d8 1BD9 bls .L780
5416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
12298 .loc 1 5416 9 is_stmt 1 view .LVU4364
5416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
12299 .loc 1 5416 24 is_stmt 0 view .LVU4365
12300 00da FF22 movs r2, #255
12301 00dc 2285 strh r2, [r4, #40] @ movhi
5417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
12302 .loc 1 5417 9 is_stmt 1 view .LVU4366
5417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
12303 .loc 1 5417 48 is_stmt 0 view .LVU4367
12304 00de E16C ldr r1, [r4, #76]
5417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
12305 .loc 1 5417 9 view .LVU4368
12306 00e0 0023 movs r3, #0
12307 00e2 0093 str r3, [sp]
12308 00e4 4FF08073 mov r3, #16777216
12309 00e8 89B2 uxth r1, r1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 417
12310 00ea 2046 mov r0, r4
12311 00ec FFF7FEFF bl I2C_TransferConfig
12312 .LVL867:
12313 .L781:
5428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12314 .loc 1 5428 7 is_stmt 1 view .LVU4369
5428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12315 .loc 1 5428 11 is_stmt 0 view .LVU4370
12316 00f0 638D ldrh r3, [r4, #42]
12317 00f2 9BB2 uxth r3, r3
5428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12318 .loc 1 5428 30 view .LVU4371
12319 00f4 228D ldrh r2, [r4, #40]
5428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12320 .loc 1 5428 23 view .LVU4372
12321 00f6 9B1A subs r3, r3, r2
12322 00f8 9BB2 uxth r3, r3
12323 00fa 6385 strh r3, [r4, #42] @ movhi
5431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12324 .loc 1 5431 7 is_stmt 1 view .LVU4373
5431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12325 .loc 1 5431 15 is_stmt 0 view .LVU4374
12326 00fc 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12327 0100 DBB2 uxtb r3, r3
5431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12328 .loc 1 5431 10 view .LVU4375
12329 0102 222B cmp r3, #34
12330 0104 13D0 beq .L797
5437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12331 .loc 1 5437 9 is_stmt 1 view .LVU4376
5437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12332 .loc 1 5437 13 is_stmt 0 view .LVU4377
12333 0106 2268 ldr r2, [r4]
5437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12334 .loc 1 5437 23 view .LVU4378
12335 0108 1368 ldr r3, [r2]
5437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12336 .loc 1 5437 29 view .LVU4379
12337 010a 43F48043 orr r3, r3, #16384
12338 010e 1360 str r3, [r2]
12339 0110 93E7 b .L776
12340 .L780:
5422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
12341 .loc 1 5422 9 is_stmt 1 view .LVU4380
5422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
12342 .loc 1 5422 30 is_stmt 0 view .LVU4381
12343 0112 628D ldrh r2, [r4, #42]
12344 0114 92B2 uxth r2, r2
5422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
12345 .loc 1 5422 24 view .LVU4382
12346 0116 2285 strh r2, [r4, #40] @ movhi
5423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
12347 .loc 1 5423 9 is_stmt 1 view .LVU4383
5423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
12348 .loc 1 5423 48 is_stmt 0 view .LVU4384
12349 0118 E16C ldr r1, [r4, #76]
5423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 418
12350 .loc 1 5423 9 view .LVU4385
12351 011a 0023 movs r3, #0
12352 011c 0093 str r3, [sp]
12353 011e 4FF00073 mov r3, #33554432
12354 0122 D2B2 uxtb r2, r2
12355 0124 89B2 uxth r1, r1
12356 0126 2046 mov r0, r4
12357 0128 FFF7FEFF bl I2C_TransferConfig
12358 .LVL868:
12359 012c E0E7 b .L781
12360 .L797:
5433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12361 .loc 1 5433 9 is_stmt 1 view .LVU4386
5433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12362 .loc 1 5433 13 is_stmt 0 view .LVU4387
12363 012e 2268 ldr r2, [r4]
5433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12364 .loc 1 5433 23 view .LVU4388
12365 0130 1368 ldr r3, [r2]
5433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12366 .loc 1 5433 29 view .LVU4389
12367 0132 43F40043 orr r3, r3, #32768
12368 0136 1360 str r3, [r2]
12369 0138 7FE7 b .L776
12370 .L779:
5444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12371 .loc 1 5444 7 is_stmt 1 view .LVU4390
12372 013a 4021 movs r1, #64
12373 013c 2046 mov r0, r4
12374 013e FFF7FEFF bl I2C_ITError
12375 .LVL869:
12376 0142 7AE7 b .L776
12377 .LVL870:
12378 .L789:
5452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12379 .loc 1 5452 17 is_stmt 0 view .LVU4391
12380 0144 1248 ldr r0, .L798+4
12381 .LVL871:
5452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12382 .loc 1 5452 17 view .LVU4392
12383 0146 9DE7 b .L784
12384 .LVL872:
12385 .L785:
5465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12386 .loc 1 5465 7 is_stmt 1 view .LVU4393
5465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12387 .loc 1 5465 28 is_stmt 0 view .LVU4394
12388 0148 628D ldrh r2, [r4, #42]
12389 .LVL873:
5465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12390 .loc 1 5465 28 view .LVU4395
12391 014a 92B2 uxth r2, r2
5465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12392 .loc 1 5465 22 view .LVU4396
12393 014c 2285 strh r2, [r4, #40] @ movhi
5468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
12394 .loc 1 5468 7 is_stmt 1 view .LVU4397
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 419
5468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
12395 .loc 1 5468 46 is_stmt 0 view .LVU4398
12396 014e E16C ldr r1, [r4, #76]
12397 .LVL874:
5468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
12398 .loc 1 5468 7 view .LVU4399
12399 0150 0090 str r0, [sp]
12400 0152 4FF00073 mov r3, #33554432
12401 0156 D2B2 uxtb r2, r2
12402 0158 89B2 uxth r1, r1
12403 015a 2046 mov r0, r4
12404 .LVL875:
5468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
12405 .loc 1 5468 7 view .LVU4400
12406 015c FFF7FEFF bl I2C_TransferConfig
12407 .LVL876:
5468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
12408 .loc 1 5468 7 view .LVU4401
12409 0160 9EE7 b .L786
12410 .L796:
5478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12411 .loc 1 5478 7 is_stmt 1 view .LVU4402
5478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12412 .loc 1 5478 11 is_stmt 0 view .LVU4403
12413 0162 2268 ldr r2, [r4]
5478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12414 .loc 1 5478 21 view .LVU4404
12415 0164 1368 ldr r3, [r2]
5478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12416 .loc 1 5478 27 view .LVU4405
12417 0166 43F40043 orr r3, r3, #32768
12418 016a 1360 str r3, [r2]
12419 016c 65E7 b .L776
12420 .LVL877:
12421 .L783:
5485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
12422 .loc 1 5485 8 is_stmt 1 view .LVU4406
5485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
12423 .loc 1 5485 11 is_stmt 0 view .LVU4407
12424 016e 11F0200F tst r1, #32
12425 0172 3FF462AF beq .L776
5485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
12426 .loc 1 5485 63 discriminator 1 view .LVU4408
12427 0176 12F0200F tst r2, #32
12428 017a 3FF45EAF beq .L776
5489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12429 .loc 1 5489 5 is_stmt 1 view .LVU4409
12430 017e 2046 mov r0, r4
12431 .LVL878:
5489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12432 .loc 1 5489 5 is_stmt 0 view .LVU4410
12433 0180 FFF7FEFF bl I2C_ITMasterCplt
12434 .LVL879:
5489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12435 .loc 1 5489 5 view .LVU4411
12436 0184 59E7 b .L776
12437 .LVL880:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 420
12438 .L788:
12439 .cfi_def_cfa_offset 0
12440 .cfi_restore 4
12441 .cfi_restore 14
5377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12442 .loc 1 5377 3 view .LVU4412
12443 0186 0220 movs r0, #2
12444 .LVL881:
5500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12445 .loc 1 5500 1 view .LVU4413
12446 0188 7047 bx lr
12447 .L799:
12448 018a 00BF .align 2
12449 .L798:
12450 018c 00200080 .word -2147475456
12451 0190 00240080 .word -2147474432
12452 .cfi_endproc
12453 .LFE183:
12455 .section .text.I2C_Slave_ISR_DMA,"ax",%progbits
12456 .align 1
12457 .syntax unified
12458 .thumb
12459 .thumb_func
12461 I2C_Slave_ISR_DMA:
12462 .LVL882:
12463 .LFB184:
5512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
12464 .loc 1 5512 1 is_stmt 1 view -0
12465 .cfi_startproc
12466 @ args = 0, pretend = 0, frame = 0
12467 @ frame_needed = 0, uses_anonymous_args = 0
5512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpoptions = hi2c->XferOptions;
12468 .loc 1 5512 1 is_stmt 0 view .LVU4415
12469 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
12470 .cfi_def_cfa_offset 24
12471 .cfi_offset 3, -24
12472 .cfi_offset 4, -20
12473 .cfi_offset 5, -16
12474 .cfi_offset 6, -12
12475 .cfi_offset 7, -8
12476 .cfi_offset 14, -4
5513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t treatdmanack = 0U;
12477 .loc 1 5513 3 is_stmt 1 view .LVU4416
5513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t treatdmanack = 0U;
12478 .loc 1 5513 12 is_stmt 0 view .LVU4417
12479 0002 C76A ldr r7, [r0, #44]
12480 .LVL883:
5514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate;
12481 .loc 1 5514 3 is_stmt 1 view .LVU4418
5515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12482 .loc 1 5515 3 view .LVU4419
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12483 .loc 1 5518 3 view .LVU4420
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12484 .loc 1 5518 3 view .LVU4421
12485 0004 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
12486 0008 012B cmp r3, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 421
12487 000a 00F08780 beq .L817
12488 000e 0446 mov r4, r0
12489 0010 0D46 mov r5, r1
12490 0012 1646 mov r6, r2
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12491 .loc 1 5518 3 discriminator 2 view .LVU4422
12492 0014 0123 movs r3, #1
12493 0016 80F84030 strb r3, [r0, #64]
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12494 .loc 1 5518 3 discriminator 2 view .LVU4423
5521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
12495 .loc 1 5521 3 discriminator 2 view .LVU4424
5521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
12496 .loc 1 5521 6 is_stmt 0 discriminator 2 view .LVU4425
12497 001a 11F0200F tst r1, #32
12498 001e 02D0 beq .L802
5521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
12499 .loc 1 5521 58 discriminator 1 view .LVU4426
12500 0020 12F0200F tst r2, #32
12501 0024 12D1 bne .L822
12502 .LVL884:
12503 .L802:
5528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12504 .loc 1 5528 3 is_stmt 1 view .LVU4427
5528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12505 .loc 1 5528 6 is_stmt 0 view .LVU4428
12506 0026 15F0100F tst r5, #16
12507 002a 68D0 beq .L803
5528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12508 .loc 1 5528 55 discriminator 1 view .LVU4429
12509 002c 16F0100F tst r6, #16
12510 0030 65D0 beq .L803
5535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_CR1_RXDMAEN) != RESET))
12511 .loc 1 5535 5 is_stmt 1 view .LVU4430
5535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_CR1_RXDMAEN) != RESET))
12512 .loc 1 5535 8 is_stmt 0 view .LVU4431
12513 0032 16F4404F tst r6, #49152
12514 0036 5ED0 beq .L804
5539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12515 .loc 1 5539 7 is_stmt 1 view .LVU4432
5539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12516 .loc 1 5539 15 is_stmt 0 view .LVU4433
12517 0038 E36B ldr r3, [r4, #60]
5539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12518 .loc 1 5539 10 view .LVU4434
12519 003a 53B1 cbz r3, .L818
5541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12520 .loc 1 5541 9 is_stmt 1 view .LVU4435
5541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12521 .loc 1 5541 12 is_stmt 0 view .LVU4436
12522 003c 16F40042 ands r2, r6, #32768
12523 0040 08D0 beq .L805
5543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12524 .loc 1 5543 11 is_stmt 1 view .LVU4437
5543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12525 .loc 1 5543 15 is_stmt 0 view .LVU4438
12526 0042 1B68 ldr r3, [r3]
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 422
12527 0044 5B68 ldr r3, [r3, #4]
5543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12528 .loc 1 5543 14 view .LVU4439
12529 0046 3BB3 cbz r3, .L819
5514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate;
12530 .loc 1 5514 12 view .LVU4440
12531 0048 0022 movs r2, #0
12532 004a 03E0 b .L805
12533 .LVL885:
12534 .L822:
5525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12535 .loc 1 5525 5 is_stmt 1 view .LVU4441
12536 004c FFF7FEFF bl I2C_ITSlaveCplt
12537 .LVL886:
5525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12538 .loc 1 5525 5 is_stmt 0 view .LVU4442
12539 0050 E9E7 b .L802
12540 .L818:
5514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** HAL_I2C_StateTypeDef tmpstate;
12541 .loc 1 5514 12 view .LVU4443
12542 0052 0022 movs r2, #0
12543 .L805:
12544 .LVL887:
5551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12545 .loc 1 5551 7 is_stmt 1 view .LVU4444
5551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12546 .loc 1 5551 15 is_stmt 0 view .LVU4445
12547 0054 A36B ldr r3, [r4, #56]
5551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12548 .loc 1 5551 10 view .LVU4446
12549 0056 2BB1 cbz r3, .L806
5553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12550 .loc 1 5553 9 is_stmt 1 view .LVU4447
5553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12551 .loc 1 5553 12 is_stmt 0 view .LVU4448
12552 0058 16F4804F tst r6, #16384
12553 005c 02D0 beq .L806
5555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12554 .loc 1 5555 11 is_stmt 1 view .LVU4449
5555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12555 .loc 1 5555 15 is_stmt 0 view .LVU4450
12556 005e 1B68 ldr r3, [r3]
12557 0060 5B68 ldr r3, [r3, #4]
5555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12558 .loc 1 5555 14 view .LVU4451
12559 0062 DBB1 cbz r3, .L807
12560 .L806:
5562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12561 .loc 1 5562 7 is_stmt 1 view .LVU4452
5562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12562 .loc 1 5562 10 is_stmt 0 view .LVU4453
12563 0064 012A cmp r2, #1
12564 0066 19D0 beq .L807
5593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12565 .loc 1 5593 9 is_stmt 1 view .LVU4454
12566 0068 2368 ldr r3, [r4]
12567 006a 1022 movs r2, #16
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 423
12568 .LVL888:
5593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12569 .loc 1 5593 9 is_stmt 0 view .LVU4455
12570 006c DA61 str r2, [r3, #28]
5596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12571 .loc 1 5596 9 is_stmt 1 view .LVU4456
5596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12572 .loc 1 5596 13 is_stmt 0 view .LVU4457
12573 006e 636C ldr r3, [r4, #68]
5596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12574 .loc 1 5596 25 view .LVU4458
12575 0070 43F00403 orr r3, r3, #4
12576 0074 6364 str r3, [r4, #68]
5599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12577 .loc 1 5599 9 is_stmt 1 view .LVU4459
5599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12578 .loc 1 5599 18 is_stmt 0 view .LVU4460
12579 0076 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12580 007a DBB2 uxtb r3, r3
12581 .LVL889:
5601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12582 .loc 1 5601 9 is_stmt 1 view .LVU4461
5601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12583 .loc 1 5601 12 is_stmt 0 view .LVU4462
12584 007c 17B1 cbz r7, .L812
5601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12585 .loc 1 5601 45 discriminator 1 view .LVU4463
12586 007e B7F1807F cmp r7, #16777216
12587 0082 42D1 bne .L810
12588 .L812:
5603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12589 .loc 1 5603 11 is_stmt 1 view .LVU4464
12590 0084 213B subs r3, r3, #33
12591 .LVL890:
5603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12592 .loc 1 5603 11 is_stmt 0 view .LVU4465
12593 0086 092B cmp r3, #9
12594 0088 2DD8 bhi .L813
12595 008a DFE803F0 tbb [pc, r3]
12596 .L815:
12597 008e 2A .byte (.L816-.L815)/2
12598 008f 31 .byte (.L814-.L815)/2
12599 0090 2C .byte (.L813-.L815)/2
12600 0091 2C .byte (.L813-.L815)/2
12601 0092 2C .byte (.L813-.L815)/2
12602 0093 2C .byte (.L813-.L815)/2
12603 0094 2C .byte (.L813-.L815)/2
12604 0095 2C .byte (.L813-.L815)/2
12605 0096 2A .byte (.L816-.L815)/2
12606 0097 31 .byte (.L814-.L815)/2
12607 .LVL891:
12608 .p2align 1
12609 .L819:
5545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12610 .loc 1 5545 26 view .LVU4466
12611 0098 0122 movs r2, #1
12612 009a DBE7 b .L805
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 424
12613 .LVL892:
12614 .L807:
5564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
12615 .loc 1 5564 9 is_stmt 1 view .LVU4467
5564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
12616 .loc 1 5564 18 is_stmt 0 view .LVU4468
12617 009c 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12618 00a0 DBB2 uxtb r3, r3
5564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
12619 .loc 1 5564 12 view .LVU4469
12620 00a2 282B cmp r3, #40
12621 00a4 08D0 beq .L823
12622 .L809:
5571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12623 .loc 1 5571 14 is_stmt 1 view .LVU4470
5571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12624 .loc 1 5571 23 is_stmt 0 view .LVU4471
12625 00a6 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12626 00aa DBB2 uxtb r3, r3
5571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12627 .loc 1 5571 17 view .LVU4472
12628 00ac 292B cmp r3, #41
12629 00ae 0BD0 beq .L824
12630 .L811:
5586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12631 .loc 1 5586 11 is_stmt 1 view .LVU4473
12632 00b0 2368 ldr r3, [r4]
12633 00b2 1022 movs r2, #16
12634 00b4 DA61 str r2, [r3, #28]
12635 00b6 28E0 b .L810
12636 .L823:
5564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Same action must be done for (tmpoptions == I2C_LAST_FRAME) which removed for
12637 .loc 1 5564 51 is_stmt 0 discriminator 1 view .LVU4474
12638 00b8 B7F1007F cmp r7, #33554432
12639 00bc F3D1 bne .L809
5569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12640 .loc 1 5569 11 is_stmt 1 view .LVU4475
12641 00be 2946 mov r1, r5
12642 00c0 2046 mov r0, r4
12643 00c2 FFF7FEFF bl I2C_ITListenCplt
12644 .LVL893:
12645 00c6 20E0 b .L810
12646 .L824:
5571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12647 .loc 1 5571 64 is_stmt 0 discriminator 1 view .LVU4476
12648 00c8 17F5803F cmn r7, #65536
12649 00cc F0D0 beq .L811
5574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12650 .loc 1 5574 11 is_stmt 1 view .LVU4477
12651 00ce 2368 ldr r3, [r4]
12652 00d0 1022 movs r2, #16
12653 00d2 DA61 str r2, [r3, #28]
5577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12654 .loc 1 5577 11 view .LVU4478
12655 00d4 2046 mov r0, r4
12656 00d6 FFF7FEFF bl I2C_Flush_TXDR
12657 .LVL894:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 425
5581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12658 .loc 1 5581 11 view .LVU4479
12659 00da 2046 mov r0, r4
12660 00dc FFF7FEFF bl I2C_ITSlaveSeqCplt
12661 .LVL895:
12662 00e0 13E0 b .L810
12663 .LVL896:
12664 .L816:
5605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12665 .loc 1 5605 13 view .LVU4480
5605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12666 .loc 1 5605 33 is_stmt 0 view .LVU4481
12667 00e2 2123 movs r3, #33
12668 .LVL897:
5605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12669 .loc 1 5605 33 view .LVU4482
12670 00e4 2363 str r3, [r4, #48]
12671 .L813:
5617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12672 .loc 1 5617 11 is_stmt 1 view .LVU4483
5617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12673 .loc 1 5617 33 is_stmt 0 view .LVU4484
12674 00e6 616C ldr r1, [r4, #68]
5617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12675 .loc 1 5617 11 view .LVU4485
12676 00e8 2046 mov r0, r4
12677 00ea FFF7FEFF bl I2C_ITError
12678 .LVL898:
12679 00ee 0CE0 b .L810
12680 .LVL899:
12681 .L814:
5609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12682 .loc 1 5609 13 is_stmt 1 view .LVU4486
5609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12683 .loc 1 5609 33 is_stmt 0 view .LVU4487
12684 00f0 2223 movs r3, #34
12685 .LVL900:
5609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12686 .loc 1 5609 33 view .LVU4488
12687 00f2 2363 str r3, [r4, #48]
12688 00f4 F7E7 b .L813
12689 .LVL901:
12690 .L804:
5624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12691 .loc 1 5624 7 is_stmt 1 view .LVU4489
12692 00f6 2368 ldr r3, [r4]
12693 00f8 1022 movs r2, #16
12694 00fa DA61 str r2, [r3, #28]
12695 00fc 05E0 b .L810
12696 .L803:
5627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
12697 .loc 1 5627 8 view .LVU4490
5627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
12698 .loc 1 5627 11 is_stmt 0 view .LVU4491
12699 00fe 15F0080F tst r5, #8
12700 0102 02D0 beq .L810
5627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_ADDRI) != RESET))
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 426
12701 .loc 1 5627 62 discriminator 1 view .LVU4492
12702 0104 16F0080F tst r6, #8
12703 0108 03D1 bne .L825
12704 .LVL902:
12705 .L810:
5635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12706 .loc 1 5635 3 is_stmt 1 view .LVU4493
5638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12707 .loc 1 5638 3 view .LVU4494
5638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12708 .loc 1 5638 3 view .LVU4495
12709 010a 0020 movs r0, #0
12710 010c 84F84000 strb r0, [r4, #64]
5638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12711 .loc 1 5638 3 view .LVU4496
5640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12712 .loc 1 5640 3 view .LVU4497
12713 .LVL903:
12714 .L801:
5641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12715 .loc 1 5641 1 is_stmt 0 view .LVU4498
12716 0110 F8BD pop {r3, r4, r5, r6, r7, pc}
12717 .LVL904:
12718 .L825:
5630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12719 .loc 1 5630 5 is_stmt 1 view .LVU4499
12720 0112 2946 mov r1, r5
12721 0114 2046 mov r0, r4
12722 0116 FFF7FEFF bl I2C_ITAddrCplt
12723 .LVL905:
12724 011a F6E7 b .L810
12725 .LVL906:
12726 .L817:
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12727 .loc 1 5518 3 is_stmt 0 view .LVU4500
12728 011c 0220 movs r0, #2
12729 .LVL907:
5518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12730 .loc 1 5518 3 view .LVU4501
12731 011e F7E7 b .L801
12732 .cfi_endproc
12733 .LFE184:
12735 .section .text.I2C_Master_ISR_DMA,"ax",%progbits
12736 .align 1
12737 .syntax unified
12738 .thumb
12739 .thumb_func
12741 I2C_Master_ISR_DMA:
12742 .LVL908:
12743 .LFB182:
5233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t devaddress;
12744 .loc 1 5233 1 is_stmt 1 view -0
12745 .cfi_startproc
12746 @ args = 0, pretend = 0, frame = 0
12747 @ frame_needed = 0, uses_anonymous_args = 0
5234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t xfermode;
12748 .loc 1 5234 3 view .LVU4503
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 427
5235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12749 .loc 1 5235 3 view .LVU4504
5238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12750 .loc 1 5238 3 view .LVU4505
5238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12751 .loc 1 5238 3 view .LVU4506
12752 0000 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
12753 0004 012B cmp r3, #1
12754 0006 00F09A80 beq .L839
5233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint16_t devaddress;
12755 .loc 1 5233 1 is_stmt 0 discriminator 2 view .LVU4507
12756 000a 10B5 push {r4, lr}
12757 .cfi_def_cfa_offset 8
12758 .cfi_offset 4, -8
12759 .cfi_offset 14, -4
12760 000c 82B0 sub sp, sp, #8
12761 .cfi_def_cfa_offset 16
12762 000e 0446 mov r4, r0
5238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12763 .loc 1 5238 3 is_stmt 1 discriminator 2 view .LVU4508
12764 0010 0123 movs r3, #1
12765 0012 80F84030 strb r3, [r0, #64]
5238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12766 .loc 1 5238 3 discriminator 2 view .LVU4509
5240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12767 .loc 1 5240 3 discriminator 2 view .LVU4510
5240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12768 .loc 1 5240 6 is_stmt 0 discriminator 2 view .LVU4511
12769 0016 11F0100F tst r1, #16
12770 001a 02D0 beq .L828
5240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
12771 .loc 1 5240 55 discriminator 1 view .LVU4512
12772 001c 12F0100F tst r2, #16
12773 0020 32D1 bne .L845
12774 .L828:
5257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12775 .loc 1 5257 8 is_stmt 1 view .LVU4513
5257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12776 .loc 1 5257 11 is_stmt 0 view .LVU4514
12777 0022 11F0800F tst r1, #128
12778 0026 60D0 beq .L830
5257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12779 .loc 1 5257 61 discriminator 1 view .LVU4515
12780 0028 12F0400F tst r2, #64
12781 002c 5DD0 beq .L830
5261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12782 .loc 1 5261 5 is_stmt 1 view .LVU4516
12783 002e 2268 ldr r2, [r4]
12784 .LVL909:
5261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12785 .loc 1 5261 5 is_stmt 0 view .LVU4517
12786 0030 1368 ldr r3, [r2]
12787 0032 23F04003 bic r3, r3, #64
12788 0036 1360 str r3, [r2]
5263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12789 .loc 1 5263 5 is_stmt 1 view .LVU4518
5263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 428
12790 .loc 1 5263 13 is_stmt 0 view .LVU4519
12791 0038 638D ldrh r3, [r4, #42]
12792 003a 9BB2 uxth r3, r3
5263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12793 .loc 1 5263 8 view .LVU4520
12794 003c 002B cmp r3, #0
12795 003e 46D0 beq .L831
5266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12796 .loc 1 5266 7 is_stmt 1 view .LVU4521
5266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12797 .loc 1 5266 35 is_stmt 0 view .LVU4522
12798 0040 2368 ldr r3, [r4]
5266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12799 .loc 1 5266 45 view .LVU4523
12800 0042 5968 ldr r1, [r3, #4]
12801 .LVL910:
5266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12802 .loc 1 5266 18 view .LVU4524
12803 0044 C1F30901 ubfx r1, r1, #0, #10
12804 .LVL911:
5269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12805 .loc 1 5269 7 is_stmt 1 view .LVU4525
5269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12806 .loc 1 5269 15 is_stmt 0 view .LVU4526
12807 0048 638D ldrh r3, [r4, #42]
12808 004a 9BB2 uxth r3, r3
5269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12809 .loc 1 5269 10 view .LVU4527
12810 004c FF2B cmp r3, #255
12811 004e 2DD9 bls .L832
5271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
12812 .loc 1 5271 9 is_stmt 1 view .LVU4528
5271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** xfermode = I2C_RELOAD_MODE;
12813 .loc 1 5271 24 is_stmt 0 view .LVU4529
12814 0050 FF23 movs r3, #255
12815 0052 2385 strh r3, [r4, #40] @ movhi
5272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12816 .loc 1 5272 9 is_stmt 1 view .LVU4530
12817 .LVL912:
5272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12818 .loc 1 5272 18 is_stmt 0 view .LVU4531
12819 0054 4FF08073 mov r3, #16777216
12820 .LVL913:
12821 .L833:
5288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12822 .loc 1 5288 7 is_stmt 1 view .LVU4532
12823 0058 0022 movs r2, #0
12824 005a 0092 str r2, [sp]
12825 005c 94F82820 ldrb r2, [r4, #40] @ zero_extendqisi2
12826 0060 2046 mov r0, r4
12827 .LVL914:
5288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12828 .loc 1 5288 7 is_stmt 0 view .LVU4533
12829 0062 FFF7FEFF bl I2C_TransferConfig
12830 .LVL915:
5291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12831 .loc 1 5291 7 is_stmt 1 view .LVU4534
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 429
5291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12832 .loc 1 5291 11 is_stmt 0 view .LVU4535
12833 0066 638D ldrh r3, [r4, #42]
12834 0068 9BB2 uxth r3, r3
5291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12835 .loc 1 5291 30 view .LVU4536
12836 006a 228D ldrh r2, [r4, #40]
5291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12837 .loc 1 5291 23 view .LVU4537
12838 006c 9B1A subs r3, r3, r2
12839 006e 9BB2 uxth r3, r3
12840 0070 6385 strh r3, [r4, #42] @ movhi
5294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12841 .loc 1 5294 7 is_stmt 1 view .LVU4538
5294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12842 .loc 1 5294 15 is_stmt 0 view .LVU4539
12843 0072 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
12844 0076 DBB2 uxtb r3, r3
5294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12845 .loc 1 5294 10 view .LVU4540
12846 0078 222B cmp r3, #34
12847 007a 22D0 beq .L846
5300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12848 .loc 1 5300 9 is_stmt 1 view .LVU4541
5300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12849 .loc 1 5300 13 is_stmt 0 view .LVU4542
12850 007c 2268 ldr r2, [r4]
5300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12851 .loc 1 5300 23 view .LVU4543
12852 007e 1368 ldr r3, [r2]
5300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12853 .loc 1 5300 29 view .LVU4544
12854 0080 43F48043 orr r3, r3, #16384
12855 0084 1360 str r3, [r2]
12856 0086 0CE0 b .L829
12857 .LVL916:
12858 .L845:
5244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12859 .loc 1 5244 5 is_stmt 1 view .LVU4545
12860 0088 0368 ldr r3, [r0]
12861 008a 1022 movs r2, #16
12862 .LVL917:
5244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12863 .loc 1 5244 5 is_stmt 0 view .LVU4546
12864 008c DA61 str r2, [r3, #28]
5247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12865 .loc 1 5247 5 is_stmt 1 view .LVU4547
5247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12866 .loc 1 5247 9 is_stmt 0 view .LVU4548
12867 008e 436C ldr r3, [r0, #68]
5247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12868 .loc 1 5247 21 view .LVU4549
12869 0090 43F00403 orr r3, r3, #4
12870 0094 4364 str r3, [r0, #68]
5252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12871 .loc 1 5252 5 is_stmt 1 view .LVU4550
12872 0096 2021 movs r1, #32
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 430
12873 .LVL918:
5252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12874 .loc 1 5252 5 is_stmt 0 view .LVU4551
12875 0098 FFF7FEFF bl I2C_Enable_IRQ
12876 .LVL919:
5255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12877 .loc 1 5255 5 is_stmt 1 view .LVU4552
12878 009c 2046 mov r0, r4
12879 009e FFF7FEFF bl I2C_Flush_TXDR
12880 .LVL920:
12881 .L829:
5355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12882 .loc 1 5355 3 view .LVU4553
5358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12883 .loc 1 5358 3 view .LVU4554
5358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12884 .loc 1 5358 3 view .LVU4555
12885 00a2 0020 movs r0, #0
12886 00a4 84F84000 strb r0, [r4, #64]
5358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12887 .loc 1 5358 3 view .LVU4556
5360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12888 .loc 1 5360 3 view .LVU4557
5361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
12889 .loc 1 5361 1 is_stmt 0 view .LVU4558
12890 00a8 02B0 add sp, sp, #8
12891 .cfi_remember_state
12892 .cfi_def_cfa_offset 8
12893 @ sp needed
12894 00aa 10BD pop {r4, pc}
12895 .LVL921:
12896 .L832:
12897 .cfi_restore_state
5276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
12898 .loc 1 5276 9 is_stmt 1 view .LVU4559
5276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
12899 .loc 1 5276 30 is_stmt 0 view .LVU4560
12900 00ac 638D ldrh r3, [r4, #42]
5276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** if (hi2c->XferOptions != I2C_NO_OPTION_FRAME)
12901 .loc 1 5276 24 view .LVU4561
12902 00ae 2385 strh r3, [r4, #40] @ movhi
5277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12903 .loc 1 5277 9 is_stmt 1 view .LVU4562
5277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12904 .loc 1 5277 17 is_stmt 0 view .LVU4563
12905 00b0 E36A ldr r3, [r4, #44]
5277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12906 .loc 1 5277 12 view .LVU4564
12907 00b2 13F5803F cmn r3, #65536
12908 00b6 01D0 beq .L840
5279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12909 .loc 1 5279 11 is_stmt 1 view .LVU4565
5279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12910 .loc 1 5279 20 is_stmt 0 view .LVU4566
12911 00b8 E36A ldr r3, [r4, #44]
12912 .LVL922:
5279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 431
12913 .loc 1 5279 20 view .LVU4567
12914 00ba CDE7 b .L833
12915 .LVL923:
12916 .L840:
5283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12917 .loc 1 5283 20 view .LVU4568
12918 00bc 4FF00073 mov r3, #33554432
12919 00c0 CAE7 b .L833
12920 .LVL924:
12921 .L846:
5296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12922 .loc 1 5296 9 is_stmt 1 view .LVU4569
5296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12923 .loc 1 5296 13 is_stmt 0 view .LVU4570
12924 00c2 2268 ldr r2, [r4]
5296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12925 .loc 1 5296 23 view .LVU4571
12926 00c4 1368 ldr r3, [r2]
5296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12927 .loc 1 5296 29 view .LVU4572
12928 00c6 43F40043 orr r3, r3, #32768
12929 00ca 1360 str r3, [r2]
12930 00cc E9E7 b .L829
12931 .LVL925:
12932 .L831:
5306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12933 .loc 1 5306 7 is_stmt 1 view .LVU4573
5306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12934 .loc 1 5306 11 is_stmt 0 view .LVU4574
12935 00ce 2368 ldr r3, [r4]
12936 00d0 5B68 ldr r3, [r3, #4]
5306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12937 .loc 1 5306 10 view .LVU4575
12938 00d2 13F0007F tst r3, #33554432
12939 00d6 03D1 bne .L835
5309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12940 .loc 1 5309 9 is_stmt 1 view .LVU4576
12941 00d8 2046 mov r0, r4
12942 .LVL926:
5309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12943 .loc 1 5309 9 is_stmt 0 view .LVU4577
12944 00da FFF7FEFF bl I2C_ITMasterSeqCplt
12945 .LVL927:
5309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12946 .loc 1 5309 9 view .LVU4578
12947 00de E0E7 b .L829
12948 .LVL928:
12949 .L835:
5315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12950 .loc 1 5315 9 is_stmt 1 view .LVU4579
12951 00e0 4021 movs r1, #64
12952 .LVL929:
5315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12953 .loc 1 5315 9 is_stmt 0 view .LVU4580
12954 00e2 2046 mov r0, r4
12955 .LVL930:
5315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 432
12956 .loc 1 5315 9 view .LVU4581
12957 00e4 FFF7FEFF bl I2C_ITError
12958 .LVL931:
12959 00e8 DBE7 b .L829
12960 .LVL932:
12961 .L830:
5319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12962 .loc 1 5319 8 is_stmt 1 view .LVU4582
5319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12963 .loc 1 5319 11 is_stmt 0 view .LVU4583
12964 00ea 11F0400F tst r1, #64
12965 00ee 1CD0 beq .L836
5319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
12966 .loc 1 5319 60 discriminator 1 view .LVU4584
12967 00f0 12F0400F tst r2, #64
12968 00f4 19D0 beq .L836
5322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12969 .loc 1 5322 5 is_stmt 1 view .LVU4585
5322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12970 .loc 1 5322 13 is_stmt 0 view .LVU4586
12971 00f6 638D ldrh r3, [r4, #42]
12972 00f8 9BB2 uxth r3, r3
5322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12973 .loc 1 5322 8 view .LVU4587
12974 00fa 8BB9 cbnz r3, .L837
5324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12975 .loc 1 5324 7 is_stmt 1 view .LVU4588
5324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12976 .loc 1 5324 11 is_stmt 0 view .LVU4589
12977 00fc 2368 ldr r3, [r4]
12978 00fe 5A68 ldr r2, [r3, #4]
12979 .LVL933:
5324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12980 .loc 1 5324 10 view .LVU4590
12981 0100 12F0007F tst r2, #33554432
12982 0104 CDD1 bne .L829
5327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12983 .loc 1 5327 9 is_stmt 1 view .LVU4591
5327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12984 .loc 1 5327 17 is_stmt 0 view .LVU4592
12985 0106 E26A ldr r2, [r4, #44]
5327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
12986 .loc 1 5327 12 view .LVU4593
12987 0108 12F5803F cmn r2, #65536
12988 010c 04D1 bne .L838
5330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12989 .loc 1 5330 11 is_stmt 1 view .LVU4594
5330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12990 .loc 1 5330 25 is_stmt 0 view .LVU4595
12991 010e 5A68 ldr r2, [r3, #4]
5330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
12992 .loc 1 5330 31 view .LVU4596
12993 0110 42F48042 orr r2, r2, #16384
12994 0114 5A60 str r2, [r3, #4]
12995 0116 C4E7 b .L829
12996 .L838:
5335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 433
12997 .loc 1 5335 11 is_stmt 1 view .LVU4597
12998 0118 2046 mov r0, r4
12999 .LVL934:
5335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13000 .loc 1 5335 11 is_stmt 0 view .LVU4598
13001 011a FFF7FEFF bl I2C_ITMasterSeqCplt
13002 .LVL935:
5335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13003 .loc 1 5335 11 view .LVU4599
13004 011e C0E7 b .L829
13005 .LVL936:
13006 .L837:
5343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13007 .loc 1 5343 7 is_stmt 1 view .LVU4600
13008 0120 4021 movs r1, #64
13009 .LVL937:
5343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13010 .loc 1 5343 7 is_stmt 0 view .LVU4601
13011 0122 2046 mov r0, r4
13012 .LVL938:
5343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13013 .loc 1 5343 7 view .LVU4602
13014 0124 FFF7FEFF bl I2C_ITError
13015 .LVL939:
5343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13016 .loc 1 5343 7 view .LVU4603
13017 0128 BBE7 b .L829
13018 .LVL940:
13019 .L836:
5346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
13020 .loc 1 5346 8 is_stmt 1 view .LVU4604
5346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
13021 .loc 1 5346 11 is_stmt 0 view .LVU4605
13022 012a 11F0200F tst r1, #32
13023 012e B8D0 beq .L829
5346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
13024 .loc 1 5346 63 discriminator 1 view .LVU4606
13025 0130 12F0200F tst r2, #32
13026 0134 B5D0 beq .L829
5350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13027 .loc 1 5350 5 is_stmt 1 view .LVU4607
13028 0136 2046 mov r0, r4
13029 .LVL941:
5350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13030 .loc 1 5350 5 is_stmt 0 view .LVU4608
13031 0138 FFF7FEFF bl I2C_ITMasterCplt
13032 .LVL942:
5350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13033 .loc 1 5350 5 view .LVU4609
13034 013c B1E7 b .L829
13035 .LVL943:
13036 .L839:
13037 .cfi_def_cfa_offset 0
13038 .cfi_restore 4
13039 .cfi_restore 14
5238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13040 .loc 1 5238 3 view .LVU4610
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 434
13041 013e 0220 movs r0, #2
13042 .LVL944:
5361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13043 .loc 1 5361 1 view .LVU4611
13044 0140 7047 bx lr
13045 .cfi_endproc
13046 .LFE182:
13048 .section .text.I2C_DMAError,"ax",%progbits
13049 .align 1
13050 .syntax unified
13051 .thumb
13052 .thumb_func
13054 I2C_DMAError:
13055 .LVL945:
13056 .LFB200:
6685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13057 .loc 1 6685 1 is_stmt 1 view -0
13058 .cfi_startproc
13059 @ args = 0, pretend = 0, frame = 0
13060 @ frame_needed = 0, uses_anonymous_args = 0
6685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13061 .loc 1 6685 1 is_stmt 0 view .LVU4613
13062 0000 08B5 push {r3, lr}
13063 .cfi_def_cfa_offset 8
13064 .cfi_offset 3, -8
13065 .cfi_offset 14, -4
6687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13066 .loc 1 6687 3 is_stmt 1 view .LVU4614
6687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13067 .loc 1 6687 22 is_stmt 0 view .LVU4615
13068 0002 406A ldr r0, [r0, #36]
13069 .LVL946:
6690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13070 .loc 1 6690 3 is_stmt 1 view .LVU4616
6690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13071 .loc 1 6690 7 is_stmt 0 view .LVU4617
13072 0004 0268 ldr r2, [r0]
6690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13073 .loc 1 6690 17 view .LVU4618
13074 0006 5368 ldr r3, [r2, #4]
6690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13075 .loc 1 6690 23 view .LVU4619
13076 0008 43F40043 orr r3, r3, #32768
13077 000c 5360 str r3, [r2, #4]
6693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13078 .loc 1 6693 3 is_stmt 1 view .LVU4620
13079 000e 1021 movs r1, #16
13080 0010 FFF7FEFF bl I2C_ITError
13081 .LVL947:
6694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13082 .loc 1 6694 1 is_stmt 0 view .LVU4621
13083 0014 08BD pop {r3, pc}
13084 .cfi_endproc
13085 .LFE200:
13087 .section .text.I2C_DMAMasterTransmitCplt,"ax",%progbits
13088 .align 1
13089 .syntax unified
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 435
13090 .thumb
13091 .thumb_func
13093 I2C_DMAMasterTransmitCplt:
13094 .LVL948:
13095 .LFB196:
6525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13096 .loc 1 6525 1 is_stmt 1 view -0
13097 .cfi_startproc
13098 @ args = 0, pretend = 0, frame = 0
13099 @ frame_needed = 0, uses_anonymous_args = 0
6525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13100 .loc 1 6525 1 is_stmt 0 view .LVU4623
13101 0000 10B5 push {r4, lr}
13102 .cfi_def_cfa_offset 8
13103 .cfi_offset 4, -8
13104 .cfi_offset 14, -4
6527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13105 .loc 1 6527 3 is_stmt 1 view .LVU4624
6527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13106 .loc 1 6527 22 is_stmt 0 view .LVU4625
13107 0002 446A ldr r4, [r0, #36]
13108 .LVL949:
6530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13109 .loc 1 6530 3 is_stmt 1 view .LVU4626
6530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13110 .loc 1 6530 7 is_stmt 0 view .LVU4627
13111 0004 2268 ldr r2, [r4]
6530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13112 .loc 1 6530 17 view .LVU4628
13113 0006 1368 ldr r3, [r2]
6530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13114 .loc 1 6530 23 view .LVU4629
13115 0008 23F48043 bic r3, r3, #16384
13116 000c 1360 str r3, [r2]
6533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13117 .loc 1 6533 3 is_stmt 1 view .LVU4630
6533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13118 .loc 1 6533 11 is_stmt 0 view .LVU4631
13119 000e 638D ldrh r3, [r4, #42]
13120 0010 9BB2 uxth r3, r3
6533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13121 .loc 1 6533 6 view .LVU4632
13122 0012 ABB1 cbz r3, .L856
6542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13123 .loc 1 6542 5 is_stmt 1 view .LVU4633
6542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13124 .loc 1 6542 9 is_stmt 0 view .LVU4634
13125 0014 616A ldr r1, [r4, #36]
6542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13126 .loc 1 6542 27 view .LVU4635
13127 0016 238D ldrh r3, [r4, #40]
6542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13128 .loc 1 6542 20 view .LVU4636
13129 0018 1944 add r1, r1, r3
13130 001a 6162 str r1, [r4, #36]
6545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13131 .loc 1 6545 5 is_stmt 1 view .LVU4637
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 436
6545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13132 .loc 1 6545 13 is_stmt 0 view .LVU4638
13133 001c 638D ldrh r3, [r4, #42]
13134 001e 9BB2 uxth r3, r3
6545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13135 .loc 1 6545 8 view .LVU4639
13136 0020 FF2B cmp r3, #255
13137 0022 12D9 bls .L852
6547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13138 .loc 1 6547 7 is_stmt 1 view .LVU4640
6547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13139 .loc 1 6547 22 is_stmt 0 view .LVU4641
13140 0024 FF23 movs r3, #255
13141 0026 2385 strh r3, [r4, #40] @ movhi
13142 .L853:
6555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13143 .loc 1 6555 5 is_stmt 1 view .LVU4642
6555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13144 .loc 1 6555 81 is_stmt 0 view .LVU4643
13145 0028 2268 ldr r2, [r4]
6555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13146 .loc 1 6555 9 view .LVU4644
13147 002a 238D ldrh r3, [r4, #40]
13148 002c 2832 adds r2, r2, #40
13149 002e A06B ldr r0, [r4, #56]
13150 .LVL950:
6555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13151 .loc 1 6555 9 view .LVU4645
13152 0030 FFF7FEFF bl HAL_DMA_Start_IT
13153 .LVL951:
6555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13154 .loc 1 6555 8 view .LVU4646
13155 0034 60B1 cbz r0, .L854
6559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13156 .loc 1 6559 7 is_stmt 1 view .LVU4647
13157 0036 1021 movs r1, #16
13158 0038 2046 mov r0, r4
13159 003a FFF7FEFF bl I2C_ITError
13160 .LVL952:
13161 .L849:
6567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13162 .loc 1 6567 1 is_stmt 0 view .LVU4648
13163 003e 10BD pop {r4, pc}
13164 .LVL953:
13165 .L856:
6536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13166 .loc 1 6536 5 is_stmt 1 view .LVU4649
13167 0040 2021 movs r1, #32
13168 0042 2046 mov r0, r4
13169 .LVL954:
6536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13170 .loc 1 6536 5 is_stmt 0 view .LVU4650
13171 0044 FFF7FEFF bl I2C_Enable_IRQ
13172 .LVL955:
13173 0048 F9E7 b .L849
13174 .LVL956:
13175 .L852:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 437
6551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13176 .loc 1 6551 7 is_stmt 1 view .LVU4651
6551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13177 .loc 1 6551 28 is_stmt 0 view .LVU4652
13178 004a 638D ldrh r3, [r4, #42]
6551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13179 .loc 1 6551 22 view .LVU4653
13180 004c 2385 strh r3, [r4, #40] @ movhi
13181 004e EBE7 b .L853
13182 .LVL957:
13183 .L854:
6564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13184 .loc 1 6564 7 is_stmt 1 view .LVU4654
13185 0050 4021 movs r1, #64
13186 0052 2046 mov r0, r4
13187 0054 FFF7FEFF bl I2C_Enable_IRQ
13188 .LVL958:
6567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13189 .loc 1 6567 1 is_stmt 0 view .LVU4655
13190 0058 F1E7 b .L849
13191 .cfi_endproc
13192 .LFE196:
13194 .section .text.I2C_DMAMasterReceiveCplt,"ax",%progbits
13195 .align 1
13196 .syntax unified
13197 .thumb
13198 .thumb_func
13200 I2C_DMAMasterReceiveCplt:
13201 .LVL959:
13202 .LFB198:
6605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13203 .loc 1 6605 1 is_stmt 1 view -0
13204 .cfi_startproc
13205 @ args = 0, pretend = 0, frame = 0
13206 @ frame_needed = 0, uses_anonymous_args = 0
6605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13207 .loc 1 6605 1 is_stmt 0 view .LVU4657
13208 0000 10B5 push {r4, lr}
13209 .cfi_def_cfa_offset 8
13210 .cfi_offset 4, -8
13211 .cfi_offset 14, -4
6607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13212 .loc 1 6607 3 is_stmt 1 view .LVU4658
6607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13213 .loc 1 6607 22 is_stmt 0 view .LVU4659
13214 0002 446A ldr r4, [r0, #36]
13215 .LVL960:
6610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13216 .loc 1 6610 3 is_stmt 1 view .LVU4660
6610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13217 .loc 1 6610 7 is_stmt 0 view .LVU4661
13218 0004 2268 ldr r2, [r4]
6610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13219 .loc 1 6610 17 view .LVU4662
13220 0006 1368 ldr r3, [r2]
6610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13221 .loc 1 6610 23 view .LVU4663
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 438
13222 0008 23F40043 bic r3, r3, #32768
13223 000c 1360 str r3, [r2]
6613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13224 .loc 1 6613 3 is_stmt 1 view .LVU4664
6613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13225 .loc 1 6613 11 is_stmt 0 view .LVU4665
13226 000e 638D ldrh r3, [r4, #42]
13227 0010 9BB2 uxth r3, r3
6613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13228 .loc 1 6613 6 view .LVU4666
13229 0012 ABB1 cbz r3, .L864
6622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13230 .loc 1 6622 5 is_stmt 1 view .LVU4667
6622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13231 .loc 1 6622 9 is_stmt 0 view .LVU4668
13232 0014 626A ldr r2, [r4, #36]
6622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13233 .loc 1 6622 27 view .LVU4669
13234 0016 238D ldrh r3, [r4, #40]
6622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13235 .loc 1 6622 20 view .LVU4670
13236 0018 1A44 add r2, r2, r3
13237 001a 6262 str r2, [r4, #36]
6625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13238 .loc 1 6625 5 is_stmt 1 view .LVU4671
6625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13239 .loc 1 6625 13 is_stmt 0 view .LVU4672
13240 001c 638D ldrh r3, [r4, #42]
13241 001e 9BB2 uxth r3, r3
6625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13242 .loc 1 6625 8 view .LVU4673
13243 0020 FF2B cmp r3, #255
13244 0022 12D9 bls .L860
6627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13245 .loc 1 6627 7 is_stmt 1 view .LVU4674
6627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13246 .loc 1 6627 22 is_stmt 0 view .LVU4675
13247 0024 FF23 movs r3, #255
13248 0026 2385 strh r3, [r4, #40] @ movhi
13249 .L861:
6635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13250 .loc 1 6635 5 is_stmt 1 view .LVU4676
6635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13251 .loc 1 6635 55 is_stmt 0 view .LVU4677
13252 0028 2168 ldr r1, [r4]
6635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13253 .loc 1 6635 9 view .LVU4678
13254 002a 238D ldrh r3, [r4, #40]
13255 002c 2431 adds r1, r1, #36
13256 002e E06B ldr r0, [r4, #60]
13257 .LVL961:
6635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13258 .loc 1 6635 9 view .LVU4679
13259 0030 FFF7FEFF bl HAL_DMA_Start_IT
13260 .LVL962:
6635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferSize) != HAL_OK)
13261 .loc 1 6635 8 view .LVU4680
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 439
13262 0034 60B1 cbz r0, .L862
6639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13263 .loc 1 6639 7 is_stmt 1 view .LVU4681
13264 0036 1021 movs r1, #16
13265 0038 2046 mov r0, r4
13266 003a FFF7FEFF bl I2C_ITError
13267 .LVL963:
13268 .L857:
6647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13269 .loc 1 6647 1 is_stmt 0 view .LVU4682
13270 003e 10BD pop {r4, pc}
13271 .LVL964:
13272 .L864:
6616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13273 .loc 1 6616 5 is_stmt 1 view .LVU4683
13274 0040 2021 movs r1, #32
13275 0042 2046 mov r0, r4
13276 .LVL965:
6616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13277 .loc 1 6616 5 is_stmt 0 view .LVU4684
13278 0044 FFF7FEFF bl I2C_Enable_IRQ
13279 .LVL966:
13280 0048 F9E7 b .L857
13281 .LVL967:
13282 .L860:
6631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13283 .loc 1 6631 7 is_stmt 1 view .LVU4685
6631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13284 .loc 1 6631 28 is_stmt 0 view .LVU4686
13285 004a 638D ldrh r3, [r4, #42]
6631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13286 .loc 1 6631 22 view .LVU4687
13287 004c 2385 strh r3, [r4, #40] @ movhi
13288 004e EBE7 b .L861
13289 .LVL968:
13290 .L862:
6644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13291 .loc 1 6644 7 is_stmt 1 view .LVU4688
13292 0050 4021 movs r1, #64
13293 0052 2046 mov r0, r4
13294 0054 FFF7FEFF bl I2C_Enable_IRQ
13295 .LVL969:
6647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13296 .loc 1 6647 1 is_stmt 0 view .LVU4689
13297 0058 F1E7 b .L857
13298 .cfi_endproc
13299 .LFE198:
13301 .section .text.I2C_Mem_ISR_IT,"ax",%progbits
13302 .align 1
13303 .syntax unified
13304 .thumb
13305 .thumb_func
13307 I2C_Mem_ISR_IT:
13308 .LVL970:
13309 .LFB180:
4955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t direction = I2C_GENERATE_START_WRITE;
13310 .loc 1 4955 1 is_stmt 1 view -0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 440
13311 .cfi_startproc
13312 @ args = 0, pretend = 0, frame = 0
13313 @ frame_needed = 0, uses_anonymous_args = 0
4956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
13314 .loc 1 4956 3 view .LVU4691
4957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13315 .loc 1 4957 3 view .LVU4692
4960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13316 .loc 1 4960 3 view .LVU4693
4960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13317 .loc 1 4960 3 view .LVU4694
13318 0000 90F84030 ldrb r3, [r0, #64] @ zero_extendqisi2
13319 0004 012B cmp r3, #1
13320 0006 00F0B980 beq .L878
4955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t direction = I2C_GENERATE_START_WRITE;
13321 .loc 1 4955 1 is_stmt 0 discriminator 2 view .LVU4695
13322 000a 70B5 push {r4, r5, r6, lr}
13323 .cfi_def_cfa_offset 16
13324 .cfi_offset 4, -16
13325 .cfi_offset 5, -12
13326 .cfi_offset 6, -8
13327 .cfi_offset 14, -4
13328 000c 82B0 sub sp, sp, #8
13329 .cfi_def_cfa_offset 24
13330 000e 0446 mov r4, r0
13331 0010 0D46 mov r5, r1
13332 0012 1646 mov r6, r2
4960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13333 .loc 1 4960 3 is_stmt 1 discriminator 2 view .LVU4696
13334 0014 0123 movs r3, #1
13335 0016 80F84030 strb r3, [r0, #64]
4960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13336 .loc 1 4960 3 discriminator 2 view .LVU4697
4962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
13337 .loc 1 4962 3 discriminator 2 view .LVU4698
4962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
13338 .loc 1 4962 6 is_stmt 0 discriminator 2 view .LVU4699
13339 001a 11F0100F tst r1, #16
13340 001e 02D0 beq .L867
4962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_NACKI) != RESET))
13341 .loc 1 4962 58 discriminator 1 view .LVU4700
13342 0020 12F0100F tst r2, #16
13343 0024 22D1 bne .L884
13344 .L867:
4976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
13345 .loc 1 4976 8 is_stmt 1 view .LVU4701
4976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
13346 .loc 1 4976 11 is_stmt 0 view .LVU4702
13347 0026 15F0040F tst r5, #4
13348 002a 29D0 beq .L869
4976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_RXI) != RESET))
13349 .loc 1 4976 65 discriminator 1 view .LVU4703
13350 002c 16F0040F tst r6, #4
13351 0030 26D0 beq .L869
4980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13352 .loc 1 4980 5 is_stmt 1 view .LVU4704
4980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 441
13353 .loc 1 4980 16 is_stmt 0 view .LVU4705
13354 0032 25F00405 bic r5, r5, #4
13355 .LVL971:
4983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13356 .loc 1 4983 5 is_stmt 1 view .LVU4706
4983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13357 .loc 1 4983 36 is_stmt 0 view .LVU4707
13358 0036 2368 ldr r3, [r4]
4983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13359 .loc 1 4983 46 view .LVU4708
13360 0038 5A6A ldr r2, [r3, #36]
13361 .LVL972:
4983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13362 .loc 1 4983 10 view .LVU4709
13363 003a 636A ldr r3, [r4, #36]
4983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13364 .loc 1 4983 21 view .LVU4710
13365 003c 1A70 strb r2, [r3]
4986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13366 .loc 1 4986 5 is_stmt 1 view .LVU4711
4986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13367 .loc 1 4986 9 is_stmt 0 view .LVU4712
13368 003e 636A ldr r3, [r4, #36]
4986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13369 .loc 1 4986 19 view .LVU4713
13370 0040 0133 adds r3, r3, #1
13371 0042 6362 str r3, [r4, #36]
4988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
13372 .loc 1 4988 5 is_stmt 1 view .LVU4714
4988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
13373 .loc 1 4988 9 is_stmt 0 view .LVU4715
13374 0044 238D ldrh r3, [r4, #40]
4988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
13375 .loc 1 4988 19 view .LVU4716
13376 0046 013B subs r3, r3, #1
13377 0048 2385 strh r3, [r4, #40] @ movhi
4989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13378 .loc 1 4989 5 is_stmt 1 view .LVU4717
4989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13379 .loc 1 4989 9 is_stmt 0 view .LVU4718
13380 004a 638D ldrh r3, [r4, #42]
13381 004c 9BB2 uxth r3, r3
4989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13382 .loc 1 4989 20 view .LVU4719
13383 004e 013B subs r3, r3, #1
13384 0050 9BB2 uxth r3, r3
13385 0052 6385 strh r3, [r4, #42] @ movhi
13386 .LVL973:
13387 .L868:
5067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13388 .loc 1 5067 3 is_stmt 1 view .LVU4720
5069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
13389 .loc 1 5069 3 view .LVU4721
5069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
13390 .loc 1 5069 6 is_stmt 0 view .LVU4722
13391 0054 15F0200F tst r5, #32
13392 0058 03D0 beq .L877
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 442
5069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_STOPI) != RESET))
13393 .loc 1 5069 61 discriminator 1 view .LVU4723
13394 005a 16F0200F tst r6, #32
13395 005e 40F08880 bne .L885
13396 .L877:
5077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13397 .loc 1 5077 3 is_stmt 1 view .LVU4724
5077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13398 .loc 1 5077 3 view .LVU4725
13399 0062 0020 movs r0, #0
13400 0064 84F84000 strb r0, [r4, #64]
5077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13401 .loc 1 5077 3 view .LVU4726
5079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13402 .loc 1 5079 3 view .LVU4727
5080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13403 .loc 1 5080 1 is_stmt 0 view .LVU4728
13404 0068 02B0 add sp, sp, #8
13405 .cfi_remember_state
13406 .cfi_def_cfa_offset 16
13407 @ sp needed
13408 006a 70BD pop {r4, r5, r6, pc}
13409 .LVL974:
13410 .L884:
13411 .cfi_restore_state
4966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13412 .loc 1 4966 5 is_stmt 1 view .LVU4729
13413 006c 0368 ldr r3, [r0]
13414 006e 1022 movs r2, #16
13415 .LVL975:
4966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13416 .loc 1 4966 5 is_stmt 0 view .LVU4730
13417 0070 DA61 str r2, [r3, #28]
4971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13418 .loc 1 4971 5 is_stmt 1 view .LVU4731
4971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13419 .loc 1 4971 9 is_stmt 0 view .LVU4732
13420 0072 436C ldr r3, [r0, #68]
4971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13421 .loc 1 4971 21 view .LVU4733
13422 0074 43F00403 orr r3, r3, #4
13423 0078 4364 str r3, [r0, #68]
4974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13424 .loc 1 4974 5 is_stmt 1 view .LVU4734
13425 007a FFF7FEFF bl I2C_Flush_TXDR
13426 .LVL976:
4974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13427 .loc 1 4974 5 is_stmt 0 view .LVU4735
13428 007e E9E7 b .L868
13429 .LVL977:
13430 .L869:
4991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
13431 .loc 1 4991 8 is_stmt 1 view .LVU4736
4991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
13432 .loc 1 4991 11 is_stmt 0 view .LVU4737
13433 0080 15F0020F tst r5, #2
13434 0084 1DD0 beq .L870
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 443
4991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TXI) != RESET))
13435 .loc 1 4991 65 discriminator 1 view .LVU4738
13436 0086 16F0020F tst r6, #2
13437 008a 1AD0 beq .L870
4994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13438 .loc 1 4994 5 is_stmt 1 view .LVU4739
4994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13439 .loc 1 4994 13 is_stmt 0 view .LVU4740
13440 008c 236D ldr r3, [r4, #80]
4994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13441 .loc 1 4994 8 view .LVU4741
13442 008e B3F1FF3F cmp r3, #-1
13443 0092 06D0 beq .L886
5008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13444 .loc 1 5008 7 is_stmt 1 view .LVU4742
5008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13445 .loc 1 5008 11 is_stmt 0 view .LVU4743
13446 0094 2368 ldr r3, [r4]
5008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13447 .loc 1 5008 34 view .LVU4744
13448 0096 226D ldr r2, [r4, #80]
13449 .LVL978:
5008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13450 .loc 1 5008 28 view .LVU4745
13451 0098 9A62 str r2, [r3, #40]
5011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13452 .loc 1 5011 7 is_stmt 1 view .LVU4746
5011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13453 .loc 1 5011 24 is_stmt 0 view .LVU4747
13454 009a 4FF0FF33 mov r3, #-1
13455 009e 2365 str r3, [r4, #80]
13456 00a0 D8E7 b .L868
13457 .LVL979:
13458 .L886:
4997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13459 .loc 1 4997 7 is_stmt 1 view .LVU4748
4997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13460 .loc 1 4997 35 is_stmt 0 view .LVU4749
13461 00a2 626A ldr r2, [r4, #36]
13462 .LVL980:
4997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13463 .loc 1 4997 11 view .LVU4750
13464 00a4 2368 ldr r3, [r4]
4997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13465 .loc 1 4997 30 view .LVU4751
13466 00a6 1278 ldrb r2, [r2] @ zero_extendqisi2
4997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13467 .loc 1 4997 28 view .LVU4752
13468 00a8 9A62 str r2, [r3, #40]
5000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13469 .loc 1 5000 7 is_stmt 1 view .LVU4753
5000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13470 .loc 1 5000 11 is_stmt 0 view .LVU4754
13471 00aa 636A ldr r3, [r4, #36]
5000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13472 .loc 1 5000 21 view .LVU4755
13473 00ac 0133 adds r3, r3, #1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 444
13474 00ae 6362 str r3, [r4, #36]
5002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
13475 .loc 1 5002 7 is_stmt 1 view .LVU4756
5002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
13476 .loc 1 5002 11 is_stmt 0 view .LVU4757
13477 00b0 238D ldrh r3, [r4, #40]
5002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** hi2c->XferCount--;
13478 .loc 1 5002 21 view .LVU4758
13479 00b2 013B subs r3, r3, #1
13480 00b4 2385 strh r3, [r4, #40] @ movhi
5003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13481 .loc 1 5003 7 is_stmt 1 view .LVU4759
5003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13482 .loc 1 5003 11 is_stmt 0 view .LVU4760
13483 00b6 638D ldrh r3, [r4, #42]
13484 00b8 9BB2 uxth r3, r3
5003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13485 .loc 1 5003 22 view .LVU4761
13486 00ba 013B subs r3, r3, #1
13487 00bc 9BB2 uxth r3, r3
13488 00be 6385 strh r3, [r4, #42] @ movhi
13489 00c0 C8E7 b .L868
13490 .LVL981:
13491 .L870:
5014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
13492 .loc 1 5014 8 is_stmt 1 view .LVU4762
5014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
13493 .loc 1 5014 11 is_stmt 0 view .LVU4763
13494 00c2 15F0800F tst r5, #128
13495 00c6 2AD0 beq .L872
5014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
13496 .loc 1 5014 64 discriminator 1 view .LVU4764
13497 00c8 16F0400F tst r6, #64
13498 00cc 27D0 beq .L872
5017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13499 .loc 1 5017 5 is_stmt 1 view .LVU4765
5017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13500 .loc 1 5017 14 is_stmt 0 view .LVU4766
13501 00ce 638D ldrh r3, [r4, #42]
13502 00d0 9BB2 uxth r3, r3
5017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13503 .loc 1 5017 8 view .LVU4767
13504 00d2 FBB1 cbz r3, .L873
5017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13505 .loc 1 5017 41 discriminator 1 view .LVU4768
13506 00d4 238D ldrh r3, [r4, #40]
5017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13507 .loc 1 5017 33 discriminator 1 view .LVU4769
13508 00d6 EBB9 cbnz r3, .L873
5019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13509 .loc 1 5019 7 is_stmt 1 view .LVU4770
5019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13510 .loc 1 5019 15 is_stmt 0 view .LVU4771
13511 00d8 638D ldrh r3, [r4, #42]
13512 00da 9BB2 uxth r3, r3
5019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13513 .loc 1 5019 10 view .LVU4772
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 445
13514 00dc FF2B cmp r3, #255
13515 00de 0BD9 bls .L874
5021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13516 .loc 1 5021 9 is_stmt 1 view .LVU4773
5021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13517 .loc 1 5021 24 is_stmt 0 view .LVU4774
13518 00e0 FF22 movs r2, #255
13519 .LVL982:
5021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13520 .loc 1 5021 24 view .LVU4775
13521 00e2 2285 strh r2, [r4, #40] @ movhi
5022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
13522 .loc 1 5022 9 is_stmt 1 view .LVU4776
5022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
13523 .loc 1 5022 48 is_stmt 0 view .LVU4777
13524 00e4 E16C ldr r1, [r4, #76]
13525 .LVL983:
5022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
13526 .loc 1 5022 9 view .LVU4778
13527 00e6 0023 movs r3, #0
13528 00e8 0093 str r3, [sp]
13529 00ea 4FF08073 mov r3, #16777216
13530 00ee 89B2 uxth r1, r1
13531 00f0 2046 mov r0, r4
13532 .LVL984:
5022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, I2C_NO_STARTSTOP);
13533 .loc 1 5022 9 view .LVU4779
13534 00f2 FFF7FEFF bl I2C_TransferConfig
13535 .LVL985:
13536 00f6 ADE7 b .L868
13537 .LVL986:
13538 .L874:
5027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13539 .loc 1 5027 9 is_stmt 1 view .LVU4780
5027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13540 .loc 1 5027 30 is_stmt 0 view .LVU4781
13541 00f8 628D ldrh r2, [r4, #42]
13542 .LVL987:
5027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13543 .loc 1 5027 30 view .LVU4782
13544 00fa 92B2 uxth r2, r2
5027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_TransferConfig(hi2c, (uint16_t)hi2c->Devaddress, (uint8_t)hi2c->XferSize,
13545 .loc 1 5027 24 view .LVU4783
13546 00fc 2285 strh r2, [r4, #40] @ movhi
5028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
13547 .loc 1 5028 9 is_stmt 1 view .LVU4784
5028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
13548 .loc 1 5028 48 is_stmt 0 view .LVU4785
13549 00fe E16C ldr r1, [r4, #76]
13550 .LVL988:
5028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
13551 .loc 1 5028 9 view .LVU4786
13552 0100 0023 movs r3, #0
13553 0102 0093 str r3, [sp]
13554 0104 4FF00073 mov r3, #33554432
13555 0108 D2B2 uxtb r2, r2
13556 010a 89B2 uxth r1, r1
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 446
13557 010c 2046 mov r0, r4
13558 .LVL989:
5028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, I2C_NO_STARTSTOP);
13559 .loc 1 5028 9 view .LVU4787
13560 010e FFF7FEFF bl I2C_TransferConfig
13561 .LVL990:
13562 0112 9FE7 b .L868
13563 .LVL991:
13564 .L873:
5036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13565 .loc 1 5036 7 is_stmt 1 view .LVU4788
13566 0114 4021 movs r1, #64
13567 .LVL992:
5036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13568 .loc 1 5036 7 is_stmt 0 view .LVU4789
13569 0116 2046 mov r0, r4
13570 .LVL993:
5036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13571 .loc 1 5036 7 view .LVU4790
13572 0118 FFF7FEFF bl I2C_ITError
13573 .LVL994:
5036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13574 .loc 1 5036 7 view .LVU4791
13575 011c 9AE7 b .L868
13576 .LVL995:
13577 .L872:
5039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
13578 .loc 1 5039 8 is_stmt 1 view .LVU4792
5039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
13579 .loc 1 5039 11 is_stmt 0 view .LVU4793
13580 011e 15F0400F tst r5, #64
13581 0122 97D0 beq .L868
5039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(ITSources, I2C_IT_TCI) != RESET))
13582 .loc 1 5039 63 discriminator 1 view .LVU4794
13583 0124 16F0400F tst r6, #64
13584 0128 94D0 beq .L868
5042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13585 .loc 1 5042 5 is_stmt 1 view .LVU4795
5042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13586 .loc 1 5042 13 is_stmt 0 view .LVU4796
13587 012a 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
13588 012e DBB2 uxtb r3, r3
5042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13589 .loc 1 5042 8 view .LVU4797
13590 0130 222B cmp r3, #34
13591 0132 0FD0 beq .L879
4956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmpITFlags = ITFlags;
13592 .loc 1 4956 12 view .LVU4798
13593 0134 1248 ldr r0, .L887
13594 .LVL996:
13595 .L875:
5047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13596 .loc 1 5047 5 is_stmt 1 view .LVU4799
5047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13597 .loc 1 5047 13 is_stmt 0 view .LVU4800
13598 0136 638D ldrh r3, [r4, #42]
13599 0138 9BB2 uxth r3, r3
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 447
5047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13600 .loc 1 5047 8 view .LVU4801
13601 013a FF2B cmp r3, #255
13602 013c 0CD9 bls .L876
5049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13603 .loc 1 5049 7 is_stmt 1 view .LVU4802
5049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13604 .loc 1 5049 22 is_stmt 0 view .LVU4803
13605 013e FF22 movs r2, #255
13606 .LVL997:
5049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13607 .loc 1 5049 22 view .LVU4804
13608 0140 2285 strh r2, [r4, #40] @ movhi
5052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
13609 .loc 1 5052 7 is_stmt 1 view .LVU4805
5052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
13610 .loc 1 5052 46 is_stmt 0 view .LVU4806
13611 0142 E16C ldr r1, [r4, #76]
13612 .LVL998:
5052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
13613 .loc 1 5052 7 view .LVU4807
13614 0144 0090 str r0, [sp]
13615 0146 4FF08073 mov r3, #16777216
13616 014a 89B2 uxth r1, r1
13617 014c 2046 mov r0, r4
13618 .LVL999:
5052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
13619 .loc 1 5052 7 view .LVU4808
13620 014e FFF7FEFF bl I2C_TransferConfig
13621 .LVL1000:
5052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_RELOAD_MODE, direction);
13622 .loc 1 5052 7 view .LVU4809
13623 0152 7FE7 b .L868
13624 .LVL1001:
13625 .L879:
5044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13626 .loc 1 5044 17 view .LVU4810
13627 0154 0B48 ldr r0, .L887+4
13628 .LVL1002:
5044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13629 .loc 1 5044 17 view .LVU4811
13630 0156 EEE7 b .L875
13631 .LVL1003:
13632 .L876:
5057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13633 .loc 1 5057 7 is_stmt 1 view .LVU4812
5057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13634 .loc 1 5057 28 is_stmt 0 view .LVU4813
13635 0158 628D ldrh r2, [r4, #42]
13636 .LVL1004:
5057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13637 .loc 1 5057 28 view .LVU4814
13638 015a 92B2 uxth r2, r2
5057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13639 .loc 1 5057 22 view .LVU4815
13640 015c 2285 strh r2, [r4, #40] @ movhi
5060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 448
13641 .loc 1 5060 7 is_stmt 1 view .LVU4816
5060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
13642 .loc 1 5060 46 is_stmt 0 view .LVU4817
13643 015e E16C ldr r1, [r4, #76]
13644 .LVL1005:
5060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
13645 .loc 1 5060 7 view .LVU4818
13646 0160 0090 str r0, [sp]
13647 0162 4FF00073 mov r3, #33554432
13648 0166 D2B2 uxtb r2, r2
13649 0168 89B2 uxth r1, r1
13650 016a 2046 mov r0, r4
13651 .LVL1006:
5060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
13652 .loc 1 5060 7 view .LVU4819
13653 016c FFF7FEFF bl I2C_TransferConfig
13654 .LVL1007:
5060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** I2C_AUTOEND_MODE, direction);
13655 .loc 1 5060 7 view .LVU4820
13656 0170 70E7 b .L868
13657 .LVL1008:
13658 .L885:
5073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13659 .loc 1 5073 5 is_stmt 1 view .LVU4821
13660 0172 2946 mov r1, r5
13661 0174 2046 mov r0, r4
13662 0176 FFF7FEFF bl I2C_ITMasterCplt
13663 .LVL1009:
13664 017a 72E7 b .L877
13665 .LVL1010:
13666 .L878:
13667 .cfi_def_cfa_offset 0
13668 .cfi_restore 4
13669 .cfi_restore 5
13670 .cfi_restore 6
13671 .cfi_restore 14
4960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13672 .loc 1 4960 3 is_stmt 0 view .LVU4822
13673 017c 0220 movs r0, #2
13674 .LVL1011:
5080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13675 .loc 1 5080 1 view .LVU4823
13676 017e 7047 bx lr
13677 .L888:
13678 .align 2
13679 .L887:
13680 0180 00200080 .word -2147475456
13681 0184 00240080 .word -2147474432
13682 .cfi_endproc
13683 .LFE180:
13685 .section .text.HAL_I2C_ER_IRQHandler,"ax",%progbits
13686 .align 1
13687 .global HAL_I2C_ER_IRQHandler
13688 .syntax unified
13689 .thumb
13690 .thumb_func
13692 HAL_I2C_ER_IRQHandler:
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 449
13693 .LVL1012:
13694 .LFB165:
4526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflags = READ_REG(hi2c->Instance->ISR);
13695 .loc 1 4526 1 is_stmt 1 view -0
13696 .cfi_startproc
13697 @ args = 0, pretend = 0, frame = 0
13698 @ frame_needed = 0, uses_anonymous_args = 0
4526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itflags = READ_REG(hi2c->Instance->ISR);
13699 .loc 1 4526 1 is_stmt 0 view .LVU4825
13700 0000 10B5 push {r4, lr}
13701 .cfi_def_cfa_offset 8
13702 .cfi_offset 4, -8
13703 .cfi_offset 14, -4
4527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
13704 .loc 1 4527 3 is_stmt 1 view .LVU4826
4527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
13705 .loc 1 4527 24 is_stmt 0 view .LVU4827
13706 0002 0268 ldr r2, [r0]
4527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t itsources = READ_REG(hi2c->Instance->CR1);
13707 .loc 1 4527 12 view .LVU4828
13708 0004 9369 ldr r3, [r2, #24]
13709 .LVL1013:
4528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmperror;
13710 .loc 1 4528 3 is_stmt 1 view .LVU4829
4528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** uint32_t tmperror;
13711 .loc 1 4528 12 is_stmt 0 view .LVU4830
13712 0006 1168 ldr r1, [r2]
13713 .LVL1014:
4529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13714 .loc 1 4529 3 is_stmt 1 view .LVU4831
4532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13715 .loc 1 4532 3 view .LVU4832
4532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13716 .loc 1 4532 6 is_stmt 0 view .LVU4833
13717 0008 13F4807F tst r3, #256
13718 000c 09D0 beq .L890
4532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13719 .loc 1 4532 57 discriminator 1 view .LVU4834
13720 000e 11F0800F tst r1, #128
13721 0012 06D0 beq .L890
4535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13722 .loc 1 4535 5 is_stmt 1 view .LVU4835
4535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13723 .loc 1 4535 9 is_stmt 0 view .LVU4836
13724 0014 446C ldr r4, [r0, #68]
4535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13725 .loc 1 4535 21 view .LVU4837
13726 0016 44F00104 orr r4, r4, #1
13727 001a 4464 str r4, [r0, #68]
4538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13728 .loc 1 4538 5 is_stmt 1 view .LVU4838
13729 001c 4FF48074 mov r4, #256
13730 0020 D461 str r4, [r2, #28]
13731 .L890:
4542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13732 .loc 1 4542 3 view .LVU4839
4542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 450
13733 .loc 1 4542 6 is_stmt 0 view .LVU4840
13734 0022 13F4806F tst r3, #1024
13735 0026 0AD0 beq .L891
4542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13736 .loc 1 4542 56 discriminator 1 view .LVU4841
13737 0028 11F0800F tst r1, #128
13738 002c 07D0 beq .L891
4545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13739 .loc 1 4545 5 is_stmt 1 view .LVU4842
4545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13740 .loc 1 4545 9 is_stmt 0 view .LVU4843
13741 002e 426C ldr r2, [r0, #68]
4545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13742 .loc 1 4545 21 view .LVU4844
13743 0030 42F00802 orr r2, r2, #8
13744 0034 4264 str r2, [r0, #68]
4548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13745 .loc 1 4548 5 is_stmt 1 view .LVU4845
13746 0036 0268 ldr r2, [r0]
13747 0038 4FF48064 mov r4, #1024
13748 003c D461 str r4, [r2, #28]
13749 .L891:
4552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13750 .loc 1 4552 3 view .LVU4846
4552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13751 .loc 1 4552 6 is_stmt 0 view .LVU4847
13752 003e 13F4007F tst r3, #512
13753 0042 0AD0 beq .L892
4552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** (I2C_CHECK_IT_SOURCE(itsources, I2C_IT_ERRI) != RESET))
13754 .loc 1 4552 57 discriminator 1 view .LVU4848
13755 0044 11F0800F tst r1, #128
13756 0048 07D0 beq .L892
4555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13757 .loc 1 4555 5 is_stmt 1 view .LVU4849
4555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13758 .loc 1 4555 9 is_stmt 0 view .LVU4850
13759 004a 436C ldr r3, [r0, #68]
13760 .LVL1015:
4555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13761 .loc 1 4555 21 view .LVU4851
13762 004c 43F00203 orr r3, r3, #2
13763 0050 4364 str r3, [r0, #68]
4558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13764 .loc 1 4558 5 is_stmt 1 view .LVU4852
13765 0052 0368 ldr r3, [r0]
13766 0054 4FF40072 mov r2, #512
13767 0058 DA61 str r2, [r3, #28]
13768 .L892:
4562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13769 .loc 1 4562 3 view .LVU4853
4562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13770 .loc 1 4562 12 is_stmt 0 view .LVU4854
13771 005a 416C ldr r1, [r0, #68]
13772 .LVL1016:
4565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13773 .loc 1 4565 3 is_stmt 1 view .LVU4855
4565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 451
13774 .loc 1 4565 6 is_stmt 0 view .LVU4856
13775 005c 11F00B0F tst r1, #11
13776 0060 00D1 bne .L895
13777 .LVL1017:
13778 .L889:
4569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13779 .loc 1 4569 1 view .LVU4857
13780 0062 10BD pop {r4, pc}
13781 .LVL1018:
13782 .L895:
4567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13783 .loc 1 4567 5 is_stmt 1 view .LVU4858
13784 0064 FFF7FEFF bl I2C_ITError
13785 .LVL1019:
4569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13786 .loc 1 4569 1 is_stmt 0 view .LVU4859
13787 0068 FBE7 b .L889
13788 .cfi_endproc
13789 .LFE165:
13791 .section .text.I2C_DMAAbort,"ax",%progbits
13792 .align 1
13793 .syntax unified
13794 .thumb
13795 .thumb_func
13797 I2C_DMAAbort:
13798 .LVL1020:
13799 .LFB201:
6704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13800 .loc 1 6704 1 is_stmt 1 view -0
13801 .cfi_startproc
13802 @ args = 0, pretend = 0, frame = 0
13803 @ frame_needed = 0, uses_anonymous_args = 0
6704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Derogation MISRAC2012-Rule-11.5 */
13804 .loc 1 6704 1 is_stmt 0 view .LVU4861
13805 0000 08B5 push {r3, lr}
13806 .cfi_def_cfa_offset 8
13807 .cfi_offset 3, -8
13808 .cfi_offset 14, -4
6706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13809 .loc 1 6706 3 is_stmt 1 view .LVU4862
6706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13810 .loc 1 6706 22 is_stmt 0 view .LVU4863
13811 0002 406A ldr r0, [r0, #36]
13812 .LVL1021:
6709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13813 .loc 1 6709 3 is_stmt 1 view .LVU4864
6709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13814 .loc 1 6709 11 is_stmt 0 view .LVU4865
13815 0004 836B ldr r3, [r0, #56]
6709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13816 .loc 1 6709 6 view .LVU4866
13817 0006 0BB1 cbz r3, .L897
6711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13818 .loc 1 6711 5 is_stmt 1 view .LVU4867
6711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13819 .loc 1 6711 37 is_stmt 0 view .LVU4868
13820 0008 0022 movs r2, #0
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 452
13821 000a 5A63 str r2, [r3, #52]
13822 .L897:
6713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13823 .loc 1 6713 3 is_stmt 1 view .LVU4869
6713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13824 .loc 1 6713 11 is_stmt 0 view .LVU4870
13825 000c C36B ldr r3, [r0, #60]
6713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** {
13826 .loc 1 6713 6 view .LVU4871
13827 000e 0BB1 cbz r3, .L898
6715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13828 .loc 1 6715 5 is_stmt 1 view .LVU4872
6715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13829 .loc 1 6715 37 is_stmt 0 view .LVU4873
13830 0010 0022 movs r2, #0
13831 0012 5A63 str r2, [r3, #52]
13832 .L898:
6718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13833 .loc 1 6718 3 is_stmt 1 view .LVU4874
13834 0014 FFF7FEFF bl I2C_TreatErrorCallback
13835 .LVL1022:
6719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13836 .loc 1 6719 1 is_stmt 0 view .LVU4875
13837 0018 08BD pop {r3, pc}
13838 .cfi_endproc
13839 .LFE201:
13841 .section .text.HAL_I2C_GetState,"ax",%progbits
13842 .align 1
13843 .global HAL_I2C_GetState
13844 .syntax unified
13845 .thumb
13846 .thumb_func
13848 HAL_I2C_GetState:
13849 .LVL1023:
13850 .LFB176:
4760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** /* Return I2C handle state */
13851 .loc 1 4760 1 is_stmt 1 view -0
13852 .cfi_startproc
13853 @ args = 0, pretend = 0, frame = 0
13854 @ frame_needed = 0, uses_anonymous_args = 0
13855 @ link register save eliminated.
4762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13856 .loc 1 4762 3 view .LVU4877
4762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13857 .loc 1 4762 14 is_stmt 0 view .LVU4878
13858 0000 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
13859 .LVL1024:
4763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13860 .loc 1 4763 1 view .LVU4879
13861 0004 7047 bx lr
13862 .cfi_endproc
13863 .LFE176:
13865 .section .text.HAL_I2C_GetMode,"ax",%progbits
13866 .align 1
13867 .global HAL_I2C_GetMode
13868 .syntax unified
13869 .thumb
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 453
13870 .thumb_func
13872 HAL_I2C_GetMode:
13873 .LVL1025:
13874 .LFB177:
4772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return hi2c->Mode;
13875 .loc 1 4772 1 is_stmt 1 view -0
13876 .cfi_startproc
13877 @ args = 0, pretend = 0, frame = 0
13878 @ frame_needed = 0, uses_anonymous_args = 0
13879 @ link register save eliminated.
4773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13880 .loc 1 4773 3 view .LVU4881
4773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13881 .loc 1 4773 14 is_stmt 0 view .LVU4882
13882 0000 90F84200 ldrb r0, [r0, #66] @ zero_extendqisi2
13883 .LVL1026:
4774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13884 .loc 1 4774 1 view .LVU4883
13885 0004 7047 bx lr
13886 .cfi_endproc
13887 .LFE177:
13889 .section .text.HAL_I2C_GetError,"ax",%progbits
13890 .align 1
13891 .global HAL_I2C_GetError
13892 .syntax unified
13893 .thumb
13894 .thumb_func
13896 HAL_I2C_GetError:
13897 .LVL1027:
13898 .LFB178:
4783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** return hi2c->ErrorCode;
13899 .loc 1 4783 1 is_stmt 1 view -0
13900 .cfi_startproc
13901 @ args = 0, pretend = 0, frame = 0
13902 @ frame_needed = 0, uses_anonymous_args = 0
13903 @ link register save eliminated.
4784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13904 .loc 1 4784 3 view .LVU4885
4784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c **** }
13905 .loc 1 4784 14 is_stmt 0 view .LVU4886
13906 0000 406C ldr r0, [r0, #68]
13907 .LVL1028:
4785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_i2c.c ****
13908 .loc 1 4785 1 view .LVU4887
13909 0002 7047 bx lr
13910 .cfi_endproc
13911 .LFE178:
13913 .text
13914 .Letext0:
13915 .file 2 "c:\\users\\nived\\appdata\\roaming\\code\\user\\globalstorage\\bmd.stm32-for-vscode\\@xpa
13916 .file 3 "c:\\users\\nived\\appdata\\roaming\\code\\user\\globalstorage\\bmd.stm32-for-vscode\\@xpa
13917 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
13918 .file 5 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f3xx.h"
13919 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
13920 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h"
13921 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_i2c.h"
13922 .file 9 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal.h"
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 454
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 455
DEFINED SYMBOLS
*ABS*:00000000 stm32f3xx_hal_i2c.c
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:21 .text.I2C_Flush_TXDR:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:26 .text.I2C_Flush_TXDR:00000000 I2C_Flush_TXDR
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:64 .text.I2C_TransferConfig:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:69 .text.I2C_TransferConfig:00000000 I2C_TransferConfig
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:125 .text.I2C_Enable_IRQ:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:130 .text.I2C_Enable_IRQ:00000000 I2C_Enable_IRQ
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:317 .text.I2C_Enable_IRQ:000000a8 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12741 .text.I2C_Master_ISR_DMA:00000000 I2C_Master_ISR_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12461 .text.I2C_Slave_ISR_DMA:00000000 I2C_Slave_ISR_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12099 .text.I2C_Mem_ISR_DMA:00000000 I2C_Mem_ISR_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:324 .text.I2C_Disable_IRQ:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:329 .text.I2C_Disable_IRQ:00000000 I2C_Disable_IRQ
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:453 .text.I2C_ConvertOtherXferOptions:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:458 .text.I2C_ConvertOtherXferOptions:00000000 I2C_ConvertOtherXferOptions
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:499 .text.I2C_IsErrorOccurred:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:504 .text.I2C_IsErrorOccurred:00000000 I2C_IsErrorOccurred
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:780 .text.I2C_WaitOnTXISFlagUntilTimeout:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:785 .text.I2C_WaitOnTXISFlagUntilTimeout:00000000 I2C_WaitOnTXISFlagUntilTimeout
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:882 .text.I2C_WaitOnFlagUntilTimeout:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:887 .text.I2C_WaitOnFlagUntilTimeout:00000000 I2C_WaitOnFlagUntilTimeout
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:983 .text.I2C_RequestMemoryWrite:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:988 .text.I2C_RequestMemoryWrite:00000000 I2C_RequestMemoryWrite
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1103 .text.I2C_RequestMemoryWrite:00000078 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1108 .text.I2C_RequestMemoryRead:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1113 .text.I2C_RequestMemoryRead:00000000 I2C_RequestMemoryRead
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1228 .text.I2C_RequestMemoryRead:00000074 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1233 .text.I2C_WaitOnSTOPFlagUntilTimeout:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1238 .text.I2C_WaitOnSTOPFlagUntilTimeout:00000000 I2C_WaitOnSTOPFlagUntilTimeout
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1335 .text.I2C_WaitOnRXNEFlagUntilTimeout:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1340 .text.I2C_WaitOnRXNEFlagUntilTimeout:00000000 I2C_WaitOnRXNEFlagUntilTimeout
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1503 .text.HAL_I2C_MspInit:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1509 .text.HAL_I2C_MspInit:00000000 HAL_I2C_MspInit
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1524 .text.HAL_I2C_Init:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1530 .text.HAL_I2C_Init:00000000 HAL_I2C_Init
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1720 .text.HAL_I2C_MspDeInit:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1726 .text.HAL_I2C_MspDeInit:00000000 HAL_I2C_MspDeInit
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1741 .text.HAL_I2C_DeInit:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1747 .text.HAL_I2C_DeInit:00000000 HAL_I2C_DeInit
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1810 .text.HAL_I2C_Master_Transmit:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:1816 .text.HAL_I2C_Master_Transmit:00000000 HAL_I2C_Master_Transmit
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2122 .text.HAL_I2C_Master_Transmit:00000178 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2127 .text.HAL_I2C_Master_Receive:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2133 .text.HAL_I2C_Master_Receive:00000000 HAL_I2C_Master_Receive
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2438 .text.HAL_I2C_Master_Receive:00000178 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2443 .text.HAL_I2C_Slave_Transmit:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2449 .text.HAL_I2C_Slave_Transmit:00000000 HAL_I2C_Slave_Transmit
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2855 .text.HAL_I2C_Slave_Receive:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:2861 .text.HAL_I2C_Slave_Receive:00000000 HAL_I2C_Slave_Receive
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3205 .text.HAL_I2C_Master_Transmit_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3211 .text.HAL_I2C_Master_Transmit_IT:00000000 HAL_I2C_Master_Transmit_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3360 .text.HAL_I2C_Master_Transmit_IT:0000008c $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11724 .text.I2C_Master_ISR_IT:00000000 I2C_Master_ISR_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3367 .text.HAL_I2C_Master_Receive_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3373 .text.HAL_I2C_Master_Receive_IT:00000000 HAL_I2C_Master_Receive_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3522 .text.HAL_I2C_Master_Receive_IT:0000008c $d
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 456
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3529 .text.HAL_I2C_Slave_Transmit_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3535 .text.HAL_I2C_Slave_Transmit_IT:00000000 HAL_I2C_Slave_Transmit_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3677 .text.HAL_I2C_Slave_Transmit_IT:00000084 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11156 .text.I2C_Slave_ISR_IT:00000000 I2C_Slave_ISR_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3683 .text.HAL_I2C_Slave_Receive_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3689 .text.HAL_I2C_Slave_Receive_IT:00000000 HAL_I2C_Slave_Receive_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3791 .text.HAL_I2C_Slave_Receive_IT:0000005c $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3797 .text.HAL_I2C_Master_Transmit_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:3803 .text.HAL_I2C_Master_Transmit_DMA:00000000 HAL_I2C_Master_Transmit_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4101 .text.HAL_I2C_Master_Transmit_DMA:0000013c $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13093 .text.I2C_DMAMasterTransmitCplt:00000000 I2C_DMAMasterTransmitCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13054 .text.I2C_DMAError:00000000 I2C_DMAError
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4111 .text.HAL_I2C_Master_Receive_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4117 .text.HAL_I2C_Master_Receive_DMA:00000000 HAL_I2C_Master_Receive_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4415 .text.HAL_I2C_Master_Receive_DMA:00000138 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13200 .text.I2C_DMAMasterReceiveCplt:00000000 I2C_DMAMasterReceiveCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4425 .text.HAL_I2C_Slave_Transmit_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4431 .text.HAL_I2C_Slave_Transmit_DMA:00000000 HAL_I2C_Slave_Transmit_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4734 .text.HAL_I2C_Slave_Transmit_DMA:00000130 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9961 .text.I2C_DMASlaveTransmitCplt:00000000 I2C_DMASlaveTransmitCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4742 .text.HAL_I2C_Slave_Receive_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4748 .text.HAL_I2C_Slave_Receive_DMA:00000000 HAL_I2C_Slave_Receive_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4970 .text.HAL_I2C_Slave_Receive_DMA:000000e4 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10012 .text.I2C_DMASlaveReceiveCplt:00000000 I2C_DMASlaveReceiveCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4978 .text.HAL_I2C_Mem_Write:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:4984 .text.HAL_I2C_Mem_Write:00000000 HAL_I2C_Mem_Write
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5338 .text.HAL_I2C_Mem_Read:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5344 .text.HAL_I2C_Mem_Read:00000000 HAL_I2C_Mem_Read
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5698 .text.HAL_I2C_Mem_Read:000001ac $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5703 .text.HAL_I2C_Mem_Write_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5709 .text.HAL_I2C_Mem_Write_IT:00000000 HAL_I2C_Mem_Write_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5878 .text.HAL_I2C_Mem_Write_IT:000000ac $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13307 .text.I2C_Mem_ISR_IT:00000000 I2C_Mem_ISR_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5885 .text.HAL_I2C_Mem_Read_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:5891 .text.HAL_I2C_Mem_Read_IT:00000000 HAL_I2C_Mem_Read_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6060 .text.HAL_I2C_Mem_Read_IT:000000a8 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6067 .text.HAL_I2C_Mem_Write_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6073 .text.HAL_I2C_Mem_Write_DMA:00000000 HAL_I2C_Mem_Write_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6355 .text.HAL_I2C_Mem_Write_DMA:00000120 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6364 .text.HAL_I2C_Mem_Read_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6370 .text.HAL_I2C_Mem_Read_DMA:00000000 HAL_I2C_Mem_Read_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6654 .text.HAL_I2C_Mem_Read_DMA:00000120 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6663 .text.HAL_I2C_IsDeviceReady:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6669 .text.HAL_I2C_IsDeviceReady:00000000 HAL_I2C_IsDeviceReady
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:6999 .text.HAL_I2C_Master_Seq_Transmit_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7005 .text.HAL_I2C_Master_Seq_Transmit_IT:00000000 HAL_I2C_Master_Seq_Transmit_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7192 .text.HAL_I2C_Master_Seq_Transmit_IT:000000ac $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7198 .text.HAL_I2C_Master_Seq_Transmit_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7204 .text.HAL_I2C_Master_Seq_Transmit_DMA:00000000 HAL_I2C_Master_Seq_Transmit_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7533 .text.HAL_I2C_Master_Seq_Transmit_DMA:00000160 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7542 .text.HAL_I2C_Master_Seq_Receive_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7548 .text.HAL_I2C_Master_Seq_Receive_IT:00000000 HAL_I2C_Master_Seq_Receive_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7735 .text.HAL_I2C_Master_Seq_Receive_IT:000000ac $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7741 .text.HAL_I2C_Master_Seq_Receive_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:7747 .text.HAL_I2C_Master_Seq_Receive_DMA:00000000 HAL_I2C_Master_Seq_Receive_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8076 .text.HAL_I2C_Master_Seq_Receive_DMA:00000160 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8085 .text.HAL_I2C_Slave_Seq_Transmit_IT:00000000 $t
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 457
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8091 .text.HAL_I2C_Slave_Seq_Transmit_IT:00000000 HAL_I2C_Slave_Seq_Transmit_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8301 .text.HAL_I2C_Slave_Seq_Transmit_IT:000000d8 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13797 .text.I2C_DMAAbort:00000000 I2C_DMAAbort
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8307 .text.HAL_I2C_Slave_Seq_Transmit_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8313 .text.HAL_I2C_Slave_Seq_Transmit_DMA:00000000 HAL_I2C_Slave_Seq_Transmit_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8703 .text.HAL_I2C_Slave_Seq_Transmit_DMA:0000019c $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8711 .text.HAL_I2C_Slave_Seq_Receive_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8717 .text.HAL_I2C_Slave_Seq_Receive_IT:00000000 HAL_I2C_Slave_Seq_Receive_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8927 .text.HAL_I2C_Slave_Seq_Receive_IT:000000d8 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8933 .text.HAL_I2C_Slave_Seq_Receive_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:8939 .text.HAL_I2C_Slave_Seq_Receive_DMA:00000000 HAL_I2C_Slave_Seq_Receive_DMA
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9326 .text.HAL_I2C_Slave_Seq_Receive_DMA:00000198 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9334 .text.HAL_I2C_EnableListen_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9340 .text.HAL_I2C_EnableListen_IT:00000000 HAL_I2C_EnableListen_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9386 .text.HAL_I2C_EnableListen_IT:00000028 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9391 .text.HAL_I2C_DisableListen_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9397 .text.HAL_I2C_DisableListen_IT:00000000 HAL_I2C_DisableListen_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9462 .text.HAL_I2C_Master_Abort_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9468 .text.HAL_I2C_Master_Abort_IT:00000000 HAL_I2C_Master_Abort_IT
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9603 .text.HAL_I2C_Master_Abort_IT:00000080 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9608 .text.HAL_I2C_EV_IRQHandler:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9614 .text.HAL_I2C_EV_IRQHandler:00000000 HAL_I2C_EV_IRQHandler
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9651 .text.HAL_I2C_MasterTxCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9657 .text.HAL_I2C_MasterTxCpltCallback:00000000 HAL_I2C_MasterTxCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9672 .text.HAL_I2C_MasterRxCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9678 .text.HAL_I2C_MasterRxCpltCallback:00000000 HAL_I2C_MasterRxCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9693 .text.I2C_ITMasterSeqCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9698 .text.I2C_ITMasterSeqCplt:00000000 I2C_ITMasterSeqCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9782 .text.HAL_I2C_SlaveTxCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9788 .text.HAL_I2C_SlaveTxCpltCallback:00000000 HAL_I2C_SlaveTxCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9803 .text.HAL_I2C_SlaveRxCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9809 .text.HAL_I2C_SlaveRxCpltCallback:00000000 HAL_I2C_SlaveRxCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9824 .text.I2C_ITSlaveSeqCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9829 .text.I2C_ITSlaveSeqCplt:00000000 I2C_ITSlaveSeqCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:9956 .text.I2C_DMASlaveTransmitCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10007 .text.I2C_DMASlaveReceiveCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10067 .text.HAL_I2C_AddrCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10073 .text.HAL_I2C_AddrCallback:00000000 HAL_I2C_AddrCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10090 .text.I2C_ITAddrCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10095 .text.I2C_ITAddrCplt:00000000 I2C_ITAddrCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10254 .text.HAL_I2C_ListenCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10260 .text.HAL_I2C_ListenCpltCallback:00000000 HAL_I2C_ListenCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10275 .text.I2C_ITListenCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10280 .text.I2C_ITListenCplt:00000000 I2C_ITListenCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10383 .text.I2C_ITListenCplt:00000064 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10388 .text.HAL_I2C_MemTxCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10394 .text.HAL_I2C_MemTxCpltCallback:00000000 HAL_I2C_MemTxCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10409 .text.HAL_I2C_MemRxCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10415 .text.HAL_I2C_MemRxCpltCallback:00000000 HAL_I2C_MemRxCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10430 .text.HAL_I2C_ErrorCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10436 .text.HAL_I2C_ErrorCallback:00000000 HAL_I2C_ErrorCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10451 .text.HAL_I2C_AbortCpltCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10457 .text.HAL_I2C_AbortCpltCallback:00000000 HAL_I2C_AbortCpltCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10472 .text.I2C_TreatErrorCallback:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10477 .text.I2C_TreatErrorCallback:00000000 I2C_TreatErrorCallback
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10533 .text.I2C_ITError:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10538 .text.I2C_ITError:00000000 I2C_ITError
ARM GAS C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s page 458
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10815 .text.I2C_ITError:00000124 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10822 .text.I2C_ITSlaveCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:10827 .text.I2C_ITSlaveCplt:00000000 I2C_ITSlaveCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11146 .text.I2C_ITSlaveCplt:00000164 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11151 .text.I2C_Slave_ISR_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11446 .text.I2C_ITMasterCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11451 .text.I2C_ITMasterCplt:00000000 I2C_ITMasterCplt
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:11719 .text.I2C_Master_ISR_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12094 .text.I2C_Mem_ISR_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12450 .text.I2C_Mem_ISR_DMA:0000018c $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12456 .text.I2C_Slave_ISR_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12597 .text.I2C_Slave_ISR_DMA:0000008e $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12608 .text.I2C_Slave_ISR_DMA:00000098 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:12736 .text.I2C_Master_ISR_DMA:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13049 .text.I2C_DMAError:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13088 .text.I2C_DMAMasterTransmitCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13195 .text.I2C_DMAMasterReceiveCplt:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13302 .text.I2C_Mem_ISR_IT:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13680 .text.I2C_Mem_ISR_IT:00000180 $d
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13686 .text.HAL_I2C_ER_IRQHandler:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13692 .text.HAL_I2C_ER_IRQHandler:00000000 HAL_I2C_ER_IRQHandler
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13792 .text.I2C_DMAAbort:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13842 .text.HAL_I2C_GetState:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13848 .text.HAL_I2C_GetState:00000000 HAL_I2C_GetState
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13866 .text.HAL_I2C_GetMode:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13872 .text.HAL_I2C_GetMode:00000000 HAL_I2C_GetMode
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13890 .text.HAL_I2C_GetError:00000000 $t
C:\Users\nived\AppData\Local\Temp\ccaiYNo2.s:13896 .text.HAL_I2C_GetError:00000000 HAL_I2C_GetError
UNDEFINED SYMBOLS
HAL_GetTick
HAL_DMA_Start_IT
HAL_DMA_Abort_IT
HAL_DMA_GetState