13798 lines
744 KiB
Plaintext
13798 lines
744 KiB
Plaintext
ARM GAS /tmp/ccs34gJO.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, 6
|
||
13 .eabi_attribute 34, 1
|
||
14 .eabi_attribute 18, 4
|
||
15 .file "stm32f3xx_hal_spi.c"
|
||
16 .text
|
||
17 .Ltext0:
|
||
18 .cfi_sections .debug_frame
|
||
19 .file 1 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c"
|
||
20 .section .text.HAL_SPI_Init,"ax",%progbits
|
||
21 .align 1
|
||
22 .global HAL_SPI_Init
|
||
23 .syntax unified
|
||
24 .thumb
|
||
25 .thumb_func
|
||
27 HAL_SPI_Init:
|
||
28 .LFB130:
|
||
1:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ******************************************************************************
|
||
3:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @file stm32f3xx_hal_spi.c
|
||
4:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @author MCD Application Team
|
||
5:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief SPI HAL module driver.
|
||
6:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * This file provides firmware functions to manage the following
|
||
7:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * functionalities of the Serial Peripheral Interface (SPI) peripheral:
|
||
8:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * + Initialization and de-initialization functions
|
||
9:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * + IO operation functions
|
||
10:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * + Peripheral Control functions
|
||
11:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * + Peripheral State functions
|
||
12:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ******************************************************************************
|
||
13:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @attention
|
||
14:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *
|
||
15:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * Copyright (c) 2016 STMicroelectronics.
|
||
16:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * All rights reserved.
|
||
17:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *
|
||
18:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * This software is licensed under terms that can be found in the LICENSE file
|
||
19:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * in the root directory of this software component.
|
||
20:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
|
||
21:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *
|
||
22:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ******************************************************************************
|
||
23:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @verbatim
|
||
24:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ==============================================================================
|
||
25:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ##### How to use this driver #####
|
||
26:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ==============================================================================
|
||
27:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
28:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** The SPI HAL driver can be used as follows:
|
||
29:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
30:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) Declare a SPI_HandleTypeDef handle structure, for example:
|
||
ARM GAS /tmp/ccs34gJO.s page 2
|
||
|
||
|
||
31:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef hspi;
|
||
32:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
33:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#)Initialize the SPI low level resources by implementing the HAL_SPI_MspInit() API:
|
||
34:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) Enable the SPIx interface clock
|
||
35:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) SPI pins configuration
|
||
36:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Enable the clock for the SPI GPIOs
|
||
37:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Configure these SPI pins as alternate function push-pull
|
||
38:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) NVIC configuration if you need to use interrupt process
|
||
39:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Configure the SPIx interrupt priority
|
||
40:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Enable the NVIC SPI IRQ handle
|
||
41:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) DMA Configuration if you need to use DMA process
|
||
42:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Declare a DMA_HandleTypeDef handle structure for the transmit or receive Stream
|
||
43:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Enable the DMAx clock
|
||
44:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Configure the DMA handle parameters
|
||
45:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Configure the DMA Tx or Rx Stream/Channel
|
||
46:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Associate the initialized hdma_tx(or _rx) handle to the hspi DMA Tx or Rx hand
|
||
47:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+++) Configure the priority and enable the NVIC for the transfer complete interrupt
|
||
48:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
49:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) Program the Mode, BidirectionalMode , Data size, Baudrate Prescaler, NSS
|
||
50:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** management, Clock polarity and phase, FirstBit and CRC configuration in the hspi Init str
|
||
51:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
52:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) Initialize the SPI registers by calling the HAL_SPI_Init() API:
|
||
53:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) This API configures also the low level Hardware GPIO, CLOCK, CORTEX...etc)
|
||
54:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** by calling the customized HAL_SPI_MspInit() API.
|
||
55:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
56:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Circular mode restriction:
|
||
57:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) The DMA circular mode cannot be used when the SPI is configured in these modes:
|
||
58:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) Master 2Lines RxOnly
|
||
59:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) Master 1Line Rx
|
||
60:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) The CRC feature is not managed when the DMA circular mode is enabled
|
||
61:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) When the SPI DMA Pause/Stop features are used, we must use the following APIs
|
||
62:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_DMAPause()/ HAL_SPI_DMAStop() only under the SPI callbacks
|
||
63:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
64:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Master Receive mode restriction:
|
||
65:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) In Master unidirectional receive-only mode (MSTR =1, BIDIMODE=0, RXONLY=1) or
|
||
66:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** bidirectional receive mode (MSTR=1, BIDIMODE=1, BIDIOE=0), to ensure that the SPI
|
||
67:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** does not initiate a new transfer the following procedure has to be respected:
|
||
68:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) HAL_SPI_DeInit()
|
||
69:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (##) HAL_SPI_Init()
|
||
70:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
71:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Callback registration:
|
||
72:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
73:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) The compilation flag USE_HAL_SPI_REGISTER_CALLBACKS when set to 1U
|
||
74:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** allows the user to configure dynamically the driver callbacks.
|
||
75:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Use Functions HAL_SPI_RegisterCallback() to register an interrupt callback.
|
||
76:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
77:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Function HAL_SPI_RegisterCallback() allows to register following callbacks:
|
||
78:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxCpltCallback : SPI Tx Completed callback
|
||
79:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) RxCpltCallback : SPI Rx Completed callback
|
||
80:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxRxCpltCallback : SPI TxRx Completed callback
|
||
81:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxHalfCpltCallback : SPI Tx Half Completed callback
|
||
82:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) RxHalfCpltCallback : SPI Rx Half Completed callback
|
||
83:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxRxHalfCpltCallback : SPI TxRx Half Completed callback
|
||
84:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) ErrorCallback : SPI Error callback
|
||
85:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) AbortCpltCallback : SPI Abort callback
|
||
86:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) MspInitCallback : SPI Msp Init callback
|
||
87:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) MspDeInitCallback : SPI Msp DeInit callback
|
||
ARM GAS /tmp/ccs34gJO.s page 3
|
||
|
||
|
||
88:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
|
||
89:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and a pointer to the user callback function.
|
||
90:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
91:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
92:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) Use function HAL_SPI_UnRegisterCallback to reset a callback to the default
|
||
93:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** weak function.
|
||
94:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_UnRegisterCallback takes as parameters the HAL peripheral handle,
|
||
95:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and the Callback ID.
|
||
96:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** This function allows to reset following callbacks:
|
||
97:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxCpltCallback : SPI Tx Completed callback
|
||
98:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) RxCpltCallback : SPI Rx Completed callback
|
||
99:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxRxCpltCallback : SPI TxRx Completed callback
|
||
100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxHalfCpltCallback : SPI Tx Half Completed callback
|
||
101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) RxHalfCpltCallback : SPI Rx Half Completed callback
|
||
102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TxRxHalfCpltCallback : SPI TxRx Half Completed callback
|
||
103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) ErrorCallback : SPI Error callback
|
||
104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) AbortCpltCallback : SPI Abort callback
|
||
105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) MspInitCallback : SPI Msp Init callback
|
||
106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) MspDeInitCallback : SPI Msp DeInit callback
|
||
107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** By default, after the HAL_SPI_Init() and when the state is HAL_SPI_STATE_RESET
|
||
110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** all callbacks are set to the corresponding weak functions:
|
||
111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** examples HAL_SPI_MasterTxCpltCallback(), HAL_SPI_MasterRxCpltCallback().
|
||
112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Exception done for MspInit and MspDeInit functions that are
|
||
113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** reset to the legacy weak functions in the HAL_SPI_Init()/ HAL_SPI_DeInit() only when
|
||
114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** these callbacks are null (not registered beforehand).
|
||
115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** If MspInit or MspDeInit are not null, the HAL_SPI_Init()/ HAL_SPI_DeInit()
|
||
116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand) whatever the state
|
||
117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Callbacks can be registered/unregistered in HAL_SPI_STATE_READY state only.
|
||
120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Exception done MspInit/MspDeInit functions that can be registered/unregistered
|
||
121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** in HAL_SPI_STATE_READY or HAL_SPI_STATE_RESET state,
|
||
122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** thus registered (user) MspInit/DeInit callbacks can be used during the Init/DeInit.
|
||
123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Then, the user first registers the MspInit/MspDeInit user callbacks
|
||
124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** using HAL_SPI_RegisterCallback() before calling HAL_SPI_DeInit()
|
||
125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** or HAL_SPI_Init() function.
|
||
126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** When the compilation define USE_HAL_PPP_REGISTER_CALLBACKS is set to 0 or
|
||
129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** not defined, the callback registering feature is not available
|
||
130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and weak (surcharged) callbacks are used.
|
||
131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Using the HAL it is not possible to reach all supported SPI frequency with the different SPI
|
||
134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the following table resume the max SPI frequency reached with data size 8bits/16bits,
|
||
135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** according to frequency of the APBx Peripheral Clock (fPCLK) used by the SPI instance.
|
||
136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @endverbatim
|
||
138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Additional table :
|
||
140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** DataSize = SPI_DATASIZE_8BIT:
|
||
142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** +-------------------------------------------------------------------------------------------
|
||
143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | | 2Lines Fullduplex | 2Lines RxOnly | 1Line
|
||
144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | Process | Transfer mode |---------------------|----------------------|-------------------
|
||
ARM GAS /tmp/ccs34gJO.s page 4
|
||
|
||
|
||
145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | | Master | Slave | Master | Slave | Master | Slave
|
||
146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** |===========================================================================================
|
||
147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | T | Polling | Fpclk/4 | Fpclk/8 | NA | NA | NA | NA
|
||
148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X |----------------|----------|----------|-----------|----------|-----------|-------
|
||
149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | / | Interrupt | Fpclk/4 | Fpclk/16 | NA | NA | NA | NA
|
||
150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | R |----------------|----------|----------|-----------|----------|-----------|-------
|
||
151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X | DMA | Fpclk/2 | Fpclk/2 | NA | NA | NA | NA
|
||
152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** |=========|================|==========|==========|===========|==========|===========|=======
|
||
153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | Polling | Fpclk/4 | Fpclk/8 | Fpclk/16 | Fpclk/8 | Fpclk/8 | Fpclk/
|
||
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | |----------------|----------|----------|-----------|----------|-----------|-------
|
||
155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | R | Interrupt | Fpclk/8 | Fpclk/16 | Fpclk/8 | Fpclk/8 | Fpclk/8 | Fpclk/
|
||
156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X |----------------|----------|----------|-----------|----------|-----------|-------
|
||
157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | DMA | Fpclk/4 | Fpclk/2 | Fpclk/2 | Fpclk/16 | Fpclk/2 | Fpclk/
|
||
158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** |=========|================|==========|==========|===========|==========|===========|=======
|
||
159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | Polling | Fpclk/8 | Fpclk/2 | NA | NA | Fpclk/8 | Fpclk/
|
||
160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | |----------------|----------|----------|-----------|----------|-----------|-------
|
||
161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | T | Interrupt | Fpclk/2 | Fpclk/4 | NA | NA | Fpclk/16 | Fpclk/
|
||
162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X |----------------|----------|----------|-----------|----------|-----------|-------
|
||
163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | DMA | Fpclk/2 | Fpclk/2 | NA | NA | Fpclk/8 | Fpclk/
|
||
164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** +-------------------------------------------------------------------------------------------
|
||
165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** DataSize = SPI_DATASIZE_16BIT:
|
||
167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** +-------------------------------------------------------------------------------------------
|
||
168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | | 2Lines Fullduplex | 2Lines RxOnly | 1Line
|
||
169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | Process | Transfer mode |---------------------|----------------------|-------------------
|
||
170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | | Master | Slave | Master | Slave | Master | Slave
|
||
171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** |===========================================================================================
|
||
172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | T | Polling | Fpclk/4 | Fpclk/8 | NA | NA | NA | NA
|
||
173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X |----------------|----------|----------|-----------|----------|-----------|-------
|
||
174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | / | Interrupt | Fpclk/4 | Fpclk/16 | NA | NA | NA | NA
|
||
175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | R |----------------|----------|----------|-----------|----------|-----------|-------
|
||
176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X | DMA | Fpclk/2 | Fpclk/2 | NA | NA | NA | NA
|
||
177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** |=========|================|==========|==========|===========|==========|===========|=======
|
||
178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | Polling | Fpclk/4 | Fpclk/8 | Fpclk/16 | Fpclk/8 | Fpclk/8 | Fpclk/
|
||
179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | |----------------|----------|----------|-----------|----------|-----------|-------
|
||
180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | R | Interrupt | Fpclk/8 | Fpclk/16 | Fpclk/8 | Fpclk/8 | Fpclk/8 | Fpclk/
|
||
181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X |----------------|----------|----------|-----------|----------|-----------|-------
|
||
182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | DMA | Fpclk/4 | Fpclk/2 | Fpclk/2 | Fpclk/16 | Fpclk/2 | Fpclk/
|
||
183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** |=========|================|==========|==========|===========|==========|===========|=======
|
||
184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | Polling | Fpclk/8 | Fpclk/2 | NA | NA | Fpclk/8 | Fpclk/
|
||
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | |----------------|----------|----------|-----------|----------|-----------|-------
|
||
186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | T | Interrupt | Fpclk/2 | Fpclk/4 | NA | NA | Fpclk/16 | Fpclk/
|
||
187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | X |----------------|----------|----------|-----------|----------|-----------|-------
|
||
188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** | | DMA | Fpclk/2 | Fpclk/2 | NA | NA | Fpclk/8 | Fpclk/
|
||
189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** +-------------------------------------------------------------------------------------------
|
||
190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @note The max SPI frequency depend on SPI data size (4bits, 5bits,..., 8bits,...15bits, 16bi
|
||
191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI mode(2 Lines fullduplex, 2 lines RxOnly, 1 line TX/RX) and Process mode (Polling,
|
||
192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @note
|
||
193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) TX/RX processes are HAL_SPI_TransmitReceive(), HAL_SPI_TransmitReceive_IT() and HAL
|
||
194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) RX processes are HAL_SPI_Receive(), HAL_SPI_Receive_IT() and HAL_SPI_Receive_DMA()
|
||
195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) TX processes are HAL_SPI_Transmit(), HAL_SPI_Transmit_IT() and HAL_SPI_Transmit_DMA
|
||
196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Includes ------------------------------------------------------------------*/
|
||
200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #include "stm32f3xx_hal.h"
|
||
201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 5
|
||
|
||
|
||
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @addtogroup STM32F3xx_HAL_Driver
|
||
203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI SPI
|
||
207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief SPI HAL module driver
|
||
208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #ifdef HAL_SPI_MODULE_ENABLED
|
||
211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Private typedef -----------------------------------------------------------*/
|
||
213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Private defines -----------------------------------------------------------*/
|
||
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI_Private_Constants SPI Private Constants
|
||
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #define SPI_DEFAULT_TIMEOUT 100U
|
||
218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @}
|
||
220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Private macros ------------------------------------------------------------*/
|
||
223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Private variables ---------------------------------------------------------*/
|
||
224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Private function prototypes -----------------------------------------------*/
|
||
225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI_Private_Functions SPI Private Functions
|
||
226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMATransmitCplt(DMA_HandleTypeDef *hdma);
|
||
229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAReceiveCplt(DMA_HandleTypeDef *hdma);
|
||
230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMATransmitReceiveCplt(DMA_HandleTypeDef *hdma);
|
||
231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAHalfTransmitCplt(DMA_HandleTypeDef *hdma);
|
||
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAHalfReceiveCplt(DMA_HandleTypeDef *hdma);
|
||
233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAHalfTransmitReceiveCplt(DMA_HandleTypeDef *hdma);
|
||
234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAError(DMA_HandleTypeDef *hdma);
|
||
235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAAbortOnError(DMA_HandleTypeDef *hdma);
|
||
236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMATxAbortCallback(DMA_HandleTypeDef *hdma);
|
||
237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMARxAbortCallback(DMA_HandleTypeDef *hdma);
|
||
238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_WaitFlagStateUntilTimeout(SPI_HandleTypeDef *hspi, uint32_t Flag, Flag
|
||
239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t Timeout, uint32_t Tickstart);
|
||
240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_WaitFifoStateUntilTimeout(SPI_HandleTypeDef *hspi, uint32_t Fifo, uint
|
||
241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t Timeout, uint32_t Tickstart);
|
||
242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_TxISR_8BIT(struct __SPI_HandleTypeDef *hspi);
|
||
243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_TxISR_16BIT(struct __SPI_HandleTypeDef *hspi);
|
||
244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_8BIT(struct __SPI_HandleTypeDef *hspi);
|
||
245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_16BIT(struct __SPI_HandleTypeDef *hspi);
|
||
246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_8BIT(struct __SPI_HandleTypeDef *hspi);
|
||
247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesTxISR_8BIT(struct __SPI_HandleTypeDef *hspi);
|
||
248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesTxISR_16BIT(struct __SPI_HandleTypeDef *hspi);
|
||
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_16BIT(struct __SPI_HandleTypeDef *hspi);
|
||
250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_8BITCRC(struct __SPI_HandleTypeDef *hspi);
|
||
252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_16BITCRC(struct __SPI_HandleTypeDef *hspi);
|
||
253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_8BITCRC(struct __SPI_HandleTypeDef *hspi);
|
||
254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_16BITCRC(struct __SPI_HandleTypeDef *hspi);
|
||
255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_AbortRx_ISR(SPI_HandleTypeDef *hspi);
|
||
257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_AbortTx_ISR(SPI_HandleTypeDef *hspi);
|
||
258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_CloseRxTx_ISR(SPI_HandleTypeDef *hspi);
|
||
ARM GAS /tmp/ccs34gJO.s page 6
|
||
|
||
|
||
259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_CloseRx_ISR(SPI_HandleTypeDef *hspi);
|
||
260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_CloseTx_ISR(SPI_HandleTypeDef *hspi);
|
||
261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_EndRxTransaction(SPI_HandleTypeDef *hspi, uint32_t Timeout, uint32_t T
|
||
262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_EndRxTxTransaction(SPI_HandleTypeDef *hspi, uint32_t Timeout, uint32_t
|
||
263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @}
|
||
265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Exported functions --------------------------------------------------------*/
|
||
268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI_Exported_Functions SPI Exported Functions
|
||
269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI_Exported_Functions_Group1 Initialization and de-initialization functions
|
||
273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Initialization and Configuration functions
|
||
274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *
|
||
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @verbatim
|
||
276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ===============================================================================
|
||
277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ##### Initialization and de-initialization functions #####
|
||
278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ===============================================================================
|
||
279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..] This subsection provides a set of functions allowing to initialize and
|
||
280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** de-initialize the SPIx peripheral:
|
||
281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+) User must implement HAL_SPI_MspInit() function in which he configures
|
||
283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** all related peripherals resources (CLOCK, GPIO, DMA, IT and NVIC ).
|
||
284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+) Call the function HAL_SPI_Init() to configure the selected device with
|
||
286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the selected configuration:
|
||
287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) Mode
|
||
288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) Direction
|
||
289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) Data Size
|
||
290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) Clock Polarity and Phase
|
||
291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) NSS Management
|
||
292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) BaudRate Prescaler
|
||
293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) FirstBit
|
||
294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) TIMode
|
||
295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) CRC Calculation
|
||
296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) CRC Polynomial if CRC enabled
|
||
297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) CRC Length, used only with Data8 and Data16
|
||
298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) FIFO reception threshold
|
||
299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+) Call the function HAL_SPI_DeInit() to restore the default configuration
|
||
301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** of the selected SPIx peripheral.
|
||
302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @endverbatim
|
||
304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Initialize the SPI according to the specified parameters
|
||
309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * in the SPI_InitTypeDef and initialize the associated handle.
|
||
310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Init(SPI_HandleTypeDef *hspi)
|
||
315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 7
|
||
|
||
|
||
29 .loc 1 315 1
|
||
30 .cfi_startproc
|
||
31 @ args = 0, pretend = 0, frame = 16
|
||
32 @ frame_needed = 1, uses_anonymous_args = 0
|
||
33 0000 80B5 push {r7, lr}
|
||
34 .cfi_def_cfa_offset 8
|
||
35 .cfi_offset 7, -8
|
||
36 .cfi_offset 14, -4
|
||
37 0002 84B0 sub sp, sp, #16
|
||
38 .cfi_def_cfa_offset 24
|
||
39 0004 00AF add r7, sp, #0
|
||
40 .cfi_def_cfa_register 7
|
||
41 0006 7860 str r0, [r7, #4]
|
||
316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t frxth;
|
||
317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the SPI handle allocation */
|
||
319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi == NULL)
|
||
42 .loc 1 319 6
|
||
43 0008 7B68 ldr r3, [r7, #4]
|
||
44 000a 002B cmp r3, #0
|
||
45 000c 01D1 bne .L2
|
||
320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_ERROR;
|
||
46 .loc 1 321 12
|
||
47 000e 0123 movs r3, #1
|
||
48 0010 9DE0 b .L3
|
||
49 .L2:
|
||
322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the parameters */
|
||
325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_ALL_INSTANCE(hspi->Instance));
|
||
326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_MODE(hspi->Init.Mode));
|
||
327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION(hspi->Init.Direction));
|
||
328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DATASIZE(hspi->Init.DataSize));
|
||
329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_NSS(hspi->Init.NSS));
|
||
330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_NSSP(hspi->Init.NSSPMode));
|
||
331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_BAUDRATE_PRESCALER(hspi->Init.BaudRatePrescaler));
|
||
332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_FIRST_BIT(hspi->Init.FirstBit));
|
||
333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_TIMODE(hspi->Init.TIMode));
|
||
334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.TIMode == SPI_TIMODE_DISABLE)
|
||
50 .loc 1 334 17
|
||
51 0012 7B68 ldr r3, [r7, #4]
|
||
52 0014 5B6A ldr r3, [r3, #36]
|
||
53 .loc 1 334 6
|
||
54 0016 002B cmp r3, #0
|
||
55 0018 08D1 bne .L4
|
||
335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_CPOL(hspi->Init.CLKPolarity));
|
||
337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_CPHA(hspi->Init.CLKPhase));
|
||
338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Mode == SPI_MODE_MASTER)
|
||
56 .loc 1 339 19
|
||
57 001a 7B68 ldr r3, [r7, #4]
|
||
58 001c 5B68 ldr r3, [r3, #4]
|
||
59 .loc 1 339 8
|
||
60 001e B3F5827F cmp r3, #260
|
||
61 0022 09D0 beq .L5
|
||
ARM GAS /tmp/ccs34gJO.s page 8
|
||
|
||
|
||
340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_BAUDRATE_PRESCALER(hspi->Init.BaudRatePrescaler));
|
||
342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Baudrate prescaler not use in Motoraola Slave mode. force to default value */
|
||
346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2;
|
||
62 .loc 1 346 36
|
||
63 0024 7B68 ldr r3, [r7, #4]
|
||
64 0026 0022 movs r2, #0
|
||
65 0028 DA61 str r2, [r3, #28]
|
||
66 002a 05E0 b .L5
|
||
67 .L4:
|
||
347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_BAUDRATE_PRESCALER(hspi->Init.BaudRatePrescaler));
|
||
352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Force polarity and phase to TI protocaol requirements */
|
||
354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.CLKPolarity = SPI_POLARITY_LOW;
|
||
68 .loc 1 354 28
|
||
69 002c 7B68 ldr r3, [r7, #4]
|
||
70 002e 0022 movs r2, #0
|
||
71 0030 1A61 str r2, [r3, #16]
|
||
355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.CLKPhase = SPI_PHASE_1EDGE;
|
||
72 .loc 1 355 28
|
||
73 0032 7B68 ldr r3, [r7, #4]
|
||
74 0034 0022 movs r2, #0
|
||
75 0036 5A61 str r2, [r3, #20]
|
||
76 .L5:
|
||
356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_CRC_CALCULATION(hspi->Init.CRCCalculation));
|
||
359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_CRC_POLYNOMIAL(hspi->Init.CRCPolynomial));
|
||
362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_CRC_LENGTH(hspi->Init.CRCLength));
|
||
363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||
77 .loc 1 365 29
|
||
78 0038 7B68 ldr r3, [r7, #4]
|
||
79 003a 0022 movs r2, #0
|
||
80 003c 9A62 str r2, [r3, #40]
|
||
366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State == HAL_SPI_STATE_RESET)
|
||
81 .loc 1 368 11
|
||
82 003e 7B68 ldr r3, [r7, #4]
|
||
83 0040 93F85D30 ldrb r3, [r3, #93]
|
||
84 0044 DBB2 uxtb r3, r3
|
||
85 .loc 1 368 6
|
||
86 0046 002B cmp r3, #0
|
||
87 0048 06D1 bne .L6
|
||
369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Allocate lock resource and initialize it */
|
||
ARM GAS /tmp/ccs34gJO.s page 9
|
||
|
||
|
||
371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Lock = HAL_UNLOCKED;
|
||
88 .loc 1 371 16
|
||
89 004a 7B68 ldr r3, [r7, #4]
|
||
90 004c 0022 movs r2, #0
|
||
91 004e 83F85C20 strb r2, [r3, #92]
|
||
372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init the SPI Callback settings */
|
||
375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxCpltCallback = HAL_SPI_TxCpltCallback; /* Legacy weak TxCpltCallback
|
||
376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxCpltCallback = HAL_SPI_RxCpltCallback; /* Legacy weak RxCpltCallback
|
||
377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxCpltCallback = HAL_SPI_TxRxCpltCallback; /* Legacy weak TxRxCpltCallback
|
||
378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxHalfCpltCallback = HAL_SPI_TxHalfCpltCallback; /* Legacy weak TxHalfCpltCallback
|
||
379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxHalfCpltCallback = HAL_SPI_RxHalfCpltCallback; /* Legacy weak RxHalfCpltCallback
|
||
380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxHalfCpltCallback = HAL_SPI_TxRxHalfCpltCallback; /* Legacy weak TxRxHalfCpltCallback
|
||
381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback = HAL_SPI_ErrorCallback; /* Legacy weak ErrorCallback
|
||
382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->AbortCpltCallback = HAL_SPI_AbortCpltCallback; /* Legacy weak AbortCpltCallback
|
||
383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->MspInitCallback == NULL)
|
||
385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspInitCallback = HAL_SPI_MspInit; /* Legacy weak MspInit */
|
||
387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init the low level hardware : GPIO, CLOCK, NVIC... */
|
||
390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspInitCallback(hspi);
|
||
391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init the low level hardware : GPIO, CLOCK, NVIC... */
|
||
393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_MspInit(hspi);
|
||
92 .loc 1 393 5
|
||
93 0052 7868 ldr r0, [r7, #4]
|
||
94 0054 FFF7FEFF bl HAL_SPI_MspInit
|
||
95 .L6:
|
||
394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY;
|
||
96 .loc 1 397 15
|
||
97 0058 7B68 ldr r3, [r7, #4]
|
||
98 005a 0222 movs r2, #2
|
||
99 005c 83F85D20 strb r2, [r3, #93]
|
||
398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the selected SPI peripheral */
|
||
400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
100 .loc 1 400 3
|
||
101 0060 7B68 ldr r3, [r7, #4]
|
||
102 0062 1B68 ldr r3, [r3]
|
||
103 0064 1A68 ldr r2, [r3]
|
||
104 0066 7B68 ldr r3, [r7, #4]
|
||
105 0068 1B68 ldr r3, [r3]
|
||
106 006a 22F04002 bic r2, r2, #64
|
||
107 006e 1A60 str r2, [r3]
|
||
401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Align by default the rs fifo threshold on the data size */
|
||
403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
108 .loc 1 403 17
|
||
109 0070 7B68 ldr r3, [r7, #4]
|
||
110 0072 DB68 ldr r3, [r3, #12]
|
||
111 .loc 1 403 6
|
||
ARM GAS /tmp/ccs34gJO.s page 10
|
||
|
||
|
||
112 0074 B3F5E06F cmp r3, #1792
|
||
113 0078 02D9 bls .L7
|
||
404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** frxth = SPI_RXFIFO_THRESHOLD_HF;
|
||
114 .loc 1 405 11
|
||
115 007a 0023 movs r3, #0
|
||
116 007c FB60 str r3, [r7, #12]
|
||
117 007e 02E0 b .L8
|
||
118 .L7:
|
||
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** frxth = SPI_RXFIFO_THRESHOLD_QF;
|
||
119 .loc 1 409 11
|
||
120 0080 4FF48053 mov r3, #4096
|
||
121 0084 FB60 str r3, [r7, #12]
|
||
122 .L8:
|
||
410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* CRC calculation is valid only for 16Bit and 8 Bit */
|
||
413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize != SPI_DATASIZE_16BIT) && (hspi->Init.DataSize != SPI_DATASIZE_8BIT))
|
||
123 .loc 1 413 18
|
||
124 0086 7B68 ldr r3, [r7, #4]
|
||
125 0088 DB68 ldr r3, [r3, #12]
|
||
126 .loc 1 413 6
|
||
127 008a B3F5706F cmp r3, #3840
|
||
128 008e 07D0 beq .L9
|
||
129 .loc 1 413 65 discriminator 1
|
||
130 0090 7B68 ldr r3, [r7, #4]
|
||
131 0092 DB68 ldr r3, [r3, #12]
|
||
132 .loc 1 413 51 discriminator 1
|
||
133 0094 B3F5E06F cmp r3, #1792
|
||
134 0098 02D0 beq .L9
|
||
414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* CRC must be disabled */
|
||
416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||
135 .loc 1 416 31
|
||
136 009a 7B68 ldr r3, [r7, #4]
|
||
137 009c 0022 movs r2, #0
|
||
138 009e 9A62 str r2, [r3, #40]
|
||
139 .L9:
|
||
417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*----------------------- SPIx CR1 & CR2 Configuration ---------------------*/
|
||
420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure : SPI Mode, Communication Mode, Clock polarity and phase, NSS management,
|
||
421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Communication speed, First bit and CRC calculation state */
|
||
422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** WRITE_REG(hspi->Instance->CR1, ((hspi->Init.Mode & (SPI_CR1_MSTR | SPI_CR1_SSI)) |
|
||
140 .loc 1 422 3
|
||
141 00a0 7B68 ldr r3, [r7, #4]
|
||
142 00a2 5B68 ldr r3, [r3, #4]
|
||
143 00a4 03F48272 and r2, r3, #260
|
||
144 00a8 7B68 ldr r3, [r7, #4]
|
||
145 00aa 9B68 ldr r3, [r3, #8]
|
||
146 00ac 03F40443 and r3, r3, #33792
|
||
147 00b0 1A43 orrs r2, r2, r3
|
||
148 00b2 7B68 ldr r3, [r7, #4]
|
||
149 00b4 1B69 ldr r3, [r3, #16]
|
||
ARM GAS /tmp/ccs34gJO.s page 11
|
||
|
||
|
||
150 00b6 03F00203 and r3, r3, #2
|
||
151 00ba 1A43 orrs r2, r2, r3
|
||
152 00bc 7B68 ldr r3, [r7, #4]
|
||
153 00be 5B69 ldr r3, [r3, #20]
|
||
154 00c0 03F00103 and r3, r3, #1
|
||
155 00c4 1A43 orrs r2, r2, r3
|
||
156 00c6 7B68 ldr r3, [r7, #4]
|
||
157 00c8 9B69 ldr r3, [r3, #24]
|
||
158 00ca 03F40073 and r3, r3, #512
|
||
159 00ce 1A43 orrs r2, r2, r3
|
||
160 00d0 7B68 ldr r3, [r7, #4]
|
||
161 00d2 DB69 ldr r3, [r3, #28]
|
||
162 00d4 03F03803 and r3, r3, #56
|
||
163 00d8 1A43 orrs r2, r2, r3
|
||
164 00da 7B68 ldr r3, [r7, #4]
|
||
165 00dc 1B6A ldr r3, [r3, #32]
|
||
166 00de 03F08003 and r3, r3, #128
|
||
167 00e2 42EA0301 orr r1, r2, r3
|
||
168 00e6 7B68 ldr r3, [r7, #4]
|
||
169 00e8 9B6A ldr r3, [r3, #40]
|
||
170 00ea 03F40052 and r2, r3, #8192
|
||
171 00ee 7B68 ldr r3, [r7, #4]
|
||
172 00f0 1B68 ldr r3, [r3]
|
||
173 00f2 0A43 orrs r2, r2, r1
|
||
174 00f4 1A60 str r2, [r3]
|
||
423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.Direction & (SPI_CR1_RXONLY | SPI_CR1_BIDIMODE)) |
|
||
424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.CLKPolarity & SPI_CR1_CPOL) |
|
||
425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.CLKPhase & SPI_CR1_CPHA) |
|
||
426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.NSS & SPI_CR1_SSM) |
|
||
427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.BaudRatePrescaler & SPI_CR1_BR_Msk) |
|
||
428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.FirstBit & SPI_CR1_LSBFIRST) |
|
||
429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.CRCCalculation & SPI_CR1_CRCEN)));
|
||
430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*---------------------------- SPIx CRCL Configuration -------------------*/
|
||
432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Align the CRC Length on the data size */
|
||
435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCLength == SPI_CRC_LENGTH_DATASIZE)
|
||
436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* CRC Length aligned on the data size : value set by default */
|
||
438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.CRCLength = SPI_CRC_LENGTH_16BIT;
|
||
441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Init.CRCLength = SPI_CRC_LENGTH_8BIT;
|
||
445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure : CRC Length */
|
||
449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCLength == SPI_CRC_LENGTH_16BIT)
|
||
450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCL);
|
||
452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
ARM GAS /tmp/ccs34gJO.s page 12
|
||
|
||
|
||
455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure : NSS management, TI Mode, NSS Pulse, Data size and Rx Fifo threshold */
|
||
457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** WRITE_REG(hspi->Instance->CR2, (((hspi->Init.NSS >> 16U) & SPI_CR2_SSOE) |
|
||
175 .loc 1 457 3
|
||
176 00f6 7B68 ldr r3, [r7, #4]
|
||
177 00f8 9B69 ldr r3, [r3, #24]
|
||
178 00fa 1B0C lsrs r3, r3, #16
|
||
179 00fc 03F00402 and r2, r3, #4
|
||
180 0100 7B68 ldr r3, [r7, #4]
|
||
181 0102 5B6A ldr r3, [r3, #36]
|
||
182 0104 03F01003 and r3, r3, #16
|
||
183 0108 1A43 orrs r2, r2, r3
|
||
184 010a 7B68 ldr r3, [r7, #4]
|
||
185 010c 5B6B ldr r3, [r3, #52]
|
||
186 010e 03F00803 and r3, r3, #8
|
||
187 0112 1A43 orrs r2, r2, r3
|
||
188 0114 7B68 ldr r3, [r7, #4]
|
||
189 0116 DB68 ldr r3, [r3, #12]
|
||
190 0118 03F47063 and r3, r3, #3840
|
||
191 011c 42EA0301 orr r1, r2, r3
|
||
192 0120 FB68 ldr r3, [r7, #12]
|
||
193 0122 03F48052 and r2, r3, #4096
|
||
194 0126 7B68 ldr r3, [r7, #4]
|
||
195 0128 1B68 ldr r3, [r3]
|
||
196 012a 0A43 orrs r2, r2, r1
|
||
197 012c 5A60 str r2, [r3, #4]
|
||
458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.TIMode & SPI_CR2_FRF) |
|
||
459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.NSSPMode & SPI_CR2_NSSP) |
|
||
460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (hspi->Init.DataSize & SPI_CR2_DS_Msk) |
|
||
461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (frxth & SPI_CR2_FRXTH)));
|
||
462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*---------------------------- SPIx CRCPOLY Configuration ------------------*/
|
||
465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure : CRC Polynomial */
|
||
466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** WRITE_REG(hspi->Instance->CRCPR, (hspi->Init.CRCPolynomial & SPI_CRCPR_CRCPOLY_Msk));
|
||
469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if defined(SPI_I2SCFGR_I2SMOD)
|
||
473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Activate the SPI mode (Make sure that I2SMOD bit in I2SCFGR register is reset) */
|
||
474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->I2SCFGR, SPI_I2SCFGR_I2SMOD);
|
||
198 .loc 1 474 3
|
||
199 012e 7B68 ldr r3, [r7, #4]
|
||
200 0130 1B68 ldr r3, [r3]
|
||
201 0132 DA69 ldr r2, [r3, #28]
|
||
202 0134 7B68 ldr r3, [r7, #4]
|
||
203 0136 1B68 ldr r3, [r3]
|
||
204 0138 22F40062 bic r2, r2, #2048
|
||
205 013c DA61 str r2, [r3, #28]
|
||
475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* SPI_I2SCFGR_I2SMOD */
|
||
476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
206 .loc 1 477 19
|
||
207 013e 7B68 ldr r3, [r7, #4]
|
||
208 0140 0022 movs r2, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 13
|
||
|
||
|
||
209 0142 1A66 str r2, [r3, #96]
|
||
478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
210 .loc 1 478 19
|
||
211 0144 7B68 ldr r3, [r7, #4]
|
||
212 0146 0122 movs r2, #1
|
||
213 0148 83F85D20 strb r2, [r3, #93]
|
||
479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
214 .loc 1 480 10
|
||
215 014c 0023 movs r3, #0
|
||
216 .L3:
|
||
481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
217 .loc 1 481 1
|
||
218 014e 1846 mov r0, r3
|
||
219 0150 1037 adds r7, r7, #16
|
||
220 .cfi_def_cfa_offset 8
|
||
221 0152 BD46 mov sp, r7
|
||
222 .cfi_def_cfa_register 13
|
||
223 @ sp needed
|
||
224 0154 80BD pop {r7, pc}
|
||
225 .cfi_endproc
|
||
226 .LFE130:
|
||
228 .section .text.HAL_SPI_DeInit,"ax",%progbits
|
||
229 .align 1
|
||
230 .global HAL_SPI_DeInit
|
||
231 .syntax unified
|
||
232 .thumb
|
||
233 .thumb_func
|
||
235 HAL_SPI_DeInit:
|
||
236 .LFB131:
|
||
482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief De-Initialize the SPI peripheral.
|
||
485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_DeInit(SPI_HandleTypeDef *hspi)
|
||
490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
237 .loc 1 490 1
|
||
238 .cfi_startproc
|
||
239 @ args = 0, pretend = 0, frame = 8
|
||
240 @ frame_needed = 1, uses_anonymous_args = 0
|
||
241 0000 80B5 push {r7, lr}
|
||
242 .cfi_def_cfa_offset 8
|
||
243 .cfi_offset 7, -8
|
||
244 .cfi_offset 14, -4
|
||
245 0002 82B0 sub sp, sp, #8
|
||
246 .cfi_def_cfa_offset 16
|
||
247 0004 00AF add r7, sp, #0
|
||
248 .cfi_def_cfa_register 7
|
||
249 0006 7860 str r0, [r7, #4]
|
||
491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the SPI handle allocation */
|
||
492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi == NULL)
|
||
250 .loc 1 492 6
|
||
251 0008 7B68 ldr r3, [r7, #4]
|
||
252 000a 002B cmp r3, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 14
|
||
|
||
|
||
253 000c 01D1 bne .L11
|
||
493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_ERROR;
|
||
254 .loc 1 494 12
|
||
255 000e 0123 movs r3, #1
|
||
256 0010 1AE0 b .L12
|
||
257 .L11:
|
||
495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check SPI Instance parameter */
|
||
498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_ALL_INSTANCE(hspi->Instance));
|
||
499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY;
|
||
258 .loc 1 500 15
|
||
259 0012 7B68 ldr r3, [r7, #4]
|
||
260 0014 0222 movs r2, #2
|
||
261 0016 83F85D20 strb r2, [r3, #93]
|
||
501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI Peripheral Clock */
|
||
503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
262 .loc 1 503 3
|
||
263 001a 7B68 ldr r3, [r7, #4]
|
||
264 001c 1B68 ldr r3, [r3]
|
||
265 001e 1A68 ldr r2, [r3]
|
||
266 0020 7B68 ldr r3, [r7, #4]
|
||
267 0022 1B68 ldr r3, [r3]
|
||
268 0024 22F04002 bic r2, r2, #64
|
||
269 0028 1A60 str r2, [r3]
|
||
504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->MspDeInitCallback == NULL)
|
||
507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspDeInitCallback = HAL_SPI_MspDeInit; /* Legacy weak MspDeInit */
|
||
509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DeInit the low level hardware: GPIO, CLOCK, NVIC... */
|
||
512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspDeInitCallback(hspi);
|
||
513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DeInit the low level hardware: GPIO, CLOCK, NVIC... */
|
||
515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_MspDeInit(hspi);
|
||
270 .loc 1 515 3
|
||
271 002a 7868 ldr r0, [r7, #4]
|
||
272 002c FFF7FEFF bl HAL_SPI_MspDeInit
|
||
516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
273 .loc 1 518 19
|
||
274 0030 7B68 ldr r3, [r7, #4]
|
||
275 0032 0022 movs r2, #0
|
||
276 0034 1A66 str r2, [r3, #96]
|
||
519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_RESET;
|
||
277 .loc 1 519 15
|
||
278 0036 7B68 ldr r3, [r7, #4]
|
||
279 0038 0022 movs r2, #0
|
||
280 003a 83F85D20 strb r2, [r3, #93]
|
||
520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Release Lock */
|
||
ARM GAS /tmp/ccs34gJO.s page 15
|
||
|
||
|
||
522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
281 .loc 1 522 3
|
||
282 003e 7B68 ldr r3, [r7, #4]
|
||
283 0040 0022 movs r2, #0
|
||
284 0042 83F85C20 strb r2, [r3, #92]
|
||
523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
285 .loc 1 524 10
|
||
286 0046 0023 movs r3, #0
|
||
287 .L12:
|
||
525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
288 .loc 1 525 1
|
||
289 0048 1846 mov r0, r3
|
||
290 004a 0837 adds r7, r7, #8
|
||
291 .cfi_def_cfa_offset 8
|
||
292 004c BD46 mov sp, r7
|
||
293 .cfi_def_cfa_register 13
|
||
294 @ sp needed
|
||
295 004e 80BD pop {r7, pc}
|
||
296 .cfi_endproc
|
||
297 .LFE131:
|
||
299 .section .text.HAL_SPI_MspInit,"ax",%progbits
|
||
300 .align 1
|
||
301 .weak HAL_SPI_MspInit
|
||
302 .syntax unified
|
||
303 .thumb
|
||
304 .thumb_func
|
||
306 HAL_SPI_MspInit:
|
||
307 .LFB132:
|
||
526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Initialize the SPI MSP.
|
||
529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_MspInit(SPI_HandleTypeDef *hspi)
|
||
534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
308 .loc 1 534 1
|
||
309 .cfi_startproc
|
||
310 @ args = 0, pretend = 0, frame = 8
|
||
311 @ frame_needed = 1, uses_anonymous_args = 0
|
||
312 @ link register save eliminated.
|
||
313 0000 80B4 push {r7}
|
||
314 .cfi_def_cfa_offset 4
|
||
315 .cfi_offset 7, -4
|
||
316 0002 83B0 sub sp, sp, #12
|
||
317 .cfi_def_cfa_offset 16
|
||
318 0004 00AF add r7, sp, #0
|
||
319 .cfi_def_cfa_register 7
|
||
320 0006 7860 str r0, [r7, #4]
|
||
535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_MspInit should be implemented in the user file
|
||
540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
ARM GAS /tmp/ccs34gJO.s page 16
|
||
|
||
|
||
541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
321 .loc 1 541 1
|
||
322 0008 00BF nop
|
||
323 000a 0C37 adds r7, r7, #12
|
||
324 .cfi_def_cfa_offset 4
|
||
325 000c BD46 mov sp, r7
|
||
326 .cfi_def_cfa_register 13
|
||
327 @ sp needed
|
||
328 000e 5DF8047B ldr r7, [sp], #4
|
||
329 .cfi_restore 7
|
||
330 .cfi_def_cfa_offset 0
|
||
331 0012 7047 bx lr
|
||
332 .cfi_endproc
|
||
333 .LFE132:
|
||
335 .section .text.HAL_SPI_MspDeInit,"ax",%progbits
|
||
336 .align 1
|
||
337 .weak HAL_SPI_MspDeInit
|
||
338 .syntax unified
|
||
339 .thumb
|
||
340 .thumb_func
|
||
342 HAL_SPI_MspDeInit:
|
||
343 .LFB133:
|
||
542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief De-Initialize the SPI MSP.
|
||
545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_MspDeInit(SPI_HandleTypeDef *hspi)
|
||
550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
344 .loc 1 550 1
|
||
345 .cfi_startproc
|
||
346 @ args = 0, pretend = 0, frame = 8
|
||
347 @ frame_needed = 1, uses_anonymous_args = 0
|
||
348 @ link register save eliminated.
|
||
349 0000 80B4 push {r7}
|
||
350 .cfi_def_cfa_offset 4
|
||
351 .cfi_offset 7, -4
|
||
352 0002 83B0 sub sp, sp, #12
|
||
353 .cfi_def_cfa_offset 16
|
||
354 0004 00AF add r7, sp, #0
|
||
355 .cfi_def_cfa_register 7
|
||
356 0006 7860 str r0, [r7, #4]
|
||
551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_MspDeInit should be implemented in the user file
|
||
556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
357 .loc 1 557 1
|
||
358 0008 00BF nop
|
||
359 000a 0C37 adds r7, r7, #12
|
||
360 .cfi_def_cfa_offset 4
|
||
361 000c BD46 mov sp, r7
|
||
362 .cfi_def_cfa_register 13
|
||
ARM GAS /tmp/ccs34gJO.s page 17
|
||
|
||
|
||
363 @ sp needed
|
||
364 000e 5DF8047B ldr r7, [sp], #4
|
||
365 .cfi_restore 7
|
||
366 .cfi_def_cfa_offset 0
|
||
367 0012 7047 bx lr
|
||
368 .cfi_endproc
|
||
369 .LFE133:
|
||
371 .section .text.HAL_SPI_Transmit,"ax",%progbits
|
||
372 .align 1
|
||
373 .global HAL_SPI_Transmit
|
||
374 .syntax unified
|
||
375 .thumb
|
||
376 .thumb_func
|
||
378 HAL_SPI_Transmit:
|
||
379 .LFB134:
|
||
558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Register a User SPI Callback
|
||
562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * To be used instead of the weak predefined callback
|
||
563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi Pointer to a SPI_HandleTypeDef structure that contains
|
||
564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified SPI.
|
||
565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param CallbackID ID of the callback to be registered
|
||
566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pCallback pointer to the Callback function
|
||
567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_RegisterCallback(SPI_HandleTypeDef *hspi, HAL_SPI_CallbackIDTypeDef Callb
|
||
570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** pSPI_CallbackTypeDef pCallback)
|
||
571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (pCallback == NULL)
|
||
575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode |= HAL_SPI_ERROR_INVALID_CALLBACK;
|
||
578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_ERROR;
|
||
580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process locked */
|
||
582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_SPI_STATE_READY == hspi->State)
|
||
585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** switch (CallbackID)
|
||
587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_COMPLETE_CB_ID :
|
||
589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxCpltCallback = pCallback;
|
||
590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_RX_COMPLETE_CB_ID :
|
||
593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxCpltCallback = pCallback;
|
||
594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_RX_COMPLETE_CB_ID :
|
||
597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxCpltCallback = pCallback;
|
||
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 18
|
||
|
||
|
||
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_HALF_COMPLETE_CB_ID :
|
||
601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxHalfCpltCallback = pCallback;
|
||
602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_RX_HALF_COMPLETE_CB_ID :
|
||
605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxHalfCpltCallback = pCallback;
|
||
606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_RX_HALF_COMPLETE_CB_ID :
|
||
609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxHalfCpltCallback = pCallback;
|
||
610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_ERROR_CB_ID :
|
||
613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback = pCallback;
|
||
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_ABORT_CB_ID :
|
||
617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->AbortCpltCallback = pCallback;
|
||
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPINIT_CB_ID :
|
||
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspInitCallback = pCallback;
|
||
622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPDEINIT_CB_ID :
|
||
625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspDeInitCallback = pCallback;
|
||
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** default :
|
||
629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_INVALID_CALLBACK);
|
||
631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return error status */
|
||
633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** status = HAL_ERROR;
|
||
634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else if (HAL_SPI_STATE_RESET == hspi->State)
|
||
638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** switch (CallbackID)
|
||
640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPINIT_CB_ID :
|
||
642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspInitCallback = pCallback;
|
||
643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPDEINIT_CB_ID :
|
||
646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspDeInitCallback = pCallback;
|
||
647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** default :
|
||
650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_INVALID_CALLBACK);
|
||
652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return error status */
|
||
654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** status = HAL_ERROR;
|
||
655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 19
|
||
|
||
|
||
657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_INVALID_CALLBACK);
|
||
662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return error status */
|
||
664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** status = HAL_ERROR;
|
||
665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Release Lock */
|
||
668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return status;
|
||
670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Unregister an SPI Callback
|
||
674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * SPI callback is redirected to the weak predefined callback
|
||
675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi Pointer to a SPI_HandleTypeDef structure that contains
|
||
676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified SPI.
|
||
677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param CallbackID ID of the callback to be unregistered
|
||
678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_UnRegisterCallback(SPI_HandleTypeDef *hspi, HAL_SPI_CallbackIDTypeDef Cal
|
||
681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef status = HAL_OK;
|
||
683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process locked */
|
||
685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_SPI_STATE_READY == hspi->State)
|
||
688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** switch (CallbackID)
|
||
690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_COMPLETE_CB_ID :
|
||
692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxCpltCallback = HAL_SPI_TxCpltCallback; /* Legacy weak TxCpltCallback
|
||
693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_RX_COMPLETE_CB_ID :
|
||
696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxCpltCallback = HAL_SPI_RxCpltCallback; /* Legacy weak RxCpltCallback
|
||
697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_RX_COMPLETE_CB_ID :
|
||
700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxCpltCallback = HAL_SPI_TxRxCpltCallback; /* Legacy weak TxRxCpltCallback
|
||
701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_HALF_COMPLETE_CB_ID :
|
||
704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxHalfCpltCallback = HAL_SPI_TxHalfCpltCallback; /* Legacy weak TxHalfCpltCallbac
|
||
705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_RX_HALF_COMPLETE_CB_ID :
|
||
708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxHalfCpltCallback = HAL_SPI_RxHalfCpltCallback; /* Legacy weak RxHalfCpltCallbac
|
||
709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_TX_RX_HALF_COMPLETE_CB_ID :
|
||
712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxHalfCpltCallback = HAL_SPI_TxRxHalfCpltCallback; /* Legacy weak TxRxHalfCpltCallb
|
||
713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
ARM GAS /tmp/ccs34gJO.s page 20
|
||
|
||
|
||
714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_ERROR_CB_ID :
|
||
716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback = HAL_SPI_ErrorCallback; /* Legacy weak ErrorCallback
|
||
717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_ABORT_CB_ID :
|
||
720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->AbortCpltCallback = HAL_SPI_AbortCpltCallback; /* Legacy weak AbortCpltCallback
|
||
721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPINIT_CB_ID :
|
||
724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspInitCallback = HAL_SPI_MspInit; /* Legacy weak MspInit
|
||
725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPDEINIT_CB_ID :
|
||
728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspDeInitCallback = HAL_SPI_MspDeInit; /* Legacy weak MspDeInit
|
||
729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** default :
|
||
732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_INVALID_CALLBACK);
|
||
734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return error status */
|
||
736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** status = HAL_ERROR;
|
||
737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else if (HAL_SPI_STATE_RESET == hspi->State)
|
||
741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** switch (CallbackID)
|
||
743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPINIT_CB_ID :
|
||
745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspInitCallback = HAL_SPI_MspInit; /* Legacy weak MspInit
|
||
746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** case HAL_SPI_MSPDEINIT_CB_ID :
|
||
749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->MspDeInitCallback = HAL_SPI_MspDeInit; /* Legacy weak MspDeInit
|
||
750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** default :
|
||
753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_INVALID_CALLBACK);
|
||
755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return error status */
|
||
757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** status = HAL_ERROR;
|
||
758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update the error code */
|
||
764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_INVALID_CALLBACK);
|
||
765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return error status */
|
||
767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** status = HAL_ERROR;
|
||
768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Release Lock */
|
||
ARM GAS /tmp/ccs34gJO.s page 21
|
||
|
||
|
||
771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return status;
|
||
773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @}
|
||
777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI_Exported_Functions_Group2 IO operation functions
|
||
780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Data transfers functions
|
||
781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *
|
||
782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @verbatim
|
||
783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ==============================================================================
|
||
784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ##### IO operation functions #####
|
||
785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ===============================================================================
|
||
786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** This subsection provides a set of functions allowing to manage the SPI
|
||
788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** data transfers.
|
||
789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..] The SPI supports master and slave mode :
|
||
791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) There are two modes of transfer:
|
||
793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) Blocking mode: The communication is performed in polling mode.
|
||
794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** The HAL status of all data processing is returned by the same function
|
||
795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** after finishing transfer.
|
||
796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (++) No-Blocking mode: The communication is performed using Interrupts
|
||
797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** or DMA, These APIs return the HAL status.
|
||
798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** The end of the data processing will be indicated through the
|
||
799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** dedicated SPI IRQ when using Interrupt mode or the DMA IRQ when
|
||
800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** using DMA mode.
|
||
801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** The HAL_SPI_TxCpltCallback(), HAL_SPI_RxCpltCallback() and HAL_SPI_TxRxCpltCallback() u
|
||
802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** will be executed respectively at the end of the transmit or Receive process
|
||
803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** The HAL_SPI_ErrorCallback()user callback will be executed when a communication error is
|
||
804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (#) APIs provided for these 2 transfer modes (Blocking mode or Non blocking mode using either I
|
||
806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** exist for 1Line (simplex) and 2Lines (full duplex) modes.
|
||
807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @endverbatim
|
||
809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Transmit an amount of data in blocking mode.
|
||
814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pData pointer to data buffer
|
||
817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent
|
||
818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Transmit(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size, uint32_t
|
||
822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
380 .loc 1 822 1
|
||
381 .cfi_startproc
|
||
382 @ args = 0, pretend = 0, frame = 32
|
||
383 @ frame_needed = 1, uses_anonymous_args = 0
|
||
384 0000 80B5 push {r7, lr}
|
||
ARM GAS /tmp/ccs34gJO.s page 22
|
||
|
||
|
||
385 .cfi_def_cfa_offset 8
|
||
386 .cfi_offset 7, -8
|
||
387 .cfi_offset 14, -4
|
||
388 0002 88B0 sub sp, sp, #32
|
||
389 .cfi_def_cfa_offset 40
|
||
390 0004 00AF add r7, sp, #0
|
||
391 .cfi_def_cfa_register 7
|
||
392 0006 F860 str r0, [r7, #12]
|
||
393 0008 B960 str r1, [r7, #8]
|
||
394 000a 3B60 str r3, [r7]
|
||
395 000c 1346 mov r3, r2 @ movhi
|
||
396 000e FB80 strh r3, [r7, #6] @ movhi
|
||
823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
397 .loc 1 824 21
|
||
398 0010 0023 movs r3, #0
|
||
399 0012 FB77 strb r3, [r7, #31]
|
||
825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint16_t initial_TxXferCount;
|
||
826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check Direction parameter */
|
||
828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION_2LINES_OR_1LINE(hspi->Init.Direction));
|
||
829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
400 .loc 1 831 3
|
||
401 0014 FB68 ldr r3, [r7, #12]
|
||
402 0016 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
403 001a 012B cmp r3, #1
|
||
404 001c 01D1 bne .L16
|
||
405 .loc 1 831 3 is_stmt 0 discriminator 1
|
||
406 001e 0223 movs r3, #2
|
||
407 .loc 1 831 3
|
||
408 0020 5FE1 b .L17
|
||
409 .L16:
|
||
410 .loc 1 831 3 discriminator 2
|
||
411 0022 FB68 ldr r3, [r7, #12]
|
||
412 0024 0122 movs r2, #1
|
||
413 0026 83F85C20 strb r2, [r3, #92]
|
||
832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
414 .loc 1 834 15 is_stmt 1
|
||
415 002a FFF7FEFF bl HAL_GetTick
|
||
416 002e B861 str r0, [r7, #24]
|
||
835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** initial_TxXferCount = Size;
|
||
417 .loc 1 835 23
|
||
418 0030 FB88 ldrh r3, [r7, #6] @ movhi
|
||
419 0032 FB82 strh r3, [r7, #22] @ movhi
|
||
836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_READY)
|
||
420 .loc 1 837 11
|
||
421 0034 FB68 ldr r3, [r7, #12]
|
||
422 0036 93F85D30 ldrb r3, [r3, #93]
|
||
423 003a DBB2 uxtb r3, r3
|
||
424 .loc 1 837 6
|
||
425 003c 012B cmp r3, #1
|
||
426 003e 02D0 beq .L18
|
||
ARM GAS /tmp/ccs34gJO.s page 23
|
||
|
||
|
||
838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
427 .loc 1 839 15
|
||
428 0040 0223 movs r3, #2
|
||
429 0042 FB77 strb r3, [r7, #31]
|
||
840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
430 .loc 1 840 5
|
||
431 0044 48E1 b .L19
|
||
432 .L18:
|
||
841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pData == NULL) || (Size == 0U))
|
||
433 .loc 1 843 6
|
||
434 0046 BB68 ldr r3, [r7, #8]
|
||
435 0048 002B cmp r3, #0
|
||
436 004a 02D0 beq .L20
|
||
437 .loc 1 843 23 discriminator 1
|
||
438 004c FB88 ldrh r3, [r7, #6]
|
||
439 004e 002B cmp r3, #0
|
||
440 0050 02D1 bne .L21
|
||
441 .L20:
|
||
844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
442 .loc 1 845 15
|
||
443 0052 0123 movs r3, #1
|
||
444 0054 FB77 strb r3, [r7, #31]
|
||
846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
445 .loc 1 846 5
|
||
446 0056 3FE1 b .L19
|
||
447 .L21:
|
||
847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_TX;
|
||
448 .loc 1 850 21
|
||
449 0058 FB68 ldr r3, [r7, #12]
|
||
450 005a 0322 movs r2, #3
|
||
451 005c 83F85D20 strb r2, [r3, #93]
|
||
851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
452 .loc 1 851 21
|
||
453 0060 FB68 ldr r3, [r7, #12]
|
||
454 0062 0022 movs r2, #0
|
||
455 0064 1A66 str r2, [r3, #96]
|
||
852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)pData;
|
||
456 .loc 1 852 21
|
||
457 0066 FB68 ldr r3, [r7, #12]
|
||
458 0068 BA68 ldr r2, [r7, #8]
|
||
459 006a 9A63 str r2, [r3, #56]
|
||
853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = Size;
|
||
460 .loc 1 853 21
|
||
461 006c FB68 ldr r3, [r7, #12]
|
||
462 006e FA88 ldrh r2, [r7, #6] @ movhi
|
||
463 0070 9A87 strh r2, [r3, #60] @ movhi
|
||
854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = Size;
|
||
464 .loc 1 854 21
|
||
465 0072 FB68 ldr r3, [r7, #12]
|
||
466 0074 FA88 ldrh r2, [r7, #6] @ movhi
|
||
ARM GAS /tmp/ccs34gJO.s page 24
|
||
|
||
|
||
467 0076 DA87 strh r2, [r3, #62] @ movhi
|
||
855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*Init field not used in handle to zero */
|
||
857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)NULL;
|
||
468 .loc 1 857 21
|
||
469 0078 FB68 ldr r3, [r7, #12]
|
||
470 007a 0022 movs r2, #0
|
||
471 007c 1A64 str r2, [r3, #64]
|
||
858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = 0U;
|
||
472 .loc 1 858 21
|
||
473 007e FB68 ldr r3, [r7, #12]
|
||
474 0080 0022 movs r2, #0
|
||
475 0082 A3F84420 strh r2, [r3, #68] @ movhi
|
||
859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
476 .loc 1 859 21
|
||
477 0086 FB68 ldr r3, [r7, #12]
|
||
478 0088 0022 movs r2, #0
|
||
479 008a A3F84620 strh r2, [r3, #70] @ movhi
|
||
860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
480 .loc 1 860 21
|
||
481 008e FB68 ldr r3, [r7, #12]
|
||
482 0090 0022 movs r2, #0
|
||
483 0092 1A65 str r2, [r3, #80]
|
||
861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
484 .loc 1 861 21
|
||
485 0094 FB68 ldr r3, [r7, #12]
|
||
486 0096 0022 movs r2, #0
|
||
487 0098 DA64 str r2, [r3, #76]
|
||
862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure communication direction : 1Line */
|
||
864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
488 .loc 1 864 17
|
||
489 009a FB68 ldr r3, [r7, #12]
|
||
490 009c 9B68 ldr r3, [r3, #8]
|
||
491 .loc 1 864 6
|
||
492 009e B3F5004F cmp r3, #32768
|
||
493 00a2 0FD1 bne .L22
|
||
865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral before set 1Line direction (BIDIOE bit) */
|
||
867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
494 .loc 1 867 5
|
||
495 00a4 FB68 ldr r3, [r7, #12]
|
||
496 00a6 1B68 ldr r3, [r3]
|
||
497 00a8 1A68 ldr r2, [r3]
|
||
498 00aa FB68 ldr r3, [r7, #12]
|
||
499 00ac 1B68 ldr r3, [r3]
|
||
500 00ae 22F04002 bic r2, r2, #64
|
||
501 00b2 1A60 str r2, [r3]
|
||
868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_1LINE_TX(hspi);
|
||
502 .loc 1 868 5
|
||
503 00b4 FB68 ldr r3, [r7, #12]
|
||
504 00b6 1B68 ldr r3, [r3]
|
||
505 00b8 1A68 ldr r2, [r3]
|
||
506 00ba FB68 ldr r3, [r7, #12]
|
||
507 00bc 1B68 ldr r3, [r3]
|
||
508 00be 42F48042 orr r2, r2, #16384
|
||
509 00c2 1A60 str r2, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 25
|
||
|
||
|
||
510 .L22:
|
||
869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
511 .loc 1 880 12
|
||
512 00c4 FB68 ldr r3, [r7, #12]
|
||
513 00c6 1B68 ldr r3, [r3]
|
||
514 .loc 1 880 22
|
||
515 00c8 1B68 ldr r3, [r3]
|
||
516 .loc 1 880 28
|
||
517 00ca 03F04003 and r3, r3, #64
|
||
518 .loc 1 880 6
|
||
519 00ce 402B cmp r3, #64
|
||
520 00d0 07D0 beq .L23
|
||
881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
521 .loc 1 883 5
|
||
522 00d2 FB68 ldr r3, [r7, #12]
|
||
523 00d4 1B68 ldr r3, [r3]
|
||
524 00d6 1A68 ldr r2, [r3]
|
||
525 00d8 FB68 ldr r3, [r7, #12]
|
||
526 00da 1B68 ldr r3, [r3]
|
||
527 00dc 42F04002 orr r2, r2, #64
|
||
528 00e0 1A60 str r2, [r3]
|
||
529 .L23:
|
||
884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in 16 Bit mode */
|
||
887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
530 .loc 1 887 17
|
||
531 00e2 FB68 ldr r3, [r7, #12]
|
||
532 00e4 DB68 ldr r3, [r3, #12]
|
||
533 .loc 1 887 6
|
||
534 00e6 B3F5E06F cmp r3, #1792
|
||
535 00ea 4FD9 bls .L24
|
||
888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_SLAVE) || (initial_TxXferCount == 0x01U))
|
||
536 .loc 1 889 20
|
||
537 00ec FB68 ldr r3, [r7, #12]
|
||
538 00ee 5B68 ldr r3, [r3, #4]
|
||
539 .loc 1 889 8
|
||
540 00f0 002B cmp r3, #0
|
||
541 00f2 02D0 beq .L25
|
||
542 .loc 1 889 45 discriminator 1
|
||
543 00f4 FB8A ldrh r3, [r7, #22]
|
||
544 00f6 012B cmp r3, #1
|
||
545 00f8 42D1 bne .L27
|
||
ARM GAS /tmp/ccs34gJO.s page 26
|
||
|
||
|
||
546 .L25:
|
||
890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
547 .loc 1 891 46
|
||
548 00fa FB68 ldr r3, [r7, #12]
|
||
549 00fc 9B6B ldr r3, [r3, #56]
|
||
550 .loc 1 891 28
|
||
551 00fe 1A88 ldrh r2, [r3]
|
||
552 .loc 1 891 11
|
||
553 0100 FB68 ldr r3, [r7, #12]
|
||
554 0102 1B68 ldr r3, [r3]
|
||
555 .loc 1 891 26
|
||
556 0104 DA60 str r2, [r3, #12]
|
||
892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
557 .loc 1 892 11
|
||
558 0106 FB68 ldr r3, [r7, #12]
|
||
559 0108 9B6B ldr r3, [r3, #56]
|
||
560 .loc 1 892 24
|
||
561 010a 9A1C adds r2, r3, #2
|
||
562 010c FB68 ldr r3, [r7, #12]
|
||
563 010e 9A63 str r2, [r3, #56]
|
||
893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
564 .loc 1 893 11
|
||
565 0110 FB68 ldr r3, [r7, #12]
|
||
566 0112 DB8F ldrh r3, [r3, #62] @ movhi
|
||
567 0114 9BB2 uxth r3, r3
|
||
568 .loc 1 893 24
|
||
569 0116 013B subs r3, r3, #1
|
||
570 0118 9AB2 uxth r2, r3
|
||
571 011a FB68 ldr r3, [r7, #12]
|
||
572 011c DA87 strh r2, [r3, #62] @ movhi
|
||
894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in 16 Bit mode */
|
||
896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while (hspi->TxXferCount > 0U)
|
||
573 .loc 1 896 11
|
||
574 011e 2FE0 b .L27
|
||
575 .L32:
|
||
897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait until TXE flag is set to send data */
|
||
899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXE))
|
||
576 .loc 1 899 11
|
||
577 0120 FB68 ldr r3, [r7, #12]
|
||
578 0122 1B68 ldr r3, [r3]
|
||
579 0124 9B68 ldr r3, [r3, #8]
|
||
580 0126 03F00203 and r3, r3, #2
|
||
581 .loc 1 899 10
|
||
582 012a 022B cmp r3, #2
|
||
583 012c 12D1 bne .L28
|
||
900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
584 .loc 1 901 48
|
||
585 012e FB68 ldr r3, [r7, #12]
|
||
586 0130 9B6B ldr r3, [r3, #56]
|
||
587 .loc 1 901 30
|
||
588 0132 1A88 ldrh r2, [r3]
|
||
589 .loc 1 901 13
|
||
590 0134 FB68 ldr r3, [r7, #12]
|
||
ARM GAS /tmp/ccs34gJO.s page 27
|
||
|
||
|
||
591 0136 1B68 ldr r3, [r3]
|
||
592 .loc 1 901 28
|
||
593 0138 DA60 str r2, [r3, #12]
|
||
902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
594 .loc 1 902 13
|
||
595 013a FB68 ldr r3, [r7, #12]
|
||
596 013c 9B6B ldr r3, [r3, #56]
|
||
597 .loc 1 902 26
|
||
598 013e 9A1C adds r2, r3, #2
|
||
599 0140 FB68 ldr r3, [r7, #12]
|
||
600 0142 9A63 str r2, [r3, #56]
|
||
903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
601 .loc 1 903 13
|
||
602 0144 FB68 ldr r3, [r7, #12]
|
||
603 0146 DB8F ldrh r3, [r3, #62] @ movhi
|
||
604 0148 9BB2 uxth r3, r3
|
||
605 .loc 1 903 26
|
||
606 014a 013B subs r3, r3, #1
|
||
607 014c 9AB2 uxth r2, r3
|
||
608 014e FB68 ldr r3, [r7, #12]
|
||
609 0150 DA87 strh r2, [r3, #62] @ movhi
|
||
610 0152 15E0 b .L27
|
||
611 .L28:
|
||
904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Timeout management */
|
||
908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout =
|
||
612 .loc 1 908 16
|
||
613 0154 FFF7FEFF bl HAL_GetTick
|
||
614 0158 0246 mov r2, r0
|
||
615 .loc 1 908 30 discriminator 1
|
||
616 015a BB69 ldr r3, [r7, #24]
|
||
617 015c D31A subs r3, r2, r3
|
||
618 .loc 1 908 12 discriminator 1
|
||
619 015e 3A68 ldr r2, [r7]
|
||
620 0160 9A42 cmp r2, r3
|
||
621 0162 03D8 bhi .L30
|
||
622 .loc 1 908 56 discriminator 1
|
||
623 0164 3B68 ldr r3, [r7]
|
||
624 0166 B3F1FF3F cmp r3, #-1
|
||
625 016a 02D1 bne .L31
|
||
626 .L30:
|
||
627 .loc 1 908 87 discriminator 3
|
||
628 016c 3B68 ldr r3, [r7]
|
||
629 016e 002B cmp r3, #0
|
||
630 0170 06D1 bne .L27
|
||
631 .L31:
|
||
909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
632 .loc 1 910 21
|
||
633 0172 0323 movs r3, #3
|
||
634 0174 FB77 strb r3, [r7, #31]
|
||
911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
635 .loc 1 911 23
|
||
636 0176 FB68 ldr r3, [r7, #12]
|
||
637 0178 0122 movs r2, #1
|
||
ARM GAS /tmp/ccs34gJO.s page 28
|
||
|
||
|
||
638 017a 83F85D20 strb r2, [r3, #93]
|
||
912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
639 .loc 1 912 11
|
||
640 017e ABE0 b .L19
|
||
641 .L27:
|
||
896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
642 .loc 1 896 16
|
||
643 0180 FB68 ldr r3, [r7, #12]
|
||
644 0182 DB8F ldrh r3, [r3, #62] @ movhi
|
||
645 0184 9BB2 uxth r3, r3
|
||
896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
646 .loc 1 896 30
|
||
647 0186 002B cmp r3, #0
|
||
648 0188 CAD1 bne .L32
|
||
649 018a 80E0 b .L33
|
||
650 .L24:
|
||
913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in 8 Bit mode */
|
||
918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_SLAVE) || (initial_TxXferCount == 0x01U))
|
||
651 .loc 1 920 20
|
||
652 018c FB68 ldr r3, [r7, #12]
|
||
653 018e 5B68 ldr r3, [r3, #4]
|
||
654 .loc 1 920 8
|
||
655 0190 002B cmp r3, #0
|
||
656 0192 02D0 beq .L34
|
||
657 .loc 1 920 45 discriminator 1
|
||
658 0194 FB8A ldrh r3, [r7, #22]
|
||
659 0196 012B cmp r3, #1
|
||
660 0198 74D1 bne .L37
|
||
661 .L34:
|
||
921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount > 1U)
|
||
662 .loc 1 922 15
|
||
663 019a FB68 ldr r3, [r7, #12]
|
||
664 019c DB8F ldrh r3, [r3, #62] @ movhi
|
||
665 019e 9BB2 uxth r3, r3
|
||
666 .loc 1 922 10
|
||
667 01a0 012B cmp r3, #1
|
||
668 01a2 12D9 bls .L36
|
||
923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* write on the data register in packing mode */
|
||
925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
669 .loc 1 925 48
|
||
670 01a4 FB68 ldr r3, [r7, #12]
|
||
671 01a6 9B6B ldr r3, [r3, #56]
|
||
672 .loc 1 925 30
|
||
673 01a8 1A88 ldrh r2, [r3]
|
||
674 .loc 1 925 13
|
||
675 01aa FB68 ldr r3, [r7, #12]
|
||
676 01ac 1B68 ldr r3, [r3]
|
||
677 .loc 1 925 28
|
||
678 01ae DA60 str r2, [r3, #12]
|
||
ARM GAS /tmp/ccs34gJO.s page 29
|
||
|
||
|
||
926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
679 .loc 1 926 13
|
||
680 01b0 FB68 ldr r3, [r7, #12]
|
||
681 01b2 9B6B ldr r3, [r3, #56]
|
||
682 .loc 1 926 26
|
||
683 01b4 9A1C adds r2, r3, #2
|
||
684 01b6 FB68 ldr r3, [r7, #12]
|
||
685 01b8 9A63 str r2, [r3, #56]
|
||
927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount -= 2U;
|
||
686 .loc 1 927 13
|
||
687 01ba FB68 ldr r3, [r7, #12]
|
||
688 01bc DB8F ldrh r3, [r3, #62] @ movhi
|
||
689 01be 9BB2 uxth r3, r3
|
||
690 .loc 1 927 27
|
||
691 01c0 023B subs r3, r3, #2
|
||
692 01c2 9AB2 uxth r2, r3
|
||
693 01c4 FB68 ldr r3, [r7, #12]
|
||
694 01c6 DA87 strh r2, [r3, #62] @ movhi
|
||
695 01c8 5CE0 b .L37
|
||
696 .L36:
|
||
928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((__IO uint8_t *)&hspi->Instance->DR) = (*hspi->pTxBuffPtr);
|
||
697 .loc 1 931 56
|
||
698 01ca FB68 ldr r3, [r7, #12]
|
||
699 01cc 9A6B ldr r2, [r3, #56]
|
||
700 .loc 1 931 32
|
||
701 01ce FB68 ldr r3, [r7, #12]
|
||
702 01d0 1B68 ldr r3, [r3]
|
||
703 .loc 1 931 27
|
||
704 01d2 0C33 adds r3, r3, #12
|
||
705 .loc 1 931 51
|
||
706 01d4 1278 ldrb r2, [r2] @ zero_extendqisi2
|
||
707 .loc 1 931 48
|
||
708 01d6 1A70 strb r2, [r3]
|
||
932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr ++;
|
||
709 .loc 1 932 13
|
||
710 01d8 FB68 ldr r3, [r7, #12]
|
||
711 01da 9B6B ldr r3, [r3, #56]
|
||
712 .loc 1 932 26
|
||
713 01dc 5A1C adds r2, r3, #1
|
||
714 01de FB68 ldr r3, [r7, #12]
|
||
715 01e0 9A63 str r2, [r3, #56]
|
||
933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
716 .loc 1 933 13
|
||
717 01e2 FB68 ldr r3, [r7, #12]
|
||
718 01e4 DB8F ldrh r3, [r3, #62] @ movhi
|
||
719 01e6 9BB2 uxth r3, r3
|
||
720 .loc 1 933 26
|
||
721 01e8 013B subs r3, r3, #1
|
||
722 01ea 9AB2 uxth r2, r3
|
||
723 01ec FB68 ldr r3, [r7, #12]
|
||
724 01ee DA87 strh r2, [r3, #62] @ movhi
|
||
934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while (hspi->TxXferCount > 0U)
|
||
ARM GAS /tmp/ccs34gJO.s page 30
|
||
|
||
|
||
725 .loc 1 936 11
|
||
726 01f0 48E0 b .L37
|
||
727 .L43:
|
||
937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait until TXE flag is set to send data */
|
||
939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXE))
|
||
728 .loc 1 939 11
|
||
729 01f2 FB68 ldr r3, [r7, #12]
|
||
730 01f4 1B68 ldr r3, [r3]
|
||
731 01f6 9B68 ldr r3, [r3, #8]
|
||
732 01f8 03F00203 and r3, r3, #2
|
||
733 .loc 1 939 10
|
||
734 01fc 022B cmp r3, #2
|
||
735 01fe 2BD1 bne .L38
|
||
940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount > 1U)
|
||
736 .loc 1 941 17
|
||
737 0200 FB68 ldr r3, [r7, #12]
|
||
738 0202 DB8F ldrh r3, [r3, #62] @ movhi
|
||
739 0204 9BB2 uxth r3, r3
|
||
740 .loc 1 941 12
|
||
741 0206 012B cmp r3, #1
|
||
742 0208 12D9 bls .L39
|
||
942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* write on the data register in packing mode */
|
||
944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
743 .loc 1 944 50
|
||
744 020a FB68 ldr r3, [r7, #12]
|
||
745 020c 9B6B ldr r3, [r3, #56]
|
||
746 .loc 1 944 32
|
||
747 020e 1A88 ldrh r2, [r3]
|
||
748 .loc 1 944 15
|
||
749 0210 FB68 ldr r3, [r7, #12]
|
||
750 0212 1B68 ldr r3, [r3]
|
||
751 .loc 1 944 30
|
||
752 0214 DA60 str r2, [r3, #12]
|
||
945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
753 .loc 1 945 15
|
||
754 0216 FB68 ldr r3, [r7, #12]
|
||
755 0218 9B6B ldr r3, [r3, #56]
|
||
756 .loc 1 945 28
|
||
757 021a 9A1C adds r2, r3, #2
|
||
758 021c FB68 ldr r3, [r7, #12]
|
||
759 021e 9A63 str r2, [r3, #56]
|
||
946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount -= 2U;
|
||
760 .loc 1 946 15
|
||
761 0220 FB68 ldr r3, [r7, #12]
|
||
762 0222 DB8F ldrh r3, [r3, #62] @ movhi
|
||
763 0224 9BB2 uxth r3, r3
|
||
764 .loc 1 946 29
|
||
765 0226 023B subs r3, r3, #2
|
||
766 0228 9AB2 uxth r2, r3
|
||
767 022a FB68 ldr r3, [r7, #12]
|
||
768 022c DA87 strh r2, [r3, #62] @ movhi
|
||
769 022e 29E0 b .L37
|
||
770 .L39:
|
||
947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 31
|
||
|
||
|
||
948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((__IO uint8_t *)&hspi->Instance->DR) = (*hspi->pTxBuffPtr);
|
||
771 .loc 1 950 58
|
||
772 0230 FB68 ldr r3, [r7, #12]
|
||
773 0232 9A6B ldr r2, [r3, #56]
|
||
774 .loc 1 950 34
|
||
775 0234 FB68 ldr r3, [r7, #12]
|
||
776 0236 1B68 ldr r3, [r3]
|
||
777 .loc 1 950 29
|
||
778 0238 0C33 adds r3, r3, #12
|
||
779 .loc 1 950 53
|
||
780 023a 1278 ldrb r2, [r2] @ zero_extendqisi2
|
||
781 .loc 1 950 50
|
||
782 023c 1A70 strb r2, [r3]
|
||
951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr++;
|
||
783 .loc 1 951 15
|
||
784 023e FB68 ldr r3, [r7, #12]
|
||
785 0240 9B6B ldr r3, [r3, #56]
|
||
786 .loc 1 951 27
|
||
787 0242 5A1C adds r2, r3, #1
|
||
788 0244 FB68 ldr r3, [r7, #12]
|
||
789 0246 9A63 str r2, [r3, #56]
|
||
952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
790 .loc 1 952 15
|
||
791 0248 FB68 ldr r3, [r7, #12]
|
||
792 024a DB8F ldrh r3, [r3, #62] @ movhi
|
||
793 024c 9BB2 uxth r3, r3
|
||
794 .loc 1 952 28
|
||
795 024e 013B subs r3, r3, #1
|
||
796 0250 9AB2 uxth r2, r3
|
||
797 0252 FB68 ldr r3, [r7, #12]
|
||
798 0254 DA87 strh r2, [r3, #62] @ movhi
|
||
799 0256 15E0 b .L37
|
||
800 .L38:
|
||
953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Timeout management */
|
||
958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout =
|
||
801 .loc 1 958 16
|
||
802 0258 FFF7FEFF bl HAL_GetTick
|
||
803 025c 0246 mov r2, r0
|
||
804 .loc 1 958 30 discriminator 1
|
||
805 025e BB69 ldr r3, [r7, #24]
|
||
806 0260 D31A subs r3, r2, r3
|
||
807 .loc 1 958 12 discriminator 1
|
||
808 0262 3A68 ldr r2, [r7]
|
||
809 0264 9A42 cmp r2, r3
|
||
810 0266 03D8 bhi .L41
|
||
811 .loc 1 958 56 discriminator 1
|
||
812 0268 3B68 ldr r3, [r7]
|
||
813 026a B3F1FF3F cmp r3, #-1
|
||
814 026e 02D1 bne .L42
|
||
815 .L41:
|
||
816 .loc 1 958 87 discriminator 3
|
||
ARM GAS /tmp/ccs34gJO.s page 32
|
||
|
||
|
||
817 0270 3B68 ldr r3, [r7]
|
||
818 0272 002B cmp r3, #0
|
||
819 0274 06D1 bne .L37
|
||
820 .L42:
|
||
959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
821 .loc 1 960 21
|
||
822 0276 0323 movs r3, #3
|
||
823 0278 FB77 strb r3, [r7, #31]
|
||
961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
824 .loc 1 961 23
|
||
825 027a FB68 ldr r3, [r7, #12]
|
||
826 027c 0122 movs r2, #1
|
||
827 027e 83F85D20 strb r2, [r3, #93]
|
||
962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
828 .loc 1 962 11
|
||
829 0282 29E0 b .L19
|
||
830 .L37:
|
||
936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
831 .loc 1 936 16
|
||
832 0284 FB68 ldr r3, [r7, #12]
|
||
833 0286 DB8F ldrh r3, [r3, #62] @ movhi
|
||
834 0288 9BB2 uxth r3, r3
|
||
936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
835 .loc 1 936 30
|
||
836 028a 002B cmp r3, #0
|
||
837 028c B1D1 bne .L43
|
||
838 .L33:
|
||
963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, Timeout, tickstart) != HAL_OK)
|
||
839 .loc 1 976 7
|
||
840 028e BA69 ldr r2, [r7, #24]
|
||
841 0290 3968 ldr r1, [r7]
|
||
842 0292 F868 ldr r0, [r7, #12]
|
||
843 0294 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
844 0298 0346 mov r3, r0
|
||
845 .loc 1 976 6 discriminator 1
|
||
846 029a 002B cmp r3, #0
|
||
847 029c 02D0 beq .L44
|
||
977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_FLAG;
|
||
848 .loc 1 978 21
|
||
849 029e FB68 ldr r3, [r7, #12]
|
||
850 02a0 2022 movs r2, #32
|
||
851 02a2 1A66 str r2, [r3, #96]
|
||
ARM GAS /tmp/ccs34gJO.s page 33
|
||
|
||
|
||
852 .L44:
|
||
979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear overrun flag in 2 Lines communication mode because received is not read */
|
||
982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_2LINES)
|
||
853 .loc 1 982 17
|
||
854 02a4 FB68 ldr r3, [r7, #12]
|
||
855 02a6 9B68 ldr r3, [r3, #8]
|
||
856 .loc 1 982 6
|
||
857 02a8 002B cmp r3, #0
|
||
858 02aa 0AD1 bne .L45
|
||
859 .LBB2:
|
||
983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
860 .loc 1 984 5
|
||
861 02ac 0023 movs r3, #0
|
||
862 02ae 3B61 str r3, [r7, #16]
|
||
863 02b0 FB68 ldr r3, [r7, #12]
|
||
864 02b2 1B68 ldr r3, [r3]
|
||
865 02b4 DB68 ldr r3, [r3, #12]
|
||
866 02b6 3B61 str r3, [r7, #16]
|
||
867 02b8 FB68 ldr r3, [r7, #12]
|
||
868 02ba 1B68 ldr r3, [r3]
|
||
869 02bc 9B68 ldr r3, [r3, #8]
|
||
870 02be 3B61 str r3, [r7, #16]
|
||
871 02c0 3B69 ldr r3, [r7, #16]
|
||
872 .L45:
|
||
873 .LBE2:
|
||
985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
874 .loc 1 987 11
|
||
875 02c2 FB68 ldr r3, [r7, #12]
|
||
876 02c4 1B6E ldr r3, [r3, #96]
|
||
877 .loc 1 987 6
|
||
878 02c6 002B cmp r3, #0
|
||
879 02c8 02D0 beq .L46
|
||
988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
880 .loc 1 989 15
|
||
881 02ca 0123 movs r3, #1
|
||
882 02cc FB77 strb r3, [r7, #31]
|
||
883 02ce 03E0 b .L19
|
||
884 .L46:
|
||
990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
885 .loc 1 993 17
|
||
886 02d0 FB68 ldr r3, [r7, #12]
|
||
887 02d2 0122 movs r2, #1
|
||
888 02d4 83F85D20 strb r2, [r3, #93]
|
||
889 .L19:
|
||
994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error:
|
||
997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
ARM GAS /tmp/ccs34gJO.s page 34
|
||
|
||
|
||
998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
890 .loc 1 998 3
|
||
891 02d8 FB68 ldr r3, [r7, #12]
|
||
892 02da 0022 movs r2, #0
|
||
893 02dc 83F85C20 strb r2, [r3, #92]
|
||
999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
894 .loc 1 999 10
|
||
895 02e0 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
|
||
896 .L17:
|
||
1000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
897 .loc 1 1000 1
|
||
898 02e2 1846 mov r0, r3
|
||
899 02e4 2037 adds r7, r7, #32
|
||
900 .cfi_def_cfa_offset 8
|
||
901 02e6 BD46 mov sp, r7
|
||
902 .cfi_def_cfa_register 13
|
||
903 @ sp needed
|
||
904 02e8 80BD pop {r7, pc}
|
||
905 .cfi_endproc
|
||
906 .LFE134:
|
||
908 .section .text.HAL_SPI_Receive,"ax",%progbits
|
||
909 .align 1
|
||
910 .global HAL_SPI_Receive
|
||
911 .syntax unified
|
||
912 .thumb
|
||
913 .thumb_func
|
||
915 HAL_SPI_Receive:
|
||
916 .LFB135:
|
||
1001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Receive an amount of data in blocking mode.
|
||
1004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pData pointer to data buffer
|
||
1007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be received
|
||
1008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
1009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
1010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
1011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Receive(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size, uint32_t
|
||
1012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
917 .loc 1 1012 1
|
||
918 .cfi_startproc
|
||
919 @ args = 0, pretend = 0, frame = 24
|
||
920 @ frame_needed = 1, uses_anonymous_args = 0
|
||
921 0000 80B5 push {r7, lr}
|
||
922 .cfi_def_cfa_offset 8
|
||
923 .cfi_offset 7, -8
|
||
924 .cfi_offset 14, -4
|
||
925 0002 88B0 sub sp, sp, #32
|
||
926 .cfi_def_cfa_offset 40
|
||
927 0004 02AF add r7, sp, #8
|
||
928 .cfi_def_cfa 7, 32
|
||
929 0006 F860 str r0, [r7, #12]
|
||
930 0008 B960 str r1, [r7, #8]
|
||
931 000a 3B60 str r3, [r7]
|
||
932 000c 1346 mov r3, r2 @ movhi
|
||
933 000e FB80 strh r3, [r7, #6] @ movhi
|
||
ARM GAS /tmp/ccs34gJO.s page 35
|
||
|
||
|
||
1013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t tmpreg = 0U;
|
||
1015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
1016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
1017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
1019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
934 .loc 1 1019 21
|
||
935 0010 0023 movs r3, #0
|
||
936 0012 FB75 strb r3, [r7, #23]
|
||
1020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_READY)
|
||
937 .loc 1 1021 11
|
||
938 0014 FB68 ldr r3, [r7, #12]
|
||
939 0016 93F85D30 ldrb r3, [r3, #93]
|
||
940 001a DBB2 uxtb r3, r3
|
||
941 .loc 1 1021 6
|
||
942 001c 012B cmp r3, #1
|
||
943 001e 02D0 beq .L48
|
||
1022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
944 .loc 1 1023 15
|
||
945 0020 0223 movs r3, #2
|
||
946 0022 FB75 strb r3, [r7, #23]
|
||
1024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
947 .loc 1 1024 5
|
||
948 0024 1AE1 b .L49
|
||
949 .L48:
|
||
1025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_MASTER) && (hspi->Init.Direction == SPI_DIRECTION_2LINES))
|
||
950 .loc 1 1027 18
|
||
951 0026 FB68 ldr r3, [r7, #12]
|
||
952 0028 5B68 ldr r3, [r3, #4]
|
||
953 .loc 1 1027 6
|
||
954 002a B3F5827F cmp r3, #260
|
||
955 002e 12D1 bne .L50
|
||
956 .loc 1 1027 58 discriminator 1
|
||
957 0030 FB68 ldr r3, [r7, #12]
|
||
958 0032 9B68 ldr r3, [r3, #8]
|
||
959 .loc 1 1027 44 discriminator 1
|
||
960 0034 002B cmp r3, #0
|
||
961 0036 0ED1 bne .L50
|
||
1028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_RX;
|
||
962 .loc 1 1029 17
|
||
963 0038 FB68 ldr r3, [r7, #12]
|
||
964 003a 0422 movs r2, #4
|
||
965 003c 83F85D20 strb r2, [r3, #93]
|
||
1030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call transmit-receive function to send Dummy data on Tx line and generate clock on CLK line
|
||
1031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_SPI_TransmitReceive(hspi, pData, pData, Size, Timeout);
|
||
966 .loc 1 1031 12
|
||
967 0040 FA88 ldrh r2, [r7, #6]
|
||
968 0042 3B68 ldr r3, [r7]
|
||
969 0044 0093 str r3, [sp]
|
||
970 0046 1346 mov r3, r2
|
||
971 0048 BA68 ldr r2, [r7, #8]
|
||
ARM GAS /tmp/ccs34gJO.s page 36
|
||
|
||
|
||
972 004a B968 ldr r1, [r7, #8]
|
||
973 004c F868 ldr r0, [r7, #12]
|
||
974 004e FFF7FEFF bl HAL_SPI_TransmitReceive
|
||
975 0052 0346 mov r3, r0
|
||
976 0054 07E1 b .L51
|
||
977 .L50:
|
||
1032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
1035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
978 .loc 1 1035 3
|
||
979 0056 FB68 ldr r3, [r7, #12]
|
||
980 0058 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
981 005c 012B cmp r3, #1
|
||
982 005e 01D1 bne .L52
|
||
983 .loc 1 1035 3 is_stmt 0 discriminator 1
|
||
984 0060 0223 movs r3, #2
|
||
985 .loc 1 1035 3
|
||
986 0062 00E1 b .L51
|
||
987 .L52:
|
||
988 .loc 1 1035 3 discriminator 2
|
||
989 0064 FB68 ldr r3, [r7, #12]
|
||
990 0066 0122 movs r2, #1
|
||
991 0068 83F85C20 strb r2, [r3, #92]
|
||
1036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
1038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
992 .loc 1 1038 15 is_stmt 1
|
||
993 006c FFF7FEFF bl HAL_GetTick
|
||
994 0070 3861 str r0, [r7, #16]
|
||
1039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pData == NULL) || (Size == 0U))
|
||
995 .loc 1 1040 6
|
||
996 0072 BB68 ldr r3, [r7, #8]
|
||
997 0074 002B cmp r3, #0
|
||
998 0076 02D0 beq .L53
|
||
999 .loc 1 1040 23 discriminator 1
|
||
1000 0078 FB88 ldrh r3, [r7, #6]
|
||
1001 007a 002B cmp r3, #0
|
||
1002 007c 02D1 bne .L54
|
||
1003 .L53:
|
||
1041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
1004 .loc 1 1042 15
|
||
1005 007e 0123 movs r3, #1
|
||
1006 0080 FB75 strb r3, [r7, #23]
|
||
1043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1007 .loc 1 1043 5
|
||
1008 0082 EBE0 b .L49
|
||
1009 .L54:
|
||
1044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
1047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_RX;
|
||
1010 .loc 1 1047 21
|
||
1011 0084 FB68 ldr r3, [r7, #12]
|
||
1012 0086 0422 movs r2, #4
|
||
ARM GAS /tmp/ccs34gJO.s page 37
|
||
|
||
|
||
1013 0088 83F85D20 strb r2, [r3, #93]
|
||
1048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
1014 .loc 1 1048 21
|
||
1015 008c FB68 ldr r3, [r7, #12]
|
||
1016 008e 0022 movs r2, #0
|
||
1017 0090 1A66 str r2, [r3, #96]
|
||
1049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)pData;
|
||
1018 .loc 1 1049 21
|
||
1019 0092 FB68 ldr r3, [r7, #12]
|
||
1020 0094 BA68 ldr r2, [r7, #8]
|
||
1021 0096 1A64 str r2, [r3, #64]
|
||
1050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = Size;
|
||
1022 .loc 1 1050 21
|
||
1023 0098 FB68 ldr r3, [r7, #12]
|
||
1024 009a FA88 ldrh r2, [r7, #6] @ movhi
|
||
1025 009c A3F84420 strh r2, [r3, #68] @ movhi
|
||
1051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = Size;
|
||
1026 .loc 1 1051 21
|
||
1027 00a0 FB68 ldr r3, [r7, #12]
|
||
1028 00a2 FA88 ldrh r2, [r7, #6] @ movhi
|
||
1029 00a4 A3F84620 strh r2, [r3, #70] @ movhi
|
||
1052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*Init field not used in handle to zero */
|
||
1054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)NULL;
|
||
1030 .loc 1 1054 21
|
||
1031 00a8 FB68 ldr r3, [r7, #12]
|
||
1032 00aa 0022 movs r2, #0
|
||
1033 00ac 9A63 str r2, [r3, #56]
|
||
1055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = 0U;
|
||
1034 .loc 1 1055 21
|
||
1035 00ae FB68 ldr r3, [r7, #12]
|
||
1036 00b0 0022 movs r2, #0
|
||
1037 00b2 9A87 strh r2, [r3, #60] @ movhi
|
||
1056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
1038 .loc 1 1056 21
|
||
1039 00b4 FB68 ldr r3, [r7, #12]
|
||
1040 00b6 0022 movs r2, #0
|
||
1041 00b8 DA87 strh r2, [r3, #62] @ movhi
|
||
1057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
1042 .loc 1 1057 21
|
||
1043 00ba FB68 ldr r3, [r7, #12]
|
||
1044 00bc 0022 movs r2, #0
|
||
1045 00be DA64 str r2, [r3, #76]
|
||
1058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
1046 .loc 1 1058 21
|
||
1047 00c0 FB68 ldr r3, [r7, #12]
|
||
1048 00c2 0022 movs r2, #0
|
||
1049 00c4 1A65 str r2, [r3, #80]
|
||
1059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
1062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
1065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* this is done to handle the CRCNEXT before the latest data */
|
||
1066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
1067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 38
|
||
|
||
|
||
1068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the Rx Fifo threshold */
|
||
1071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
1050 .loc 1 1071 17
|
||
1051 00c6 FB68 ldr r3, [r7, #12]
|
||
1052 00c8 DB68 ldr r3, [r3, #12]
|
||
1053 .loc 1 1071 6
|
||
1054 00ca B3F5E06F cmp r3, #1792
|
||
1055 00ce 08D9 bls .L55
|
||
1072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 16bit */
|
||
1074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
1056 .loc 1 1074 5
|
||
1057 00d0 FB68 ldr r3, [r7, #12]
|
||
1058 00d2 1B68 ldr r3, [r3]
|
||
1059 00d4 5A68 ldr r2, [r3, #4]
|
||
1060 00d6 FB68 ldr r3, [r7, #12]
|
||
1061 00d8 1B68 ldr r3, [r3]
|
||
1062 00da 22F48052 bic r2, r2, #4096
|
||
1063 00de 5A60 str r2, [r3, #4]
|
||
1064 00e0 07E0 b .L56
|
||
1065 .L55:
|
||
1075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 8bit */
|
||
1079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
1066 .loc 1 1079 5
|
||
1067 00e2 FB68 ldr r3, [r7, #12]
|
||
1068 00e4 1B68 ldr r3, [r3]
|
||
1069 00e6 5A68 ldr r2, [r3, #4]
|
||
1070 00e8 FB68 ldr r3, [r7, #12]
|
||
1071 00ea 1B68 ldr r3, [r3]
|
||
1072 00ec 42F48052 orr r2, r2, #4096
|
||
1073 00f0 5A60 str r2, [r3, #4]
|
||
1074 .L56:
|
||
1080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure communication direction: 1Line */
|
||
1083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
1075 .loc 1 1083 17
|
||
1076 00f2 FB68 ldr r3, [r7, #12]
|
||
1077 00f4 9B68 ldr r3, [r3, #8]
|
||
1078 .loc 1 1083 6
|
||
1079 00f6 B3F5004F cmp r3, #32768
|
||
1080 00fa 0FD1 bne .L57
|
||
1084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral before set 1Line direction (BIDIOE bit) */
|
||
1086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
1081 .loc 1 1086 5
|
||
1082 00fc FB68 ldr r3, [r7, #12]
|
||
1083 00fe 1B68 ldr r3, [r3]
|
||
1084 0100 1A68 ldr r2, [r3]
|
||
1085 0102 FB68 ldr r3, [r7, #12]
|
||
1086 0104 1B68 ldr r3, [r3]
|
||
1087 0106 22F04002 bic r2, r2, #64
|
||
ARM GAS /tmp/ccs34gJO.s page 39
|
||
|
||
|
||
1088 010a 1A60 str r2, [r3]
|
||
1087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_1LINE_RX(hspi);
|
||
1089 .loc 1 1087 5
|
||
1090 010c FB68 ldr r3, [r7, #12]
|
||
1091 010e 1B68 ldr r3, [r3]
|
||
1092 0110 1A68 ldr r2, [r3]
|
||
1093 0112 FB68 ldr r3, [r7, #12]
|
||
1094 0114 1B68 ldr r3, [r3]
|
||
1095 0116 22F48042 bic r2, r2, #16384
|
||
1096 011a 1A60 str r2, [r3]
|
||
1097 .L57:
|
||
1088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
1091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
1098 .loc 1 1091 12
|
||
1099 011c FB68 ldr r3, [r7, #12]
|
||
1100 011e 1B68 ldr r3, [r3]
|
||
1101 .loc 1 1091 22
|
||
1102 0120 1B68 ldr r3, [r3]
|
||
1103 .loc 1 1091 28
|
||
1104 0122 03F04003 and r3, r3, #64
|
||
1105 .loc 1 1091 6
|
||
1106 0126 402B cmp r3, #64
|
||
1107 0128 07D0 beq .L58
|
||
1092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
1094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
1108 .loc 1 1094 5
|
||
1109 012a FB68 ldr r3, [r7, #12]
|
||
1110 012c 1B68 ldr r3, [r3]
|
||
1111 012e 1A68 ldr r2, [r3]
|
||
1112 0130 FB68 ldr r3, [r7, #12]
|
||
1113 0132 1B68 ldr r3, [r3]
|
||
1114 0134 42F04002 orr r2, r2, #64
|
||
1115 0138 1A60 str r2, [r3]
|
||
1116 .L58:
|
||
1095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Receive data in 8 Bit mode */
|
||
1098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize <= SPI_DATASIZE_8BIT)
|
||
1117 .loc 1 1098 17
|
||
1118 013a FB68 ldr r3, [r7, #12]
|
||
1119 013c DB68 ldr r3, [r3, #12]
|
||
1120 .loc 1 1098 6
|
||
1121 013e B3F5E06F cmp r3, #1792
|
||
1122 0142 6FD8 bhi .L67
|
||
1099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transfer loop */
|
||
1101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while (hspi->RxXferCount > 0U)
|
||
1123 .loc 1 1101 11
|
||
1124 0144 34E0 b .L60
|
||
1125 .L65:
|
||
1102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the RXNE flag */
|
||
1104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_RXNE))
|
||
1126 .loc 1 1104 11
|
||
ARM GAS /tmp/ccs34gJO.s page 40
|
||
|
||
|
||
1127 0146 FB68 ldr r3, [r7, #12]
|
||
1128 0148 1B68 ldr r3, [r3]
|
||
1129 014a 9B68 ldr r3, [r3, #8]
|
||
1130 014c 03F00103 and r3, r3, #1
|
||
1131 .loc 1 1104 10
|
||
1132 0150 012B cmp r3, #1
|
||
1133 0152 17D1 bne .L61
|
||
1105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* read the received data */
|
||
1107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (* (uint8_t *)hspi->pRxBuffPtr) = *(__IO uint8_t *)&hspi->Instance->DR;
|
||
1134 .loc 1 1107 65
|
||
1135 0154 FB68 ldr r3, [r7, #12]
|
||
1136 0156 1B68 ldr r3, [r3]
|
||
1137 .loc 1 1107 60
|
||
1138 0158 03F10C02 add r2, r3, #12
|
||
1139 .loc 1 1107 27
|
||
1140 015c FB68 ldr r3, [r7, #12]
|
||
1141 015e 1B6C ldr r3, [r3, #64]
|
||
1142 .loc 1 1107 43
|
||
1143 0160 1278 ldrb r2, [r2]
|
||
1144 0162 D2B2 uxtb r2, r2
|
||
1145 .loc 1 1107 41
|
||
1146 0164 1A70 strb r2, [r3]
|
||
1108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint8_t);
|
||
1147 .loc 1 1108 13
|
||
1148 0166 FB68 ldr r3, [r7, #12]
|
||
1149 0168 1B6C ldr r3, [r3, #64]
|
||
1150 .loc 1 1108 26
|
||
1151 016a 5A1C adds r2, r3, #1
|
||
1152 016c FB68 ldr r3, [r7, #12]
|
||
1153 016e 1A64 str r2, [r3, #64]
|
||
1109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
1154 .loc 1 1109 13
|
||
1155 0170 FB68 ldr r3, [r7, #12]
|
||
1156 0172 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1157 0176 9BB2 uxth r3, r3
|
||
1158 .loc 1 1109 26
|
||
1159 0178 013B subs r3, r3, #1
|
||
1160 017a 9AB2 uxth r2, r3
|
||
1161 017c FB68 ldr r3, [r7, #12]
|
||
1162 017e A3F84620 strh r2, [r3, #70] @ movhi
|
||
1163 0182 15E0 b .L60
|
||
1164 .L61:
|
||
1110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Timeout management */
|
||
1114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout =
|
||
1165 .loc 1 1114 16
|
||
1166 0184 FFF7FEFF bl HAL_GetTick
|
||
1167 0188 0246 mov r2, r0
|
||
1168 .loc 1 1114 30 discriminator 1
|
||
1169 018a 3B69 ldr r3, [r7, #16]
|
||
1170 018c D31A subs r3, r2, r3
|
||
1171 .loc 1 1114 12 discriminator 1
|
||
1172 018e 3A68 ldr r2, [r7]
|
||
1173 0190 9A42 cmp r2, r3
|
||
ARM GAS /tmp/ccs34gJO.s page 41
|
||
|
||
|
||
1174 0192 03D8 bhi .L63
|
||
1175 .loc 1 1114 56 discriminator 1
|
||
1176 0194 3B68 ldr r3, [r7]
|
||
1177 0196 B3F1FF3F cmp r3, #-1
|
||
1178 019a 02D1 bne .L64
|
||
1179 .L63:
|
||
1180 .loc 1 1114 87 discriminator 3
|
||
1181 019c 3B68 ldr r3, [r7]
|
||
1182 019e 002B cmp r3, #0
|
||
1183 01a0 06D1 bne .L60
|
||
1184 .L64:
|
||
1115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1185 .loc 1 1116 21
|
||
1186 01a2 0323 movs r3, #3
|
||
1187 01a4 FB75 strb r3, [r7, #23]
|
||
1117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
1188 .loc 1 1117 23
|
||
1189 01a6 FB68 ldr r3, [r7, #12]
|
||
1190 01a8 0122 movs r2, #1
|
||
1191 01aa 83F85D20 strb r2, [r3, #93]
|
||
1118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1192 .loc 1 1118 11
|
||
1193 01ae 55E0 b .L49
|
||
1194 .L60:
|
||
1101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1195 .loc 1 1101 16
|
||
1196 01b0 FB68 ldr r3, [r7, #12]
|
||
1197 01b2 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1198 01b6 9BB2 uxth r3, r3
|
||
1101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1199 .loc 1 1101 30
|
||
1200 01b8 002B cmp r3, #0
|
||
1201 01ba C4D1 bne .L65
|
||
1202 01bc 38E0 b .L66
|
||
1203 .L72:
|
||
1119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transfer loop */
|
||
1126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while (hspi->RxXferCount > 0U)
|
||
1127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the RXNE flag */
|
||
1129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_RXNE))
|
||
1204 .loc 1 1129 11
|
||
1205 01be FB68 ldr r3, [r7, #12]
|
||
1206 01c0 1B68 ldr r3, [r3]
|
||
1207 01c2 9B68 ldr r3, [r3, #8]
|
||
1208 01c4 03F00103 and r3, r3, #1
|
||
1209 .loc 1 1129 10
|
||
1210 01c8 012B cmp r3, #1
|
||
1211 01ca 15D1 bne .L68
|
||
1130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)hspi->Instance->DR;
|
||
ARM GAS /tmp/ccs34gJO.s page 42
|
||
|
||
|
||
1212 .loc 1 1131 57
|
||
1213 01cc FB68 ldr r3, [r7, #12]
|
||
1214 01ce 1B68 ldr r3, [r3]
|
||
1215 .loc 1 1131 67
|
||
1216 01d0 DA68 ldr r2, [r3, #12]
|
||
1217 .loc 1 1131 27
|
||
1218 01d2 FB68 ldr r3, [r7, #12]
|
||
1219 01d4 1B6C ldr r3, [r3, #64]
|
||
1220 .loc 1 1131 43
|
||
1221 01d6 92B2 uxth r2, r2
|
||
1222 .loc 1 1131 41
|
||
1223 01d8 1A80 strh r2, [r3] @ movhi
|
||
1132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint16_t);
|
||
1224 .loc 1 1132 13
|
||
1225 01da FB68 ldr r3, [r7, #12]
|
||
1226 01dc 1B6C ldr r3, [r3, #64]
|
||
1227 .loc 1 1132 26
|
||
1228 01de 9A1C adds r2, r3, #2
|
||
1229 01e0 FB68 ldr r3, [r7, #12]
|
||
1230 01e2 1A64 str r2, [r3, #64]
|
||
1133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
1231 .loc 1 1133 13
|
||
1232 01e4 FB68 ldr r3, [r7, #12]
|
||
1233 01e6 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1234 01ea 9BB2 uxth r3, r3
|
||
1235 .loc 1 1133 26
|
||
1236 01ec 013B subs r3, r3, #1
|
||
1237 01ee 9AB2 uxth r2, r3
|
||
1238 01f0 FB68 ldr r3, [r7, #12]
|
||
1239 01f2 A3F84620 strh r2, [r3, #70] @ movhi
|
||
1240 01f6 15E0 b .L67
|
||
1241 .L68:
|
||
1134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Timeout management */
|
||
1138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY)) || (Timeout =
|
||
1242 .loc 1 1138 16
|
||
1243 01f8 FFF7FEFF bl HAL_GetTick
|
||
1244 01fc 0246 mov r2, r0
|
||
1245 .loc 1 1138 30 discriminator 1
|
||
1246 01fe 3B69 ldr r3, [r7, #16]
|
||
1247 0200 D31A subs r3, r2, r3
|
||
1248 .loc 1 1138 12 discriminator 1
|
||
1249 0202 3A68 ldr r2, [r7]
|
||
1250 0204 9A42 cmp r2, r3
|
||
1251 0206 03D8 bhi .L70
|
||
1252 .loc 1 1138 56 discriminator 1
|
||
1253 0208 3B68 ldr r3, [r7]
|
||
1254 020a B3F1FF3F cmp r3, #-1
|
||
1255 020e 02D1 bne .L71
|
||
1256 .L70:
|
||
1257 .loc 1 1138 87 discriminator 3
|
||
1258 0210 3B68 ldr r3, [r7]
|
||
1259 0212 002B cmp r3, #0
|
||
1260 0214 06D1 bne .L67
|
||
1261 .L71:
|
||
ARM GAS /tmp/ccs34gJO.s page 43
|
||
|
||
|
||
1139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1262 .loc 1 1140 21
|
||
1263 0216 0323 movs r3, #3
|
||
1264 0218 FB75 strb r3, [r7, #23]
|
||
1141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
1265 .loc 1 1141 23
|
||
1266 021a FB68 ldr r3, [r7, #12]
|
||
1267 021c 0122 movs r2, #1
|
||
1268 021e 83F85D20 strb r2, [r3, #93]
|
||
1142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1269 .loc 1 1142 11
|
||
1270 0222 1BE0 b .L49
|
||
1271 .L67:
|
||
1126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1272 .loc 1 1126 16
|
||
1273 0224 FB68 ldr r3, [r7, #12]
|
||
1274 0226 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1275 022a 9BB2 uxth r3, r3
|
||
1126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1276 .loc 1 1126 30
|
||
1277 022c 002B cmp r3, #0
|
||
1278 022e C6D1 bne .L72
|
||
1279 .L66:
|
||
1143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Handle the CRC Transmission */
|
||
1150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* freeze the CRC before the latest data */
|
||
1153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
1154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read the latest data */
|
||
1156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, Timeout, tickstart) != HAL_OK)
|
||
1157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* the latest data has not been received */
|
||
1159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Receive last data in 16 Bit mode */
|
||
1164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
1165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)hspi->Instance->DR;
|
||
1167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Receive last data in 8 Bit mode */
|
||
1169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (*(uint8_t *)hspi->pRxBuffPtr) = *(__IO uint8_t *)&hspi->Instance->DR;
|
||
1172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait the CRC data */
|
||
1175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, Timeout, tickstart) != HAL_OK)
|
||
ARM GAS /tmp/ccs34gJO.s page 44
|
||
|
||
|
||
1176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
1178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read CRC to Flush DR and RXNE flag */
|
||
1183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize == SPI_DATASIZE_16BIT)
|
||
1184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 16bit CRC */
|
||
1186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg = READ_REG(hspi->Instance->DR);
|
||
1187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
1188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg);
|
||
1189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
1193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
1194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC */
|
||
1195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
1196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
1197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
1198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize == SPI_DATASIZE_8BIT) && (hspi->Init.CRCLength == SPI_CRC_LENGTH_16B
|
||
1200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, Timeout, tickstart) != HAL_OK)
|
||
1202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
1204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
1205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC again in case of 16bit CRC in 8bit Data mode */
|
||
1209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
1210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
1211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
1212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
1218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTransaction(hspi, Timeout, tickstart) != HAL_OK)
|
||
1280 .loc 1 1218 7
|
||
1281 0230 3A69 ldr r2, [r7, #16]
|
||
1282 0232 3968 ldr r1, [r7]
|
||
1283 0234 F868 ldr r0, [r7, #12]
|
||
1284 0236 FFF7FEFF bl SPI_EndRxTransaction
|
||
1285 023a 0346 mov r3, r0
|
||
1286 .loc 1 1218 6 discriminator 1
|
||
1287 023c 002B cmp r3, #0
|
||
1288 023e 02D0 beq .L73
|
||
1219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_FLAG;
|
||
1289 .loc 1 1220 21
|
||
1290 0240 FB68 ldr r3, [r7, #12]
|
||
1291 0242 2022 movs r2, #32
|
||
ARM GAS /tmp/ccs34gJO.s page 45
|
||
|
||
|
||
1292 0244 1A66 str r2, [r3, #96]
|
||
1293 .L73:
|
||
1221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if CRC error occurred */
|
||
1225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_CRCERR))
|
||
1226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
1228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_CRCERRFLAG(hspi);
|
||
1229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
1294 .loc 1 1232 11
|
||
1295 0246 FB68 ldr r3, [r7, #12]
|
||
1296 0248 1B6E ldr r3, [r3, #96]
|
||
1297 .loc 1 1232 6
|
||
1298 024a 002B cmp r3, #0
|
||
1299 024c 02D0 beq .L74
|
||
1233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
1300 .loc 1 1234 15
|
||
1301 024e 0123 movs r3, #1
|
||
1302 0250 FB75 strb r3, [r7, #23]
|
||
1303 0252 03E0 b .L49
|
||
1304 .L74:
|
||
1235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
1305 .loc 1 1238 17
|
||
1306 0254 FB68 ldr r3, [r7, #12]
|
||
1307 0256 0122 movs r2, #1
|
||
1308 0258 83F85D20 strb r2, [r3, #93]
|
||
1309 .L49:
|
||
1239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
1242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
1310 .loc 1 1242 3
|
||
1311 025c FB68 ldr r3, [r7, #12]
|
||
1312 025e 0022 movs r2, #0
|
||
1313 0260 83F85C20 strb r2, [r3, #92]
|
||
1243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
1314 .loc 1 1243 10
|
||
1315 0264 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
1316 .L51:
|
||
1244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1317 .loc 1 1244 1
|
||
1318 0266 1846 mov r0, r3
|
||
1319 0268 1837 adds r7, r7, #24
|
||
1320 .cfi_def_cfa_offset 8
|
||
1321 026a BD46 mov sp, r7
|
||
1322 .cfi_def_cfa_register 13
|
||
1323 @ sp needed
|
||
1324 026c 80BD pop {r7, pc}
|
||
ARM GAS /tmp/ccs34gJO.s page 46
|
||
|
||
|
||
1325 .cfi_endproc
|
||
1326 .LFE135:
|
||
1328 .section .text.HAL_SPI_TransmitReceive,"ax",%progbits
|
||
1329 .align 1
|
||
1330 .global HAL_SPI_TransmitReceive
|
||
1331 .syntax unified
|
||
1332 .thumb
|
||
1333 .thumb_func
|
||
1335 HAL_SPI_TransmitReceive:
|
||
1336 .LFB136:
|
||
1245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Transmit and Receive an amount of data in blocking mode.
|
||
1248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pTxData pointer to transmission data buffer
|
||
1251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pRxData pointer to reception data buffer
|
||
1252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent and received
|
||
1253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
1254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
1255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
1256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_TransmitReceive(SPI_HandleTypeDef *hspi, uint8_t *pTxData, uint8_t *pRxDa
|
||
1257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t Timeout)
|
||
1258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1337 .loc 1 1258 1
|
||
1338 .cfi_startproc
|
||
1339 @ args = 4, pretend = 0, frame = 40
|
||
1340 @ frame_needed = 1, uses_anonymous_args = 0
|
||
1341 0000 80B5 push {r7, lr}
|
||
1342 .cfi_def_cfa_offset 8
|
||
1343 .cfi_offset 7, -8
|
||
1344 .cfi_offset 14, -4
|
||
1345 0002 8AB0 sub sp, sp, #40
|
||
1346 .cfi_def_cfa_offset 48
|
||
1347 0004 00AF add r7, sp, #0
|
||
1348 .cfi_def_cfa_register 7
|
||
1349 0006 F860 str r0, [r7, #12]
|
||
1350 0008 B960 str r1, [r7, #8]
|
||
1351 000a 7A60 str r2, [r7, #4]
|
||
1352 000c 7B80 strh r3, [r7, #2] @ movhi
|
||
1259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint16_t initial_TxXferCount;
|
||
1260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint16_t initial_RxXferCount;
|
||
1261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_mode;
|
||
1262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_StateTypeDef tmp_state;
|
||
1263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
1264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t tmpreg = 0U;
|
||
1266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t spi_cr1;
|
||
1267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t spi_cr2;
|
||
1268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
1269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
1270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Variable used to alternate Rx and Tx during transfer */
|
||
1273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t txallowed = 1U;
|
||
1353 .loc 1 1273 24
|
||
1354 000e 0123 movs r3, #1
|
||
ARM GAS /tmp/ccs34gJO.s page 47
|
||
|
||
|
||
1355 0010 7B62 str r3, [r7, #36]
|
||
1274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
1356 .loc 1 1274 24
|
||
1357 0012 0023 movs r3, #0
|
||
1358 0014 87F82330 strb r3, [r7, #35]
|
||
1275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check Direction parameter */
|
||
1277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION_2LINES(hspi->Init.Direction));
|
||
1278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
1280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
1359 .loc 1 1280 3
|
||
1360 0018 FB68 ldr r3, [r7, #12]
|
||
1361 001a 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
1362 001e 012B cmp r3, #1
|
||
1363 0020 01D1 bne .L76
|
||
1364 .loc 1 1280 3 is_stmt 0 discriminator 1
|
||
1365 0022 0223 movs r3, #2
|
||
1366 .loc 1 1280 3
|
||
1367 0024 0AE2 b .L77
|
||
1368 .L76:
|
||
1369 .loc 1 1280 3 discriminator 2
|
||
1370 0026 FB68 ldr r3, [r7, #12]
|
||
1371 0028 0122 movs r2, #1
|
||
1372 002a 83F85C20 strb r2, [r3, #92]
|
||
1281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
1283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
1373 .loc 1 1283 15 is_stmt 1
|
||
1374 002e FFF7FEFF bl HAL_GetTick
|
||
1375 0032 F861 str r0, [r7, #28]
|
||
1284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init temporary variables */
|
||
1286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_state = hspi->State;
|
||
1376 .loc 1 1286 23
|
||
1377 0034 FB68 ldr r3, [r7, #12]
|
||
1378 0036 93F85D30 ldrb r3, [r3, #93]
|
||
1379 003a FB76 strb r3, [r7, #27]
|
||
1287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_mode = hspi->Init.Mode;
|
||
1380 .loc 1 1287 23
|
||
1381 003c FB68 ldr r3, [r7, #12]
|
||
1382 003e 5B68 ldr r3, [r3, #4]
|
||
1383 0040 7B61 str r3, [r7, #20]
|
||
1288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** initial_TxXferCount = Size;
|
||
1384 .loc 1 1288 23
|
||
1385 0042 7B88 ldrh r3, [r7, #2] @ movhi
|
||
1386 0044 7B82 strh r3, [r7, #18] @ movhi
|
||
1289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** initial_RxXferCount = Size;
|
||
1387 .loc 1 1289 23
|
||
1388 0046 7B88 ldrh r3, [r7, #2] @ movhi
|
||
1389 0048 3B82 strh r3, [r7, #16] @ movhi
|
||
1290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** spi_cr1 = READ_REG(hspi->Instance->CR1);
|
||
1292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** spi_cr2 = READ_REG(hspi->Instance->CR2);
|
||
1293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (!((tmp_state == HAL_SPI_STATE_READY) || \
|
||
ARM GAS /tmp/ccs34gJO.s page 48
|
||
|
||
|
||
1390 .loc 1 1295 6
|
||
1391 004a FB7E ldrb r3, [r7, #27] @ zero_extendqisi2
|
||
1392 004c 012B cmp r3, #1
|
||
1393 004e 0ED0 beq .L78
|
||
1394 .loc 1 1295 7 discriminator 1
|
||
1395 0050 7B69 ldr r3, [r7, #20]
|
||
1396 0052 B3F5827F cmp r3, #260
|
||
1397 0056 06D1 bne .L79
|
||
1296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ((tmp_mode == SPI_MODE_MASTER) && (hspi->Init.Direction == SPI_DIRECTION_2LINES) && (tmp_st
|
||
1398 .loc 1 1296 54
|
||
1399 0058 FB68 ldr r3, [r7, #12]
|
||
1400 005a 9B68 ldr r3, [r3, #8]
|
||
1401 .loc 1 1296 40
|
||
1402 005c 002B cmp r3, #0
|
||
1403 005e 02D1 bne .L79
|
||
1404 .loc 1 1296 90 discriminator 1
|
||
1405 0060 FB7E ldrb r3, [r7, #27] @ zero_extendqisi2
|
||
1406 0062 042B cmp r3, #4
|
||
1407 0064 03D0 beq .L78
|
||
1408 .L79:
|
||
1297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
1409 .loc 1 1298 15
|
||
1410 0066 0223 movs r3, #2
|
||
1411 0068 87F82330 strb r3, [r7, #35]
|
||
1299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1412 .loc 1 1299 5
|
||
1413 006c E0E1 b .L80
|
||
1414 .L78:
|
||
1300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pTxData == NULL) || (pRxData == NULL) || (Size == 0U))
|
||
1415 .loc 1 1302 6
|
||
1416 006e BB68 ldr r3, [r7, #8]
|
||
1417 0070 002B cmp r3, #0
|
||
1418 0072 05D0 beq .L81
|
||
1419 .loc 1 1302 25 discriminator 1
|
||
1420 0074 7B68 ldr r3, [r7, #4]
|
||
1421 0076 002B cmp r3, #0
|
||
1422 0078 02D0 beq .L81
|
||
1423 .loc 1 1302 46 discriminator 2
|
||
1424 007a 7B88 ldrh r3, [r7, #2]
|
||
1425 007c 002B cmp r3, #0
|
||
1426 007e 03D1 bne .L82
|
||
1427 .L81:
|
||
1303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
1428 .loc 1 1304 15
|
||
1429 0080 0123 movs r3, #1
|
||
1430 0082 87F82330 strb r3, [r7, #35]
|
||
1305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1431 .loc 1 1305 5
|
||
1432 0086 D3E1 b .L80
|
||
1433 .L82:
|
||
1306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Don't overwrite in case of HAL_SPI_STATE_BUSY_RX */
|
||
ARM GAS /tmp/ccs34gJO.s page 49
|
||
|
||
|
||
1309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_BUSY_RX)
|
||
1434 .loc 1 1309 11
|
||
1435 0088 FB68 ldr r3, [r7, #12]
|
||
1436 008a 93F85D30 ldrb r3, [r3, #93]
|
||
1437 008e DBB2 uxtb r3, r3
|
||
1438 .loc 1 1309 6
|
||
1439 0090 042B cmp r3, #4
|
||
1440 0092 03D0 beq .L83
|
||
1310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_TX_RX;
|
||
1441 .loc 1 1311 17
|
||
1442 0094 FB68 ldr r3, [r7, #12]
|
||
1443 0096 0522 movs r2, #5
|
||
1444 0098 83F85D20 strb r2, [r3, #93]
|
||
1445 .L83:
|
||
1312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
1315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
1446 .loc 1 1315 21
|
||
1447 009c FB68 ldr r3, [r7, #12]
|
||
1448 009e 0022 movs r2, #0
|
||
1449 00a0 1A66 str r2, [r3, #96]
|
||
1316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)pRxData;
|
||
1450 .loc 1 1316 21
|
||
1451 00a2 FB68 ldr r3, [r7, #12]
|
||
1452 00a4 7A68 ldr r2, [r7, #4]
|
||
1453 00a6 1A64 str r2, [r3, #64]
|
||
1317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = Size;
|
||
1454 .loc 1 1317 21
|
||
1455 00a8 FB68 ldr r3, [r7, #12]
|
||
1456 00aa 7A88 ldrh r2, [r7, #2] @ movhi
|
||
1457 00ac A3F84620 strh r2, [r3, #70] @ movhi
|
||
1318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = Size;
|
||
1458 .loc 1 1318 21
|
||
1459 00b0 FB68 ldr r3, [r7, #12]
|
||
1460 00b2 7A88 ldrh r2, [r7, #2] @ movhi
|
||
1461 00b4 A3F84420 strh r2, [r3, #68] @ movhi
|
||
1319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)pTxData;
|
||
1462 .loc 1 1319 21
|
||
1463 00b8 FB68 ldr r3, [r7, #12]
|
||
1464 00ba BA68 ldr r2, [r7, #8]
|
||
1465 00bc 9A63 str r2, [r3, #56]
|
||
1320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = Size;
|
||
1466 .loc 1 1320 21
|
||
1467 00be FB68 ldr r3, [r7, #12]
|
||
1468 00c0 7A88 ldrh r2, [r7, #2] @ movhi
|
||
1469 00c2 DA87 strh r2, [r3, #62] @ movhi
|
||
1321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = Size;
|
||
1470 .loc 1 1321 21
|
||
1471 00c4 FB68 ldr r3, [r7, #12]
|
||
1472 00c6 7A88 ldrh r2, [r7, #2] @ movhi
|
||
1473 00c8 9A87 strh r2, [r3, #60] @ movhi
|
||
1322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*Init field not used in handle to zero */
|
||
1324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
1474 .loc 1 1324 21
|
||
ARM GAS /tmp/ccs34gJO.s page 50
|
||
|
||
|
||
1475 00ca FB68 ldr r3, [r7, #12]
|
||
1476 00cc 0022 movs r2, #0
|
||
1477 00ce DA64 str r2, [r3, #76]
|
||
1325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
1478 .loc 1 1325 21
|
||
1479 00d0 FB68 ldr r3, [r7, #12]
|
||
1480 00d2 0022 movs r2, #0
|
||
1481 00d4 1A65 str r2, [r3, #80]
|
||
1326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
1329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
1332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the Rx Fifo threshold */
|
||
1336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize > SPI_DATASIZE_8BIT) || (initial_RxXferCount > 1U))
|
||
1482 .loc 1 1336 18
|
||
1483 00d6 FB68 ldr r3, [r7, #12]
|
||
1484 00d8 DB68 ldr r3, [r3, #12]
|
||
1485 .loc 1 1336 6
|
||
1486 00da B3F5E06F cmp r3, #1792
|
||
1487 00de 02D8 bhi .L84
|
||
1488 .loc 1 1336 49 discriminator 1
|
||
1489 00e0 3B8A ldrh r3, [r7, #16]
|
||
1490 00e2 012B cmp r3, #1
|
||
1491 00e4 08D9 bls .L85
|
||
1492 .L84:
|
||
1337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set fiforxthreshold according the reception data length: 16bit */
|
||
1339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
1493 .loc 1 1339 5
|
||
1494 00e6 FB68 ldr r3, [r7, #12]
|
||
1495 00e8 1B68 ldr r3, [r3]
|
||
1496 00ea 5A68 ldr r2, [r3, #4]
|
||
1497 00ec FB68 ldr r3, [r7, #12]
|
||
1498 00ee 1B68 ldr r3, [r3]
|
||
1499 00f0 22F48052 bic r2, r2, #4096
|
||
1500 00f4 5A60 str r2, [r3, #4]
|
||
1501 00f6 07E0 b .L86
|
||
1502 .L85:
|
||
1340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set fiforxthreshold according the reception data length: 8bit */
|
||
1344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
1503 .loc 1 1344 5
|
||
1504 00f8 FB68 ldr r3, [r7, #12]
|
||
1505 00fa 1B68 ldr r3, [r3]
|
||
1506 00fc 5A68 ldr r2, [r3, #4]
|
||
1507 00fe FB68 ldr r3, [r7, #12]
|
||
1508 0100 1B68 ldr r3, [r3]
|
||
1509 0102 42F48052 orr r2, r2, #4096
|
||
1510 0106 5A60 str r2, [r3, #4]
|
||
1511 .L86:
|
||
ARM GAS /tmp/ccs34gJO.s page 51
|
||
|
||
|
||
1345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
1348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
1512 .loc 1 1348 12
|
||
1513 0108 FB68 ldr r3, [r7, #12]
|
||
1514 010a 1B68 ldr r3, [r3]
|
||
1515 .loc 1 1348 22
|
||
1516 010c 1B68 ldr r3, [r3]
|
||
1517 .loc 1 1348 28
|
||
1518 010e 03F04003 and r3, r3, #64
|
||
1519 .loc 1 1348 6
|
||
1520 0112 402B cmp r3, #64
|
||
1521 0114 07D0 beq .L87
|
||
1349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
1351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
1522 .loc 1 1351 5
|
||
1523 0116 FB68 ldr r3, [r7, #12]
|
||
1524 0118 1B68 ldr r3, [r3]
|
||
1525 011a 1A68 ldr r2, [r3]
|
||
1526 011c FB68 ldr r3, [r7, #12]
|
||
1527 011e 1B68 ldr r3, [r3]
|
||
1528 0120 42F04002 orr r2, r2, #64
|
||
1529 0124 1A60 str r2, [r3]
|
||
1530 .L87:
|
||
1352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit and Receive data in 16 Bit mode */
|
||
1355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
1531 .loc 1 1355 17
|
||
1532 0126 FB68 ldr r3, [r7, #12]
|
||
1533 0128 DB68 ldr r3, [r3, #12]
|
||
1534 .loc 1 1355 6
|
||
1535 012a B3F5E06F cmp r3, #1792
|
||
1536 012e 40F28180 bls .L88
|
||
1356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_SLAVE) || (initial_TxXferCount == 0x01U))
|
||
1537 .loc 1 1357 20
|
||
1538 0132 FB68 ldr r3, [r7, #12]
|
||
1539 0134 5B68 ldr r3, [r3, #4]
|
||
1540 .loc 1 1357 8
|
||
1541 0136 002B cmp r3, #0
|
||
1542 0138 02D0 beq .L89
|
||
1543 .loc 1 1357 45 discriminator 1
|
||
1544 013a 7B8A ldrh r3, [r7, #18]
|
||
1545 013c 012B cmp r3, #1
|
||
1546 013e 6DD1 bne .L91
|
||
1547 .L89:
|
||
1358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
1548 .loc 1 1359 46
|
||
1549 0140 FB68 ldr r3, [r7, #12]
|
||
1550 0142 9B6B ldr r3, [r3, #56]
|
||
1551 .loc 1 1359 28
|
||
1552 0144 1A88 ldrh r2, [r3]
|
||
1553 .loc 1 1359 11
|
||
ARM GAS /tmp/ccs34gJO.s page 52
|
||
|
||
|
||
1554 0146 FB68 ldr r3, [r7, #12]
|
||
1555 0148 1B68 ldr r3, [r3]
|
||
1556 .loc 1 1359 26
|
||
1557 014a DA60 str r2, [r3, #12]
|
||
1360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
1558 .loc 1 1360 11
|
||
1559 014c FB68 ldr r3, [r7, #12]
|
||
1560 014e 9B6B ldr r3, [r3, #56]
|
||
1561 .loc 1 1360 24
|
||
1562 0150 9A1C adds r2, r3, #2
|
||
1563 0152 FB68 ldr r3, [r7, #12]
|
||
1564 0154 9A63 str r2, [r3, #56]
|
||
1361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
1565 .loc 1 1361 11
|
||
1566 0156 FB68 ldr r3, [r7, #12]
|
||
1567 0158 DB8F ldrh r3, [r3, #62] @ movhi
|
||
1568 015a 9BB2 uxth r3, r3
|
||
1569 .loc 1 1361 24
|
||
1570 015c 013B subs r3, r3, #1
|
||
1571 015e 9AB2 uxth r2, r3
|
||
1572 0160 FB68 ldr r3, [r7, #12]
|
||
1573 0162 DA87 strh r2, [r3, #62] @ movhi
|
||
1362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while ((hspi->TxXferCount > 0U) || (hspi->RxXferCount > 0U))
|
||
1574 .loc 1 1363 11
|
||
1575 0164 5AE0 b .L91
|
||
1576 .L95:
|
||
1364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check TXE flag */
|
||
1366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXE)) && (hspi->TxXferCount > 0U) && (txallowed == 1U)
|
||
1577 .loc 1 1366 12
|
||
1578 0166 FB68 ldr r3, [r7, #12]
|
||
1579 0168 1B68 ldr r3, [r3]
|
||
1580 016a 9B68 ldr r3, [r3, #8]
|
||
1581 016c 03F00203 and r3, r3, #2
|
||
1582 .loc 1 1366 10
|
||
1583 0170 022B cmp r3, #2
|
||
1584 0172 1BD1 bne .L92
|
||
1585 .loc 1 1366 60 discriminator 1
|
||
1586 0174 FB68 ldr r3, [r7, #12]
|
||
1587 0176 DB8F ldrh r3, [r3, #62] @ movhi
|
||
1588 0178 9BB2 uxth r3, r3
|
||
1589 .loc 1 1366 52 discriminator 1
|
||
1590 017a 002B cmp r3, #0
|
||
1591 017c 16D0 beq .L92
|
||
1592 .loc 1 1366 80 discriminator 2
|
||
1593 017e 7B6A ldr r3, [r7, #36]
|
||
1594 0180 012B cmp r3, #1
|
||
1595 0182 13D1 bne .L92
|
||
1367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
1596 .loc 1 1368 48
|
||
1597 0184 FB68 ldr r3, [r7, #12]
|
||
1598 0186 9B6B ldr r3, [r3, #56]
|
||
1599 .loc 1 1368 30
|
||
1600 0188 1A88 ldrh r2, [r3]
|
||
1601 .loc 1 1368 13
|
||
ARM GAS /tmp/ccs34gJO.s page 53
|
||
|
||
|
||
1602 018a FB68 ldr r3, [r7, #12]
|
||
1603 018c 1B68 ldr r3, [r3]
|
||
1604 .loc 1 1368 28
|
||
1605 018e DA60 str r2, [r3, #12]
|
||
1369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
1606 .loc 1 1369 13
|
||
1607 0190 FB68 ldr r3, [r7, #12]
|
||
1608 0192 9B6B ldr r3, [r3, #56]
|
||
1609 .loc 1 1369 26
|
||
1610 0194 9A1C adds r2, r3, #2
|
||
1611 0196 FB68 ldr r3, [r7, #12]
|
||
1612 0198 9A63 str r2, [r3, #56]
|
||
1370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
1613 .loc 1 1370 13
|
||
1614 019a FB68 ldr r3, [r7, #12]
|
||
1615 019c DB8F ldrh r3, [r3, #62] @ movhi
|
||
1616 019e 9BB2 uxth r3, r3
|
||
1617 .loc 1 1370 26
|
||
1618 01a0 013B subs r3, r3, #1
|
||
1619 01a2 9AB2 uxth r2, r3
|
||
1620 01a4 FB68 ldr r3, [r7, #12]
|
||
1621 01a6 DA87 strh r2, [r3, #62] @ movhi
|
||
1371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Next Data is a reception (Rx). Tx not allowed */
|
||
1372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** txallowed = 0U;
|
||
1622 .loc 1 1372 19
|
||
1623 01a8 0023 movs r3, #0
|
||
1624 01aa 7B62 str r3, [r7, #36]
|
||
1625 .L92:
|
||
1373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
1376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->TxXferCount == 0U) && (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE))
|
||
1377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set NSS Soft to received correctly the CRC on slave mode with NSS pulse activated */
|
||
1379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((READ_BIT(spi_cr1, SPI_CR1_MSTR) == 0U) && (READ_BIT(spi_cr2, SPI_CR2_NSSP) == SPI_CR
|
||
1380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_SSM);
|
||
1382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
1384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check RXNE flag */
|
||
1389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_RXNE)) && (hspi->RxXferCount > 0U))
|
||
1626 .loc 1 1389 12
|
||
1627 01ac FB68 ldr r3, [r7, #12]
|
||
1628 01ae 1B68 ldr r3, [r3]
|
||
1629 01b0 9B68 ldr r3, [r3, #8]
|
||
1630 01b2 03F00103 and r3, r3, #1
|
||
1631 .loc 1 1389 10
|
||
1632 01b6 012B cmp r3, #1
|
||
1633 01b8 1CD1 bne .L93
|
||
1634 .loc 1 1389 61 discriminator 1
|
||
1635 01ba FB68 ldr r3, [r7, #12]
|
||
1636 01bc B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1637 01c0 9BB2 uxth r3, r3
|
||
ARM GAS /tmp/ccs34gJO.s page 54
|
||
|
||
|
||
1638 .loc 1 1389 53 discriminator 1
|
||
1639 01c2 002B cmp r3, #0
|
||
1640 01c4 16D0 beq .L93
|
||
1390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)hspi->Instance->DR;
|
||
1641 .loc 1 1391 57
|
||
1642 01c6 FB68 ldr r3, [r7, #12]
|
||
1643 01c8 1B68 ldr r3, [r3]
|
||
1644 .loc 1 1391 67
|
||
1645 01ca DA68 ldr r2, [r3, #12]
|
||
1646 .loc 1 1391 27
|
||
1647 01cc FB68 ldr r3, [r7, #12]
|
||
1648 01ce 1B6C ldr r3, [r3, #64]
|
||
1649 .loc 1 1391 43
|
||
1650 01d0 92B2 uxth r2, r2
|
||
1651 .loc 1 1391 41
|
||
1652 01d2 1A80 strh r2, [r3] @ movhi
|
||
1392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint16_t);
|
||
1653 .loc 1 1392 13
|
||
1654 01d4 FB68 ldr r3, [r7, #12]
|
||
1655 01d6 1B6C ldr r3, [r3, #64]
|
||
1656 .loc 1 1392 26
|
||
1657 01d8 9A1C adds r2, r3, #2
|
||
1658 01da FB68 ldr r3, [r7, #12]
|
||
1659 01dc 1A64 str r2, [r3, #64]
|
||
1393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
1660 .loc 1 1393 13
|
||
1661 01de FB68 ldr r3, [r7, #12]
|
||
1662 01e0 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1663 01e4 9BB2 uxth r3, r3
|
||
1664 .loc 1 1393 26
|
||
1665 01e6 013B subs r3, r3, #1
|
||
1666 01e8 9AB2 uxth r2, r3
|
||
1667 01ea FB68 ldr r3, [r7, #12]
|
||
1668 01ec A3F84620 strh r2, [r3, #70] @ movhi
|
||
1394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Next Data is a Transmission (Tx). Tx is allowed */
|
||
1395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** txallowed = 1U;
|
||
1669 .loc 1 1395 19
|
||
1670 01f0 0123 movs r3, #1
|
||
1671 01f2 7B62 str r3, [r7, #36]
|
||
1672 .L93:
|
||
1396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (((HAL_GetTick() - tickstart) >= Timeout) && (Timeout != HAL_MAX_DELAY))
|
||
1673 .loc 1 1397 13
|
||
1674 01f4 FFF7FEFF bl HAL_GetTick
|
||
1675 01f8 0246 mov r2, r0
|
||
1676 .loc 1 1397 27 discriminator 1
|
||
1677 01fa FB69 ldr r3, [r7, #28]
|
||
1678 01fc D31A subs r3, r2, r3
|
||
1679 .loc 1 1397 10 discriminator 1
|
||
1680 01fe 3A6B ldr r2, [r7, #48]
|
||
1681 0200 9A42 cmp r2, r3
|
||
1682 0202 0BD8 bhi .L91
|
||
1683 .loc 1 1397 53 discriminator 1
|
||
1684 0204 3B6B ldr r3, [r7, #48]
|
||
1685 0206 B3F1FF3F cmp r3, #-1
|
||
1686 020a 07D0 beq .L91
|
||
ARM GAS /tmp/ccs34gJO.s page 55
|
||
|
||
|
||
1398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1687 .loc 1 1399 19
|
||
1688 020c 0323 movs r3, #3
|
||
1689 020e 87F82330 strb r3, [r7, #35]
|
||
1400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
1690 .loc 1 1400 21
|
||
1691 0212 FB68 ldr r3, [r7, #12]
|
||
1692 0214 0122 movs r2, #1
|
||
1693 0216 83F85D20 strb r2, [r3, #93]
|
||
1401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1694 .loc 1 1401 9
|
||
1695 021a 09E1 b .L80
|
||
1696 .L91:
|
||
1363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1697 .loc 1 1363 17
|
||
1698 021c FB68 ldr r3, [r7, #12]
|
||
1699 021e DB8F ldrh r3, [r3, #62] @ movhi
|
||
1700 0220 9BB2 uxth r3, r3
|
||
1363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1701 .loc 1 1363 37
|
||
1702 0222 002B cmp r3, #0
|
||
1703 0224 9FD1 bne .L95
|
||
1363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1704 .loc 1 1363 45 discriminator 1
|
||
1705 0226 FB68 ldr r3, [r7, #12]
|
||
1706 0228 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1707 022c 9BB2 uxth r3, r3
|
||
1363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1708 .loc 1 1363 37 discriminator 1
|
||
1709 022e 002B cmp r3, #0
|
||
1710 0230 99D1 bne .L95
|
||
1711 0232 E3E0 b .L96
|
||
1712 .L88:
|
||
1402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit and Receive data in 8 Bit mode */
|
||
1406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_SLAVE) || (initial_TxXferCount == 0x01U))
|
||
1713 .loc 1 1408 20
|
||
1714 0234 FB68 ldr r3, [r7, #12]
|
||
1715 0236 5B68 ldr r3, [r3, #4]
|
||
1716 .loc 1 1408 8
|
||
1717 0238 002B cmp r3, #0
|
||
1718 023a 03D0 beq .L97
|
||
1719 .loc 1 1408 45 discriminator 1
|
||
1720 023c 7B8A ldrh r3, [r7, #18]
|
||
1721 023e 012B cmp r3, #1
|
||
1722 0240 40F0CF80 bne .L100
|
||
1723 .L97:
|
||
1409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount > 1U)
|
||
1724 .loc 1 1410 15
|
||
1725 0244 FB68 ldr r3, [r7, #12]
|
||
1726 0246 DB8F ldrh r3, [r3, #62] @ movhi
|
||
ARM GAS /tmp/ccs34gJO.s page 56
|
||
|
||
|
||
1727 0248 9BB2 uxth r3, r3
|
||
1728 .loc 1 1410 10
|
||
1729 024a 012B cmp r3, #1
|
||
1730 024c 12D9 bls .L99
|
||
1411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
1731 .loc 1 1412 48
|
||
1732 024e FB68 ldr r3, [r7, #12]
|
||
1733 0250 9B6B ldr r3, [r3, #56]
|
||
1734 .loc 1 1412 30
|
||
1735 0252 1A88 ldrh r2, [r3]
|
||
1736 .loc 1 1412 13
|
||
1737 0254 FB68 ldr r3, [r7, #12]
|
||
1738 0256 1B68 ldr r3, [r3]
|
||
1739 .loc 1 1412 28
|
||
1740 0258 DA60 str r2, [r3, #12]
|
||
1413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
1741 .loc 1 1413 13
|
||
1742 025a FB68 ldr r3, [r7, #12]
|
||
1743 025c 9B6B ldr r3, [r3, #56]
|
||
1744 .loc 1 1413 26
|
||
1745 025e 9A1C adds r2, r3, #2
|
||
1746 0260 FB68 ldr r3, [r7, #12]
|
||
1747 0262 9A63 str r2, [r3, #56]
|
||
1414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount -= 2U;
|
||
1748 .loc 1 1414 13
|
||
1749 0264 FB68 ldr r3, [r7, #12]
|
||
1750 0266 DB8F ldrh r3, [r3, #62] @ movhi
|
||
1751 0268 9BB2 uxth r3, r3
|
||
1752 .loc 1 1414 27
|
||
1753 026a 023B subs r3, r3, #2
|
||
1754 026c 9AB2 uxth r2, r3
|
||
1755 026e FB68 ldr r3, [r7, #12]
|
||
1756 0270 DA87 strh r2, [r3, #62] @ movhi
|
||
1757 0272 B6E0 b .L100
|
||
1758 .L99:
|
||
1415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *(__IO uint8_t *)&hspi->Instance->DR = (*hspi->pTxBuffPtr);
|
||
1759 .loc 1 1418 54
|
||
1760 0274 FB68 ldr r3, [r7, #12]
|
||
1761 0276 9A6B ldr r2, [r3, #56]
|
||
1762 .loc 1 1418 31
|
||
1763 0278 FB68 ldr r3, [r7, #12]
|
||
1764 027a 1B68 ldr r3, [r3]
|
||
1765 .loc 1 1418 26
|
||
1766 027c 0C33 adds r3, r3, #12
|
||
1767 .loc 1 1418 49
|
||
1768 027e 1278 ldrb r2, [r2] @ zero_extendqisi2
|
||
1769 .loc 1 1418 46
|
||
1770 0280 1A70 strb r2, [r3]
|
||
1419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr++;
|
||
1771 .loc 1 1419 13
|
||
1772 0282 FB68 ldr r3, [r7, #12]
|
||
1773 0284 9B6B ldr r3, [r3, #56]
|
||
1774 .loc 1 1419 25
|
||
ARM GAS /tmp/ccs34gJO.s page 57
|
||
|
||
|
||
1775 0286 5A1C adds r2, r3, #1
|
||
1776 0288 FB68 ldr r3, [r7, #12]
|
||
1777 028a 9A63 str r2, [r3, #56]
|
||
1420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
1778 .loc 1 1420 13
|
||
1779 028c FB68 ldr r3, [r7, #12]
|
||
1780 028e DB8F ldrh r3, [r3, #62] @ movhi
|
||
1781 0290 9BB2 uxth r3, r3
|
||
1782 .loc 1 1420 26
|
||
1783 0292 013B subs r3, r3, #1
|
||
1784 0294 9AB2 uxth r2, r3
|
||
1785 0296 FB68 ldr r3, [r7, #12]
|
||
1786 0298 DA87 strh r2, [r3, #62] @ movhi
|
||
1421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while ((hspi->TxXferCount > 0U) || (hspi->RxXferCount > 0U))
|
||
1787 .loc 1 1423 11
|
||
1788 029a A2E0 b .L100
|
||
1789 .L109:
|
||
1424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check TXE flag */
|
||
1426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXE)) && (hspi->TxXferCount > 0U) && (txallowed == 1U)
|
||
1790 .loc 1 1426 12
|
||
1791 029c FB68 ldr r3, [r7, #12]
|
||
1792 029e 1B68 ldr r3, [r3]
|
||
1793 02a0 9B68 ldr r3, [r3, #8]
|
||
1794 02a2 03F00203 and r3, r3, #2
|
||
1795 .loc 1 1426 10
|
||
1796 02a6 022B cmp r3, #2
|
||
1797 02a8 34D1 bne .L101
|
||
1798 .loc 1 1426 60 discriminator 1
|
||
1799 02aa FB68 ldr r3, [r7, #12]
|
||
1800 02ac DB8F ldrh r3, [r3, #62] @ movhi
|
||
1801 02ae 9BB2 uxth r3, r3
|
||
1802 .loc 1 1426 52 discriminator 1
|
||
1803 02b0 002B cmp r3, #0
|
||
1804 02b2 2FD0 beq .L101
|
||
1805 .loc 1 1426 80 discriminator 2
|
||
1806 02b4 7B6A ldr r3, [r7, #36]
|
||
1807 02b6 012B cmp r3, #1
|
||
1808 02b8 2CD1 bne .L101
|
||
1427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount > 1U)
|
||
1809 .loc 1 1428 17
|
||
1810 02ba FB68 ldr r3, [r7, #12]
|
||
1811 02bc DB8F ldrh r3, [r3, #62] @ movhi
|
||
1812 02be 9BB2 uxth r3, r3
|
||
1813 .loc 1 1428 12
|
||
1814 02c0 012B cmp r3, #1
|
||
1815 02c2 12D9 bls .L102
|
||
1429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
1816 .loc 1 1430 50
|
||
1817 02c4 FB68 ldr r3, [r7, #12]
|
||
1818 02c6 9B6B ldr r3, [r3, #56]
|
||
1819 .loc 1 1430 32
|
||
1820 02c8 1A88 ldrh r2, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 58
|
||
|
||
|
||
1821 .loc 1 1430 15
|
||
1822 02ca FB68 ldr r3, [r7, #12]
|
||
1823 02cc 1B68 ldr r3, [r3]
|
||
1824 .loc 1 1430 30
|
||
1825 02ce DA60 str r2, [r3, #12]
|
||
1431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
1826 .loc 1 1431 15
|
||
1827 02d0 FB68 ldr r3, [r7, #12]
|
||
1828 02d2 9B6B ldr r3, [r3, #56]
|
||
1829 .loc 1 1431 28
|
||
1830 02d4 9A1C adds r2, r3, #2
|
||
1831 02d6 FB68 ldr r3, [r7, #12]
|
||
1832 02d8 9A63 str r2, [r3, #56]
|
||
1432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount -= 2U;
|
||
1833 .loc 1 1432 15
|
||
1834 02da FB68 ldr r3, [r7, #12]
|
||
1835 02dc DB8F ldrh r3, [r3, #62] @ movhi
|
||
1836 02de 9BB2 uxth r3, r3
|
||
1837 .loc 1 1432 29
|
||
1838 02e0 023B subs r3, r3, #2
|
||
1839 02e2 9AB2 uxth r2, r3
|
||
1840 02e4 FB68 ldr r3, [r7, #12]
|
||
1841 02e6 DA87 strh r2, [r3, #62] @ movhi
|
||
1842 02e8 12E0 b .L103
|
||
1843 .L102:
|
||
1433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *(__IO uint8_t *)&hspi->Instance->DR = (*hspi->pTxBuffPtr);
|
||
1844 .loc 1 1436 56
|
||
1845 02ea FB68 ldr r3, [r7, #12]
|
||
1846 02ec 9A6B ldr r2, [r3, #56]
|
||
1847 .loc 1 1436 33
|
||
1848 02ee FB68 ldr r3, [r7, #12]
|
||
1849 02f0 1B68 ldr r3, [r3]
|
||
1850 .loc 1 1436 28
|
||
1851 02f2 0C33 adds r3, r3, #12
|
||
1852 .loc 1 1436 51
|
||
1853 02f4 1278 ldrb r2, [r2] @ zero_extendqisi2
|
||
1854 .loc 1 1436 48
|
||
1855 02f6 1A70 strb r2, [r3]
|
||
1437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr++;
|
||
1856 .loc 1 1437 15
|
||
1857 02f8 FB68 ldr r3, [r7, #12]
|
||
1858 02fa 9B6B ldr r3, [r3, #56]
|
||
1859 .loc 1 1437 27
|
||
1860 02fc 5A1C adds r2, r3, #1
|
||
1861 02fe FB68 ldr r3, [r7, #12]
|
||
1862 0300 9A63 str r2, [r3, #56]
|
||
1438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
1863 .loc 1 1438 15
|
||
1864 0302 FB68 ldr r3, [r7, #12]
|
||
1865 0304 DB8F ldrh r3, [r3, #62] @ movhi
|
||
1866 0306 9BB2 uxth r3, r3
|
||
1867 .loc 1 1438 28
|
||
1868 0308 013B subs r3, r3, #1
|
||
1869 030a 9AB2 uxth r2, r3
|
||
ARM GAS /tmp/ccs34gJO.s page 59
|
||
|
||
|
||
1870 030c FB68 ldr r3, [r7, #12]
|
||
1871 030e DA87 strh r2, [r3, #62] @ movhi
|
||
1872 .L103:
|
||
1439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Next Data is a reception (Rx). Tx not allowed */
|
||
1441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** txallowed = 0U;
|
||
1873 .loc 1 1441 19
|
||
1874 0310 0023 movs r3, #0
|
||
1875 0312 7B62 str r3, [r7, #36]
|
||
1876 .L101:
|
||
1442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
1445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->TxXferCount == 0U) && (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE))
|
||
1446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set NSS Soft to received correctly the CRC on slave mode with NSS pulse activated */
|
||
1448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((READ_BIT(spi_cr1, SPI_CR1_MSTR) == 0U) && (READ_BIT(spi_cr2, SPI_CR2_NSSP) == SPI_CR
|
||
1449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_SSM);
|
||
1451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
1453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait until RXNE flag is reset */
|
||
1458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_RXNE)) && (hspi->RxXferCount > 0U))
|
||
1877 .loc 1 1458 12
|
||
1878 0314 FB68 ldr r3, [r7, #12]
|
||
1879 0316 1B68 ldr r3, [r3]
|
||
1880 0318 9B68 ldr r3, [r3, #8]
|
||
1881 031a 03F00103 and r3, r3, #1
|
||
1882 .loc 1 1458 10
|
||
1883 031e 012B cmp r3, #1
|
||
1884 0320 48D1 bne .L104
|
||
1885 .loc 1 1458 61 discriminator 1
|
||
1886 0322 FB68 ldr r3, [r7, #12]
|
||
1887 0324 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1888 0328 9BB2 uxth r3, r3
|
||
1889 .loc 1 1458 53 discriminator 1
|
||
1890 032a 002B cmp r3, #0
|
||
1891 032c 42D0 beq .L104
|
||
1459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount > 1U)
|
||
1892 .loc 1 1460 17
|
||
1893 032e FB68 ldr r3, [r7, #12]
|
||
1894 0330 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1895 0334 9BB2 uxth r3, r3
|
||
1896 .loc 1 1460 12
|
||
1897 0336 012B cmp r3, #1
|
||
1898 0338 23D9 bls .L105
|
||
1461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)hspi->Instance->DR;
|
||
1899 .loc 1 1462 59
|
||
1900 033a FB68 ldr r3, [r7, #12]
|
||
1901 033c 1B68 ldr r3, [r3]
|
||
1902 .loc 1 1462 69
|
||
ARM GAS /tmp/ccs34gJO.s page 60
|
||
|
||
|
||
1903 033e DA68 ldr r2, [r3, #12]
|
||
1904 .loc 1 1462 29
|
||
1905 0340 FB68 ldr r3, [r7, #12]
|
||
1906 0342 1B6C ldr r3, [r3, #64]
|
||
1907 .loc 1 1462 45
|
||
1908 0344 92B2 uxth r2, r2
|
||
1909 .loc 1 1462 43
|
||
1910 0346 1A80 strh r2, [r3] @ movhi
|
||
1463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint16_t);
|
||
1911 .loc 1 1463 15
|
||
1912 0348 FB68 ldr r3, [r7, #12]
|
||
1913 034a 1B6C ldr r3, [r3, #64]
|
||
1914 .loc 1 1463 28
|
||
1915 034c 9A1C adds r2, r3, #2
|
||
1916 034e FB68 ldr r3, [r7, #12]
|
||
1917 0350 1A64 str r2, [r3, #64]
|
||
1464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount -= 2U;
|
||
1918 .loc 1 1464 15
|
||
1919 0352 FB68 ldr r3, [r7, #12]
|
||
1920 0354 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1921 0358 9BB2 uxth r3, r3
|
||
1922 .loc 1 1464 29
|
||
1923 035a 023B subs r3, r3, #2
|
||
1924 035c 9AB2 uxth r2, r3
|
||
1925 035e FB68 ldr r3, [r7, #12]
|
||
1926 0360 A3F84620 strh r2, [r3, #70] @ movhi
|
||
1465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount <= 1U)
|
||
1927 .loc 1 1465 19
|
||
1928 0364 FB68 ldr r3, [r7, #12]
|
||
1929 0366 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1930 036a 9BB2 uxth r3, r3
|
||
1931 .loc 1 1465 14
|
||
1932 036c 012B cmp r3, #1
|
||
1933 036e 1FD8 bhi .L106
|
||
1466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold before to switch on 8 bit data size */
|
||
1468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
1934 .loc 1 1468 13
|
||
1935 0370 FB68 ldr r3, [r7, #12]
|
||
1936 0372 1B68 ldr r3, [r3]
|
||
1937 0374 5A68 ldr r2, [r3, #4]
|
||
1938 0376 FB68 ldr r3, [r7, #12]
|
||
1939 0378 1B68 ldr r3, [r3]
|
||
1940 037a 42F48052 orr r2, r2, #4096
|
||
1941 037e 5A60 str r2, [r3, #4]
|
||
1942 0380 16E0 b .L106
|
||
1943 .L105:
|
||
1469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (*(uint8_t *)hspi->pRxBuffPtr) = *(__IO uint8_t *)&hspi->Instance->DR;
|
||
1944 .loc 1 1473 66
|
||
1945 0382 FB68 ldr r3, [r7, #12]
|
||
1946 0384 1B68 ldr r3, [r3]
|
||
1947 .loc 1 1473 61
|
||
1948 0386 03F10C02 add r2, r3, #12
|
||
ARM GAS /tmp/ccs34gJO.s page 61
|
||
|
||
|
||
1949 .loc 1 1473 28
|
||
1950 038a FB68 ldr r3, [r7, #12]
|
||
1951 038c 1B6C ldr r3, [r3, #64]
|
||
1952 .loc 1 1473 44
|
||
1953 038e 1278 ldrb r2, [r2]
|
||
1954 0390 D2B2 uxtb r2, r2
|
||
1955 .loc 1 1473 42
|
||
1956 0392 1A70 strb r2, [r3]
|
||
1474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr++;
|
||
1957 .loc 1 1474 15
|
||
1958 0394 FB68 ldr r3, [r7, #12]
|
||
1959 0396 1B6C ldr r3, [r3, #64]
|
||
1960 .loc 1 1474 27
|
||
1961 0398 5A1C adds r2, r3, #1
|
||
1962 039a FB68 ldr r3, [r7, #12]
|
||
1963 039c 1A64 str r2, [r3, #64]
|
||
1475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
1964 .loc 1 1475 15
|
||
1965 039e FB68 ldr r3, [r7, #12]
|
||
1966 03a0 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
1967 03a4 9BB2 uxth r3, r3
|
||
1968 .loc 1 1475 28
|
||
1969 03a6 013B subs r3, r3, #1
|
||
1970 03a8 9AB2 uxth r2, r3
|
||
1971 03aa FB68 ldr r3, [r7, #12]
|
||
1972 03ac A3F84620 strh r2, [r3, #70] @ movhi
|
||
1973 .L106:
|
||
1476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Next Data is a Transmission (Tx). Tx is allowed */
|
||
1478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** txallowed = 1U;
|
||
1974 .loc 1 1478 19
|
||
1975 03b0 0123 movs r3, #1
|
||
1976 03b2 7B62 str r3, [r7, #36]
|
||
1977 .L104:
|
||
1479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((((HAL_GetTick() - tickstart) >= Timeout) && ((Timeout != HAL_MAX_DELAY))) || (Timeout =
|
||
1978 .loc 1 1480 14
|
||
1979 03b4 FFF7FEFF bl HAL_GetTick
|
||
1980 03b8 0246 mov r2, r0
|
||
1981 .loc 1 1480 28 discriminator 1
|
||
1982 03ba FB69 ldr r3, [r7, #28]
|
||
1983 03bc D31A subs r3, r2, r3
|
||
1984 .loc 1 1480 10 discriminator 1
|
||
1985 03be 3A6B ldr r2, [r7, #48]
|
||
1986 03c0 9A42 cmp r2, r3
|
||
1987 03c2 03D8 bhi .L107
|
||
1988 .loc 1 1480 54 discriminator 1
|
||
1989 03c4 3B6B ldr r3, [r7, #48]
|
||
1990 03c6 B3F1FF3F cmp r3, #-1
|
||
1991 03ca 02D1 bne .L108
|
||
1992 .L107:
|
||
1993 .loc 1 1480 87 discriminator 3
|
||
1994 03cc 3B6B ldr r3, [r7, #48]
|
||
1995 03ce 002B cmp r3, #0
|
||
1996 03d0 07D1 bne .L100
|
||
1997 .L108:
|
||
1481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 62
|
||
|
||
|
||
1482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1998 .loc 1 1482 19
|
||
1999 03d2 0323 movs r3, #3
|
||
2000 03d4 87F82330 strb r3, [r7, #35]
|
||
1483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
2001 .loc 1 1483 21
|
||
2002 03d8 FB68 ldr r3, [r7, #12]
|
||
2003 03da 0122 movs r2, #1
|
||
2004 03dc 83F85D20 strb r2, [r3, #93]
|
||
1484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2005 .loc 1 1484 9
|
||
2006 03e0 26E0 b .L80
|
||
2007 .L100:
|
||
1423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2008 .loc 1 1423 17
|
||
2009 03e2 FB68 ldr r3, [r7, #12]
|
||
2010 03e4 DB8F ldrh r3, [r3, #62] @ movhi
|
||
2011 03e6 9BB2 uxth r3, r3
|
||
1423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2012 .loc 1 1423 37
|
||
2013 03e8 002B cmp r3, #0
|
||
2014 03ea 7FF457AF bne .L109
|
||
1423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2015 .loc 1 1423 45 discriminator 1
|
||
2016 03ee FB68 ldr r3, [r7, #12]
|
||
2017 03f0 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
2018 03f4 9BB2 uxth r3, r3
|
||
1423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2019 .loc 1 1423 37 discriminator 1
|
||
2020 03f6 002B cmp r3, #0
|
||
2021 03f8 7FF450AF bne .L109
|
||
2022 .L96:
|
||
1485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read CRC from DR to close CRC calculation process */
|
||
1491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait until TXE flag */
|
||
1494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, Timeout, tickstart) != HAL_OK)
|
||
1495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
1497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
1498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read CRC */
|
||
1502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize == SPI_DATASIZE_16BIT)
|
||
1503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 16bit CRC */
|
||
1505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg = READ_REG(hspi->Instance->DR);
|
||
1506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
1507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg);
|
||
1508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
ARM GAS /tmp/ccs34gJO.s page 63
|
||
|
||
|
||
1510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
1512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
1513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC */
|
||
1514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
1515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
1516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
1517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCLength == SPI_CRC_LENGTH_16BIT)
|
||
1519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, Timeout, tickstart) != HAL_OK)
|
||
1521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
1523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
1524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_TIMEOUT;
|
||
1525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
1526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC again in case of 16bit CRC in 8bit Data mode */
|
||
1528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
1529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
1530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
1531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if CRC error occurred */
|
||
1536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_CRCERR))
|
||
1537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
1539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear CRC Flag */
|
||
1540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_CRCERRFLAG(hspi);
|
||
1541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
1543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
1547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, Timeout, tickstart) != HAL_OK)
|
||
2023 .loc 1 1547 7
|
||
2024 03fc FA69 ldr r2, [r7, #28]
|
||
2025 03fe 396B ldr r1, [r7, #48]
|
||
2026 0400 F868 ldr r0, [r7, #12]
|
||
2027 0402 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
2028 0406 0346 mov r3, r0
|
||
2029 .loc 1 1547 6 discriminator 1
|
||
2030 0408 002B cmp r3, #0
|
||
2031 040a 05D0 beq .L110
|
||
1548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
2032 .loc 1 1549 15
|
||
2033 040c 0123 movs r3, #1
|
||
2034 040e 87F82330 strb r3, [r7, #35]
|
||
1550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_FLAG;
|
||
2035 .loc 1 1550 21
|
||
2036 0412 FB68 ldr r3, [r7, #12]
|
||
2037 0414 2022 movs r2, #32
|
||
2038 0416 1A66 str r2, [r3, #96]
|
||
ARM GAS /tmp/ccs34gJO.s page 64
|
||
|
||
|
||
2039 .L110:
|
||
1551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
2040 .loc 1 1553 11
|
||
2041 0418 FB68 ldr r3, [r7, #12]
|
||
2042 041a 1B6E ldr r3, [r3, #96]
|
||
2043 .loc 1 1553 6
|
||
2044 041c 002B cmp r3, #0
|
||
2045 041e 03D0 beq .L111
|
||
1554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
2046 .loc 1 1555 15
|
||
2047 0420 0123 movs r3, #1
|
||
2048 0422 87F82330 strb r3, [r7, #35]
|
||
2049 0426 03E0 b .L80
|
||
2050 .L111:
|
||
1556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
2051 .loc 1 1559 17
|
||
2052 0428 FB68 ldr r3, [r7, #12]
|
||
2053 042a 0122 movs r2, #1
|
||
2054 042c 83F85D20 strb r2, [r3, #93]
|
||
2055 .L80:
|
||
1560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
1563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
2056 .loc 1 1563 3
|
||
2057 0430 FB68 ldr r3, [r7, #12]
|
||
2058 0432 0022 movs r2, #0
|
||
2059 0434 83F85C20 strb r2, [r3, #92]
|
||
1564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
2060 .loc 1 1564 10
|
||
2061 0438 97F82330 ldrb r3, [r7, #35] @ zero_extendqisi2
|
||
2062 .L77:
|
||
1565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2063 .loc 1 1565 1
|
||
2064 043c 1846 mov r0, r3
|
||
2065 043e 2837 adds r7, r7, #40
|
||
2066 .cfi_def_cfa_offset 8
|
||
2067 0440 BD46 mov sp, r7
|
||
2068 .cfi_def_cfa_register 13
|
||
2069 @ sp needed
|
||
2070 0442 80BD pop {r7, pc}
|
||
2071 .cfi_endproc
|
||
2072 .LFE136:
|
||
2074 .section .text.HAL_SPI_Transmit_IT,"ax",%progbits
|
||
2075 .align 1
|
||
2076 .global HAL_SPI_Transmit_IT
|
||
2077 .syntax unified
|
||
2078 .thumb
|
||
2079 .thumb_func
|
||
2081 HAL_SPI_Transmit_IT:
|
||
2082 .LFB137:
|
||
ARM GAS /tmp/ccs34gJO.s page 65
|
||
|
||
|
||
1566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Transmit an amount of data in non-blocking mode with Interrupt.
|
||
1569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pData pointer to data buffer
|
||
1572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent
|
||
1573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
1574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
1575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Transmit_IT(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size)
|
||
1576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2083 .loc 1 1576 1
|
||
2084 .cfi_startproc
|
||
2085 @ args = 0, pretend = 0, frame = 24
|
||
2086 @ frame_needed = 1, uses_anonymous_args = 0
|
||
2087 @ link register save eliminated.
|
||
2088 0000 80B4 push {r7}
|
||
2089 .cfi_def_cfa_offset 4
|
||
2090 .cfi_offset 7, -4
|
||
2091 0002 87B0 sub sp, sp, #28
|
||
2092 .cfi_def_cfa_offset 32
|
||
2093 0004 00AF add r7, sp, #0
|
||
2094 .cfi_def_cfa_register 7
|
||
2095 0006 F860 str r0, [r7, #12]
|
||
2096 0008 B960 str r1, [r7, #8]
|
||
2097 000a 1346 mov r3, r2
|
||
2098 000c FB80 strh r3, [r7, #6] @ movhi
|
||
1577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
2099 .loc 1 1577 21
|
||
2100 000e 0023 movs r3, #0
|
||
2101 0010 FB75 strb r3, [r7, #23]
|
||
1578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check Direction parameter */
|
||
1580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION_2LINES_OR_1LINE(hspi->Init.Direction));
|
||
1581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
1583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
2102 .loc 1 1583 3
|
||
2103 0012 FB68 ldr r3, [r7, #12]
|
||
2104 0014 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
2105 0018 012B cmp r3, #1
|
||
2106 001a 01D1 bne .L113
|
||
2107 .loc 1 1583 3 is_stmt 0 discriminator 1
|
||
2108 001c 0223 movs r3, #2
|
||
2109 .loc 1 1583 3
|
||
2110 001e 72E0 b .L114
|
||
2111 .L113:
|
||
2112 .loc 1 1583 3 discriminator 2
|
||
2113 0020 FB68 ldr r3, [r7, #12]
|
||
2114 0022 0122 movs r2, #1
|
||
2115 0024 83F85C20 strb r2, [r3, #92]
|
||
1584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pData == NULL) || (Size == 0U))
|
||
2116 .loc 1 1585 6 is_stmt 1
|
||
2117 0028 BB68 ldr r3, [r7, #8]
|
||
2118 002a 002B cmp r3, #0
|
||
2119 002c 02D0 beq .L115
|
||
ARM GAS /tmp/ccs34gJO.s page 66
|
||
|
||
|
||
2120 .loc 1 1585 23 discriminator 1
|
||
2121 002e FB88 ldrh r3, [r7, #6]
|
||
2122 0030 002B cmp r3, #0
|
||
2123 0032 02D1 bne .L116
|
||
2124 .L115:
|
||
1586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
2125 .loc 1 1587 15
|
||
2126 0034 0123 movs r3, #1
|
||
2127 0036 FB75 strb r3, [r7, #23]
|
||
1588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2128 .loc 1 1588 5
|
||
2129 0038 60E0 b .L117
|
||
2130 .L116:
|
||
1589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_READY)
|
||
2131 .loc 1 1591 11
|
||
2132 003a FB68 ldr r3, [r7, #12]
|
||
2133 003c 93F85D30 ldrb r3, [r3, #93]
|
||
2134 0040 DBB2 uxtb r3, r3
|
||
2135 .loc 1 1591 6
|
||
2136 0042 012B cmp r3, #1
|
||
2137 0044 02D0 beq .L118
|
||
1592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
2138 .loc 1 1593 15
|
||
2139 0046 0223 movs r3, #2
|
||
2140 0048 FB75 strb r3, [r7, #23]
|
||
1594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2141 .loc 1 1594 5
|
||
2142 004a 57E0 b .L117
|
||
2143 .L118:
|
||
1595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
1598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_TX;
|
||
2144 .loc 1 1598 21
|
||
2145 004c FB68 ldr r3, [r7, #12]
|
||
2146 004e 0322 movs r2, #3
|
||
2147 0050 83F85D20 strb r2, [r3, #93]
|
||
1599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
2148 .loc 1 1599 21
|
||
2149 0054 FB68 ldr r3, [r7, #12]
|
||
2150 0056 0022 movs r2, #0
|
||
2151 0058 1A66 str r2, [r3, #96]
|
||
1600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)pData;
|
||
2152 .loc 1 1600 21
|
||
2153 005a FB68 ldr r3, [r7, #12]
|
||
2154 005c BA68 ldr r2, [r7, #8]
|
||
2155 005e 9A63 str r2, [r3, #56]
|
||
1601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = Size;
|
||
2156 .loc 1 1601 21
|
||
2157 0060 FB68 ldr r3, [r7, #12]
|
||
2158 0062 FA88 ldrh r2, [r7, #6] @ movhi
|
||
2159 0064 9A87 strh r2, [r3, #60] @ movhi
|
||
1602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = Size;
|
||
ARM GAS /tmp/ccs34gJO.s page 67
|
||
|
||
|
||
2160 .loc 1 1602 21
|
||
2161 0066 FB68 ldr r3, [r7, #12]
|
||
2162 0068 FA88 ldrh r2, [r7, #6] @ movhi
|
||
2163 006a DA87 strh r2, [r3, #62] @ movhi
|
||
1603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init field not used in handle to zero */
|
||
1605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)NULL;
|
||
2164 .loc 1 1605 21
|
||
2165 006c FB68 ldr r3, [r7, #12]
|
||
2166 006e 0022 movs r2, #0
|
||
2167 0070 1A64 str r2, [r3, #64]
|
||
1606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = 0U;
|
||
2168 .loc 1 1606 21
|
||
2169 0072 FB68 ldr r3, [r7, #12]
|
||
2170 0074 0022 movs r2, #0
|
||
2171 0076 A3F84420 strh r2, [r3, #68] @ movhi
|
||
1607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
2172 .loc 1 1607 21
|
||
2173 007a FB68 ldr r3, [r7, #12]
|
||
2174 007c 0022 movs r2, #0
|
||
2175 007e A3F84620 strh r2, [r3, #70] @ movhi
|
||
1608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
2176 .loc 1 1608 21
|
||
2177 0082 FB68 ldr r3, [r7, #12]
|
||
2178 0084 0022 movs r2, #0
|
||
2179 0086 DA64 str r2, [r3, #76]
|
||
1609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the function for IT treatment */
|
||
1611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
2180 .loc 1 1611 17
|
||
2181 0088 FB68 ldr r3, [r7, #12]
|
||
2182 008a DB68 ldr r3, [r3, #12]
|
||
2183 .loc 1 1611 6
|
||
2184 008c B3F5E06F cmp r3, #1792
|
||
2185 0090 03D9 bls .L119
|
||
1612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = SPI_TxISR_16BIT;
|
||
2186 .loc 1 1613 17
|
||
2187 0092 FB68 ldr r3, [r7, #12]
|
||
2188 0094 1F4A ldr r2, .L123
|
||
2189 0096 1A65 str r2, [r3, #80]
|
||
2190 0098 02E0 b .L120
|
||
2191 .L119:
|
||
1614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = SPI_TxISR_8BIT;
|
||
2192 .loc 1 1617 17
|
||
2193 009a FB68 ldr r3, [r7, #12]
|
||
2194 009c 1E4A ldr r2, .L123+4
|
||
2195 009e 1A65 str r2, [r3, #80]
|
||
2196 .L120:
|
||
1618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure communication direction : 1Line */
|
||
1621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
2197 .loc 1 1621 17
|
||
ARM GAS /tmp/ccs34gJO.s page 68
|
||
|
||
|
||
2198 00a0 FB68 ldr r3, [r7, #12]
|
||
2199 00a2 9B68 ldr r3, [r3, #8]
|
||
2200 .loc 1 1621 6
|
||
2201 00a4 B3F5004F cmp r3, #32768
|
||
2202 00a8 0FD1 bne .L121
|
||
1622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral before set 1Line direction (BIDIOE bit) */
|
||
1624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
2203 .loc 1 1624 5
|
||
2204 00aa FB68 ldr r3, [r7, #12]
|
||
2205 00ac 1B68 ldr r3, [r3]
|
||
2206 00ae 1A68 ldr r2, [r3]
|
||
2207 00b0 FB68 ldr r3, [r7, #12]
|
||
2208 00b2 1B68 ldr r3, [r3]
|
||
2209 00b4 22F04002 bic r2, r2, #64
|
||
2210 00b8 1A60 str r2, [r3]
|
||
1625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_1LINE_TX(hspi);
|
||
2211 .loc 1 1625 5
|
||
2212 00ba FB68 ldr r3, [r7, #12]
|
||
2213 00bc 1B68 ldr r3, [r3]
|
||
2214 00be 1A68 ldr r2, [r3]
|
||
2215 00c0 FB68 ldr r3, [r7, #12]
|
||
2216 00c2 1B68 ldr r3, [r3]
|
||
2217 00c4 42F48042 orr r2, r2, #16384
|
||
2218 00c8 1A60 str r2, [r3]
|
||
2219 .L121:
|
||
1626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
1630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
1633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable TXE and ERR interrupt */
|
||
1637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE_IT(hspi, (SPI_IT_TXE | SPI_IT_ERR));
|
||
2220 .loc 1 1637 3
|
||
2221 00ca FB68 ldr r3, [r7, #12]
|
||
2222 00cc 1B68 ldr r3, [r3]
|
||
2223 00ce 5A68 ldr r2, [r3, #4]
|
||
2224 00d0 FB68 ldr r3, [r7, #12]
|
||
2225 00d2 1B68 ldr r3, [r3]
|
||
2226 00d4 42F0A002 orr r2, r2, #160
|
||
2227 00d8 5A60 str r2, [r3, #4]
|
||
1638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
1641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
2228 .loc 1 1641 12
|
||
2229 00da FB68 ldr r3, [r7, #12]
|
||
2230 00dc 1B68 ldr r3, [r3]
|
||
2231 .loc 1 1641 22
|
||
2232 00de 1B68 ldr r3, [r3]
|
||
2233 .loc 1 1641 28
|
||
2234 00e0 03F04003 and r3, r3, #64
|
||
ARM GAS /tmp/ccs34gJO.s page 69
|
||
|
||
|
||
2235 .loc 1 1641 6
|
||
2236 00e4 402B cmp r3, #64
|
||
2237 00e6 08D0 beq .L122
|
||
1642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
1644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
2238 .loc 1 1644 5
|
||
2239 00e8 FB68 ldr r3, [r7, #12]
|
||
2240 00ea 1B68 ldr r3, [r3]
|
||
2241 00ec 1A68 ldr r2, [r3]
|
||
2242 00ee FB68 ldr r3, [r7, #12]
|
||
2243 00f0 1B68 ldr r3, [r3]
|
||
2244 00f2 42F04002 orr r2, r2, #64
|
||
2245 00f6 1A60 str r2, [r3]
|
||
2246 00f8 00E0 b .L117
|
||
2247 .L122:
|
||
1645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
2248 .loc 1 1647 1
|
||
2249 00fa 00BF nop
|
||
2250 .L117:
|
||
1648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
2251 .loc 1 1648 3
|
||
2252 00fc FB68 ldr r3, [r7, #12]
|
||
2253 00fe 0022 movs r2, #0
|
||
2254 0100 83F85C20 strb r2, [r3, #92]
|
||
1649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
2255 .loc 1 1649 10
|
||
2256 0104 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
2257 .L114:
|
||
1650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2258 .loc 1 1650 1
|
||
2259 0106 1846 mov r0, r3
|
||
2260 0108 1C37 adds r7, r7, #28
|
||
2261 .cfi_def_cfa_offset 4
|
||
2262 010a BD46 mov sp, r7
|
||
2263 .cfi_def_cfa_register 13
|
||
2264 @ sp needed
|
||
2265 010c 5DF8047B ldr r7, [sp], #4
|
||
2266 .cfi_restore 7
|
||
2267 .cfi_def_cfa_offset 0
|
||
2268 0110 7047 bx lr
|
||
2269 .L124:
|
||
2270 0112 00BF .align 2
|
||
2271 .L123:
|
||
2272 0114 00000000 .word SPI_TxISR_16BIT
|
||
2273 0118 00000000 .word SPI_TxISR_8BIT
|
||
2274 .cfi_endproc
|
||
2275 .LFE137:
|
||
2277 .section .text.HAL_SPI_Receive_IT,"ax",%progbits
|
||
2278 .align 1
|
||
2279 .global HAL_SPI_Receive_IT
|
||
2280 .syntax unified
|
||
2281 .thumb
|
||
2282 .thumb_func
|
||
2284 HAL_SPI_Receive_IT:
|
||
ARM GAS /tmp/ccs34gJO.s page 70
|
||
|
||
|
||
2285 .LFB138:
|
||
1651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Receive an amount of data in non-blocking mode with Interrupt.
|
||
1654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pData pointer to data buffer
|
||
1657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent
|
||
1658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
1659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
1660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Receive_IT(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size)
|
||
1661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2286 .loc 1 1661 1
|
||
2287 .cfi_startproc
|
||
2288 @ args = 0, pretend = 0, frame = 24
|
||
2289 @ frame_needed = 1, uses_anonymous_args = 0
|
||
2290 0000 80B5 push {r7, lr}
|
||
2291 .cfi_def_cfa_offset 8
|
||
2292 .cfi_offset 7, -8
|
||
2293 .cfi_offset 14, -4
|
||
2294 0002 86B0 sub sp, sp, #24
|
||
2295 .cfi_def_cfa_offset 32
|
||
2296 0004 00AF add r7, sp, #0
|
||
2297 .cfi_def_cfa_register 7
|
||
2298 0006 F860 str r0, [r7, #12]
|
||
2299 0008 B960 str r1, [r7, #8]
|
||
2300 000a 1346 mov r3, r2
|
||
2301 000c FB80 strh r3, [r7, #6] @ movhi
|
||
1662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
2302 .loc 1 1662 21
|
||
2303 000e 0023 movs r3, #0
|
||
2304 0010 FB75 strb r3, [r7, #23]
|
||
1663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_READY)
|
||
2305 .loc 1 1665 11
|
||
2306 0012 FB68 ldr r3, [r7, #12]
|
||
2307 0014 93F85D30 ldrb r3, [r3, #93]
|
||
2308 0018 DBB2 uxtb r3, r3
|
||
2309 .loc 1 1665 6
|
||
2310 001a 012B cmp r3, #1
|
||
2311 001c 02D0 beq .L126
|
||
1666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
2312 .loc 1 1667 15
|
||
2313 001e 0223 movs r3, #2
|
||
2314 0020 FB75 strb r3, [r7, #23]
|
||
1668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2315 .loc 1 1668 5
|
||
2316 0022 90E0 b .L127
|
||
2317 .L126:
|
||
1669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Direction == SPI_DIRECTION_2LINES) && (hspi->Init.Mode == SPI_MODE_MASTER))
|
||
2318 .loc 1 1671 18
|
||
2319 0024 FB68 ldr r3, [r7, #12]
|
||
2320 0026 9B68 ldr r3, [r3, #8]
|
||
ARM GAS /tmp/ccs34gJO.s page 71
|
||
|
||
|
||
2321 .loc 1 1671 6
|
||
2322 0028 002B cmp r3, #0
|
||
2323 002a 10D1 bne .L128
|
||
2324 .loc 1 1671 68 discriminator 1
|
||
2325 002c FB68 ldr r3, [r7, #12]
|
||
2326 002e 5B68 ldr r3, [r3, #4]
|
||
2327 .loc 1 1671 54 discriminator 1
|
||
2328 0030 B3F5827F cmp r3, #260
|
||
2329 0034 0BD1 bne .L128
|
||
1672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_RX;
|
||
2330 .loc 1 1673 17
|
||
2331 0036 FB68 ldr r3, [r7, #12]
|
||
2332 0038 0422 movs r2, #4
|
||
2333 003a 83F85D20 strb r2, [r3, #93]
|
||
1674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call transmit-receive function to send Dummy data on Tx line and generate clock on CLK line
|
||
1675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_SPI_TransmitReceive_IT(hspi, pData, pData, Size);
|
||
2334 .loc 1 1675 12
|
||
2335 003e FB88 ldrh r3, [r7, #6]
|
||
2336 0040 BA68 ldr r2, [r7, #8]
|
||
2337 0042 B968 ldr r1, [r7, #8]
|
||
2338 0044 F868 ldr r0, [r7, #12]
|
||
2339 0046 FFF7FEFF bl HAL_SPI_TransmitReceive_IT
|
||
2340 004a 0346 mov r3, r0
|
||
2341 004c 80E0 b .L129
|
||
2342 .L128:
|
||
1676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
1679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
2343 .loc 1 1679 3
|
||
2344 004e FB68 ldr r3, [r7, #12]
|
||
2345 0050 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
2346 0054 012B cmp r3, #1
|
||
2347 0056 01D1 bne .L130
|
||
2348 .loc 1 1679 3 is_stmt 0 discriminator 1
|
||
2349 0058 0223 movs r3, #2
|
||
2350 .loc 1 1679 3
|
||
2351 005a 79E0 b .L129
|
||
2352 .L130:
|
||
2353 .loc 1 1679 3 discriminator 2
|
||
2354 005c FB68 ldr r3, [r7, #12]
|
||
2355 005e 0122 movs r2, #1
|
||
2356 0060 83F85C20 strb r2, [r3, #92]
|
||
1680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pData == NULL) || (Size == 0U))
|
||
2357 .loc 1 1681 6 is_stmt 1
|
||
2358 0064 BB68 ldr r3, [r7, #8]
|
||
2359 0066 002B cmp r3, #0
|
||
2360 0068 02D0 beq .L131
|
||
2361 .loc 1 1681 23 discriminator 1
|
||
2362 006a FB88 ldrh r3, [r7, #6]
|
||
2363 006c 002B cmp r3, #0
|
||
2364 006e 02D1 bne .L132
|
||
2365 .L131:
|
||
1682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
ARM GAS /tmp/ccs34gJO.s page 72
|
||
|
||
|
||
2366 .loc 1 1683 15
|
||
2367 0070 0123 movs r3, #1
|
||
2368 0072 FB75 strb r3, [r7, #23]
|
||
1684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2369 .loc 1 1684 5
|
||
2370 0074 67E0 b .L127
|
||
2371 .L132:
|
||
1685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
1688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_RX;
|
||
2372 .loc 1 1688 21
|
||
2373 0076 FB68 ldr r3, [r7, #12]
|
||
2374 0078 0422 movs r2, #4
|
||
2375 007a 83F85D20 strb r2, [r3, #93]
|
||
1689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
2376 .loc 1 1689 21
|
||
2377 007e FB68 ldr r3, [r7, #12]
|
||
2378 0080 0022 movs r2, #0
|
||
2379 0082 1A66 str r2, [r3, #96]
|
||
1690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)pData;
|
||
2380 .loc 1 1690 21
|
||
2381 0084 FB68 ldr r3, [r7, #12]
|
||
2382 0086 BA68 ldr r2, [r7, #8]
|
||
2383 0088 1A64 str r2, [r3, #64]
|
||
1691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = Size;
|
||
2384 .loc 1 1691 21
|
||
2385 008a FB68 ldr r3, [r7, #12]
|
||
2386 008c FA88 ldrh r2, [r7, #6] @ movhi
|
||
2387 008e A3F84420 strh r2, [r3, #68] @ movhi
|
||
1692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = Size;
|
||
2388 .loc 1 1692 21
|
||
2389 0092 FB68 ldr r3, [r7, #12]
|
||
2390 0094 FA88 ldrh r2, [r7, #6] @ movhi
|
||
2391 0096 A3F84620 strh r2, [r3, #70] @ movhi
|
||
1693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init field not used in handle to zero */
|
||
1695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)NULL;
|
||
2392 .loc 1 1695 21
|
||
2393 009a FB68 ldr r3, [r7, #12]
|
||
2394 009c 0022 movs r2, #0
|
||
2395 009e 9A63 str r2, [r3, #56]
|
||
1696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = 0U;
|
||
2396 .loc 1 1696 21
|
||
2397 00a0 FB68 ldr r3, [r7, #12]
|
||
2398 00a2 0022 movs r2, #0
|
||
2399 00a4 9A87 strh r2, [r3, #60] @ movhi
|
||
1697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
2400 .loc 1 1697 21
|
||
2401 00a6 FB68 ldr r3, [r7, #12]
|
||
2402 00a8 0022 movs r2, #0
|
||
2403 00aa DA87 strh r2, [r3, #62] @ movhi
|
||
1698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
2404 .loc 1 1698 21
|
||
2405 00ac FB68 ldr r3, [r7, #12]
|
||
2406 00ae 0022 movs r2, #0
|
||
2407 00b0 1A65 str r2, [r3, #80]
|
||
ARM GAS /tmp/ccs34gJO.s page 73
|
||
|
||
|
||
1699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the data size to adapt Rx threshold and the set the function for IT treatment */
|
||
1701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
2408 .loc 1 1701 17
|
||
2409 00b2 FB68 ldr r3, [r7, #12]
|
||
2410 00b4 DB68 ldr r3, [r3, #12]
|
||
2411 .loc 1 1701 6
|
||
2412 00b6 B3F5E06F cmp r3, #1792
|
||
2413 00ba 0BD9 bls .L133
|
||
1702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 16 bit */
|
||
1704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
2414 .loc 1 1704 5
|
||
2415 00bc FB68 ldr r3, [r7, #12]
|
||
2416 00be 1B68 ldr r3, [r3]
|
||
2417 00c0 5A68 ldr r2, [r3, #4]
|
||
2418 00c2 FB68 ldr r3, [r7, #12]
|
||
2419 00c4 1B68 ldr r3, [r3]
|
||
2420 00c6 22F48052 bic r2, r2, #4096
|
||
2421 00ca 5A60 str r2, [r3, #4]
|
||
1705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_RxISR_16BIT;
|
||
2422 .loc 1 1705 17
|
||
2423 00cc FB68 ldr r3, [r7, #12]
|
||
2424 00ce 224A ldr r2, .L137
|
||
2425 00d0 DA64 str r2, [r3, #76]
|
||
2426 00d2 0AE0 b .L134
|
||
2427 .L133:
|
||
1706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 8 bit */
|
||
1710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
2428 .loc 1 1710 5
|
||
2429 00d4 FB68 ldr r3, [r7, #12]
|
||
2430 00d6 1B68 ldr r3, [r3]
|
||
2431 00d8 5A68 ldr r2, [r3, #4]
|
||
2432 00da FB68 ldr r3, [r7, #12]
|
||
2433 00dc 1B68 ldr r3, [r3]
|
||
2434 00de 42F48052 orr r2, r2, #4096
|
||
2435 00e2 5A60 str r2, [r3, #4]
|
||
1711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_RxISR_8BIT;
|
||
2436 .loc 1 1711 17
|
||
2437 00e4 FB68 ldr r3, [r7, #12]
|
||
2438 00e6 1D4A ldr r2, .L137+4
|
||
2439 00e8 DA64 str r2, [r3, #76]
|
||
2440 .L134:
|
||
1712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure communication direction : 1Line */
|
||
1715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
2441 .loc 1 1715 17
|
||
2442 00ea FB68 ldr r3, [r7, #12]
|
||
2443 00ec 9B68 ldr r3, [r3, #8]
|
||
2444 .loc 1 1715 6
|
||
2445 00ee B3F5004F cmp r3, #32768
|
||
2446 00f2 0FD1 bne .L135
|
||
1716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 74
|
||
|
||
|
||
1717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral before set 1Line direction (BIDIOE bit) */
|
||
1718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
2447 .loc 1 1718 5
|
||
2448 00f4 FB68 ldr r3, [r7, #12]
|
||
2449 00f6 1B68 ldr r3, [r3]
|
||
2450 00f8 1A68 ldr r2, [r3]
|
||
2451 00fa FB68 ldr r3, [r7, #12]
|
||
2452 00fc 1B68 ldr r3, [r3]
|
||
2453 00fe 22F04002 bic r2, r2, #64
|
||
2454 0102 1A60 str r2, [r3]
|
||
1719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_1LINE_RX(hspi);
|
||
2455 .loc 1 1719 5
|
||
2456 0104 FB68 ldr r3, [r7, #12]
|
||
2457 0106 1B68 ldr r3, [r3]
|
||
2458 0108 1A68 ldr r2, [r3]
|
||
2459 010a FB68 ldr r3, [r7, #12]
|
||
2460 010c 1B68 ldr r3, [r3]
|
||
2461 010e 22F48042 bic r2, r2, #16384
|
||
2462 0112 1A60 str r2, [r3]
|
||
2463 .L135:
|
||
1720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
1724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize = 1U;
|
||
1727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize <= SPI_DATASIZE_8BIT) && (hspi->Init.CRCLength == SPI_CRC_LENGTH_16BIT
|
||
1728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize = 2U;
|
||
1730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
1732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize = 0U;
|
||
1736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable TXE and ERR interrupt */
|
||
1740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE_IT(hspi, (SPI_IT_RXNE | SPI_IT_ERR));
|
||
2464 .loc 1 1740 3
|
||
2465 0114 FB68 ldr r3, [r7, #12]
|
||
2466 0116 1B68 ldr r3, [r3]
|
||
2467 0118 5A68 ldr r2, [r3, #4]
|
||
2468 011a FB68 ldr r3, [r7, #12]
|
||
2469 011c 1B68 ldr r3, [r3]
|
||
2470 011e 42F06002 orr r2, r2, #96
|
||
2471 0122 5A60 str r2, [r3, #4]
|
||
1741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Note : The SPI must be enabled after unlocking current process
|
||
1743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** to avoid the risk of SPI interrupt handle execution before current
|
||
1744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** process unlock */
|
||
1745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
1747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
2472 .loc 1 1747 12
|
||
ARM GAS /tmp/ccs34gJO.s page 75
|
||
|
||
|
||
2473 0124 FB68 ldr r3, [r7, #12]
|
||
2474 0126 1B68 ldr r3, [r3]
|
||
2475 .loc 1 1747 22
|
||
2476 0128 1B68 ldr r3, [r3]
|
||
2477 .loc 1 1747 28
|
||
2478 012a 03F04003 and r3, r3, #64
|
||
2479 .loc 1 1747 6
|
||
2480 012e 402B cmp r3, #64
|
||
2481 0130 08D0 beq .L136
|
||
1748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
1750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
2482 .loc 1 1750 5
|
||
2483 0132 FB68 ldr r3, [r7, #12]
|
||
2484 0134 1B68 ldr r3, [r3]
|
||
2485 0136 1A68 ldr r2, [r3]
|
||
2486 0138 FB68 ldr r3, [r7, #12]
|
||
2487 013a 1B68 ldr r3, [r3]
|
||
2488 013c 42F04002 orr r2, r2, #64
|
||
2489 0140 1A60 str r2, [r3]
|
||
2490 0142 00E0 b .L127
|
||
2491 .L136:
|
||
1751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
2492 .loc 1 1753 1
|
||
2493 0144 00BF nop
|
||
2494 .L127:
|
||
1754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
1755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
2495 .loc 1 1755 3
|
||
2496 0146 FB68 ldr r3, [r7, #12]
|
||
2497 0148 0022 movs r2, #0
|
||
2498 014a 83F85C20 strb r2, [r3, #92]
|
||
1756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
2499 .loc 1 1756 10
|
||
2500 014e FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
2501 .L129:
|
||
1757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2502 .loc 1 1757 1
|
||
2503 0150 1846 mov r0, r3
|
||
2504 0152 1837 adds r7, r7, #24
|
||
2505 .cfi_def_cfa_offset 8
|
||
2506 0154 BD46 mov sp, r7
|
||
2507 .cfi_def_cfa_register 13
|
||
2508 @ sp needed
|
||
2509 0156 80BD pop {r7, pc}
|
||
2510 .L138:
|
||
2511 .align 2
|
||
2512 .L137:
|
||
2513 0158 00000000 .word SPI_RxISR_16BIT
|
||
2514 015c 00000000 .word SPI_RxISR_8BIT
|
||
2515 .cfi_endproc
|
||
2516 .LFE138:
|
||
2518 .section .text.HAL_SPI_TransmitReceive_IT,"ax",%progbits
|
||
2519 .align 1
|
||
2520 .global HAL_SPI_TransmitReceive_IT
|
||
ARM GAS /tmp/ccs34gJO.s page 76
|
||
|
||
|
||
2521 .syntax unified
|
||
2522 .thumb
|
||
2523 .thumb_func
|
||
2525 HAL_SPI_TransmitReceive_IT:
|
||
2526 .LFB139:
|
||
1758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Transmit and Receive an amount of data in non-blocking mode with Interrupt.
|
||
1761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pTxData pointer to transmission data buffer
|
||
1764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pRxData pointer to reception data buffer
|
||
1765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent and received
|
||
1766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
1767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
1768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_TransmitReceive_IT(SPI_HandleTypeDef *hspi, uint8_t *pTxData, uint8_t *pR
|
||
1769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2527 .loc 1 1769 1
|
||
2528 .cfi_startproc
|
||
2529 @ args = 0, pretend = 0, frame = 24
|
||
2530 @ frame_needed = 1, uses_anonymous_args = 0
|
||
2531 @ link register save eliminated.
|
||
2532 0000 80B4 push {r7}
|
||
2533 .cfi_def_cfa_offset 4
|
||
2534 .cfi_offset 7, -4
|
||
2535 0002 87B0 sub sp, sp, #28
|
||
2536 .cfi_def_cfa_offset 32
|
||
2537 0004 00AF add r7, sp, #0
|
||
2538 .cfi_def_cfa_register 7
|
||
2539 0006 F860 str r0, [r7, #12]
|
||
2540 0008 B960 str r1, [r7, #8]
|
||
2541 000a 7A60 str r2, [r7, #4]
|
||
2542 000c 7B80 strh r3, [r7, #2] @ movhi
|
||
1770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_mode;
|
||
1771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_StateTypeDef tmp_state;
|
||
1772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
2543 .loc 1 1772 24
|
||
2544 000e 0023 movs r3, #0
|
||
2545 0010 FB75 strb r3, [r7, #23]
|
||
1773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check Direction parameter */
|
||
1775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION_2LINES(hspi->Init.Direction));
|
||
1776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process locked */
|
||
1778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
2546 .loc 1 1778 3
|
||
2547 0012 FB68 ldr r3, [r7, #12]
|
||
2548 0014 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
2549 0018 012B cmp r3, #1
|
||
2550 001a 01D1 bne .L140
|
||
2551 .loc 1 1778 3 is_stmt 0 discriminator 1
|
||
2552 001c 0223 movs r3, #2
|
||
2553 .loc 1 1778 3
|
||
2554 001e 91E0 b .L141
|
||
2555 .L140:
|
||
2556 .loc 1 1778 3 discriminator 2
|
||
2557 0020 FB68 ldr r3, [r7, #12]
|
||
ARM GAS /tmp/ccs34gJO.s page 77
|
||
|
||
|
||
2558 0022 0122 movs r2, #1
|
||
2559 0024 83F85C20 strb r2, [r3, #92]
|
||
1779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init temporary variables */
|
||
1781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_state = hspi->State;
|
||
2560 .loc 1 1781 23 is_stmt 1
|
||
2561 0028 FB68 ldr r3, [r7, #12]
|
||
2562 002a 93F85D30 ldrb r3, [r3, #93]
|
||
2563 002e BB75 strb r3, [r7, #22]
|
||
1782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_mode = hspi->Init.Mode;
|
||
2564 .loc 1 1782 23
|
||
2565 0030 FB68 ldr r3, [r7, #12]
|
||
2566 0032 5B68 ldr r3, [r3, #4]
|
||
2567 0034 3B61 str r3, [r7, #16]
|
||
1783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (!((tmp_state == HAL_SPI_STATE_READY) || \
|
||
2568 .loc 1 1784 6
|
||
2569 0036 BB7D ldrb r3, [r7, #22] @ zero_extendqisi2
|
||
2570 0038 012B cmp r3, #1
|
||
2571 003a 0DD0 beq .L142
|
||
2572 .loc 1 1784 7 discriminator 1
|
||
2573 003c 3B69 ldr r3, [r7, #16]
|
||
2574 003e B3F5827F cmp r3, #260
|
||
2575 0042 06D1 bne .L143
|
||
1785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ((tmp_mode == SPI_MODE_MASTER) && (hspi->Init.Direction == SPI_DIRECTION_2LINES) && (tmp_st
|
||
2576 .loc 1 1785 54
|
||
2577 0044 FB68 ldr r3, [r7, #12]
|
||
2578 0046 9B68 ldr r3, [r3, #8]
|
||
2579 .loc 1 1785 40
|
||
2580 0048 002B cmp r3, #0
|
||
2581 004a 02D1 bne .L143
|
||
2582 .loc 1 1785 90 discriminator 1
|
||
2583 004c BB7D ldrb r3, [r7, #22] @ zero_extendqisi2
|
||
2584 004e 042B cmp r3, #4
|
||
2585 0050 02D0 beq .L142
|
||
2586 .L143:
|
||
1786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
2587 .loc 1 1787 15
|
||
2588 0052 0223 movs r3, #2
|
||
2589 0054 FB75 strb r3, [r7, #23]
|
||
1788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2590 .loc 1 1788 5
|
||
2591 0056 70E0 b .L144
|
||
2592 .L142:
|
||
1789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pTxData == NULL) || (pRxData == NULL) || (Size == 0U))
|
||
2593 .loc 1 1791 6
|
||
2594 0058 BB68 ldr r3, [r7, #8]
|
||
2595 005a 002B cmp r3, #0
|
||
2596 005c 05D0 beq .L145
|
||
2597 .loc 1 1791 25 discriminator 1
|
||
2598 005e 7B68 ldr r3, [r7, #4]
|
||
2599 0060 002B cmp r3, #0
|
||
2600 0062 02D0 beq .L145
|
||
2601 .loc 1 1791 46 discriminator 2
|
||
ARM GAS /tmp/ccs34gJO.s page 78
|
||
|
||
|
||
2602 0064 7B88 ldrh r3, [r7, #2]
|
||
2603 0066 002B cmp r3, #0
|
||
2604 0068 02D1 bne .L146
|
||
2605 .L145:
|
||
1792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
2606 .loc 1 1793 15
|
||
2607 006a 0123 movs r3, #1
|
||
2608 006c FB75 strb r3, [r7, #23]
|
||
1794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2609 .loc 1 1794 5
|
||
2610 006e 64E0 b .L144
|
||
2611 .L146:
|
||
1795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Don't overwrite in case of HAL_SPI_STATE_BUSY_RX */
|
||
1798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_BUSY_RX)
|
||
2612 .loc 1 1798 11
|
||
2613 0070 FB68 ldr r3, [r7, #12]
|
||
2614 0072 93F85D30 ldrb r3, [r3, #93]
|
||
2615 0076 DBB2 uxtb r3, r3
|
||
2616 .loc 1 1798 6
|
||
2617 0078 042B cmp r3, #4
|
||
2618 007a 03D0 beq .L147
|
||
1799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_TX_RX;
|
||
2619 .loc 1 1800 17
|
||
2620 007c FB68 ldr r3, [r7, #12]
|
||
2621 007e 0522 movs r2, #5
|
||
2622 0080 83F85D20 strb r2, [r3, #93]
|
||
2623 .L147:
|
||
1801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
1804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
2624 .loc 1 1804 21
|
||
2625 0084 FB68 ldr r3, [r7, #12]
|
||
2626 0086 0022 movs r2, #0
|
||
2627 0088 1A66 str r2, [r3, #96]
|
||
1805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)pTxData;
|
||
2628 .loc 1 1805 21
|
||
2629 008a FB68 ldr r3, [r7, #12]
|
||
2630 008c BA68 ldr r2, [r7, #8]
|
||
2631 008e 9A63 str r2, [r3, #56]
|
||
1806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = Size;
|
||
2632 .loc 1 1806 21
|
||
2633 0090 FB68 ldr r3, [r7, #12]
|
||
2634 0092 7A88 ldrh r2, [r7, #2] @ movhi
|
||
2635 0094 9A87 strh r2, [r3, #60] @ movhi
|
||
1807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = Size;
|
||
2636 .loc 1 1807 21
|
||
2637 0096 FB68 ldr r3, [r7, #12]
|
||
2638 0098 7A88 ldrh r2, [r7, #2] @ movhi
|
||
2639 009a DA87 strh r2, [r3, #62] @ movhi
|
||
1808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)pRxData;
|
||
2640 .loc 1 1808 21
|
||
2641 009c FB68 ldr r3, [r7, #12]
|
||
ARM GAS /tmp/ccs34gJO.s page 79
|
||
|
||
|
||
2642 009e 7A68 ldr r2, [r7, #4]
|
||
2643 00a0 1A64 str r2, [r3, #64]
|
||
1809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = Size;
|
||
2644 .loc 1 1809 21
|
||
2645 00a2 FB68 ldr r3, [r7, #12]
|
||
2646 00a4 7A88 ldrh r2, [r7, #2] @ movhi
|
||
2647 00a6 A3F84420 strh r2, [r3, #68] @ movhi
|
||
1810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = Size;
|
||
2648 .loc 1 1810 21
|
||
2649 00aa FB68 ldr r3, [r7, #12]
|
||
2650 00ac 7A88 ldrh r2, [r7, #2] @ movhi
|
||
2651 00ae A3F84620 strh r2, [r3, #70] @ movhi
|
||
1811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the function for IT treatment */
|
||
1813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
2652 .loc 1 1813 17
|
||
2653 00b2 FB68 ldr r3, [r7, #12]
|
||
2654 00b4 DB68 ldr r3, [r3, #12]
|
||
2655 .loc 1 1813 6
|
||
2656 00b6 B3F5E06F cmp r3, #1792
|
||
2657 00ba 06D9 bls .L148
|
||
1814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_2linesRxISR_16BIT;
|
||
2658 .loc 1 1815 21
|
||
2659 00bc FB68 ldr r3, [r7, #12]
|
||
2660 00be 244A ldr r2, .L154
|
||
2661 00c0 DA64 str r2, [r3, #76]
|
||
1816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = SPI_2linesTxISR_16BIT;
|
||
2662 .loc 1 1816 21
|
||
2663 00c2 FB68 ldr r3, [r7, #12]
|
||
2664 00c4 234A ldr r2, .L154+4
|
||
2665 00c6 1A65 str r2, [r3, #80]
|
||
2666 00c8 05E0 b .L149
|
||
2667 .L148:
|
||
1817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_2linesRxISR_8BIT;
|
||
2668 .loc 1 1820 21
|
||
2669 00ca FB68 ldr r3, [r7, #12]
|
||
2670 00cc 224A ldr r2, .L154+8
|
||
2671 00ce DA64 str r2, [r3, #76]
|
||
1821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = SPI_2linesTxISR_8BIT;
|
||
2672 .loc 1 1821 21
|
||
2673 00d0 FB68 ldr r3, [r7, #12]
|
||
2674 00d2 224A ldr r2, .L154+12
|
||
2675 00d4 1A65 str r2, [r3, #80]
|
||
2676 .L149:
|
||
1822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
1826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize = 1U;
|
||
1829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize <= SPI_DATASIZE_8BIT) && (hspi->Init.CRCLength == SPI_CRC_LENGTH_16BIT
|
||
1830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 80
|
||
|
||
|
||
1831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize = 2U;
|
||
1832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
1834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize = 0U;
|
||
1838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if packing mode is enabled and if there is more than 2 data to receive */
|
||
1842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize > SPI_DATASIZE_8BIT) || (Size >= 2U))
|
||
2677 .loc 1 1842 18
|
||
2678 00d6 FB68 ldr r3, [r7, #12]
|
||
2679 00d8 DB68 ldr r3, [r3, #12]
|
||
2680 .loc 1 1842 6
|
||
2681 00da B3F5E06F cmp r3, #1792
|
||
2682 00de 02D8 bhi .L150
|
||
2683 .loc 1 1842 49 discriminator 1
|
||
2684 00e0 7B88 ldrh r3, [r7, #2]
|
||
2685 00e2 012B cmp r3, #1
|
||
2686 00e4 08D9 bls .L151
|
||
2687 .L150:
|
||
1843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 16 bit */
|
||
1845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
2688 .loc 1 1845 5
|
||
2689 00e6 FB68 ldr r3, [r7, #12]
|
||
2690 00e8 1B68 ldr r3, [r3]
|
||
2691 00ea 5A68 ldr r2, [r3, #4]
|
||
2692 00ec FB68 ldr r3, [r7, #12]
|
||
2693 00ee 1B68 ldr r3, [r3]
|
||
2694 00f0 22F48052 bic r2, r2, #4096
|
||
2695 00f4 5A60 str r2, [r3, #4]
|
||
2696 00f6 07E0 b .L152
|
||
2697 .L151:
|
||
1846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 8 bit */
|
||
1850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
2698 .loc 1 1850 5
|
||
2699 00f8 FB68 ldr r3, [r7, #12]
|
||
2700 00fa 1B68 ldr r3, [r3]
|
||
2701 00fc 5A68 ldr r2, [r3, #4]
|
||
2702 00fe FB68 ldr r3, [r7, #12]
|
||
2703 0100 1B68 ldr r3, [r3]
|
||
2704 0102 42F48052 orr r2, r2, #4096
|
||
2705 0106 5A60 str r2, [r3, #4]
|
||
2706 .L152:
|
||
1851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable TXE, RXNE and ERR interrupt */
|
||
1854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE_IT(hspi, (SPI_IT_TXE | SPI_IT_RXNE | SPI_IT_ERR));
|
||
2707 .loc 1 1854 3
|
||
2708 0108 FB68 ldr r3, [r7, #12]
|
||
2709 010a 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 81
|
||
|
||
|
||
2710 010c 5A68 ldr r2, [r3, #4]
|
||
2711 010e FB68 ldr r3, [r7, #12]
|
||
2712 0110 1B68 ldr r3, [r3]
|
||
2713 0112 42F0E002 orr r2, r2, #224
|
||
2714 0116 5A60 str r2, [r3, #4]
|
||
1855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
1857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
2715 .loc 1 1857 12
|
||
2716 0118 FB68 ldr r3, [r7, #12]
|
||
2717 011a 1B68 ldr r3, [r3]
|
||
2718 .loc 1 1857 22
|
||
2719 011c 1B68 ldr r3, [r3]
|
||
2720 .loc 1 1857 28
|
||
2721 011e 03F04003 and r3, r3, #64
|
||
2722 .loc 1 1857 6
|
||
2723 0122 402B cmp r3, #64
|
||
2724 0124 08D0 beq .L153
|
||
1858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
1860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
2725 .loc 1 1860 5
|
||
2726 0126 FB68 ldr r3, [r7, #12]
|
||
2727 0128 1B68 ldr r3, [r3]
|
||
2728 012a 1A68 ldr r2, [r3]
|
||
2729 012c FB68 ldr r3, [r7, #12]
|
||
2730 012e 1B68 ldr r3, [r3]
|
||
2731 0130 42F04002 orr r2, r2, #64
|
||
2732 0134 1A60 str r2, [r3]
|
||
2733 0136 00E0 b .L144
|
||
2734 .L153:
|
||
1861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
2735 .loc 1 1863 1
|
||
2736 0138 00BF nop
|
||
2737 .L144:
|
||
1864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
1865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
2738 .loc 1 1865 3
|
||
2739 013a FB68 ldr r3, [r7, #12]
|
||
2740 013c 0022 movs r2, #0
|
||
2741 013e 83F85C20 strb r2, [r3, #92]
|
||
1866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
2742 .loc 1 1866 10
|
||
2743 0142 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
2744 .L141:
|
||
1867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2745 .loc 1 1867 1
|
||
2746 0144 1846 mov r0, r3
|
||
2747 0146 1C37 adds r7, r7, #28
|
||
2748 .cfi_def_cfa_offset 4
|
||
2749 0148 BD46 mov sp, r7
|
||
2750 .cfi_def_cfa_register 13
|
||
2751 @ sp needed
|
||
2752 014a 5DF8047B ldr r7, [sp], #4
|
||
2753 .cfi_restore 7
|
||
ARM GAS /tmp/ccs34gJO.s page 82
|
||
|
||
|
||
2754 .cfi_def_cfa_offset 0
|
||
2755 014e 7047 bx lr
|
||
2756 .L155:
|
||
2757 .align 2
|
||
2758 .L154:
|
||
2759 0150 00000000 .word SPI_2linesRxISR_16BIT
|
||
2760 0154 00000000 .word SPI_2linesTxISR_16BIT
|
||
2761 0158 00000000 .word SPI_2linesRxISR_8BIT
|
||
2762 015c 00000000 .word SPI_2linesTxISR_8BIT
|
||
2763 .cfi_endproc
|
||
2764 .LFE139:
|
||
2766 .section .text.HAL_SPI_Transmit_DMA,"ax",%progbits
|
||
2767 .align 1
|
||
2768 .global HAL_SPI_Transmit_DMA
|
||
2769 .syntax unified
|
||
2770 .thumb
|
||
2771 .thumb_func
|
||
2773 HAL_SPI_Transmit_DMA:
|
||
2774 .LFB140:
|
||
1868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Transmit an amount of data in non-blocking mode with DMA.
|
||
1871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pData pointer to data buffer
|
||
1874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent
|
||
1875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
1876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
1877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Transmit_DMA(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size)
|
||
1878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2775 .loc 1 1878 1
|
||
2776 .cfi_startproc
|
||
2777 @ args = 0, pretend = 0, frame = 24
|
||
2778 @ frame_needed = 1, uses_anonymous_args = 0
|
||
2779 0000 80B5 push {r7, lr}
|
||
2780 .cfi_def_cfa_offset 8
|
||
2781 .cfi_offset 7, -8
|
||
2782 .cfi_offset 14, -4
|
||
2783 0002 86B0 sub sp, sp, #24
|
||
2784 .cfi_def_cfa_offset 32
|
||
2785 0004 00AF add r7, sp, #0
|
||
2786 .cfi_def_cfa_register 7
|
||
2787 0006 F860 str r0, [r7, #12]
|
||
2788 0008 B960 str r1, [r7, #8]
|
||
2789 000a 1346 mov r3, r2
|
||
2790 000c FB80 strh r3, [r7, #6] @ movhi
|
||
1879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
2791 .loc 1 1879 21
|
||
2792 000e 0023 movs r3, #0
|
||
2793 0010 FB75 strb r3, [r7, #23]
|
||
1880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check tx dma handle */
|
||
1882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DMA_HANDLE(hspi->hdmatx));
|
||
1883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check Direction parameter */
|
||
1885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION_2LINES_OR_1LINE(hspi->Init.Direction));
|
||
1886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 83
|
||
|
||
|
||
1887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
1888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
2794 .loc 1 1888 3
|
||
2795 0012 FB68 ldr r3, [r7, #12]
|
||
2796 0014 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
2797 0018 012B cmp r3, #1
|
||
2798 001a 01D1 bne .L157
|
||
2799 .loc 1 1888 3 is_stmt 0 discriminator 1
|
||
2800 001c 0223 movs r3, #2
|
||
2801 .loc 1 1888 3
|
||
2802 001e D4E0 b .L158
|
||
2803 .L157:
|
||
2804 .loc 1 1888 3 discriminator 2
|
||
2805 0020 FB68 ldr r3, [r7, #12]
|
||
2806 0022 0122 movs r2, #1
|
||
2807 0024 83F85C20 strb r2, [r3, #92]
|
||
1889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_READY)
|
||
2808 .loc 1 1890 11 is_stmt 1
|
||
2809 0028 FB68 ldr r3, [r7, #12]
|
||
2810 002a 93F85D30 ldrb r3, [r3, #93]
|
||
2811 002e DBB2 uxtb r3, r3
|
||
2812 .loc 1 1890 6
|
||
2813 0030 012B cmp r3, #1
|
||
2814 0032 02D0 beq .L159
|
||
1891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
2815 .loc 1 1892 15
|
||
2816 0034 0223 movs r3, #2
|
||
2817 0036 FB75 strb r3, [r7, #23]
|
||
1893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2818 .loc 1 1893 5
|
||
2819 0038 C2E0 b .L160
|
||
2820 .L159:
|
||
1894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pData == NULL) || (Size == 0U))
|
||
2821 .loc 1 1896 6
|
||
2822 003a BB68 ldr r3, [r7, #8]
|
||
2823 003c 002B cmp r3, #0
|
||
2824 003e 02D0 beq .L161
|
||
2825 .loc 1 1896 23 discriminator 1
|
||
2826 0040 FB88 ldrh r3, [r7, #6]
|
||
2827 0042 002B cmp r3, #0
|
||
2828 0044 02D1 bne .L162
|
||
2829 .L161:
|
||
1897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
2830 .loc 1 1898 15
|
||
2831 0046 0123 movs r3, #1
|
||
2832 0048 FB75 strb r3, [r7, #23]
|
||
1899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
2833 .loc 1 1899 5
|
||
2834 004a B9E0 b .L160
|
||
2835 .L162:
|
||
1900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 84
|
||
|
||
|
||
1902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
1903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_TX;
|
||
2836 .loc 1 1903 21
|
||
2837 004c FB68 ldr r3, [r7, #12]
|
||
2838 004e 0322 movs r2, #3
|
||
2839 0050 83F85D20 strb r2, [r3, #93]
|
||
1904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
2840 .loc 1 1904 21
|
||
2841 0054 FB68 ldr r3, [r7, #12]
|
||
2842 0056 0022 movs r2, #0
|
||
2843 0058 1A66 str r2, [r3, #96]
|
||
1905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)pData;
|
||
2844 .loc 1 1905 21
|
||
2845 005a FB68 ldr r3, [r7, #12]
|
||
2846 005c BA68 ldr r2, [r7, #8]
|
||
2847 005e 9A63 str r2, [r3, #56]
|
||
1906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = Size;
|
||
2848 .loc 1 1906 21
|
||
2849 0060 FB68 ldr r3, [r7, #12]
|
||
2850 0062 FA88 ldrh r2, [r7, #6] @ movhi
|
||
2851 0064 9A87 strh r2, [r3, #60] @ movhi
|
||
1907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = Size;
|
||
2852 .loc 1 1907 21
|
||
2853 0066 FB68 ldr r3, [r7, #12]
|
||
2854 0068 FA88 ldrh r2, [r7, #6] @ movhi
|
||
2855 006a DA87 strh r2, [r3, #62] @ movhi
|
||
1908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init field not used in handle to zero */
|
||
1910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)NULL;
|
||
2856 .loc 1 1910 21
|
||
2857 006c FB68 ldr r3, [r7, #12]
|
||
2858 006e 0022 movs r2, #0
|
||
2859 0070 1A64 str r2, [r3, #64]
|
||
1911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
2860 .loc 1 1911 21
|
||
2861 0072 FB68 ldr r3, [r7, #12]
|
||
2862 0074 0022 movs r2, #0
|
||
2863 0076 1A65 str r2, [r3, #80]
|
||
1912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
2864 .loc 1 1912 21
|
||
2865 0078 FB68 ldr r3, [r7, #12]
|
||
2866 007a 0022 movs r2, #0
|
||
2867 007c DA64 str r2, [r3, #76]
|
||
1913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = 0U;
|
||
2868 .loc 1 1913 21
|
||
2869 007e FB68 ldr r3, [r7, #12]
|
||
2870 0080 0022 movs r2, #0
|
||
2871 0082 A3F84420 strh r2, [r3, #68] @ movhi
|
||
1914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
2872 .loc 1 1914 21
|
||
2873 0086 FB68 ldr r3, [r7, #12]
|
||
2874 0088 0022 movs r2, #0
|
||
2875 008a A3F84620 strh r2, [r3, #70] @ movhi
|
||
1915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure communication direction : 1Line */
|
||
1917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
2876 .loc 1 1917 17
|
||
ARM GAS /tmp/ccs34gJO.s page 85
|
||
|
||
|
||
2877 008e FB68 ldr r3, [r7, #12]
|
||
2878 0090 9B68 ldr r3, [r3, #8]
|
||
2879 .loc 1 1917 6
|
||
2880 0092 B3F5004F cmp r3, #32768
|
||
2881 0096 0FD1 bne .L163
|
||
1918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral before set 1Line direction (BIDIOE bit) */
|
||
1920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
2882 .loc 1 1920 5
|
||
2883 0098 FB68 ldr r3, [r7, #12]
|
||
2884 009a 1B68 ldr r3, [r3]
|
||
2885 009c 1A68 ldr r2, [r3]
|
||
2886 009e FB68 ldr r3, [r7, #12]
|
||
2887 00a0 1B68 ldr r3, [r3]
|
||
2888 00a2 22F04002 bic r2, r2, #64
|
||
2889 00a6 1A60 str r2, [r3]
|
||
1921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_1LINE_TX(hspi);
|
||
2890 .loc 1 1921 5
|
||
2891 00a8 FB68 ldr r3, [r7, #12]
|
||
2892 00aa 1B68 ldr r3, [r3]
|
||
2893 00ac 1A68 ldr r2, [r3]
|
||
2894 00ae FB68 ldr r3, [r7, #12]
|
||
2895 00b0 1B68 ldr r3, [r3]
|
||
2896 00b2 42F48042 orr r2, r2, #16384
|
||
2897 00b6 1A60 str r2, [r3]
|
||
2898 .L163:
|
||
1922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
1925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
1926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
1927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
1929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
1931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI TxDMA Half transfer complete callback */
|
||
1933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferHalfCpltCallback = SPI_DMAHalfTransmitCplt;
|
||
2899 .loc 1 1933 7
|
||
2900 00b8 FB68 ldr r3, [r7, #12]
|
||
2901 00ba 5B6D ldr r3, [r3, #84]
|
||
2902 .loc 1 1933 38
|
||
2903 00bc 454A ldr r2, .L168
|
||
2904 00be DA62 str r2, [r3, #44]
|
||
1934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI TxDMA transfer complete callback */
|
||
1936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferCpltCallback = SPI_DMATransmitCplt;
|
||
2905 .loc 1 1936 7
|
||
2906 00c0 FB68 ldr r3, [r7, #12]
|
||
2907 00c2 5B6D ldr r3, [r3, #84]
|
||
2908 .loc 1 1936 34
|
||
2909 00c4 444A ldr r2, .L168+4
|
||
2910 00c6 9A62 str r2, [r3, #40]
|
||
1937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the DMA error callback */
|
||
1939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferErrorCallback = SPI_DMAError;
|
||
2911 .loc 1 1939 7
|
||
ARM GAS /tmp/ccs34gJO.s page 86
|
||
|
||
|
||
2912 00c8 FB68 ldr r3, [r7, #12]
|
||
2913 00ca 5B6D ldr r3, [r3, #84]
|
||
2914 .loc 1 1939 35
|
||
2915 00cc 434A ldr r2, .L168+8
|
||
2916 00ce 1A63 str r2, [r3, #48]
|
||
1940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the DMA AbortCpltCallback */
|
||
1942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = NULL;
|
||
2917 .loc 1 1942 7
|
||
2918 00d0 FB68 ldr r3, [r7, #12]
|
||
2919 00d2 5B6D ldr r3, [r3, #84]
|
||
2920 .loc 1 1942 35
|
||
2921 00d4 0022 movs r2, #0
|
||
2922 00d6 5A63 str r2, [r3, #52]
|
||
1943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMATX);
|
||
2923 .loc 1 1944 3
|
||
2924 00d8 FB68 ldr r3, [r7, #12]
|
||
2925 00da 1B68 ldr r3, [r3]
|
||
2926 00dc 5A68 ldr r2, [r3, #4]
|
||
2927 00de FB68 ldr r3, [r7, #12]
|
||
2928 00e0 1B68 ldr r3, [r3]
|
||
2929 00e2 22F48042 bic r2, r2, #16384
|
||
2930 00e6 5A60 str r2, [r3, #4]
|
||
1945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Packing mode is enabled only if the DMA setting is HALWORD */
|
||
1946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize <= SPI_DATASIZE_8BIT) && (hspi->hdmatx->Init.MemDataAlignment == DMA_MDA
|
||
2931 .loc 1 1946 18
|
||
2932 00e8 FB68 ldr r3, [r7, #12]
|
||
2933 00ea DB68 ldr r3, [r3, #12]
|
||
2934 .loc 1 1946 6
|
||
2935 00ec B3F5E06F cmp r3, #1792
|
||
2936 00f0 2DD8 bhi .L164
|
||
2937 .loc 1 1946 58 discriminator 1
|
||
2938 00f2 FB68 ldr r3, [r7, #12]
|
||
2939 00f4 5B6D ldr r3, [r3, #84]
|
||
2940 .loc 1 1946 72 discriminator 1
|
||
2941 00f6 5B69 ldr r3, [r3, #20]
|
||
2942 .loc 1 1946 50 discriminator 1
|
||
2943 00f8 B3F5806F cmp r3, #1024
|
||
2944 00fc 27D1 bne .L164
|
||
1947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the even/odd of the data size + crc if enabled */
|
||
1949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->TxXferCount & 0x1U) == 0U)
|
||
2945 .loc 1 1949 14
|
||
2946 00fe FB68 ldr r3, [r7, #12]
|
||
2947 0100 DB8F ldrh r3, [r3, #62] @ movhi
|
||
2948 0102 9BB2 uxth r3, r3
|
||
2949 .loc 1 1949 28
|
||
2950 0104 03F00103 and r3, r3, #1
|
||
2951 .loc 1 1949 8
|
||
2952 0108 002B cmp r3, #0
|
||
2953 010a 0FD1 bne .L165
|
||
1950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMATX);
|
||
2954 .loc 1 1951 7
|
||
2955 010c FB68 ldr r3, [r7, #12]
|
||
2956 010e 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 87
|
||
|
||
|
||
2957 0110 5A68 ldr r2, [r3, #4]
|
||
2958 0112 FB68 ldr r3, [r7, #12]
|
||
2959 0114 1B68 ldr r3, [r3]
|
||
2960 0116 22F48042 bic r2, r2, #16384
|
||
2961 011a 5A60 str r2, [r3, #4]
|
||
1952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = (hspi->TxXferCount >> 1U);
|
||
2962 .loc 1 1952 32
|
||
2963 011c FB68 ldr r3, [r7, #12]
|
||
2964 011e DB8F ldrh r3, [r3, #62] @ movhi
|
||
2965 0120 9BB2 uxth r3, r3
|
||
2966 .loc 1 1952 25
|
||
2967 0122 5B08 lsrs r3, r3, #1
|
||
2968 0124 9AB2 uxth r2, r3
|
||
2969 0126 FB68 ldr r3, [r7, #12]
|
||
2970 0128 DA87 strh r2, [r3, #62] @ movhi
|
||
2971 012a 10E0 b .L164
|
||
2972 .L165:
|
||
1953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
1955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_LDMATX);
|
||
2973 .loc 1 1956 7
|
||
2974 012c FB68 ldr r3, [r7, #12]
|
||
2975 012e 1B68 ldr r3, [r3]
|
||
2976 0130 5A68 ldr r2, [r3, #4]
|
||
2977 0132 FB68 ldr r3, [r7, #12]
|
||
2978 0134 1B68 ldr r3, [r3]
|
||
2979 0136 42F48042 orr r2, r2, #16384
|
||
2980 013a 5A60 str r2, [r3, #4]
|
||
1957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = (hspi->TxXferCount >> 1U) + 1U;
|
||
2981 .loc 1 1957 32
|
||
2982 013c FB68 ldr r3, [r7, #12]
|
||
2983 013e DB8F ldrh r3, [r3, #62] @ movhi
|
||
2984 0140 9BB2 uxth r3, r3
|
||
2985 .loc 1 1957 53
|
||
2986 0142 5B08 lsrs r3, r3, #1
|
||
2987 0144 9BB2 uxth r3, r3
|
||
2988 0146 0133 adds r3, r3, #1
|
||
2989 0148 9AB2 uxth r2, r3
|
||
2990 .loc 1 1957 25
|
||
2991 014a FB68 ldr r3, [r7, #12]
|
||
2992 014c DA87 strh r2, [r3, #62] @ movhi
|
||
2993 .L164:
|
||
1958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the Tx DMA Stream/Channel */
|
||
1962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Start_IT(hspi->hdmatx, (uint32_t)hspi->pTxBuffPtr, (uint32_t)&hspi->Instanc
|
||
2994 .loc 1 1962 17
|
||
2995 014e FB68 ldr r3, [r7, #12]
|
||
2996 0150 586D ldr r0, [r3, #84]
|
||
2997 .loc 1 1962 62
|
||
2998 0152 FB68 ldr r3, [r7, #12]
|
||
2999 0154 9B6B ldr r3, [r3, #56]
|
||
3000 .loc 1 1962 17
|
||
3001 0156 1946 mov r1, r3
|
||
3002 .loc 1 1962 91
|
||
ARM GAS /tmp/ccs34gJO.s page 88
|
||
|
||
|
||
3003 0158 FB68 ldr r3, [r7, #12]
|
||
3004 015a 1B68 ldr r3, [r3]
|
||
3005 .loc 1 1962 86
|
||
3006 015c 0C33 adds r3, r3, #12
|
||
3007 .loc 1 1962 17
|
||
3008 015e 1A46 mov r2, r3
|
||
1963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount))
|
||
3009 .loc 1 1963 38
|
||
3010 0160 FB68 ldr r3, [r7, #12]
|
||
3011 0162 DB8F ldrh r3, [r3, #62] @ movhi
|
||
3012 0164 9BB2 uxth r3, r3
|
||
1962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount))
|
||
3013 .loc 1 1962 17
|
||
3014 0166 FFF7FEFF bl HAL_DMA_Start_IT
|
||
3015 016a 0346 mov r3, r0
|
||
1962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount))
|
||
3016 .loc 1 1962 6 discriminator 1
|
||
3017 016c 002B cmp r3, #0
|
||
3018 016e 08D0 beq .L166
|
||
1964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update SPI error code */
|
||
1966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
3019 .loc 1 1966 5
|
||
3020 0170 FB68 ldr r3, [r7, #12]
|
||
3021 0172 1B6E ldr r3, [r3, #96]
|
||
3022 0174 43F01002 orr r2, r3, #16
|
||
3023 0178 FB68 ldr r3, [r7, #12]
|
||
3024 017a 1A66 str r2, [r3, #96]
|
||
1967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3025 .loc 1 1967 15
|
||
3026 017c 0123 movs r3, #1
|
||
3027 017e FB75 strb r3, [r7, #23]
|
||
1968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3028 .loc 1 1969 5
|
||
3029 0180 1EE0 b .L160
|
||
3030 .L166:
|
||
1970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
1973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
3031 .loc 1 1973 12
|
||
3032 0182 FB68 ldr r3, [r7, #12]
|
||
3033 0184 1B68 ldr r3, [r3]
|
||
3034 .loc 1 1973 22
|
||
3035 0186 1B68 ldr r3, [r3]
|
||
3036 .loc 1 1973 28
|
||
3037 0188 03F04003 and r3, r3, #64
|
||
3038 .loc 1 1973 6
|
||
3039 018c 402B cmp r3, #64
|
||
3040 018e 07D0 beq .L167
|
||
1974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
1975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
1976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
3041 .loc 1 1976 5
|
||
3042 0190 FB68 ldr r3, [r7, #12]
|
||
3043 0192 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 89
|
||
|
||
|
||
3044 0194 1A68 ldr r2, [r3]
|
||
3045 0196 FB68 ldr r3, [r7, #12]
|
||
3046 0198 1B68 ldr r3, [r3]
|
||
3047 019a 42F04002 orr r2, r2, #64
|
||
3048 019e 1A60 str r2, [r3]
|
||
3049 .L167:
|
||
1977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
1978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the SPI Error Interrupt Bit */
|
||
1980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE_IT(hspi, (SPI_IT_ERR));
|
||
3050 .loc 1 1980 3
|
||
3051 01a0 FB68 ldr r3, [r7, #12]
|
||
3052 01a2 1B68 ldr r3, [r3]
|
||
3053 01a4 5A68 ldr r2, [r3, #4]
|
||
3054 01a6 FB68 ldr r3, [r7, #12]
|
||
3055 01a8 1B68 ldr r3, [r3]
|
||
3056 01aa 42F02002 orr r2, r2, #32
|
||
3057 01ae 5A60 str r2, [r3, #4]
|
||
1981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable Tx DMA Request */
|
||
1983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN);
|
||
3058 .loc 1 1983 3
|
||
3059 01b0 FB68 ldr r3, [r7, #12]
|
||
3060 01b2 1B68 ldr r3, [r3]
|
||
3061 01b4 5A68 ldr r2, [r3, #4]
|
||
3062 01b6 FB68 ldr r3, [r7, #12]
|
||
3063 01b8 1B68 ldr r3, [r3]
|
||
3064 01ba 42F00202 orr r2, r2, #2
|
||
3065 01be 5A60 str r2, [r3, #4]
|
||
3066 .L160:
|
||
1984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
1986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
1987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
3067 .loc 1 1987 3
|
||
3068 01c0 FB68 ldr r3, [r7, #12]
|
||
3069 01c2 0022 movs r2, #0
|
||
3070 01c4 83F85C20 strb r2, [r3, #92]
|
||
1988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
3071 .loc 1 1988 10
|
||
3072 01c8 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
3073 .L158:
|
||
1989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3074 .loc 1 1989 1
|
||
3075 01ca 1846 mov r0, r3
|
||
3076 01cc 1837 adds r7, r7, #24
|
||
3077 .cfi_def_cfa_offset 8
|
||
3078 01ce BD46 mov sp, r7
|
||
3079 .cfi_def_cfa_register 13
|
||
3080 @ sp needed
|
||
3081 01d0 80BD pop {r7, pc}
|
||
3082 .L169:
|
||
3083 01d2 00BF .align 2
|
||
3084 .L168:
|
||
3085 01d4 00000000 .word SPI_DMAHalfTransmitCplt
|
||
3086 01d8 00000000 .word SPI_DMATransmitCplt
|
||
3087 01dc 00000000 .word SPI_DMAError
|
||
ARM GAS /tmp/ccs34gJO.s page 90
|
||
|
||
|
||
3088 .cfi_endproc
|
||
3089 .LFE140:
|
||
3091 .section .text.HAL_SPI_Receive_DMA,"ax",%progbits
|
||
3092 .align 1
|
||
3093 .global HAL_SPI_Receive_DMA
|
||
3094 .syntax unified
|
||
3095 .thumb
|
||
3096 .thumb_func
|
||
3098 HAL_SPI_Receive_DMA:
|
||
3099 .LFB141:
|
||
1990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
1991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
1992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Receive an amount of data in non-blocking mode with DMA.
|
||
1993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note In case of MASTER mode and SPI_DIRECTION_2LINES direction, hdmatx shall be defined.
|
||
1994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
1995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
1996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pData pointer to data buffer
|
||
1997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note When the CRC feature is enabled the pData Length must be Size + 1.
|
||
1998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent
|
||
1999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Receive_DMA(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size)
|
||
2002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3100 .loc 1 2002 1
|
||
3101 .cfi_startproc
|
||
3102 @ args = 0, pretend = 0, frame = 24
|
||
3103 @ frame_needed = 1, uses_anonymous_args = 0
|
||
3104 0000 80B5 push {r7, lr}
|
||
3105 .cfi_def_cfa_offset 8
|
||
3106 .cfi_offset 7, -8
|
||
3107 .cfi_offset 14, -4
|
||
3108 0002 86B0 sub sp, sp, #24
|
||
3109 .cfi_def_cfa_offset 32
|
||
3110 0004 00AF add r7, sp, #0
|
||
3111 .cfi_def_cfa_register 7
|
||
3112 0006 F860 str r0, [r7, #12]
|
||
3113 0008 B960 str r1, [r7, #8]
|
||
3114 000a 1346 mov r3, r2
|
||
3115 000c FB80 strh r3, [r7, #6] @ movhi
|
||
2003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
3116 .loc 1 2003 21
|
||
3117 000e 0023 movs r3, #0
|
||
3118 0010 FB75 strb r3, [r7, #23]
|
||
2004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check rx dma handle */
|
||
2006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DMA_HANDLE(hspi->hdmarx));
|
||
2007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_READY)
|
||
3119 .loc 1 2008 11
|
||
3120 0012 FB68 ldr r3, [r7, #12]
|
||
3121 0014 93F85D30 ldrb r3, [r3, #93]
|
||
3122 0018 DBB2 uxtb r3, r3
|
||
3123 .loc 1 2008 6
|
||
3124 001a 012B cmp r3, #1
|
||
3125 001c 02D0 beq .L171
|
||
2009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
ARM GAS /tmp/ccs34gJO.s page 91
|
||
|
||
|
||
3126 .loc 1 2010 15
|
||
3127 001e 0223 movs r3, #2
|
||
3128 0020 FB75 strb r3, [r7, #23]
|
||
2011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3129 .loc 1 2011 5
|
||
3130 0022 0CE1 b .L172
|
||
3131 .L171:
|
||
2012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Direction == SPI_DIRECTION_2LINES) && (hspi->Init.Mode == SPI_MODE_MASTER))
|
||
3132 .loc 1 2014 18
|
||
3133 0024 FB68 ldr r3, [r7, #12]
|
||
3134 0026 9B68 ldr r3, [r3, #8]
|
||
3135 .loc 1 2014 6
|
||
3136 0028 002B cmp r3, #0
|
||
3137 002a 10D1 bne .L173
|
||
3138 .loc 1 2014 68 discriminator 1
|
||
3139 002c FB68 ldr r3, [r7, #12]
|
||
3140 002e 5B68 ldr r3, [r3, #4]
|
||
3141 .loc 1 2014 54 discriminator 1
|
||
3142 0030 B3F5827F cmp r3, #260
|
||
3143 0034 0BD1 bne .L173
|
||
2015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_RX;
|
||
3144 .loc 1 2016 17
|
||
3145 0036 FB68 ldr r3, [r7, #12]
|
||
3146 0038 0422 movs r2, #4
|
||
3147 003a 83F85D20 strb r2, [r3, #93]
|
||
2017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check tx dma handle */
|
||
2019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DMA_HANDLE(hspi->hdmatx));
|
||
2020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call transmit-receive function to send Dummy data on Tx line and generate clock on CLK line
|
||
2022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_SPI_TransmitReceive_DMA(hspi, pData, pData, Size);
|
||
3148 .loc 1 2022 12
|
||
3149 003e FB88 ldrh r3, [r7, #6]
|
||
3150 0040 BA68 ldr r2, [r7, #8]
|
||
3151 0042 B968 ldr r1, [r7, #8]
|
||
3152 0044 F868 ldr r0, [r7, #12]
|
||
3153 0046 FFF7FEFF bl HAL_SPI_TransmitReceive_DMA
|
||
3154 004a 0346 mov r3, r0
|
||
3155 004c FCE0 b .L174
|
||
3156 .L173:
|
||
2023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
2026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
3157 .loc 1 2026 3
|
||
3158 004e FB68 ldr r3, [r7, #12]
|
||
3159 0050 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
3160 0054 012B cmp r3, #1
|
||
3161 0056 01D1 bne .L175
|
||
3162 .loc 1 2026 3 is_stmt 0 discriminator 1
|
||
3163 0058 0223 movs r3, #2
|
||
3164 .loc 1 2026 3
|
||
3165 005a F5E0 b .L174
|
||
3166 .L175:
|
||
ARM GAS /tmp/ccs34gJO.s page 92
|
||
|
||
|
||
3167 .loc 1 2026 3 discriminator 2
|
||
3168 005c FB68 ldr r3, [r7, #12]
|
||
3169 005e 0122 movs r2, #1
|
||
3170 0060 83F85C20 strb r2, [r3, #92]
|
||
2027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pData == NULL) || (Size == 0U))
|
||
3171 .loc 1 2028 6 is_stmt 1
|
||
3172 0064 BB68 ldr r3, [r7, #8]
|
||
3173 0066 002B cmp r3, #0
|
||
3174 0068 02D0 beq .L176
|
||
3175 .loc 1 2028 23 discriminator 1
|
||
3176 006a FB88 ldrh r3, [r7, #6]
|
||
3177 006c 002B cmp r3, #0
|
||
3178 006e 02D1 bne .L177
|
||
3179 .L176:
|
||
2029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3180 .loc 1 2030 15
|
||
3181 0070 0123 movs r3, #1
|
||
3182 0072 FB75 strb r3, [r7, #23]
|
||
2031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3183 .loc 1 2031 5
|
||
3184 0074 E3E0 b .L172
|
||
3185 .L177:
|
||
2032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
2035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_RX;
|
||
3186 .loc 1 2035 21
|
||
3187 0076 FB68 ldr r3, [r7, #12]
|
||
3188 0078 0422 movs r2, #4
|
||
3189 007a 83F85D20 strb r2, [r3, #93]
|
||
2036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
3190 .loc 1 2036 21
|
||
3191 007e FB68 ldr r3, [r7, #12]
|
||
3192 0080 0022 movs r2, #0
|
||
3193 0082 1A66 str r2, [r3, #96]
|
||
2037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)pData;
|
||
3194 .loc 1 2037 21
|
||
3195 0084 FB68 ldr r3, [r7, #12]
|
||
3196 0086 BA68 ldr r2, [r7, #8]
|
||
3197 0088 1A64 str r2, [r3, #64]
|
||
2038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = Size;
|
||
3198 .loc 1 2038 21
|
||
3199 008a FB68 ldr r3, [r7, #12]
|
||
3200 008c FA88 ldrh r2, [r7, #6] @ movhi
|
||
3201 008e A3F84420 strh r2, [r3, #68] @ movhi
|
||
2039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = Size;
|
||
3202 .loc 1 2039 21
|
||
3203 0092 FB68 ldr r3, [r7, #12]
|
||
3204 0094 FA88 ldrh r2, [r7, #6] @ movhi
|
||
3205 0096 A3F84620 strh r2, [r3, #70] @ movhi
|
||
2040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /*Init field not used in handle to zero */
|
||
2042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
3206 .loc 1 2042 21
|
||
3207 009a FB68 ldr r3, [r7, #12]
|
||
ARM GAS /tmp/ccs34gJO.s page 93
|
||
|
||
|
||
3208 009c 0022 movs r2, #0
|
||
3209 009e DA64 str r2, [r3, #76]
|
||
2043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
3210 .loc 1 2043 21
|
||
3211 00a0 FB68 ldr r3, [r7, #12]
|
||
3212 00a2 0022 movs r2, #0
|
||
3213 00a4 1A65 str r2, [r3, #80]
|
||
2044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = 0U;
|
||
3214 .loc 1 2044 21
|
||
3215 00a6 FB68 ldr r3, [r7, #12]
|
||
3216 00a8 0022 movs r2, #0
|
||
3217 00aa 9A87 strh r2, [r3, #60] @ movhi
|
||
2045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
3218 .loc 1 2045 21
|
||
3219 00ac FB68 ldr r3, [r7, #12]
|
||
3220 00ae 0022 movs r2, #0
|
||
3221 00b0 DA87 strh r2, [r3, #62] @ movhi
|
||
2046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Configure communication direction : 1Line */
|
||
2048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
3222 .loc 1 2048 17
|
||
3223 00b2 FB68 ldr r3, [r7, #12]
|
||
3224 00b4 9B68 ldr r3, [r3, #8]
|
||
3225 .loc 1 2048 6
|
||
3226 00b6 B3F5004F cmp r3, #32768
|
||
3227 00ba 0FD1 bne .L178
|
||
2049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral before set 1Line direction (BIDIOE bit) */
|
||
2051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
3228 .loc 1 2051 5
|
||
3229 00bc FB68 ldr r3, [r7, #12]
|
||
3230 00be 1B68 ldr r3, [r3]
|
||
3231 00c0 1A68 ldr r2, [r3]
|
||
3232 00c2 FB68 ldr r3, [r7, #12]
|
||
3233 00c4 1B68 ldr r3, [r3]
|
||
3234 00c6 22F04002 bic r2, r2, #64
|
||
3235 00ca 1A60 str r2, [r3]
|
||
2052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_1LINE_RX(hspi);
|
||
3236 .loc 1 2052 5
|
||
3237 00cc FB68 ldr r3, [r7, #12]
|
||
3238 00ce 1B68 ldr r3, [r3]
|
||
3239 00d0 1A68 ldr r2, [r3]
|
||
3240 00d2 FB68 ldr r3, [r7, #12]
|
||
3241 00d4 1B68 ldr r3, [r3]
|
||
3242 00d6 22F48042 bic r2, r2, #16384
|
||
3243 00da 1A60 str r2, [r3]
|
||
3244 .L178:
|
||
2053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
2056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
2057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
2058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
2060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
2062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 94
|
||
|
||
|
||
2063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if defined (STM32F302xC) || defined (STM32F303xC) || defined (STM32F373xC) || defined (STM32F358xx
|
||
2064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Packing mode management is enabled by the DMA settings */
|
||
2065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize <= SPI_DATASIZE_8BIT) && (hspi->hdmarx->Init.MemDataAlignment == DMA_MDA
|
||
3245 .loc 1 2065 18
|
||
3246 00dc FB68 ldr r3, [r7, #12]
|
||
3247 00de DB68 ldr r3, [r3, #12]
|
||
3248 .loc 1 2065 6
|
||
3249 00e0 B3F5E06F cmp r3, #1792
|
||
3250 00e4 08D8 bhi .L179
|
||
3251 .loc 1 2065 58 discriminator 1
|
||
3252 00e6 FB68 ldr r3, [r7, #12]
|
||
3253 00e8 9B6D ldr r3, [r3, #88]
|
||
3254 .loc 1 2065 72 discriminator 1
|
||
3255 00ea 5B69 ldr r3, [r3, #20]
|
||
3256 .loc 1 2065 50 discriminator 1
|
||
3257 00ec B3F5806F cmp r3, #1024
|
||
3258 00f0 02D1 bne .L179
|
||
2066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Restriction the DMA data received is not allowed in this mode */
|
||
2068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3259 .loc 1 2068 15
|
||
3260 00f2 0123 movs r3, #1
|
||
3261 00f4 FB75 strb r3, [r7, #23]
|
||
2069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3262 .loc 1 2069 5
|
||
3263 00f6 A2E0 b .L172
|
||
3264 .L179:
|
||
2070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* STM32F302xC || STM32F303xC || STM32F373xC || STM32F358xx || STM32F378xx */
|
||
2072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMARX);
|
||
3265 .loc 1 2073 3
|
||
3266 00f8 FB68 ldr r3, [r7, #12]
|
||
3267 00fa 1B68 ldr r3, [r3]
|
||
3268 00fc 5A68 ldr r2, [r3, #4]
|
||
3269 00fe FB68 ldr r3, [r7, #12]
|
||
3270 0100 1B68 ldr r3, [r3]
|
||
3271 0102 22F40052 bic r2, r2, #8192
|
||
3272 0106 5A60 str r2, [r3, #4]
|
||
2074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
3273 .loc 1 2074 17
|
||
3274 0108 FB68 ldr r3, [r7, #12]
|
||
3275 010a DB68 ldr r3, [r3, #12]
|
||
3276 .loc 1 2074 6
|
||
3277 010c B3F5E06F cmp r3, #1792
|
||
3278 0110 08D9 bls .L180
|
||
2075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 16bit */
|
||
2077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3279 .loc 1 2077 5
|
||
3280 0112 FB68 ldr r3, [r7, #12]
|
||
3281 0114 1B68 ldr r3, [r3]
|
||
3282 0116 5A68 ldr r2, [r3, #4]
|
||
3283 0118 FB68 ldr r3, [r7, #12]
|
||
3284 011a 1B68 ldr r3, [r3]
|
||
3285 011c 22F48052 bic r2, r2, #4096
|
||
3286 0120 5A60 str r2, [r3, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 95
|
||
|
||
|
||
3287 0122 42E0 b .L181
|
||
3288 .L180:
|
||
2078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 8bit */
|
||
2082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3289 .loc 1 2082 5
|
||
3290 0124 FB68 ldr r3, [r7, #12]
|
||
3291 0126 1B68 ldr r3, [r3]
|
||
3292 0128 5A68 ldr r2, [r3, #4]
|
||
3293 012a FB68 ldr r3, [r7, #12]
|
||
3294 012c 1B68 ldr r3, [r3]
|
||
3295 012e 42F48052 orr r2, r2, #4096
|
||
3296 0132 5A60 str r2, [r3, #4]
|
||
2083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx->Init.MemDataAlignment == DMA_MDATAALIGN_HALFWORD)
|
||
3297 .loc 1 2084 13
|
||
3298 0134 FB68 ldr r3, [r7, #12]
|
||
3299 0136 9B6D ldr r3, [r3, #88]
|
||
3300 .loc 1 2084 27
|
||
3301 0138 5B69 ldr r3, [r3, #20]
|
||
3302 .loc 1 2084 8
|
||
3303 013a B3F5806F cmp r3, #1024
|
||
3304 013e 34D1 bne .L181
|
||
2085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 16bit */
|
||
2087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3305 .loc 1 2087 7
|
||
3306 0140 FB68 ldr r3, [r7, #12]
|
||
3307 0142 1B68 ldr r3, [r3]
|
||
3308 0144 5A68 ldr r2, [r3, #4]
|
||
3309 0146 FB68 ldr r3, [r7, #12]
|
||
3310 0148 1B68 ldr r3, [r3]
|
||
3311 014a 22F48052 bic r2, r2, #4096
|
||
3312 014e 5A60 str r2, [r3, #4]
|
||
2088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->RxXferCount & 0x1U) == 0x0U)
|
||
3313 .loc 1 2089 16
|
||
3314 0150 FB68 ldr r3, [r7, #12]
|
||
3315 0152 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3316 0156 9BB2 uxth r3, r3
|
||
3317 .loc 1 2089 30
|
||
3318 0158 03F00103 and r3, r3, #1
|
||
3319 .loc 1 2089 10
|
||
3320 015c 002B cmp r3, #0
|
||
3321 015e 11D1 bne .L182
|
||
2090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMARX);
|
||
3322 .loc 1 2091 9
|
||
3323 0160 FB68 ldr r3, [r7, #12]
|
||
3324 0162 1B68 ldr r3, [r3]
|
||
3325 0164 5A68 ldr r2, [r3, #4]
|
||
3326 0166 FB68 ldr r3, [r7, #12]
|
||
3327 0168 1B68 ldr r3, [r3]
|
||
3328 016a 22F40052 bic r2, r2, #8192
|
||
3329 016e 5A60 str r2, [r3, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 96
|
||
|
||
|
||
2092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = hspi->RxXferCount >> 1U;
|
||
3330 .loc 1 2092 33
|
||
3331 0170 FB68 ldr r3, [r7, #12]
|
||
3332 0172 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3333 0176 9BB2 uxth r3, r3
|
||
3334 .loc 1 2092 27
|
||
3335 0178 5B08 lsrs r3, r3, #1
|
||
3336 017a 9AB2 uxth r2, r3
|
||
3337 017c FB68 ldr r3, [r7, #12]
|
||
3338 017e A3F84620 strh r2, [r3, #70] @ movhi
|
||
3339 0182 12E0 b .L181
|
||
3340 .L182:
|
||
2093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_LDMARX);
|
||
3341 .loc 1 2096 9
|
||
3342 0184 FB68 ldr r3, [r7, #12]
|
||
3343 0186 1B68 ldr r3, [r3]
|
||
3344 0188 5A68 ldr r2, [r3, #4]
|
||
3345 018a FB68 ldr r3, [r7, #12]
|
||
3346 018c 1B68 ldr r3, [r3]
|
||
3347 018e 42F40052 orr r2, r2, #8192
|
||
3348 0192 5A60 str r2, [r3, #4]
|
||
2097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = (hspi->RxXferCount >> 1U) + 1U;
|
||
3349 .loc 1 2097 34
|
||
3350 0194 FB68 ldr r3, [r7, #12]
|
||
3351 0196 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3352 019a 9BB2 uxth r3, r3
|
||
3353 .loc 1 2097 55
|
||
3354 019c 5B08 lsrs r3, r3, #1
|
||
3355 019e 9BB2 uxth r3, r3
|
||
3356 01a0 0133 adds r3, r3, #1
|
||
3357 01a2 9AB2 uxth r2, r3
|
||
3358 .loc 1 2097 27
|
||
3359 01a4 FB68 ldr r3, [r7, #12]
|
||
3360 01a6 A3F84620 strh r2, [r3, #70] @ movhi
|
||
3361 .L181:
|
||
2098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI RxDMA Half transfer complete callback */
|
||
2103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferHalfCpltCallback = SPI_DMAHalfReceiveCplt;
|
||
3362 .loc 1 2103 7
|
||
3363 01aa FB68 ldr r3, [r7, #12]
|
||
3364 01ac 9B6D ldr r3, [r3, #88]
|
||
3365 .loc 1 2103 38
|
||
3366 01ae 284A ldr r2, .L185
|
||
3367 01b0 DA62 str r2, [r3, #44]
|
||
2104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI Rx DMA transfer complete callback */
|
||
2106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferCpltCallback = SPI_DMAReceiveCplt;
|
||
3368 .loc 1 2106 7
|
||
3369 01b2 FB68 ldr r3, [r7, #12]
|
||
3370 01b4 9B6D ldr r3, [r3, #88]
|
||
3371 .loc 1 2106 34
|
||
ARM GAS /tmp/ccs34gJO.s page 97
|
||
|
||
|
||
3372 01b6 274A ldr r2, .L185+4
|
||
3373 01b8 9A62 str r2, [r3, #40]
|
||
2107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the DMA error callback */
|
||
2109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferErrorCallback = SPI_DMAError;
|
||
3374 .loc 1 2109 7
|
||
3375 01ba FB68 ldr r3, [r7, #12]
|
||
3376 01bc 9B6D ldr r3, [r3, #88]
|
||
3377 .loc 1 2109 35
|
||
3378 01be 264A ldr r2, .L185+8
|
||
3379 01c0 1A63 str r2, [r3, #48]
|
||
2110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the DMA AbortCpltCallback */
|
||
2112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = NULL;
|
||
3380 .loc 1 2112 7
|
||
3381 01c2 FB68 ldr r3, [r7, #12]
|
||
3382 01c4 9B6D ldr r3, [r3, #88]
|
||
3383 .loc 1 2112 35
|
||
3384 01c6 0022 movs r2, #0
|
||
3385 01c8 5A63 str r2, [r3, #52]
|
||
2113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the Rx DMA Stream/Channel */
|
||
2115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Start_IT(hspi->hdmarx, (uint32_t)&hspi->Instance->DR, (uint32_t)hspi->pRxBu
|
||
3386 .loc 1 2115 17
|
||
3387 01ca FB68 ldr r3, [r7, #12]
|
||
3388 01cc 986D ldr r0, [r3, #88]
|
||
3389 .loc 1 2115 63
|
||
3390 01ce FB68 ldr r3, [r7, #12]
|
||
3391 01d0 1B68 ldr r3, [r3]
|
||
3392 .loc 1 2115 58
|
||
3393 01d2 0C33 adds r3, r3, #12
|
||
3394 .loc 1 2115 17
|
||
3395 01d4 1946 mov r1, r3
|
||
3396 .loc 1 2115 93
|
||
3397 01d6 FB68 ldr r3, [r7, #12]
|
||
3398 01d8 1B6C ldr r3, [r3, #64]
|
||
3399 .loc 1 2115 17
|
||
3400 01da 1A46 mov r2, r3
|
||
2116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount))
|
||
3401 .loc 1 2116 38
|
||
3402 01dc FB68 ldr r3, [r7, #12]
|
||
3403 01de B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3404 01e2 9BB2 uxth r3, r3
|
||
2115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount))
|
||
3405 .loc 1 2115 17
|
||
3406 01e4 FFF7FEFF bl HAL_DMA_Start_IT
|
||
3407 01e8 0346 mov r3, r0
|
||
2115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount))
|
||
3408 .loc 1 2115 6 discriminator 1
|
||
3409 01ea 002B cmp r3, #0
|
||
3410 01ec 08D0 beq .L183
|
||
2117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update SPI error code */
|
||
2119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
3411 .loc 1 2119 5
|
||
3412 01ee FB68 ldr r3, [r7, #12]
|
||
3413 01f0 1B6E ldr r3, [r3, #96]
|
||
ARM GAS /tmp/ccs34gJO.s page 98
|
||
|
||
|
||
3414 01f2 43F01002 orr r2, r3, #16
|
||
3415 01f6 FB68 ldr r3, [r7, #12]
|
||
3416 01f8 1A66 str r2, [r3, #96]
|
||
2120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3417 .loc 1 2120 15
|
||
3418 01fa 0123 movs r3, #1
|
||
3419 01fc FB75 strb r3, [r7, #23]
|
||
2121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3420 .loc 1 2122 5
|
||
3421 01fe 1EE0 b .L172
|
||
3422 .L183:
|
||
2123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
2126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
3423 .loc 1 2126 12
|
||
3424 0200 FB68 ldr r3, [r7, #12]
|
||
3425 0202 1B68 ldr r3, [r3]
|
||
3426 .loc 1 2126 22
|
||
3427 0204 1B68 ldr r3, [r3]
|
||
3428 .loc 1 2126 28
|
||
3429 0206 03F04003 and r3, r3, #64
|
||
3430 .loc 1 2126 6
|
||
3431 020a 402B cmp r3, #64
|
||
3432 020c 07D0 beq .L184
|
||
2127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
2129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
3433 .loc 1 2129 5
|
||
3434 020e FB68 ldr r3, [r7, #12]
|
||
3435 0210 1B68 ldr r3, [r3]
|
||
3436 0212 1A68 ldr r2, [r3]
|
||
3437 0214 FB68 ldr r3, [r7, #12]
|
||
3438 0216 1B68 ldr r3, [r3]
|
||
3439 0218 42F04002 orr r2, r2, #64
|
||
3440 021c 1A60 str r2, [r3]
|
||
3441 .L184:
|
||
2130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the SPI Error Interrupt Bit */
|
||
2133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE_IT(hspi, (SPI_IT_ERR));
|
||
3442 .loc 1 2133 3
|
||
3443 021e FB68 ldr r3, [r7, #12]
|
||
3444 0220 1B68 ldr r3, [r3]
|
||
3445 0222 5A68 ldr r2, [r3, #4]
|
||
3446 0224 FB68 ldr r3, [r7, #12]
|
||
3447 0226 1B68 ldr r3, [r3]
|
||
3448 0228 42F02002 orr r2, r2, #32
|
||
3449 022c 5A60 str r2, [r3, #4]
|
||
2134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable Rx DMA Request */
|
||
2136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_RXDMAEN);
|
||
3450 .loc 1 2136 3
|
||
3451 022e FB68 ldr r3, [r7, #12]
|
||
3452 0230 1B68 ldr r3, [r3]
|
||
3453 0232 5A68 ldr r2, [r3, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 99
|
||
|
||
|
||
3454 0234 FB68 ldr r3, [r7, #12]
|
||
3455 0236 1B68 ldr r3, [r3]
|
||
3456 0238 42F00102 orr r2, r2, #1
|
||
3457 023c 5A60 str r2, [r3, #4]
|
||
3458 .L172:
|
||
2137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error:
|
||
2139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
2140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
3459 .loc 1 2140 3
|
||
3460 023e FB68 ldr r3, [r7, #12]
|
||
3461 0240 0022 movs r2, #0
|
||
3462 0242 83F85C20 strb r2, [r3, #92]
|
||
2141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
3463 .loc 1 2141 10
|
||
3464 0246 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
3465 .L174:
|
||
2142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3466 .loc 1 2142 1
|
||
3467 0248 1846 mov r0, r3
|
||
3468 024a 1837 adds r7, r7, #24
|
||
3469 .cfi_def_cfa_offset 8
|
||
3470 024c BD46 mov sp, r7
|
||
3471 .cfi_def_cfa_register 13
|
||
3472 @ sp needed
|
||
3473 024e 80BD pop {r7, pc}
|
||
3474 .L186:
|
||
3475 .align 2
|
||
3476 .L185:
|
||
3477 0250 00000000 .word SPI_DMAHalfReceiveCplt
|
||
3478 0254 00000000 .word SPI_DMAReceiveCplt
|
||
3479 0258 00000000 .word SPI_DMAError
|
||
3480 .cfi_endproc
|
||
3481 .LFE141:
|
||
3483 .section .text.HAL_SPI_TransmitReceive_DMA,"ax",%progbits
|
||
3484 .align 1
|
||
3485 .global HAL_SPI_TransmitReceive_DMA
|
||
3486 .syntax unified
|
||
3487 .thumb
|
||
3488 .thumb_func
|
||
3490 HAL_SPI_TransmitReceive_DMA:
|
||
3491 .LFB142:
|
||
2143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Transmit and Receive an amount of data in non-blocking mode with DMA.
|
||
2146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pTxData pointer to transmission data buffer
|
||
2149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param pRxData pointer to reception data buffer
|
||
2150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note When the CRC feature is enabled the pRxData Length must be Size + 1
|
||
2151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Size amount of data to be sent
|
||
2152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_TransmitReceive_DMA(SPI_HandleTypeDef *hspi, uint8_t *pTxData, uint8_t *p
|
||
2155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint16_t Size)
|
||
2156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3492 .loc 1 2156 1
|
||
ARM GAS /tmp/ccs34gJO.s page 100
|
||
|
||
|
||
3493 .cfi_startproc
|
||
3494 @ args = 0, pretend = 0, frame = 24
|
||
3495 @ frame_needed = 1, uses_anonymous_args = 0
|
||
3496 0000 80B5 push {r7, lr}
|
||
3497 .cfi_def_cfa_offset 8
|
||
3498 .cfi_offset 7, -8
|
||
3499 .cfi_offset 14, -4
|
||
3500 0002 86B0 sub sp, sp, #24
|
||
3501 .cfi_def_cfa_offset 32
|
||
3502 0004 00AF add r7, sp, #0
|
||
3503 .cfi_def_cfa_register 7
|
||
3504 0006 F860 str r0, [r7, #12]
|
||
3505 0008 B960 str r1, [r7, #8]
|
||
3506 000a 7A60 str r2, [r7, #4]
|
||
3507 000c 7B80 strh r3, [r7, #2] @ movhi
|
||
2157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_mode;
|
||
2158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_StateTypeDef tmp_state;
|
||
2159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
3508 .loc 1 2159 21
|
||
3509 000e 0023 movs r3, #0
|
||
3510 0010 FB75 strb r3, [r7, #23]
|
||
2160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check rx & tx dma handles */
|
||
2162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DMA_HANDLE(hspi->hdmarx));
|
||
2163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DMA_HANDLE(hspi->hdmatx));
|
||
2164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check Direction parameter */
|
||
2166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** assert_param(IS_SPI_DIRECTION_2LINES(hspi->Init.Direction));
|
||
2167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process locked */
|
||
2169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
3511 .loc 1 2169 3
|
||
3512 0012 FB68 ldr r3, [r7, #12]
|
||
3513 0014 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
3514 0018 012B cmp r3, #1
|
||
3515 001a 01D1 bne .L188
|
||
3516 .loc 1 2169 3 is_stmt 0 discriminator 1
|
||
3517 001c 0223 movs r3, #2
|
||
3518 .loc 1 2169 3
|
||
3519 001e 72E1 b .L189
|
||
3520 .L188:
|
||
3521 .loc 1 2169 3 discriminator 2
|
||
3522 0020 FB68 ldr r3, [r7, #12]
|
||
3523 0022 0122 movs r2, #1
|
||
3524 0024 83F85C20 strb r2, [r3, #92]
|
||
2170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init temporary variables */
|
||
2172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_state = hspi->State;
|
||
3525 .loc 1 2172 23 is_stmt 1
|
||
3526 0028 FB68 ldr r3, [r7, #12]
|
||
3527 002a 93F85D30 ldrb r3, [r3, #93]
|
||
3528 002e BB75 strb r3, [r7, #22]
|
||
2173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_mode = hspi->Init.Mode;
|
||
3529 .loc 1 2173 23
|
||
3530 0030 FB68 ldr r3, [r7, #12]
|
||
3531 0032 5B68 ldr r3, [r3, #4]
|
||
3532 0034 3B61 str r3, [r7, #16]
|
||
ARM GAS /tmp/ccs34gJO.s page 101
|
||
|
||
|
||
2174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (!((tmp_state == HAL_SPI_STATE_READY) ||
|
||
3533 .loc 1 2175 6
|
||
3534 0036 BB7D ldrb r3, [r7, #22] @ zero_extendqisi2
|
||
3535 0038 012B cmp r3, #1
|
||
3536 003a 0DD0 beq .L190
|
||
3537 .loc 1 2175 7 discriminator 1
|
||
3538 003c 3B69 ldr r3, [r7, #16]
|
||
3539 003e B3F5827F cmp r3, #260
|
||
3540 0042 06D1 bne .L191
|
||
2176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ((tmp_mode == SPI_MODE_MASTER) && (hspi->Init.Direction == SPI_DIRECTION_2LINES) && (tmp_st
|
||
3541 .loc 1 2176 54
|
||
3542 0044 FB68 ldr r3, [r7, #12]
|
||
3543 0046 9B68 ldr r3, [r3, #8]
|
||
3544 .loc 1 2176 40
|
||
3545 0048 002B cmp r3, #0
|
||
3546 004a 02D1 bne .L191
|
||
3547 .loc 1 2176 90 discriminator 1
|
||
3548 004c BB7D ldrb r3, [r7, #22] @ zero_extendqisi2
|
||
3549 004e 042B cmp r3, #4
|
||
3550 0050 02D0 beq .L190
|
||
3551 .L191:
|
||
2177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_BUSY;
|
||
3552 .loc 1 2178 15
|
||
3553 0052 0223 movs r3, #2
|
||
3554 0054 FB75 strb r3, [r7, #23]
|
||
2179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3555 .loc 1 2179 5
|
||
3556 0056 51E1 b .L192
|
||
3557 .L190:
|
||
2180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((pTxData == NULL) || (pRxData == NULL) || (Size == 0U))
|
||
3558 .loc 1 2182 6
|
||
3559 0058 BB68 ldr r3, [r7, #8]
|
||
3560 005a 002B cmp r3, #0
|
||
3561 005c 05D0 beq .L193
|
||
3562 .loc 1 2182 25 discriminator 1
|
||
3563 005e 7B68 ldr r3, [r7, #4]
|
||
3564 0060 002B cmp r3, #0
|
||
3565 0062 02D0 beq .L193
|
||
3566 .loc 1 2182 46 discriminator 2
|
||
3567 0064 7B88 ldrh r3, [r7, #2]
|
||
3568 0066 002B cmp r3, #0
|
||
3569 0068 02D1 bne .L194
|
||
3570 .L193:
|
||
2183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3571 .loc 1 2184 15
|
||
3572 006a 0123 movs r3, #1
|
||
3573 006c FB75 strb r3, [r7, #23]
|
||
2185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3574 .loc 1 2185 5
|
||
3575 006e 45E1 b .L192
|
||
3576 .L194:
|
||
2186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 102
|
||
|
||
|
||
2187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Don't overwrite in case of HAL_SPI_STATE_BUSY_RX */
|
||
2189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_BUSY_RX)
|
||
3577 .loc 1 2189 11
|
||
3578 0070 FB68 ldr r3, [r7, #12]
|
||
3579 0072 93F85D30 ldrb r3, [r3, #93]
|
||
3580 0076 DBB2 uxtb r3, r3
|
||
3581 .loc 1 2189 6
|
||
3582 0078 042B cmp r3, #4
|
||
3583 007a 03D0 beq .L195
|
||
2190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_BUSY_TX_RX;
|
||
3584 .loc 1 2191 17
|
||
3585 007c FB68 ldr r3, [r7, #12]
|
||
3586 007e 0522 movs r2, #5
|
||
3587 0080 83F85D20 strb r2, [r3, #93]
|
||
3588 .L195:
|
||
2192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the transaction information */
|
||
2195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
3589 .loc 1 2195 21
|
||
3590 0084 FB68 ldr r3, [r7, #12]
|
||
3591 0086 0022 movs r2, #0
|
||
3592 0088 1A66 str r2, [r3, #96]
|
||
2196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr = (uint8_t *)pTxData;
|
||
3593 .loc 1 2196 21
|
||
3594 008a FB68 ldr r3, [r7, #12]
|
||
3595 008c BA68 ldr r2, [r7, #8]
|
||
3596 008e 9A63 str r2, [r3, #56]
|
||
2197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferSize = Size;
|
||
3597 .loc 1 2197 21
|
||
3598 0090 FB68 ldr r3, [r7, #12]
|
||
3599 0092 7A88 ldrh r2, [r7, #2] @ movhi
|
||
3600 0094 9A87 strh r2, [r3, #60] @ movhi
|
||
2198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = Size;
|
||
3601 .loc 1 2198 21
|
||
3602 0096 FB68 ldr r3, [r7, #12]
|
||
3603 0098 7A88 ldrh r2, [r7, #2] @ movhi
|
||
3604 009a DA87 strh r2, [r3, #62] @ movhi
|
||
2199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr = (uint8_t *)pRxData;
|
||
3605 .loc 1 2199 21
|
||
3606 009c FB68 ldr r3, [r7, #12]
|
||
3607 009e 7A68 ldr r2, [r7, #4]
|
||
3608 00a0 1A64 str r2, [r3, #64]
|
||
2200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferSize = Size;
|
||
3609 .loc 1 2200 21
|
||
3610 00a2 FB68 ldr r3, [r7, #12]
|
||
3611 00a4 7A88 ldrh r2, [r7, #2] @ movhi
|
||
3612 00a6 A3F84420 strh r2, [r3, #68] @ movhi
|
||
2201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = Size;
|
||
3613 .loc 1 2201 21
|
||
3614 00aa FB68 ldr r3, [r7, #12]
|
||
3615 00ac 7A88 ldrh r2, [r7, #2] @ movhi
|
||
3616 00ae A3F84620 strh r2, [r3, #70] @ movhi
|
||
2202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init field not used in handle to zero */
|
||
ARM GAS /tmp/ccs34gJO.s page 103
|
||
|
||
|
||
2204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = NULL;
|
||
3617 .loc 1 2204 21
|
||
3618 00b2 FB68 ldr r3, [r7, #12]
|
||
3619 00b4 0022 movs r2, #0
|
||
3620 00b6 DA64 str r2, [r3, #76]
|
||
2205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = NULL;
|
||
3621 .loc 1 2205 21
|
||
3622 00b8 FB68 ldr r3, [r7, #12]
|
||
3623 00ba 0022 movs r2, #0
|
||
3624 00bc 1A65 str r2, [r3, #80]
|
||
2206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
2208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
2209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
2210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
2212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
2214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if defined (STM32F302xC) || defined (STM32F303xC) || defined (STM32F373xC) || defined (STM32F358xx
|
||
2216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Packing mode management is enabled by the DMA settings */
|
||
2217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize <= SPI_DATASIZE_8BIT) && (hspi->hdmarx->Init.MemDataAlignment == DMA_MDA
|
||
3625 .loc 1 2217 18
|
||
3626 00be FB68 ldr r3, [r7, #12]
|
||
3627 00c0 DB68 ldr r3, [r3, #12]
|
||
3628 .loc 1 2217 6
|
||
3629 00c2 B3F5E06F cmp r3, #1792
|
||
3630 00c6 08D8 bhi .L196
|
||
3631 .loc 1 2217 58 discriminator 1
|
||
3632 00c8 FB68 ldr r3, [r7, #12]
|
||
3633 00ca 9B6D ldr r3, [r3, #88]
|
||
3634 .loc 1 2217 72 discriminator 1
|
||
3635 00cc 5B69 ldr r3, [r3, #20]
|
||
3636 .loc 1 2217 50 discriminator 1
|
||
3637 00ce B3F5806F cmp r3, #1024
|
||
3638 00d2 02D1 bne .L196
|
||
2218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Restriction the DMA data received is not allowed in this mode */
|
||
2220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3639 .loc 1 2220 15
|
||
3640 00d4 0123 movs r3, #1
|
||
3641 00d6 FB75 strb r3, [r7, #23]
|
||
2221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3642 .loc 1 2221 5
|
||
3643 00d8 10E1 b .L192
|
||
3644 .L196:
|
||
2222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* STM32F302xC || STM32F303xC || STM32F373xC || STM32F358xx || STM32F378xx */
|
||
2224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset the threshold bit */
|
||
2226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMATX | SPI_CR2_LDMARX);
|
||
3645 .loc 1 2226 3
|
||
3646 00da FB68 ldr r3, [r7, #12]
|
||
3647 00dc 1B68 ldr r3, [r3]
|
||
3648 00de 5A68 ldr r2, [r3, #4]
|
||
3649 00e0 FB68 ldr r3, [r7, #12]
|
||
3650 00e2 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 104
|
||
|
||
|
||
3651 00e4 22F4C042 bic r2, r2, #24576
|
||
3652 00e8 5A60 str r2, [r3, #4]
|
||
2227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* The packing mode management is enabled by the DMA settings according the spi data size */
|
||
2229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
3653 .loc 1 2229 17
|
||
3654 00ea FB68 ldr r3, [r7, #12]
|
||
3655 00ec DB68 ldr r3, [r3, #12]
|
||
3656 .loc 1 2229 6
|
||
3657 00ee B3F5E06F cmp r3, #1792
|
||
3658 00f2 08D9 bls .L197
|
||
2230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set fiforxthreshold according the reception data length: 16bit */
|
||
2232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3659 .loc 1 2232 5
|
||
3660 00f4 FB68 ldr r3, [r7, #12]
|
||
3661 00f6 1B68 ldr r3, [r3]
|
||
3662 00f8 5A68 ldr r2, [r3, #4]
|
||
3663 00fa FB68 ldr r3, [r7, #12]
|
||
3664 00fc 1B68 ldr r3, [r3]
|
||
3665 00fe 22F48052 bic r2, r2, #4096
|
||
3666 0102 5A60 str r2, [r3, #4]
|
||
3667 0104 6FE0 b .L198
|
||
3668 .L197:
|
||
2233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 8bit */
|
||
2237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3669 .loc 1 2237 5
|
||
3670 0106 FB68 ldr r3, [r7, #12]
|
||
3671 0108 1B68 ldr r3, [r3]
|
||
3672 010a 5A68 ldr r2, [r3, #4]
|
||
3673 010c FB68 ldr r3, [r7, #12]
|
||
3674 010e 1B68 ldr r3, [r3]
|
||
3675 0110 42F48052 orr r2, r2, #4096
|
||
3676 0114 5A60 str r2, [r3, #4]
|
||
2238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx->Init.MemDataAlignment == DMA_MDATAALIGN_HALFWORD)
|
||
3677 .loc 1 2239 13
|
||
3678 0116 FB68 ldr r3, [r7, #12]
|
||
3679 0118 5B6D ldr r3, [r3, #84]
|
||
3680 .loc 1 2239 27
|
||
3681 011a 5B69 ldr r3, [r3, #20]
|
||
3682 .loc 1 2239 8
|
||
3683 011c B3F5806F cmp r3, #1024
|
||
3684 0120 26D1 bne .L199
|
||
2240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->TxXferSize & 0x1U) == 0x0U)
|
||
3685 .loc 1 2241 16
|
||
3686 0122 FB68 ldr r3, [r7, #12]
|
||
3687 0124 9B8F ldrh r3, [r3, #60]
|
||
3688 .loc 1 2241 29
|
||
3689 0126 03F00103 and r3, r3, #1
|
||
3690 .loc 1 2241 10
|
||
3691 012a 002B cmp r3, #0
|
||
3692 012c 0FD1 bne .L200
|
||
ARM GAS /tmp/ccs34gJO.s page 105
|
||
|
||
|
||
2242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMATX);
|
||
3693 .loc 1 2243 9
|
||
3694 012e FB68 ldr r3, [r7, #12]
|
||
3695 0130 1B68 ldr r3, [r3]
|
||
3696 0132 5A68 ldr r2, [r3, #4]
|
||
3697 0134 FB68 ldr r3, [r7, #12]
|
||
3698 0136 1B68 ldr r3, [r3]
|
||
3699 0138 22F48042 bic r2, r2, #16384
|
||
3700 013c 5A60 str r2, [r3, #4]
|
||
2244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = hspi->TxXferCount >> 1U;
|
||
3701 .loc 1 2244 33
|
||
3702 013e FB68 ldr r3, [r7, #12]
|
||
3703 0140 DB8F ldrh r3, [r3, #62] @ movhi
|
||
3704 0142 9BB2 uxth r3, r3
|
||
3705 .loc 1 2244 27
|
||
3706 0144 5B08 lsrs r3, r3, #1
|
||
3707 0146 9AB2 uxth r2, r3
|
||
3708 0148 FB68 ldr r3, [r7, #12]
|
||
3709 014a DA87 strh r2, [r3, #62] @ movhi
|
||
3710 014c 10E0 b .L199
|
||
3711 .L200:
|
||
2245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_LDMATX);
|
||
3712 .loc 1 2248 9
|
||
3713 014e FB68 ldr r3, [r7, #12]
|
||
3714 0150 1B68 ldr r3, [r3]
|
||
3715 0152 5A68 ldr r2, [r3, #4]
|
||
3716 0154 FB68 ldr r3, [r7, #12]
|
||
3717 0156 1B68 ldr r3, [r3]
|
||
3718 0158 42F48042 orr r2, r2, #16384
|
||
3719 015c 5A60 str r2, [r3, #4]
|
||
2249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = (hspi->TxXferCount >> 1U) + 1U;
|
||
3720 .loc 1 2249 34
|
||
3721 015e FB68 ldr r3, [r7, #12]
|
||
3722 0160 DB8F ldrh r3, [r3, #62] @ movhi
|
||
3723 0162 9BB2 uxth r3, r3
|
||
3724 .loc 1 2249 55
|
||
3725 0164 5B08 lsrs r3, r3, #1
|
||
3726 0166 9BB2 uxth r3, r3
|
||
3727 0168 0133 adds r3, r3, #1
|
||
3728 016a 9AB2 uxth r2, r3
|
||
3729 .loc 1 2249 27
|
||
3730 016c FB68 ldr r3, [r7, #12]
|
||
3731 016e DA87 strh r2, [r3, #62] @ movhi
|
||
3732 .L199:
|
||
2250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx->Init.MemDataAlignment == DMA_MDATAALIGN_HALFWORD)
|
||
3733 .loc 1 2253 13
|
||
3734 0170 FB68 ldr r3, [r7, #12]
|
||
3735 0172 9B6D ldr r3, [r3, #88]
|
||
3736 .loc 1 2253 27
|
||
3737 0174 5B69 ldr r3, [r3, #20]
|
||
ARM GAS /tmp/ccs34gJO.s page 106
|
||
|
||
|
||
3738 .loc 1 2253 8
|
||
3739 0176 B3F5806F cmp r3, #1024
|
||
3740 017a 34D1 bne .L198
|
||
2254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 16bit */
|
||
2256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3741 .loc 1 2256 7
|
||
3742 017c FB68 ldr r3, [r7, #12]
|
||
3743 017e 1B68 ldr r3, [r3]
|
||
3744 0180 5A68 ldr r2, [r3, #4]
|
||
3745 0182 FB68 ldr r3, [r7, #12]
|
||
3746 0184 1B68 ldr r3, [r3]
|
||
3747 0186 22F48052 bic r2, r2, #4096
|
||
3748 018a 5A60 str r2, [r3, #4]
|
||
2257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->RxXferCount & 0x1U) == 0x0U)
|
||
3749 .loc 1 2258 16
|
||
3750 018c FB68 ldr r3, [r7, #12]
|
||
3751 018e B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3752 0192 9BB2 uxth r3, r3
|
||
3753 .loc 1 2258 30
|
||
3754 0194 03F00103 and r3, r3, #1
|
||
3755 .loc 1 2258 10
|
||
3756 0198 002B cmp r3, #0
|
||
3757 019a 11D1 bne .L201
|
||
2259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_LDMARX);
|
||
3758 .loc 1 2260 9
|
||
3759 019c FB68 ldr r3, [r7, #12]
|
||
3760 019e 1B68 ldr r3, [r3]
|
||
3761 01a0 5A68 ldr r2, [r3, #4]
|
||
3762 01a2 FB68 ldr r3, [r7, #12]
|
||
3763 01a4 1B68 ldr r3, [r3]
|
||
3764 01a6 22F40052 bic r2, r2, #8192
|
||
3765 01aa 5A60 str r2, [r3, #4]
|
||
2261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = hspi->RxXferCount >> 1U;
|
||
3766 .loc 1 2261 33
|
||
3767 01ac FB68 ldr r3, [r7, #12]
|
||
3768 01ae B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3769 01b2 9BB2 uxth r3, r3
|
||
3770 .loc 1 2261 27
|
||
3771 01b4 5B08 lsrs r3, r3, #1
|
||
3772 01b6 9AB2 uxth r2, r3
|
||
3773 01b8 FB68 ldr r3, [r7, #12]
|
||
3774 01ba A3F84620 strh r2, [r3, #70] @ movhi
|
||
3775 01be 12E0 b .L198
|
||
3776 .L201:
|
||
2262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_LDMARX);
|
||
3777 .loc 1 2265 9
|
||
3778 01c0 FB68 ldr r3, [r7, #12]
|
||
3779 01c2 1B68 ldr r3, [r3]
|
||
3780 01c4 5A68 ldr r2, [r3, #4]
|
||
3781 01c6 FB68 ldr r3, [r7, #12]
|
||
3782 01c8 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 107
|
||
|
||
|
||
3783 01ca 42F40052 orr r2, r2, #8192
|
||
3784 01ce 5A60 str r2, [r3, #4]
|
||
2266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = (hspi->RxXferCount >> 1U) + 1U;
|
||
3785 .loc 1 2266 34
|
||
3786 01d0 FB68 ldr r3, [r7, #12]
|
||
3787 01d2 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3788 01d6 9BB2 uxth r3, r3
|
||
3789 .loc 1 2266 55
|
||
3790 01d8 5B08 lsrs r3, r3, #1
|
||
3791 01da 9BB2 uxth r3, r3
|
||
3792 01dc 0133 adds r3, r3, #1
|
||
3793 01de 9AB2 uxth r2, r3
|
||
3794 .loc 1 2266 27
|
||
3795 01e0 FB68 ldr r3, [r7, #12]
|
||
3796 01e2 A3F84620 strh r2, [r3, #70] @ movhi
|
||
3797 .L198:
|
||
2267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if we are in Rx only or in Rx/Tx Mode and configure the DMA transfer complete callback *
|
||
2272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State == HAL_SPI_STATE_BUSY_RX)
|
||
3798 .loc 1 2272 11
|
||
3799 01e6 FB68 ldr r3, [r7, #12]
|
||
3800 01e8 93F85D30 ldrb r3, [r3, #93]
|
||
3801 01ec DBB2 uxtb r3, r3
|
||
3802 .loc 1 2272 6
|
||
3803 01ee 042B cmp r3, #4
|
||
3804 01f0 08D1 bne .L202
|
||
2273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI Rx DMA Half transfer complete callback */
|
||
2275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferHalfCpltCallback = SPI_DMAHalfReceiveCplt;
|
||
3805 .loc 1 2275 9
|
||
3806 01f2 FB68 ldr r3, [r7, #12]
|
||
3807 01f4 9B6D ldr r3, [r3, #88]
|
||
3808 .loc 1 2275 40
|
||
3809 01f6 464A ldr r2, .L207
|
||
3810 01f8 DA62 str r2, [r3, #44]
|
||
2276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferCpltCallback = SPI_DMAReceiveCplt;
|
||
3811 .loc 1 2276 9
|
||
3812 01fa FB68 ldr r3, [r7, #12]
|
||
3813 01fc 9B6D ldr r3, [r3, #88]
|
||
3814 .loc 1 2276 40
|
||
3815 01fe 454A ldr r2, .L207+4
|
||
3816 0200 9A62 str r2, [r3, #40]
|
||
3817 0202 07E0 b .L203
|
||
3818 .L202:
|
||
2277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI Tx/Rx DMA Half transfer complete callback */
|
||
2281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferHalfCpltCallback = SPI_DMAHalfTransmitReceiveCplt;
|
||
3819 .loc 1 2281 9
|
||
3820 0204 FB68 ldr r3, [r7, #12]
|
||
3821 0206 9B6D ldr r3, [r3, #88]
|
||
3822 .loc 1 2281 40
|
||
3823 0208 434A ldr r2, .L207+8
|
||
ARM GAS /tmp/ccs34gJO.s page 108
|
||
|
||
|
||
3824 020a DA62 str r2, [r3, #44]
|
||
2282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferCpltCallback = SPI_DMATransmitReceiveCplt;
|
||
3825 .loc 1 2282 9
|
||
3826 020c FB68 ldr r3, [r7, #12]
|
||
3827 020e 9B6D ldr r3, [r3, #88]
|
||
3828 .loc 1 2282 40
|
||
3829 0210 424A ldr r2, .L207+12
|
||
3830 0212 9A62 str r2, [r3, #40]
|
||
3831 .L203:
|
||
2283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the DMA error callback */
|
||
2286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferErrorCallback = SPI_DMAError;
|
||
3832 .loc 1 2286 7
|
||
3833 0214 FB68 ldr r3, [r7, #12]
|
||
3834 0216 9B6D ldr r3, [r3, #88]
|
||
3835 .loc 1 2286 35
|
||
3836 0218 414A ldr r2, .L207+16
|
||
3837 021a 1A63 str r2, [r3, #48]
|
||
2287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the DMA AbortCpltCallback */
|
||
2289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = NULL;
|
||
3838 .loc 1 2289 7
|
||
3839 021c FB68 ldr r3, [r7, #12]
|
||
3840 021e 9B6D ldr r3, [r3, #88]
|
||
3841 .loc 1 2289 35
|
||
3842 0220 0022 movs r2, #0
|
||
3843 0222 5A63 str r2, [r3, #52]
|
||
2290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the Rx DMA Stream/Channel */
|
||
2292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Start_IT(hspi->hdmarx, (uint32_t)&hspi->Instance->DR, (uint32_t)hspi->pRxBu
|
||
3844 .loc 1 2292 17
|
||
3845 0224 FB68 ldr r3, [r7, #12]
|
||
3846 0226 986D ldr r0, [r3, #88]
|
||
3847 .loc 1 2292 63
|
||
3848 0228 FB68 ldr r3, [r7, #12]
|
||
3849 022a 1B68 ldr r3, [r3]
|
||
3850 .loc 1 2292 58
|
||
3851 022c 0C33 adds r3, r3, #12
|
||
3852 .loc 1 2292 17
|
||
3853 022e 1946 mov r1, r3
|
||
3854 .loc 1 2292 93
|
||
3855 0230 FB68 ldr r3, [r7, #12]
|
||
3856 0232 1B6C ldr r3, [r3, #64]
|
||
3857 .loc 1 2292 17
|
||
3858 0234 1A46 mov r2, r3
|
||
2293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount))
|
||
3859 .loc 1 2293 38
|
||
3860 0236 FB68 ldr r3, [r7, #12]
|
||
3861 0238 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
3862 023c 9BB2 uxth r3, r3
|
||
2292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount))
|
||
3863 .loc 1 2292 17
|
||
3864 023e FFF7FEFF bl HAL_DMA_Start_IT
|
||
3865 0242 0346 mov r3, r0
|
||
2292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount))
|
||
3866 .loc 1 2292 6 discriminator 1
|
||
ARM GAS /tmp/ccs34gJO.s page 109
|
||
|
||
|
||
3867 0244 002B cmp r3, #0
|
||
3868 0246 08D0 beq .L204
|
||
2294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update SPI error code */
|
||
2296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
3869 .loc 1 2296 5
|
||
3870 0248 FB68 ldr r3, [r7, #12]
|
||
3871 024a 1B6E ldr r3, [r3, #96]
|
||
3872 024c 43F01002 orr r2, r3, #16
|
||
3873 0250 FB68 ldr r3, [r7, #12]
|
||
3874 0252 1A66 str r2, [r3, #96]
|
||
2297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3875 .loc 1 2297 15
|
||
3876 0254 0123 movs r3, #1
|
||
3877 0256 FB75 strb r3, [r7, #23]
|
||
2298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3878 .loc 1 2299 5
|
||
3879 0258 50E0 b .L192
|
||
3880 .L204:
|
||
2300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable Rx DMA Request */
|
||
2303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_RXDMAEN);
|
||
3881 .loc 1 2303 3
|
||
3882 025a FB68 ldr r3, [r7, #12]
|
||
3883 025c 1B68 ldr r3, [r3]
|
||
3884 025e 5A68 ldr r2, [r3, #4]
|
||
3885 0260 FB68 ldr r3, [r7, #12]
|
||
3886 0262 1B68 ldr r3, [r3]
|
||
3887 0264 42F00102 orr r2, r2, #1
|
||
3888 0268 5A60 str r2, [r3, #4]
|
||
2304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI Tx DMA transfer complete callback as NULL because the communication closing
|
||
2306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** is performed in DMA reception complete callback */
|
||
2307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferHalfCpltCallback = NULL;
|
||
3889 .loc 1 2307 7
|
||
3890 026a FB68 ldr r3, [r7, #12]
|
||
3891 026c 5B6D ldr r3, [r3, #84]
|
||
3892 .loc 1 2307 38
|
||
3893 026e 0022 movs r2, #0
|
||
3894 0270 DA62 str r2, [r3, #44]
|
||
2308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferCpltCallback = NULL;
|
||
3895 .loc 1 2308 7
|
||
3896 0272 FB68 ldr r3, [r7, #12]
|
||
3897 0274 5B6D ldr r3, [r3, #84]
|
||
3898 .loc 1 2308 38
|
||
3899 0276 0022 movs r2, #0
|
||
3900 0278 9A62 str r2, [r3, #40]
|
||
2309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferErrorCallback = NULL;
|
||
3901 .loc 1 2309 7
|
||
3902 027a FB68 ldr r3, [r7, #12]
|
||
3903 027c 5B6D ldr r3, [r3, #84]
|
||
3904 .loc 1 2309 38
|
||
3905 027e 0022 movs r2, #0
|
||
3906 0280 1A63 str r2, [r3, #48]
|
||
2310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = NULL;
|
||
ARM GAS /tmp/ccs34gJO.s page 110
|
||
|
||
|
||
3907 .loc 1 2310 7
|
||
3908 0282 FB68 ldr r3, [r7, #12]
|
||
3909 0284 5B6D ldr r3, [r3, #84]
|
||
3910 .loc 1 2310 38
|
||
3911 0286 0022 movs r2, #0
|
||
3912 0288 5A63 str r2, [r3, #52]
|
||
2311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the Tx DMA Stream/Channel */
|
||
2313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Start_IT(hspi->hdmatx, (uint32_t)hspi->pTxBuffPtr, (uint32_t)&hspi->Instanc
|
||
3913 .loc 1 2313 17
|
||
3914 028a FB68 ldr r3, [r7, #12]
|
||
3915 028c 586D ldr r0, [r3, #84]
|
||
3916 .loc 1 2313 62
|
||
3917 028e FB68 ldr r3, [r7, #12]
|
||
3918 0290 9B6B ldr r3, [r3, #56]
|
||
3919 .loc 1 2313 17
|
||
3920 0292 1946 mov r1, r3
|
||
3921 .loc 1 2313 91
|
||
3922 0294 FB68 ldr r3, [r7, #12]
|
||
3923 0296 1B68 ldr r3, [r3]
|
||
3924 .loc 1 2313 86
|
||
3925 0298 0C33 adds r3, r3, #12
|
||
3926 .loc 1 2313 17
|
||
3927 029a 1A46 mov r2, r3
|
||
2314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount))
|
||
3928 .loc 1 2314 38
|
||
3929 029c FB68 ldr r3, [r7, #12]
|
||
3930 029e DB8F ldrh r3, [r3, #62] @ movhi
|
||
3931 02a0 9BB2 uxth r3, r3
|
||
2313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount))
|
||
3932 .loc 1 2313 17
|
||
3933 02a2 FFF7FEFF bl HAL_DMA_Start_IT
|
||
3934 02a6 0346 mov r3, r0
|
||
2313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount))
|
||
3935 .loc 1 2313 6 discriminator 1
|
||
3936 02a8 002B cmp r3, #0
|
||
3937 02aa 08D0 beq .L205
|
||
2315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Update SPI error code */
|
||
2317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
3938 .loc 1 2317 5
|
||
3939 02ac FB68 ldr r3, [r7, #12]
|
||
3940 02ae 1B6E ldr r3, [r3, #96]
|
||
3941 02b0 43F01002 orr r2, r3, #16
|
||
3942 02b4 FB68 ldr r3, [r7, #12]
|
||
3943 02b6 1A66 str r2, [r3, #96]
|
||
2318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
3944 .loc 1 2318 15
|
||
3945 02b8 0123 movs r3, #1
|
||
3946 02ba FB75 strb r3, [r7, #23]
|
||
2319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** goto error;
|
||
3947 .loc 1 2320 5
|
||
3948 02bc 1EE0 b .L192
|
||
3949 .L205:
|
||
2321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 111
|
||
|
||
|
||
2323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if the SPI is already enabled */
|
||
2324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Instance->CR1 & SPI_CR1_SPE) != SPI_CR1_SPE)
|
||
3950 .loc 1 2324 12
|
||
3951 02be FB68 ldr r3, [r7, #12]
|
||
3952 02c0 1B68 ldr r3, [r3]
|
||
3953 .loc 1 2324 22
|
||
3954 02c2 1B68 ldr r3, [r3]
|
||
3955 .loc 1 2324 28
|
||
3956 02c4 03F04003 and r3, r3, #64
|
||
3957 .loc 1 2324 6
|
||
3958 02c8 402B cmp r3, #64
|
||
3959 02ca 07D0 beq .L206
|
||
2325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable SPI peripheral */
|
||
2327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE(hspi);
|
||
3960 .loc 1 2327 5
|
||
3961 02cc FB68 ldr r3, [r7, #12]
|
||
3962 02ce 1B68 ldr r3, [r3]
|
||
3963 02d0 1A68 ldr r2, [r3]
|
||
3964 02d2 FB68 ldr r3, [r7, #12]
|
||
3965 02d4 1B68 ldr r3, [r3]
|
||
3966 02d6 42F04002 orr r2, r2, #64
|
||
3967 02da 1A60 str r2, [r3]
|
||
3968 .L206:
|
||
2328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the SPI Error Interrupt Bit */
|
||
2330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_ENABLE_IT(hspi, (SPI_IT_ERR));
|
||
3969 .loc 1 2330 3
|
||
3970 02dc FB68 ldr r3, [r7, #12]
|
||
3971 02de 1B68 ldr r3, [r3]
|
||
3972 02e0 5A68 ldr r2, [r3, #4]
|
||
3973 02e2 FB68 ldr r3, [r7, #12]
|
||
3974 02e4 1B68 ldr r3, [r3]
|
||
3975 02e6 42F02002 orr r2, r2, #32
|
||
3976 02ea 5A60 str r2, [r3, #4]
|
||
2331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable Tx DMA Request */
|
||
2333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN);
|
||
3977 .loc 1 2333 3
|
||
3978 02ec FB68 ldr r3, [r7, #12]
|
||
3979 02ee 1B68 ldr r3, [r3]
|
||
3980 02f0 5A68 ldr r2, [r3, #4]
|
||
3981 02f2 FB68 ldr r3, [r7, #12]
|
||
3982 02f4 1B68 ldr r3, [r3]
|
||
3983 02f6 42F00202 orr r2, r2, #2
|
||
3984 02fa 5A60 str r2, [r3, #4]
|
||
3985 .L192:
|
||
2334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** error :
|
||
2336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
2337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
3986 .loc 1 2337 3
|
||
3987 02fc FB68 ldr r3, [r7, #12]
|
||
3988 02fe 0022 movs r2, #0
|
||
3989 0300 83F85C20 strb r2, [r3, #92]
|
||
2338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
3990 .loc 1 2338 10
|
||
ARM GAS /tmp/ccs34gJO.s page 112
|
||
|
||
|
||
3991 0304 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
|
||
3992 .L189:
|
||
2339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3993 .loc 1 2339 1
|
||
3994 0306 1846 mov r0, r3
|
||
3995 0308 1837 adds r7, r7, #24
|
||
3996 .cfi_def_cfa_offset 8
|
||
3997 030a BD46 mov sp, r7
|
||
3998 .cfi_def_cfa_register 13
|
||
3999 @ sp needed
|
||
4000 030c 80BD pop {r7, pc}
|
||
4001 .L208:
|
||
4002 030e 00BF .align 2
|
||
4003 .L207:
|
||
4004 0310 00000000 .word SPI_DMAHalfReceiveCplt
|
||
4005 0314 00000000 .word SPI_DMAReceiveCplt
|
||
4006 0318 00000000 .word SPI_DMAHalfTransmitReceiveCplt
|
||
4007 031c 00000000 .word SPI_DMATransmitReceiveCplt
|
||
4008 0320 00000000 .word SPI_DMAError
|
||
4009 .cfi_endproc
|
||
4010 .LFE142:
|
||
4012 .section .text.HAL_SPI_Abort,"ax",%progbits
|
||
4013 .align 1
|
||
4014 .global HAL_SPI_Abort
|
||
4015 .syntax unified
|
||
4016 .thumb
|
||
4017 .thumb_func
|
||
4019 HAL_SPI_Abort:
|
||
4020 .LFB143:
|
||
2340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Abort ongoing transfer (blocking mode).
|
||
2343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi SPI handle.
|
||
2344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note This procedure could be used for aborting any ongoing transfer (Tx and Rx),
|
||
2345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * started in Interrupt or DMA mode.
|
||
2346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * This procedure performs following operations :
|
||
2347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Disable SPI Interrupts (depending of transfer direction)
|
||
2348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
|
||
2349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Abort DMA transfer by calling HAL_DMA_Abort (in case of transfer in DMA mode)
|
||
2350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Set handle State to READY
|
||
2351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
|
||
2352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Abort(SPI_HandleTypeDef *hspi)
|
||
2355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4021 .loc 1 2355 1
|
||
4022 .cfi_startproc
|
||
4023 @ args = 0, pretend = 0, frame = 32
|
||
4024 @ frame_needed = 1, uses_anonymous_args = 0
|
||
4025 0000 80B5 push {r7, lr}
|
||
4026 .cfi_def_cfa_offset 8
|
||
4027 .cfi_offset 7, -8
|
||
4028 .cfi_offset 14, -4
|
||
4029 0002 8AB0 sub sp, sp, #40
|
||
4030 .cfi_def_cfa_offset 48
|
||
4031 0004 02AF add r7, sp, #8
|
||
4032 .cfi_def_cfa 7, 40
|
||
ARM GAS /tmp/ccs34gJO.s page 113
|
||
|
||
|
||
4033 0006 7860 str r0, [r7, #4]
|
||
2356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode;
|
||
2357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t count;
|
||
2358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t resetcount;
|
||
2359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialized local variable */
|
||
2361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_OK;
|
||
4034 .loc 1 2361 13
|
||
4035 0008 0023 movs r3, #0
|
||
4036 000a FB77 strb r3, [r7, #31]
|
||
2362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** resetcount = SPI_DEFAULT_TIMEOUT * (SystemCoreClock / 24U / 1000U);
|
||
4037 .loc 1 2362 61
|
||
4038 000c 884B ldr r3, .L228
|
||
4039 000e 1B68 ldr r3, [r3]
|
||
4040 0010 884A ldr r2, .L228+4
|
||
4041 0012 A2FB0323 umull r2, r3, r2, r3
|
||
4042 0016 5B0A lsrs r3, r3, #9
|
||
4043 .loc 1 2362 36
|
||
4044 0018 6422 movs r2, #100
|
||
4045 001a 02FB03F3 mul r3, r2, r3
|
||
4046 .loc 1 2362 14
|
||
4047 001e 7B61 str r3, [r7, #20]
|
||
2363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = resetcount;
|
||
4048 .loc 1 2363 9
|
||
4049 0020 7B69 ldr r3, [r7, #20]
|
||
4050 0022 BB61 str r3, [r7, #24]
|
||
2364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear ERRIE interrupt to avoid error interrupts generation during Abort procedure */
|
||
2366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_ERRIE);
|
||
4051 .loc 1 2366 3
|
||
4052 0024 7B68 ldr r3, [r7, #4]
|
||
4053 0026 1B68 ldr r3, [r3]
|
||
4054 0028 5A68 ldr r2, [r3, #4]
|
||
4055 002a 7B68 ldr r3, [r7, #4]
|
||
4056 002c 1B68 ldr r3, [r3]
|
||
4057 002e 22F02002 bic r2, r2, #32
|
||
4058 0032 5A60 str r2, [r3, #4]
|
||
2367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXEIE, RXNEIE and ERRIE(mode fault event, overrun error, TI frame error) interrupts */
|
||
2369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_TXEIE))
|
||
4059 .loc 1 2369 7
|
||
4060 0034 7B68 ldr r3, [r7, #4]
|
||
4061 0036 1B68 ldr r3, [r3]
|
||
4062 0038 5B68 ldr r3, [r3, #4]
|
||
4063 003a 03F08003 and r3, r3, #128
|
||
4064 .loc 1 2369 6
|
||
4065 003e 802B cmp r3, #128
|
||
4066 0040 17D1 bne .L210
|
||
2370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = SPI_AbortTx_ISR;
|
||
4067 .loc 1 2371 17
|
||
4068 0042 7B68 ldr r3, [r7, #4]
|
||
4069 0044 7C4A ldr r2, .L228+8
|
||
4070 0046 1A65 str r2, [r3, #80]
|
||
4071 .L213:
|
||
2372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait HAL_SPI_STATE_ABORT state */
|
||
2373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
ARM GAS /tmp/ccs34gJO.s page 114
|
||
|
||
|
||
2374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
4072 .loc 1 2375 17
|
||
4073 0048 BB69 ldr r3, [r7, #24]
|
||
4074 .loc 1 2375 10
|
||
4075 004a 002B cmp r3, #0
|
||
4076 004c 06D1 bne .L211
|
||
2376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
4077 .loc 1 2377 9
|
||
4078 004e 7B68 ldr r3, [r7, #4]
|
||
4079 0050 1B6E ldr r3, [r3, #96]
|
||
4080 0052 43F04002 orr r2, r3, #64
|
||
4081 0056 7B68 ldr r3, [r7, #4]
|
||
4082 0058 1A66 str r2, [r3, #96]
|
||
2378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
4083 .loc 1 2378 9
|
||
4084 005a 08E0 b .L212
|
||
4085 .L211:
|
||
2379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
4086 .loc 1 2380 12
|
||
4087 005c BB69 ldr r3, [r7, #24]
|
||
4088 005e 013B subs r3, r3, #1
|
||
4089 0060 BB61 str r3, [r7, #24]
|
||
2381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (hspi->State != HAL_SPI_STATE_ABORT);
|
||
4090 .loc 1 2381 18
|
||
4091 0062 7B68 ldr r3, [r7, #4]
|
||
4092 0064 93F85D30 ldrb r3, [r3, #93]
|
||
4093 0068 DBB2 uxtb r3, r3
|
||
4094 .loc 1 2381 26
|
||
4095 006a 072B cmp r3, #7
|
||
4096 006c ECD1 bne .L213
|
||
4097 .L212:
|
||
2382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset Timeout Counter */
|
||
2383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = resetcount;
|
||
4098 .loc 1 2383 11
|
||
4099 006e 7B69 ldr r3, [r7, #20]
|
||
4100 0070 BB61 str r3, [r7, #24]
|
||
4101 .L210:
|
||
2384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXNEIE))
|
||
4102 .loc 1 2386 7
|
||
4103 0072 7B68 ldr r3, [r7, #4]
|
||
4104 0074 1B68 ldr r3, [r3]
|
||
4105 0076 5B68 ldr r3, [r3, #4]
|
||
4106 0078 03F04003 and r3, r3, #64
|
||
4107 .loc 1 2386 6
|
||
4108 007c 402B cmp r3, #64
|
||
4109 007e 17D1 bne .L214
|
||
2387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_AbortRx_ISR;
|
||
4110 .loc 1 2388 17
|
||
4111 0080 7B68 ldr r3, [r7, #4]
|
||
4112 0082 6E4A ldr r2, .L228+12
|
||
4113 0084 DA64 str r2, [r3, #76]
|
||
ARM GAS /tmp/ccs34gJO.s page 115
|
||
|
||
|
||
4114 .L217:
|
||
2389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait HAL_SPI_STATE_ABORT state */
|
||
2390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
2391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
4115 .loc 1 2392 17
|
||
4116 0086 BB69 ldr r3, [r7, #24]
|
||
4117 .loc 1 2392 10
|
||
4118 0088 002B cmp r3, #0
|
||
4119 008a 06D1 bne .L215
|
||
2393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
4120 .loc 1 2394 9
|
||
4121 008c 7B68 ldr r3, [r7, #4]
|
||
4122 008e 1B6E ldr r3, [r3, #96]
|
||
4123 0090 43F04002 orr r2, r3, #64
|
||
4124 0094 7B68 ldr r3, [r7, #4]
|
||
4125 0096 1A66 str r2, [r3, #96]
|
||
2395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
4126 .loc 1 2395 9
|
||
4127 0098 08E0 b .L216
|
||
4128 .L215:
|
||
2396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
4129 .loc 1 2397 12
|
||
4130 009a BB69 ldr r3, [r7, #24]
|
||
4131 009c 013B subs r3, r3, #1
|
||
4132 009e BB61 str r3, [r7, #24]
|
||
2398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (hspi->State != HAL_SPI_STATE_ABORT);
|
||
4133 .loc 1 2398 18
|
||
4134 00a0 7B68 ldr r3, [r7, #4]
|
||
4135 00a2 93F85D30 ldrb r3, [r3, #93]
|
||
4136 00a6 DBB2 uxtb r3, r3
|
||
4137 .loc 1 2398 26
|
||
4138 00a8 072B cmp r3, #7
|
||
4139 00aa ECD1 bne .L217
|
||
4140 .L216:
|
||
2399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset Timeout Counter */
|
||
2400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = resetcount;
|
||
4141 .loc 1 2400 11
|
||
4142 00ac 7B69 ldr r3, [r7, #20]
|
||
4143 00ae BB61 str r3, [r7, #24]
|
||
4144 .L214:
|
||
2401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA Tx request if enabled */
|
||
2404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_TXDMAEN))
|
||
4145 .loc 1 2404 7
|
||
4146 00b0 7B68 ldr r3, [r7, #4]
|
||
4147 00b2 1B68 ldr r3, [r3]
|
||
4148 00b4 5B68 ldr r3, [r3, #4]
|
||
4149 00b6 03F00203 and r3, r3, #2
|
||
4150 .loc 1 2404 6
|
||
4151 00ba 022B cmp r3, #2
|
||
4152 00bc 41D1 bne .L218
|
||
2405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA Tx Stream/Channel : use blocking DMA Abort API (no callback) */
|
||
ARM GAS /tmp/ccs34gJO.s page 116
|
||
|
||
|
||
2407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx != NULL)
|
||
4153 .loc 1 2407 13
|
||
4154 00be 7B68 ldr r3, [r7, #4]
|
||
4155 00c0 5B6D ldr r3, [r3, #84]
|
||
4156 .loc 1 2407 8
|
||
4157 00c2 002B cmp r3, #0
|
||
4158 00c4 3DD0 beq .L218
|
||
2408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI DMA Abort callback :
|
||
2410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** will lead to call HAL_SPI_AbortCpltCallback() at end of DMA abort procedure */
|
||
2411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = NULL;
|
||
4159 .loc 1 2411 11
|
||
4160 00c6 7B68 ldr r3, [r7, #4]
|
||
4161 00c8 5B6D ldr r3, [r3, #84]
|
||
4162 .loc 1 2411 39
|
||
4163 00ca 0022 movs r2, #0
|
||
4164 00cc 5A63 str r2, [r3, #52]
|
||
2412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort DMA Tx Handle linked to SPI Peripheral */
|
||
2414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_DMA_Abort(hspi->hdmatx) != HAL_OK)
|
||
4165 .loc 1 2414 11
|
||
4166 00ce 7B68 ldr r3, [r7, #4]
|
||
4167 00d0 5B6D ldr r3, [r3, #84]
|
||
4168 00d2 1846 mov r0, r3
|
||
4169 00d4 FFF7FEFF bl HAL_DMA_Abort
|
||
4170 00d8 0346 mov r3, r0
|
||
4171 .loc 1 2414 10 discriminator 1
|
||
4172 00da 002B cmp r3, #0
|
||
4173 00dc 02D0 beq .L219
|
||
2415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4174 .loc 1 2416 25
|
||
4175 00de 7B68 ldr r3, [r7, #4]
|
||
4176 00e0 4022 movs r2, #64
|
||
4177 00e2 1A66 str r2, [r3, #96]
|
||
4178 .L219:
|
||
2417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Tx DMA Request */
|
||
2420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, (SPI_CR2_TXDMAEN));
|
||
4179 .loc 1 2420 7
|
||
4180 00e4 7B68 ldr r3, [r7, #4]
|
||
4181 00e6 1B68 ldr r3, [r3]
|
||
4182 00e8 5A68 ldr r2, [r3, #4]
|
||
4183 00ea 7B68 ldr r3, [r7, #4]
|
||
4184 00ec 1B68 ldr r3, [r3]
|
||
4185 00ee 22F00202 bic r2, r2, #2
|
||
4186 00f2 5A60 str r2, [r3, #4]
|
||
2421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, HAL_GetTick()) != HAL_OK)
|
||
4187 .loc 1 2422 11
|
||
4188 00f4 FFF7FEFF bl HAL_GetTick
|
||
4189 00f8 0346 mov r3, r0
|
||
4190 .loc 1 2422 11 is_stmt 0 discriminator 1
|
||
4191 00fa 1A46 mov r2, r3
|
||
4192 00fc 6421 movs r1, #100
|
||
4193 00fe 7868 ldr r0, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 117
|
||
|
||
|
||
4194 0100 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
4195 0104 0346 mov r3, r0
|
||
4196 .loc 1 2422 10 is_stmt 1 discriminator 2
|
||
4197 0106 002B cmp r3, #0
|
||
4198 0108 02D0 beq .L220
|
||
2423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4199 .loc 1 2424 25
|
||
4200 010a 7B68 ldr r3, [r7, #4]
|
||
4201 010c 4022 movs r2, #64
|
||
4202 010e 1A66 str r2, [r3, #96]
|
||
4203 .L220:
|
||
2425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral */
|
||
2428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
4204 .loc 1 2428 7
|
||
4205 0110 7B68 ldr r3, [r7, #4]
|
||
4206 0112 1B68 ldr r3, [r3]
|
||
4207 0114 1A68 ldr r2, [r3]
|
||
4208 0116 7B68 ldr r3, [r7, #4]
|
||
4209 0118 1B68 ldr r3, [r3]
|
||
4210 011a 22F04002 bic r2, r2, #64
|
||
4211 011e 1A60 str r2, [r3]
|
||
2429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
2431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT,
|
||
4212 .loc 1 2431 11
|
||
4213 0120 FFF7FEFF bl HAL_GetTick
|
||
4214 0124 0346 mov r3, r0
|
||
4215 .loc 1 2431 11 is_stmt 0 discriminator 1
|
||
4216 0126 0093 str r3, [sp]
|
||
4217 0128 6423 movs r3, #100
|
||
4218 012a 0022 movs r2, #0
|
||
4219 012c 4FF4C061 mov r1, #1536
|
||
4220 0130 7868 ldr r0, [r7, #4]
|
||
4221 0132 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
4222 0136 0346 mov r3, r0
|
||
4223 .loc 1 2431 10 is_stmt 1 discriminator 2
|
||
4224 0138 002B cmp r3, #0
|
||
4225 013a 02D0 beq .L218
|
||
2432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4226 .loc 1 2433 25
|
||
4227 013c 7B68 ldr r3, [r7, #4]
|
||
4228 013e 4022 movs r2, #64
|
||
4229 0140 1A66 str r2, [r3, #96]
|
||
4230 .L218:
|
||
2434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA Rx request if enabled */
|
||
2439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXDMAEN))
|
||
4231 .loc 1 2439 7
|
||
4232 0142 7B68 ldr r3, [r7, #4]
|
||
4233 0144 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 118
|
||
|
||
|
||
4234 0146 5B68 ldr r3, [r3, #4]
|
||
4235 0148 03F00103 and r3, r3, #1
|
||
4236 .loc 1 2439 6
|
||
4237 014c 012B cmp r3, #1
|
||
4238 014e 43D1 bne .L221
|
||
2440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA Rx Stream/Channel : use blocking DMA Abort API (no callback) */
|
||
2442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx != NULL)
|
||
4239 .loc 1 2442 13
|
||
4240 0150 7B68 ldr r3, [r7, #4]
|
||
4241 0152 9B6D ldr r3, [r3, #88]
|
||
4242 .loc 1 2442 8
|
||
4243 0154 002B cmp r3, #0
|
||
4244 0156 3FD0 beq .L221
|
||
2443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI DMA Abort callback :
|
||
2445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** will lead to call HAL_SPI_AbortCpltCallback() at end of DMA abort procedure */
|
||
2446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = NULL;
|
||
4245 .loc 1 2446 11
|
||
4246 0158 7B68 ldr r3, [r7, #4]
|
||
4247 015a 9B6D ldr r3, [r3, #88]
|
||
4248 .loc 1 2446 39
|
||
4249 015c 0022 movs r2, #0
|
||
4250 015e 5A63 str r2, [r3, #52]
|
||
2447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort DMA Rx Handle linked to SPI Peripheral */
|
||
2449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_DMA_Abort(hspi->hdmarx) != HAL_OK)
|
||
4251 .loc 1 2449 11
|
||
4252 0160 7B68 ldr r3, [r7, #4]
|
||
4253 0162 9B6D ldr r3, [r3, #88]
|
||
4254 0164 1846 mov r0, r3
|
||
4255 0166 FFF7FEFF bl HAL_DMA_Abort
|
||
4256 016a 0346 mov r3, r0
|
||
4257 .loc 1 2449 10 discriminator 1
|
||
4258 016c 002B cmp r3, #0
|
||
4259 016e 02D0 beq .L222
|
||
2450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4260 .loc 1 2451 25
|
||
4261 0170 7B68 ldr r3, [r7, #4]
|
||
4262 0172 4022 movs r2, #64
|
||
4263 0174 1A66 str r2, [r3, #96]
|
||
4264 .L222:
|
||
2452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable peripheral */
|
||
2455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
4265 .loc 1 2455 7
|
||
4266 0176 7B68 ldr r3, [r7, #4]
|
||
4267 0178 1B68 ldr r3, [r3]
|
||
4268 017a 1A68 ldr r2, [r3]
|
||
4269 017c 7B68 ldr r3, [r7, #4]
|
||
4270 017e 1B68 ldr r3, [r3]
|
||
4271 0180 22F04002 bic r2, r2, #64
|
||
4272 0184 1A60 str r2, [r3]
|
||
2456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control the BSY flag */
|
||
ARM GAS /tmp/ccs34gJO.s page 119
|
||
|
||
|
||
2458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_BSY, RESET, SPI_DEFAULT_TIMEOUT, HAL_GetTick
|
||
4273 .loc 1 2458 11
|
||
4274 0186 FFF7FEFF bl HAL_GetTick
|
||
4275 018a 0346 mov r3, r0
|
||
4276 .loc 1 2458 11 is_stmt 0 discriminator 1
|
||
4277 018c 0093 str r3, [sp]
|
||
4278 018e 6423 movs r3, #100
|
||
4279 0190 0022 movs r2, #0
|
||
4280 0192 8021 movs r1, #128
|
||
4281 0194 7868 ldr r0, [r7, #4]
|
||
4282 0196 FFF7FEFF bl SPI_WaitFlagStateUntilTimeout
|
||
4283 019a 0346 mov r3, r0
|
||
4284 .loc 1 2458 10 is_stmt 1 discriminator 2
|
||
4285 019c 002B cmp r3, #0
|
||
4286 019e 02D0 beq .L223
|
||
2459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4287 .loc 1 2460 25
|
||
4288 01a0 7B68 ldr r3, [r7, #4]
|
||
4289 01a2 4022 movs r2, #64
|
||
4290 01a4 1A66 str r2, [r3, #96]
|
||
4291 .L223:
|
||
2461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
2464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT,
|
||
4292 .loc 1 2464 11
|
||
4293 01a6 FFF7FEFF bl HAL_GetTick
|
||
4294 01aa 0346 mov r3, r0
|
||
4295 .loc 1 2464 11 is_stmt 0 discriminator 1
|
||
4296 01ac 0093 str r3, [sp]
|
||
4297 01ae 6423 movs r3, #100
|
||
4298 01b0 0022 movs r2, #0
|
||
4299 01b2 4FF4C061 mov r1, #1536
|
||
4300 01b6 7868 ldr r0, [r7, #4]
|
||
4301 01b8 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
4302 01bc 0346 mov r3, r0
|
||
4303 .loc 1 2464 10 is_stmt 1 discriminator 2
|
||
4304 01be 002B cmp r3, #0
|
||
4305 01c0 02D0 beq .L224
|
||
2465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4306 .loc 1 2466 25
|
||
4307 01c2 7B68 ldr r3, [r7, #4]
|
||
4308 01c4 4022 movs r2, #64
|
||
4309 01c6 1A66 str r2, [r3, #96]
|
||
4310 .L224:
|
||
2467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Rx DMA Request */
|
||
2470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, (SPI_CR2_RXDMAEN));
|
||
4311 .loc 1 2470 7
|
||
4312 01c8 7B68 ldr r3, [r7, #4]
|
||
4313 01ca 1B68 ldr r3, [r3]
|
||
4314 01cc 5A68 ldr r2, [r3, #4]
|
||
4315 01ce 7B68 ldr r3, [r7, #4]
|
||
4316 01d0 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 120
|
||
|
||
|
||
4317 01d2 22F00102 bic r2, r2, #1
|
||
4318 01d6 5A60 str r2, [r3, #4]
|
||
4319 .L221:
|
||
2471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset Tx and Rx transfer counters */
|
||
2474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
4320 .loc 1 2474 21
|
||
4321 01d8 7B68 ldr r3, [r7, #4]
|
||
4322 01da 0022 movs r2, #0
|
||
4323 01dc A3F84620 strh r2, [r3, #70] @ movhi
|
||
2475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
4324 .loc 1 2475 21
|
||
4325 01e0 7B68 ldr r3, [r7, #4]
|
||
4326 01e2 0022 movs r2, #0
|
||
4327 01e4 DA87 strh r2, [r3, #62] @ movhi
|
||
2476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check error during Abort procedure */
|
||
2478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode == HAL_SPI_ERROR_ABORT)
|
||
4328 .loc 1 2478 11
|
||
4329 01e6 7B68 ldr r3, [r7, #4]
|
||
4330 01e8 1B6E ldr r3, [r3, #96]
|
||
4331 .loc 1 2478 6
|
||
4332 01ea 402B cmp r3, #64
|
||
4333 01ec 02D1 bne .L225
|
||
2479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* return HAL_Error in case of error during Abort procedure */
|
||
2481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
4334 .loc 1 2481 15
|
||
4335 01ee 0123 movs r3, #1
|
||
4336 01f0 FB77 strb r3, [r7, #31]
|
||
4337 01f2 02E0 b .L226
|
||
4338 .L225:
|
||
2482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset errorCode */
|
||
2486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
4339 .loc 1 2486 21
|
||
4340 01f4 7B68 ldr r3, [r7, #4]
|
||
4341 01f6 0022 movs r2, #0
|
||
4342 01f8 1A66 str r2, [r3, #96]
|
||
4343 .L226:
|
||
4344 .LBB3:
|
||
2487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear the Error flags in the SR register */
|
||
2490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
4345 .loc 1 2490 3
|
||
4346 01fa 0023 movs r3, #0
|
||
4347 01fc 3B61 str r3, [r7, #16]
|
||
4348 01fe 7B68 ldr r3, [r7, #4]
|
||
4349 0200 1B68 ldr r3, [r3]
|
||
4350 0202 DB68 ldr r3, [r3, #12]
|
||
4351 0204 3B61 str r3, [r7, #16]
|
||
4352 0206 7B68 ldr r3, [r7, #4]
|
||
4353 0208 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 121
|
||
|
||
|
||
4354 020a 9B68 ldr r3, [r3, #8]
|
||
4355 020c 3B61 str r3, [r7, #16]
|
||
4356 020e 3B69 ldr r3, [r7, #16]
|
||
4357 .LBE3:
|
||
4358 .LBB4:
|
||
2491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_FREFLAG(hspi);
|
||
4359 .loc 1 2491 3
|
||
4360 0210 0023 movs r3, #0
|
||
4361 0212 FB60 str r3, [r7, #12]
|
||
4362 0214 7B68 ldr r3, [r7, #4]
|
||
4363 0216 1B68 ldr r3, [r3]
|
||
4364 0218 9B68 ldr r3, [r3, #8]
|
||
4365 021a FB60 str r3, [r7, #12]
|
||
4366 021c FB68 ldr r3, [r7, #12]
|
||
4367 .LBE4:
|
||
2492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Restore hspi->state to ready */
|
||
2494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
4368 .loc 1 2494 15
|
||
4369 021e 7B68 ldr r3, [r7, #4]
|
||
4370 0220 0122 movs r2, #1
|
||
4371 0222 83F85D20 strb r2, [r3, #93]
|
||
2495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
4372 .loc 1 2496 10
|
||
4373 0226 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
|
||
2497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4374 .loc 1 2497 1
|
||
4375 0228 1846 mov r0, r3
|
||
4376 022a 2037 adds r7, r7, #32
|
||
4377 .cfi_def_cfa_offset 8
|
||
4378 022c BD46 mov sp, r7
|
||
4379 .cfi_def_cfa_register 13
|
||
4380 @ sp needed
|
||
4381 022e 80BD pop {r7, pc}
|
||
4382 .L229:
|
||
4383 .align 2
|
||
4384 .L228:
|
||
4385 0230 00000000 .word SystemCoreClock
|
||
4386 0234 F1197605 .word 91625969
|
||
4387 0238 00000000 .word SPI_AbortTx_ISR
|
||
4388 023c 00000000 .word SPI_AbortRx_ISR
|
||
4389 .cfi_endproc
|
||
4390 .LFE143:
|
||
4392 .section .text.HAL_SPI_Abort_IT,"ax",%progbits
|
||
4393 .align 1
|
||
4394 .global HAL_SPI_Abort_IT
|
||
4395 .syntax unified
|
||
4396 .thumb
|
||
4397 .thumb_func
|
||
4399 HAL_SPI_Abort_IT:
|
||
4400 .LFB144:
|
||
2498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Abort ongoing transfer (Interrupt mode).
|
||
2501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi SPI handle.
|
||
2502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note This procedure could be used for aborting any ongoing transfer (Tx and Rx),
|
||
ARM GAS /tmp/ccs34gJO.s page 122
|
||
|
||
|
||
2503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * started in Interrupt or DMA mode.
|
||
2504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * This procedure performs following operations :
|
||
2505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Disable SPI Interrupts (depending of transfer direction)
|
||
2506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
|
||
2507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Abort DMA transfer by calling HAL_DMA_Abort_IT (in case of transfer in DMA mode)
|
||
2508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - Set handle State to READY
|
||
2509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * - At abort completion, call user abort complete callback
|
||
2510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
|
||
2511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * considered as completed only when user abort complete callback is executed (not when ex
|
||
2512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_Abort_IT(SPI_HandleTypeDef *hspi)
|
||
2515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4401 .loc 1 2515 1
|
||
4402 .cfi_startproc
|
||
4403 @ args = 0, pretend = 0, frame = 32
|
||
4404 @ frame_needed = 1, uses_anonymous_args = 0
|
||
4405 0000 80B5 push {r7, lr}
|
||
4406 .cfi_def_cfa_offset 8
|
||
4407 .cfi_offset 7, -8
|
||
4408 .cfi_offset 14, -4
|
||
4409 0002 88B0 sub sp, sp, #32
|
||
4410 .cfi_def_cfa_offset 40
|
||
4411 0004 00AF add r7, sp, #0
|
||
4412 .cfi_def_cfa_register 7
|
||
4413 0006 7860 str r0, [r7, #4]
|
||
2516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode;
|
||
2517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t abortcplt ;
|
||
2518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t count;
|
||
2519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t resetcount;
|
||
2520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialized local variable */
|
||
2522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_OK;
|
||
4414 .loc 1 2522 13
|
||
4415 0008 0023 movs r3, #0
|
||
4416 000a FB77 strb r3, [r7, #31]
|
||
2523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** abortcplt = 1U;
|
||
4417 .loc 1 2523 13
|
||
4418 000c 0123 movs r3, #1
|
||
4419 000e BB61 str r3, [r7, #24]
|
||
2524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** resetcount = SPI_DEFAULT_TIMEOUT * (SystemCoreClock / 24U / 1000U);
|
||
4420 .loc 1 2524 61
|
||
4421 0010 724B ldr r3, .L251
|
||
4422 0012 1B68 ldr r3, [r3]
|
||
4423 0014 724A ldr r2, .L251+4
|
||
4424 0016 A2FB0323 umull r2, r3, r2, r3
|
||
4425 001a 5B0A lsrs r3, r3, #9
|
||
4426 .loc 1 2524 36
|
||
4427 001c 6422 movs r2, #100
|
||
4428 001e 02FB03F3 mul r3, r2, r3
|
||
4429 .loc 1 2524 14
|
||
4430 0022 3B61 str r3, [r7, #16]
|
||
2525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = resetcount;
|
||
4431 .loc 1 2525 9
|
||
4432 0024 3B69 ldr r3, [r7, #16]
|
||
4433 0026 7B61 str r3, [r7, #20]
|
||
2526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 123
|
||
|
||
|
||
2527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear ERRIE interrupt to avoid error interrupts generation during Abort procedure */
|
||
2528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_ERRIE);
|
||
4434 .loc 1 2528 3
|
||
4435 0028 7B68 ldr r3, [r7, #4]
|
||
4436 002a 1B68 ldr r3, [r3]
|
||
4437 002c 5A68 ldr r2, [r3, #4]
|
||
4438 002e 7B68 ldr r3, [r7, #4]
|
||
4439 0030 1B68 ldr r3, [r3]
|
||
4440 0032 22F02002 bic r2, r2, #32
|
||
4441 0036 5A60 str r2, [r3, #4]
|
||
2529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Change Rx and Tx Irq Handler to Disable TXEIE, RXNEIE and ERRIE interrupts */
|
||
2531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_TXEIE))
|
||
4442 .loc 1 2531 7
|
||
4443 0038 7B68 ldr r3, [r7, #4]
|
||
4444 003a 1B68 ldr r3, [r3]
|
||
4445 003c 5B68 ldr r3, [r3, #4]
|
||
4446 003e 03F08003 and r3, r3, #128
|
||
4447 .loc 1 2531 6
|
||
4448 0042 802B cmp r3, #128
|
||
4449 0044 17D1 bne .L231
|
||
2532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR = SPI_AbortTx_ISR;
|
||
4450 .loc 1 2533 17
|
||
4451 0046 7B68 ldr r3, [r7, #4]
|
||
4452 0048 664A ldr r2, .L251+8
|
||
4453 004a 1A65 str r2, [r3, #80]
|
||
4454 .L234:
|
||
2534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait HAL_SPI_STATE_ABORT state */
|
||
2535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
2536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
4455 .loc 1 2537 17
|
||
4456 004c 7B69 ldr r3, [r7, #20]
|
||
4457 .loc 1 2537 10
|
||
4458 004e 002B cmp r3, #0
|
||
4459 0050 06D1 bne .L232
|
||
2538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
4460 .loc 1 2539 9
|
||
4461 0052 7B68 ldr r3, [r7, #4]
|
||
4462 0054 1B6E ldr r3, [r3, #96]
|
||
4463 0056 43F04002 orr r2, r3, #64
|
||
4464 005a 7B68 ldr r3, [r7, #4]
|
||
4465 005c 1A66 str r2, [r3, #96]
|
||
2540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
4466 .loc 1 2540 9
|
||
4467 005e 08E0 b .L233
|
||
4468 .L232:
|
||
2541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
4469 .loc 1 2542 12
|
||
4470 0060 7B69 ldr r3, [r7, #20]
|
||
4471 0062 013B subs r3, r3, #1
|
||
4472 0064 7B61 str r3, [r7, #20]
|
||
2543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (hspi->State != HAL_SPI_STATE_ABORT);
|
||
4473 .loc 1 2543 18
|
||
ARM GAS /tmp/ccs34gJO.s page 124
|
||
|
||
|
||
4474 0066 7B68 ldr r3, [r7, #4]
|
||
4475 0068 93F85D30 ldrb r3, [r3, #93]
|
||
4476 006c DBB2 uxtb r3, r3
|
||
4477 .loc 1 2543 26
|
||
4478 006e 072B cmp r3, #7
|
||
4479 0070 ECD1 bne .L234
|
||
4480 .L233:
|
||
2544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset Timeout Counter */
|
||
2545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = resetcount;
|
||
4481 .loc 1 2545 11
|
||
4482 0072 3B69 ldr r3, [r7, #16]
|
||
4483 0074 7B61 str r3, [r7, #20]
|
||
4484 .L231:
|
||
2546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXNEIE))
|
||
4485 .loc 1 2548 7
|
||
4486 0076 7B68 ldr r3, [r7, #4]
|
||
4487 0078 1B68 ldr r3, [r3]
|
||
4488 007a 5B68 ldr r3, [r3, #4]
|
||
4489 007c 03F04003 and r3, r3, #64
|
||
4490 .loc 1 2548 6
|
||
4491 0080 402B cmp r3, #64
|
||
4492 0082 17D1 bne .L235
|
||
2549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_AbortRx_ISR;
|
||
4493 .loc 1 2550 17
|
||
4494 0084 7B68 ldr r3, [r7, #4]
|
||
4495 0086 584A ldr r2, .L251+12
|
||
4496 0088 DA64 str r2, [r3, #76]
|
||
4497 .L238:
|
||
2551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait HAL_SPI_STATE_ABORT state */
|
||
2552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
2553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
4498 .loc 1 2554 17
|
||
4499 008a 7B69 ldr r3, [r7, #20]
|
||
4500 .loc 1 2554 10
|
||
4501 008c 002B cmp r3, #0
|
||
4502 008e 06D1 bne .L236
|
||
2555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
4503 .loc 1 2556 9
|
||
4504 0090 7B68 ldr r3, [r7, #4]
|
||
4505 0092 1B6E ldr r3, [r3, #96]
|
||
4506 0094 43F04002 orr r2, r3, #64
|
||
4507 0098 7B68 ldr r3, [r7, #4]
|
||
4508 009a 1A66 str r2, [r3, #96]
|
||
2557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
4509 .loc 1 2557 9
|
||
4510 009c 08E0 b .L237
|
||
4511 .L236:
|
||
2558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
4512 .loc 1 2559 12
|
||
4513 009e 7B69 ldr r3, [r7, #20]
|
||
4514 00a0 013B subs r3, r3, #1
|
||
ARM GAS /tmp/ccs34gJO.s page 125
|
||
|
||
|
||
4515 00a2 7B61 str r3, [r7, #20]
|
||
2560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (hspi->State != HAL_SPI_STATE_ABORT);
|
||
4516 .loc 1 2560 18
|
||
4517 00a4 7B68 ldr r3, [r7, #4]
|
||
4518 00a6 93F85D30 ldrb r3, [r3, #93]
|
||
4519 00aa DBB2 uxtb r3, r3
|
||
4520 .loc 1 2560 26
|
||
4521 00ac 072B cmp r3, #7
|
||
4522 00ae ECD1 bne .L238
|
||
4523 .L237:
|
||
2561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset Timeout Counter */
|
||
2562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = resetcount;
|
||
4524 .loc 1 2562 11
|
||
4525 00b0 3B69 ldr r3, [r7, #16]
|
||
4526 00b2 7B61 str r3, [r7, #20]
|
||
4527 .L235:
|
||
2563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* If DMA Tx and/or DMA Rx Handles are associated to SPI Handle, DMA Abort complete callbacks sho
|
||
2566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** before any call to DMA Abort functions */
|
||
2567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DMA Tx Handle is valid */
|
||
2568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx != NULL)
|
||
4528 .loc 1 2568 11
|
||
4529 00b4 7B68 ldr r3, [r7, #4]
|
||
4530 00b6 5B6D ldr r3, [r3, #84]
|
||
4531 .loc 1 2568 6
|
||
4532 00b8 002B cmp r3, #0
|
||
4533 00ba 0FD0 beq .L239
|
||
2569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set DMA Abort Complete callback if UART DMA Tx request if enabled.
|
||
2571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Otherwise, set it to NULL */
|
||
2572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_TXDMAEN))
|
||
4534 .loc 1 2572 9
|
||
4535 00bc 7B68 ldr r3, [r7, #4]
|
||
4536 00be 1B68 ldr r3, [r3]
|
||
4537 00c0 5B68 ldr r3, [r3, #4]
|
||
4538 00c2 03F00203 and r3, r3, #2
|
||
4539 .loc 1 2572 8
|
||
4540 00c6 022B cmp r3, #2
|
||
4541 00c8 04D1 bne .L240
|
||
2573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = SPI_DMATxAbortCallback;
|
||
4542 .loc 1 2574 11
|
||
4543 00ca 7B68 ldr r3, [r7, #4]
|
||
4544 00cc 5B6D ldr r3, [r3, #84]
|
||
4545 .loc 1 2574 39
|
||
4546 00ce 474A ldr r2, .L251+16
|
||
4547 00d0 5A63 str r2, [r3, #52]
|
||
4548 00d2 03E0 b .L239
|
||
4549 .L240:
|
||
2575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = NULL;
|
||
4550 .loc 1 2578 11
|
||
4551 00d4 7B68 ldr r3, [r7, #4]
|
||
4552 00d6 5B6D ldr r3, [r3, #84]
|
||
ARM GAS /tmp/ccs34gJO.s page 126
|
||
|
||
|
||
4553 .loc 1 2578 39
|
||
4554 00d8 0022 movs r2, #0
|
||
4555 00da 5A63 str r2, [r3, #52]
|
||
4556 .L239:
|
||
2579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DMA Rx Handle is valid */
|
||
2582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx != NULL)
|
||
4557 .loc 1 2582 11
|
||
4558 00dc 7B68 ldr r3, [r7, #4]
|
||
4559 00de 9B6D ldr r3, [r3, #88]
|
||
4560 .loc 1 2582 6
|
||
4561 00e0 002B cmp r3, #0
|
||
4562 00e2 0FD0 beq .L241
|
||
2583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set DMA Abort Complete callback if UART DMA Rx request if enabled.
|
||
2585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** Otherwise, set it to NULL */
|
||
2586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXDMAEN))
|
||
4563 .loc 1 2586 9
|
||
4564 00e4 7B68 ldr r3, [r7, #4]
|
||
4565 00e6 1B68 ldr r3, [r3]
|
||
4566 00e8 5B68 ldr r3, [r3, #4]
|
||
4567 00ea 03F00103 and r3, r3, #1
|
||
4568 .loc 1 2586 8
|
||
4569 00ee 012B cmp r3, #1
|
||
4570 00f0 04D1 bne .L242
|
||
2587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = SPI_DMARxAbortCallback;
|
||
4571 .loc 1 2588 11
|
||
4572 00f2 7B68 ldr r3, [r7, #4]
|
||
4573 00f4 9B6D ldr r3, [r3, #88]
|
||
4574 .loc 1 2588 39
|
||
4575 00f6 3E4A ldr r2, .L251+20
|
||
4576 00f8 5A63 str r2, [r3, #52]
|
||
4577 00fa 03E0 b .L241
|
||
4578 .L242:
|
||
2589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = NULL;
|
||
4579 .loc 1 2592 11
|
||
4580 00fc 7B68 ldr r3, [r7, #4]
|
||
4581 00fe 9B6D ldr r3, [r3, #88]
|
||
4582 .loc 1 2592 39
|
||
4583 0100 0022 movs r2, #0
|
||
4584 0102 5A63 str r2, [r3, #52]
|
||
4585 .L241:
|
||
2593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA Tx request if enabled */
|
||
2597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_TXDMAEN))
|
||
4586 .loc 1 2597 7
|
||
4587 0104 7B68 ldr r3, [r7, #4]
|
||
4588 0106 1B68 ldr r3, [r3]
|
||
4589 0108 5B68 ldr r3, [r3, #4]
|
||
4590 010a 03F00203 and r3, r3, #2
|
||
ARM GAS /tmp/ccs34gJO.s page 127
|
||
|
||
|
||
4591 .loc 1 2597 6
|
||
4592 010e 022B cmp r3, #2
|
||
4593 0110 15D1 bne .L243
|
||
2598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA Tx Stream/Channel */
|
||
2600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx != NULL)
|
||
4594 .loc 1 2600 13
|
||
4595 0112 7B68 ldr r3, [r7, #4]
|
||
4596 0114 5B6D ldr r3, [r3, #84]
|
||
4597 .loc 1 2600 8
|
||
4598 0116 002B cmp r3, #0
|
||
4599 0118 11D0 beq .L243
|
||
2601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort DMA Tx Handle linked to SPI Peripheral */
|
||
2603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_DMA_Abort_IT(hspi->hdmatx) != HAL_OK)
|
||
4600 .loc 1 2603 11
|
||
4601 011a 7B68 ldr r3, [r7, #4]
|
||
4602 011c 5B6D ldr r3, [r3, #84]
|
||
4603 011e 1846 mov r0, r3
|
||
4604 0120 FFF7FEFF bl HAL_DMA_Abort_IT
|
||
4605 0124 0346 mov r3, r0
|
||
4606 .loc 1 2603 10 discriminator 1
|
||
4607 0126 002B cmp r3, #0
|
||
4608 0128 07D0 beq .L244
|
||
2604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = NULL;
|
||
4609 .loc 1 2605 13
|
||
4610 012a 7B68 ldr r3, [r7, #4]
|
||
4611 012c 5B6D ldr r3, [r3, #84]
|
||
4612 .loc 1 2605 41
|
||
4613 012e 0022 movs r2, #0
|
||
4614 0130 5A63 str r2, [r3, #52]
|
||
2606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4615 .loc 1 2606 25
|
||
4616 0132 7B68 ldr r3, [r7, #4]
|
||
4617 0134 4022 movs r2, #64
|
||
4618 0136 1A66 str r2, [r3, #96]
|
||
4619 0138 01E0 b .L243
|
||
4620 .L244:
|
||
2607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** abortcplt = 0U;
|
||
4621 .loc 1 2610 19
|
||
4622 013a 0023 movs r3, #0
|
||
4623 013c BB61 str r3, [r7, #24]
|
||
4624 .L243:
|
||
2611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA Rx request if enabled */
|
||
2615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXDMAEN))
|
||
4625 .loc 1 2615 7
|
||
4626 013e 7B68 ldr r3, [r7, #4]
|
||
4627 0140 1B68 ldr r3, [r3]
|
||
4628 0142 5B68 ldr r3, [r3, #4]
|
||
4629 0144 03F00103 and r3, r3, #1
|
||
ARM GAS /tmp/ccs34gJO.s page 128
|
||
|
||
|
||
4630 .loc 1 2615 6
|
||
4631 0148 012B cmp r3, #1
|
||
4632 014a 15D1 bne .L245
|
||
2616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA Rx Stream/Channel */
|
||
2618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx != NULL)
|
||
4633 .loc 1 2618 13
|
||
4634 014c 7B68 ldr r3, [r7, #4]
|
||
4635 014e 9B6D ldr r3, [r3, #88]
|
||
4636 .loc 1 2618 8
|
||
4637 0150 002B cmp r3, #0
|
||
4638 0152 11D0 beq .L245
|
||
2619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort DMA Rx Handle linked to SPI Peripheral */
|
||
2621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_DMA_Abort_IT(hspi->hdmarx) != HAL_OK)
|
||
4639 .loc 1 2621 11
|
||
4640 0154 7B68 ldr r3, [r7, #4]
|
||
4641 0156 9B6D ldr r3, [r3, #88]
|
||
4642 0158 1846 mov r0, r3
|
||
4643 015a FFF7FEFF bl HAL_DMA_Abort_IT
|
||
4644 015e 0346 mov r3, r0
|
||
4645 .loc 1 2621 10 discriminator 1
|
||
4646 0160 002B cmp r3, #0
|
||
4647 0162 07D0 beq .L246
|
||
2622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = NULL;
|
||
4648 .loc 1 2623 13
|
||
4649 0164 7B68 ldr r3, [r7, #4]
|
||
4650 0166 9B6D ldr r3, [r3, #88]
|
||
4651 .loc 1 2623 41
|
||
4652 0168 0022 movs r2, #0
|
||
4653 016a 5A63 str r2, [r3, #52]
|
||
2624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
4654 .loc 1 2624 25
|
||
4655 016c 7B68 ldr r3, [r7, #4]
|
||
4656 016e 4022 movs r2, #64
|
||
4657 0170 1A66 str r2, [r3, #96]
|
||
4658 0172 01E0 b .L245
|
||
4659 .L246:
|
||
2625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** abortcplt = 0U;
|
||
4660 .loc 1 2628 19
|
||
4661 0174 0023 movs r3, #0
|
||
4662 0176 BB61 str r3, [r7, #24]
|
||
4663 .L245:
|
||
2629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (abortcplt == 1U)
|
||
4664 .loc 1 2633 6
|
||
4665 0178 BB69 ldr r3, [r7, #24]
|
||
4666 017a 012B cmp r3, #1
|
||
4667 017c 29D1 bne .L247
|
||
2634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 129
|
||
|
||
|
||
2635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset Tx and Rx transfer counters */
|
||
2636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
4668 .loc 1 2636 23
|
||
4669 017e 7B68 ldr r3, [r7, #4]
|
||
4670 0180 0022 movs r2, #0
|
||
4671 0182 A3F84620 strh r2, [r3, #70] @ movhi
|
||
2637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
4672 .loc 1 2637 23
|
||
4673 0186 7B68 ldr r3, [r7, #4]
|
||
4674 0188 0022 movs r2, #0
|
||
4675 018a DA87 strh r2, [r3, #62] @ movhi
|
||
2638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check error during Abort procedure */
|
||
2640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode == HAL_SPI_ERROR_ABORT)
|
||
4676 .loc 1 2640 13
|
||
4677 018c 7B68 ldr r3, [r7, #4]
|
||
4678 018e 1B6E ldr r3, [r3, #96]
|
||
4679 .loc 1 2640 8
|
||
4680 0190 402B cmp r3, #64
|
||
4681 0192 02D1 bne .L248
|
||
2641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* return HAL_Error in case of error during Abort procedure */
|
||
2643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
4682 .loc 1 2643 17
|
||
4683 0194 0123 movs r3, #1
|
||
4684 0196 FB77 strb r3, [r7, #31]
|
||
4685 0198 02E0 b .L249
|
||
4686 .L248:
|
||
2644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset errorCode */
|
||
2648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
4687 .loc 1 2648 23
|
||
4688 019a 7B68 ldr r3, [r7, #4]
|
||
4689 019c 0022 movs r2, #0
|
||
4690 019e 1A66 str r2, [r3, #96]
|
||
4691 .L249:
|
||
4692 .LBB5:
|
||
2649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear the Error flags in the SR register */
|
||
2652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
4693 .loc 1 2652 5
|
||
4694 01a0 0023 movs r3, #0
|
||
4695 01a2 FB60 str r3, [r7, #12]
|
||
4696 01a4 7B68 ldr r3, [r7, #4]
|
||
4697 01a6 1B68 ldr r3, [r3]
|
||
4698 01a8 DB68 ldr r3, [r3, #12]
|
||
4699 01aa FB60 str r3, [r7, #12]
|
||
4700 01ac 7B68 ldr r3, [r7, #4]
|
||
4701 01ae 1B68 ldr r3, [r3]
|
||
4702 01b0 9B68 ldr r3, [r3, #8]
|
||
4703 01b2 FB60 str r3, [r7, #12]
|
||
4704 01b4 FB68 ldr r3, [r7, #12]
|
||
4705 .LBE5:
|
||
4706 .LBB6:
|
||
ARM GAS /tmp/ccs34gJO.s page 130
|
||
|
||
|
||
2653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_FREFLAG(hspi);
|
||
4707 .loc 1 2653 5
|
||
4708 01b6 0023 movs r3, #0
|
||
4709 01b8 BB60 str r3, [r7, #8]
|
||
4710 01ba 7B68 ldr r3, [r7, #4]
|
||
4711 01bc 1B68 ldr r3, [r3]
|
||
4712 01be 9B68 ldr r3, [r3, #8]
|
||
4713 01c0 BB60 str r3, [r7, #8]
|
||
4714 01c2 BB68 ldr r3, [r7, #8]
|
||
4715 .LBE6:
|
||
2654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Restore hspi->State to Ready */
|
||
2656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
4716 .loc 1 2656 17
|
||
4717 01c4 7B68 ldr r3, [r7, #4]
|
||
4718 01c6 0122 movs r2, #1
|
||
4719 01c8 83F85D20 strb r2, [r3, #93]
|
||
2657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
|
||
2659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
2660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->AbortCpltCallback(hspi);
|
||
2661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
2662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_AbortCpltCallback(hspi);
|
||
4720 .loc 1 2662 5
|
||
4721 01cc 7868 ldr r0, [r7, #4]
|
||
4722 01ce FFF7FEFF bl HAL_SPI_AbortCpltCallback
|
||
4723 .L247:
|
||
2663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
2664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
4724 .loc 1 2666 10
|
||
4725 01d2 FB7F ldrb r3, [r7, #31] @ zero_extendqisi2
|
||
2667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4726 .loc 1 2667 1
|
||
4727 01d4 1846 mov r0, r3
|
||
4728 01d6 2037 adds r7, r7, #32
|
||
4729 .cfi_def_cfa_offset 8
|
||
4730 01d8 BD46 mov sp, r7
|
||
4731 .cfi_def_cfa_register 13
|
||
4732 @ sp needed
|
||
4733 01da 80BD pop {r7, pc}
|
||
4734 .L252:
|
||
4735 .align 2
|
||
4736 .L251:
|
||
4737 01dc 00000000 .word SystemCoreClock
|
||
4738 01e0 F1197605 .word 91625969
|
||
4739 01e4 00000000 .word SPI_AbortTx_ISR
|
||
4740 01e8 00000000 .word SPI_AbortRx_ISR
|
||
4741 01ec 00000000 .word SPI_DMATxAbortCallback
|
||
4742 01f0 00000000 .word SPI_DMARxAbortCallback
|
||
4743 .cfi_endproc
|
||
4744 .LFE144:
|
||
4746 .section .text.HAL_SPI_DMAPause,"ax",%progbits
|
||
4747 .align 1
|
||
4748 .global HAL_SPI_DMAPause
|
||
4749 .syntax unified
|
||
ARM GAS /tmp/ccs34gJO.s page 131
|
||
|
||
|
||
4750 .thumb
|
||
4751 .thumb_func
|
||
4753 HAL_SPI_DMAPause:
|
||
4754 .LFB145:
|
||
2668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Pause the DMA Transfer.
|
||
2671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified SPI module.
|
||
2673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_DMAPause(SPI_HandleTypeDef *hspi)
|
||
2676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4755 .loc 1 2676 1
|
||
4756 .cfi_startproc
|
||
4757 @ args = 0, pretend = 0, frame = 8
|
||
4758 @ frame_needed = 1, uses_anonymous_args = 0
|
||
4759 @ link register save eliminated.
|
||
4760 0000 80B4 push {r7}
|
||
4761 .cfi_def_cfa_offset 4
|
||
4762 .cfi_offset 7, -4
|
||
4763 0002 83B0 sub sp, sp, #12
|
||
4764 .cfi_def_cfa_offset 16
|
||
4765 0004 00AF add r7, sp, #0
|
||
4766 .cfi_def_cfa_register 7
|
||
4767 0006 7860 str r0, [r7, #4]
|
||
2677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
2678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
4768 .loc 1 2678 3
|
||
4769 0008 7B68 ldr r3, [r7, #4]
|
||
4770 000a 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
4771 000e 012B cmp r3, #1
|
||
4772 0010 01D1 bne .L254
|
||
4773 .loc 1 2678 3 is_stmt 0 discriminator 1
|
||
4774 0012 0223 movs r3, #2
|
||
4775 .loc 1 2678 3
|
||
4776 0014 10E0 b .L255
|
||
4777 .L254:
|
||
4778 .loc 1 2678 3 discriminator 2
|
||
4779 0016 7B68 ldr r3, [r7, #4]
|
||
4780 0018 0122 movs r2, #1
|
||
4781 001a 83F85C20 strb r2, [r3, #92]
|
||
2679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA Tx & Rx requests */
|
||
2681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN);
|
||
4782 .loc 1 2681 3 is_stmt 1
|
||
4783 001e 7B68 ldr r3, [r7, #4]
|
||
4784 0020 1B68 ldr r3, [r3]
|
||
4785 0022 5A68 ldr r2, [r3, #4]
|
||
4786 0024 7B68 ldr r3, [r7, #4]
|
||
4787 0026 1B68 ldr r3, [r3]
|
||
4788 0028 22F00302 bic r2, r2, #3
|
||
4789 002c 5A60 str r2, [r3, #4]
|
||
2682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
2684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
4790 .loc 1 2684 3
|
||
ARM GAS /tmp/ccs34gJO.s page 132
|
||
|
||
|
||
4791 002e 7B68 ldr r3, [r7, #4]
|
||
4792 0030 0022 movs r2, #0
|
||
4793 0032 83F85C20 strb r2, [r3, #92]
|
||
2685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
4794 .loc 1 2686 10
|
||
4795 0036 0023 movs r3, #0
|
||
4796 .L255:
|
||
2687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4797 .loc 1 2687 1
|
||
4798 0038 1846 mov r0, r3
|
||
4799 003a 0C37 adds r7, r7, #12
|
||
4800 .cfi_def_cfa_offset 4
|
||
4801 003c BD46 mov sp, r7
|
||
4802 .cfi_def_cfa_register 13
|
||
4803 @ sp needed
|
||
4804 003e 5DF8047B ldr r7, [sp], #4
|
||
4805 .cfi_restore 7
|
||
4806 .cfi_def_cfa_offset 0
|
||
4807 0042 7047 bx lr
|
||
4808 .cfi_endproc
|
||
4809 .LFE145:
|
||
4811 .section .text.HAL_SPI_DMAResume,"ax",%progbits
|
||
4812 .align 1
|
||
4813 .global HAL_SPI_DMAResume
|
||
4814 .syntax unified
|
||
4815 .thumb
|
||
4816 .thumb_func
|
||
4818 HAL_SPI_DMAResume:
|
||
4819 .LFB146:
|
||
2688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Resume the DMA Transfer.
|
||
2691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified SPI module.
|
||
2693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_DMAResume(SPI_HandleTypeDef *hspi)
|
||
2696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4820 .loc 1 2696 1
|
||
4821 .cfi_startproc
|
||
4822 @ args = 0, pretend = 0, frame = 8
|
||
4823 @ frame_needed = 1, uses_anonymous_args = 0
|
||
4824 @ link register save eliminated.
|
||
4825 0000 80B4 push {r7}
|
||
4826 .cfi_def_cfa_offset 4
|
||
4827 .cfi_offset 7, -4
|
||
4828 0002 83B0 sub sp, sp, #12
|
||
4829 .cfi_def_cfa_offset 16
|
||
4830 0004 00AF add r7, sp, #0
|
||
4831 .cfi_def_cfa_register 7
|
||
4832 0006 7860 str r0, [r7, #4]
|
||
2697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Locked */
|
||
2698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_LOCK(hspi);
|
||
4833 .loc 1 2698 3
|
||
4834 0008 7B68 ldr r3, [r7, #4]
|
||
4835 000a 93F85C30 ldrb r3, [r3, #92] @ zero_extendqisi2
|
||
ARM GAS /tmp/ccs34gJO.s page 133
|
||
|
||
|
||
4836 000e 012B cmp r3, #1
|
||
4837 0010 01D1 bne .L257
|
||
4838 .loc 1 2698 3 is_stmt 0 discriminator 1
|
||
4839 0012 0223 movs r3, #2
|
||
4840 .loc 1 2698 3
|
||
4841 0014 10E0 b .L258
|
||
4842 .L257:
|
||
4843 .loc 1 2698 3 discriminator 2
|
||
4844 0016 7B68 ldr r3, [r7, #4]
|
||
4845 0018 0122 movs r2, #1
|
||
4846 001a 83F85C20 strb r2, [r3, #92]
|
||
2699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable the SPI DMA Tx & Rx requests */
|
||
2701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN);
|
||
4847 .loc 1 2701 3 is_stmt 1
|
||
4848 001e 7B68 ldr r3, [r7, #4]
|
||
4849 0020 1B68 ldr r3, [r3]
|
||
4850 0022 5A68 ldr r2, [r3, #4]
|
||
4851 0024 7B68 ldr r3, [r7, #4]
|
||
4852 0026 1B68 ldr r3, [r3]
|
||
4853 0028 42F00302 orr r2, r2, #3
|
||
4854 002c 5A60 str r2, [r3, #4]
|
||
2702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
2704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
4855 .loc 1 2704 3
|
||
4856 002e 7B68 ldr r3, [r7, #4]
|
||
4857 0030 0022 movs r2, #0
|
||
4858 0032 83F85C20 strb r2, [r3, #92]
|
||
2705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
4859 .loc 1 2706 10
|
||
4860 0036 0023 movs r3, #0
|
||
4861 .L258:
|
||
2707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4862 .loc 1 2707 1
|
||
4863 0038 1846 mov r0, r3
|
||
4864 003a 0C37 adds r7, r7, #12
|
||
4865 .cfi_def_cfa_offset 4
|
||
4866 003c BD46 mov sp, r7
|
||
4867 .cfi_def_cfa_register 13
|
||
4868 @ sp needed
|
||
4869 003e 5DF8047B ldr r7, [sp], #4
|
||
4870 .cfi_restore 7
|
||
4871 .cfi_def_cfa_offset 0
|
||
4872 0042 7047 bx lr
|
||
4873 .cfi_endproc
|
||
4874 .LFE146:
|
||
4876 .section .text.HAL_SPI_DMAStop,"ax",%progbits
|
||
4877 .align 1
|
||
4878 .global HAL_SPI_DMAStop
|
||
4879 .syntax unified
|
||
4880 .thumb
|
||
4881 .thumb_func
|
||
4883 HAL_SPI_DMAStop:
|
||
4884 .LFB147:
|
||
2708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 134
|
||
|
||
|
||
2709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Stop the DMA Transfer.
|
||
2711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified SPI module.
|
||
2713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
2714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef HAL_SPI_DMAStop(SPI_HandleTypeDef *hspi)
|
||
2716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4885 .loc 1 2716 1
|
||
4886 .cfi_startproc
|
||
4887 @ args = 0, pretend = 0, frame = 16
|
||
4888 @ frame_needed = 1, uses_anonymous_args = 0
|
||
4889 0000 80B5 push {r7, lr}
|
||
4890 .cfi_def_cfa_offset 8
|
||
4891 .cfi_offset 7, -8
|
||
4892 .cfi_offset 14, -4
|
||
4893 0002 84B0 sub sp, sp, #16
|
||
4894 .cfi_def_cfa_offset 24
|
||
4895 0004 00AF add r7, sp, #0
|
||
4896 .cfi_def_cfa_register 7
|
||
4897 0006 7860 str r0, [r7, #4]
|
||
2717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_StatusTypeDef errorcode = HAL_OK;
|
||
4898 .loc 1 2717 21
|
||
4899 0008 0023 movs r3, #0
|
||
4900 000a FB73 strb r3, [r7, #15]
|
||
2718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* The Lock is not implemented on this API to allow the user application
|
||
2719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** to call the HAL SPI API under callbacks HAL_SPI_TxCpltCallback() or HAL_SPI_RxCpltCallback() o
|
||
2720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** when calling HAL_DMA_Abort() API the DMA TX/RX Transfer complete interrupt is generated
|
||
2721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and the correspond call back is executed HAL_SPI_TxCpltCallback() or HAL_SPI_RxCpltCallback()
|
||
2722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA tx Stream/Channel */
|
||
2725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx != NULL)
|
||
4901 .loc 1 2725 11
|
||
4902 000c 7B68 ldr r3, [r7, #4]
|
||
4903 000e 5B6D ldr r3, [r3, #84]
|
||
4904 .loc 1 2725 6
|
||
4905 0010 002B cmp r3, #0
|
||
4906 0012 0FD0 beq .L260
|
||
2726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Abort(hspi->hdmatx))
|
||
4907 .loc 1 2727 19
|
||
4908 0014 7B68 ldr r3, [r7, #4]
|
||
4909 0016 5B6D ldr r3, [r3, #84]
|
||
4910 0018 1846 mov r0, r3
|
||
4911 001a FFF7FEFF bl HAL_DMA_Abort
|
||
4912 001e 0346 mov r3, r0
|
||
4913 .loc 1 2727 8 discriminator 1
|
||
4914 0020 002B cmp r3, #0
|
||
4915 0022 07D0 beq .L260
|
||
2728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
4916 .loc 1 2729 7
|
||
4917 0024 7B68 ldr r3, [r7, #4]
|
||
4918 0026 1B6E ldr r3, [r3, #96]
|
||
4919 0028 43F01002 orr r2, r3, #16
|
||
4920 002c 7B68 ldr r3, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 135
|
||
|
||
|
||
4921 002e 1A66 str r2, [r3, #96]
|
||
2730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
4922 .loc 1 2730 17
|
||
4923 0030 0123 movs r3, #1
|
||
4924 0032 FB73 strb r3, [r7, #15]
|
||
4925 .L260:
|
||
2731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA rx Stream/Channel */
|
||
2734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx != NULL)
|
||
4926 .loc 1 2734 11
|
||
4927 0034 7B68 ldr r3, [r7, #4]
|
||
4928 0036 9B6D ldr r3, [r3, #88]
|
||
4929 .loc 1 2734 6
|
||
4930 0038 002B cmp r3, #0
|
||
4931 003a 0FD0 beq .L261
|
||
2735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Abort(hspi->hdmarx))
|
||
4932 .loc 1 2736 19
|
||
4933 003c 7B68 ldr r3, [r7, #4]
|
||
4934 003e 9B6D ldr r3, [r3, #88]
|
||
4935 0040 1846 mov r0, r3
|
||
4936 0042 FFF7FEFF bl HAL_DMA_Abort
|
||
4937 0046 0346 mov r3, r0
|
||
4938 .loc 1 2736 8 discriminator 1
|
||
4939 0048 002B cmp r3, #0
|
||
4940 004a 07D0 beq .L261
|
||
2737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
4941 .loc 1 2738 7
|
||
4942 004c 7B68 ldr r3, [r7, #4]
|
||
4943 004e 1B6E ldr r3, [r3, #96]
|
||
4944 0050 43F01002 orr r2, r3, #16
|
||
4945 0054 7B68 ldr r3, [r7, #4]
|
||
4946 0056 1A66 str r2, [r3, #96]
|
||
2739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** errorcode = HAL_ERROR;
|
||
4947 .loc 1 2739 17
|
||
4948 0058 0123 movs r3, #1
|
||
4949 005a FB73 strb r3, [r7, #15]
|
||
4950 .L261:
|
||
2740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA Tx & Rx requests */
|
||
2744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN);
|
||
4951 .loc 1 2744 3
|
||
4952 005c 7B68 ldr r3, [r7, #4]
|
||
4953 005e 1B68 ldr r3, [r3]
|
||
4954 0060 5A68 ldr r2, [r3, #4]
|
||
4955 0062 7B68 ldr r3, [r7, #4]
|
||
4956 0064 1B68 ldr r3, [r3]
|
||
4957 0066 22F00302 bic r2, r2, #3
|
||
4958 006a 5A60 str r2, [r3, #4]
|
||
2745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
4959 .loc 1 2745 15
|
||
4960 006c 7B68 ldr r3, [r7, #4]
|
||
4961 006e 0122 movs r2, #1
|
||
ARM GAS /tmp/ccs34gJO.s page 136
|
||
|
||
|
||
4962 0070 83F85D20 strb r2, [r3, #93]
|
||
2746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return errorcode;
|
||
4963 .loc 1 2746 10
|
||
4964 0074 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
|
||
2747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4965 .loc 1 2747 1
|
||
4966 0076 1846 mov r0, r3
|
||
4967 0078 1037 adds r7, r7, #16
|
||
4968 .cfi_def_cfa_offset 8
|
||
4969 007a BD46 mov sp, r7
|
||
4970 .cfi_def_cfa_register 13
|
||
4971 @ sp needed
|
||
4972 007c 80BD pop {r7, pc}
|
||
4973 .cfi_endproc
|
||
4974 .LFE147:
|
||
4976 .section .text.HAL_SPI_IRQHandler,"ax",%progbits
|
||
4977 .align 1
|
||
4978 .global HAL_SPI_IRQHandler
|
||
4979 .syntax unified
|
||
4980 .thumb
|
||
4981 .thumb_func
|
||
4983 HAL_SPI_IRQHandler:
|
||
4984 .LFB148:
|
||
2748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle SPI interrupt request.
|
||
2751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified SPI module.
|
||
2753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** void HAL_SPI_IRQHandler(SPI_HandleTypeDef *hspi)
|
||
2756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4985 .loc 1 2756 1
|
||
4986 .cfi_startproc
|
||
4987 @ args = 0, pretend = 0, frame = 32
|
||
4988 @ frame_needed = 1, uses_anonymous_args = 0
|
||
4989 0000 80B5 push {r7, lr}
|
||
4990 .cfi_def_cfa_offset 8
|
||
4991 .cfi_offset 7, -8
|
||
4992 .cfi_offset 14, -4
|
||
4993 0002 88B0 sub sp, sp, #32
|
||
4994 .cfi_def_cfa_offset 40
|
||
4995 0004 00AF add r7, sp, #0
|
||
4996 .cfi_def_cfa_register 7
|
||
4997 0006 7860 str r0, [r7, #4]
|
||
2757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t itsource = hspi->Instance->CR2;
|
||
4998 .loc 1 2757 27
|
||
4999 0008 7B68 ldr r3, [r7, #4]
|
||
5000 000a 1B68 ldr r3, [r3]
|
||
5001 .loc 1 2757 12
|
||
5002 000c 5B68 ldr r3, [r3, #4]
|
||
5003 000e FB61 str r3, [r7, #28]
|
||
2758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t itflag = hspi->Instance->SR;
|
||
5004 .loc 1 2758 27
|
||
5005 0010 7B68 ldr r3, [r7, #4]
|
||
5006 0012 1B68 ldr r3, [r3]
|
||
5007 .loc 1 2758 12
|
||
ARM GAS /tmp/ccs34gJO.s page 137
|
||
|
||
|
||
5008 0014 9B68 ldr r3, [r3, #8]
|
||
5009 0016 BB61 str r3, [r7, #24]
|
||
2759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* SPI in mode Receiver ----------------------------------------------------*/
|
||
2761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((SPI_CHECK_FLAG(itflag, SPI_FLAG_OVR) == RESET) &&
|
||
5010 .loc 1 2761 8
|
||
5011 0018 BB69 ldr r3, [r7, #24]
|
||
5012 001a 9B09 lsrs r3, r3, #6
|
||
5013 001c 03F00103 and r3, r3, #1
|
||
5014 .loc 1 2761 6
|
||
5015 0020 002B cmp r3, #0
|
||
5016 0022 0FD1 bne .L264
|
||
2762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (SPI_CHECK_FLAG(itflag, SPI_FLAG_RXNE) != RESET) && (SPI_CHECK_IT_SOURCE(itsource, SPI_IT_RXN
|
||
5017 .loc 1 2762 8
|
||
5018 0024 BB69 ldr r3, [r7, #24]
|
||
5019 0026 03F00103 and r3, r3, #1
|
||
2761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (SPI_CHECK_FLAG(itflag, SPI_FLAG_RXNE) != RESET) && (SPI_CHECK_IT_SOURCE(itsource, SPI_IT_RXN
|
||
5020 .loc 1 2761 55 discriminator 1
|
||
5021 002a 002B cmp r3, #0
|
||
5022 002c 0AD0 beq .L264
|
||
5023 .loc 1 2762 60
|
||
5024 002e FB69 ldr r3, [r7, #28]
|
||
5025 0030 9B09 lsrs r3, r3, #6
|
||
5026 0032 03F00103 and r3, r3, #1
|
||
5027 .loc 1 2762 56
|
||
5028 0036 002B cmp r3, #0
|
||
5029 0038 04D0 beq .L264
|
||
2763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR(hspi);
|
||
5030 .loc 1 2764 9
|
||
5031 003a 7B68 ldr r3, [r7, #4]
|
||
5032 003c DB6C ldr r3, [r3, #76]
|
||
5033 .loc 1 2764 5
|
||
5034 003e 7868 ldr r0, [r7, #4]
|
||
5035 0040 9847 blx r3
|
||
5036 .LVL0:
|
||
2765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
5037 .loc 1 2765 5
|
||
5038 0042 D7E0 b .L263
|
||
5039 .L264:
|
||
2766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* SPI in mode Transmitter -------------------------------------------------*/
|
||
2769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((SPI_CHECK_FLAG(itflag, SPI_FLAG_TXE) != RESET) && (SPI_CHECK_IT_SOURCE(itsource, SPI_IT_TXE)
|
||
5040 .loc 1 2769 8
|
||
5041 0044 BB69 ldr r3, [r7, #24]
|
||
5042 0046 5B08 lsrs r3, r3, #1
|
||
5043 0048 03F00103 and r3, r3, #1
|
||
5044 .loc 1 2769 6
|
||
5045 004c 002B cmp r3, #0
|
||
5046 004e 0AD0 beq .L266
|
||
5047 .loc 1 2769 59 discriminator 1
|
||
5048 0050 FB69 ldr r3, [r7, #28]
|
||
5049 0052 DB09 lsrs r3, r3, #7
|
||
5050 0054 03F00103 and r3, r3, #1
|
||
5051 .loc 1 2769 55 discriminator 1
|
||
5052 0058 002B cmp r3, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 138
|
||
|
||
|
||
5053 005a 04D0 beq .L266
|
||
2770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxISR(hspi);
|
||
5054 .loc 1 2771 9
|
||
5055 005c 7B68 ldr r3, [r7, #4]
|
||
5056 005e 1B6D ldr r3, [r3, #80]
|
||
5057 .loc 1 2771 5
|
||
5058 0060 7868 ldr r0, [r7, #4]
|
||
5059 0062 9847 blx r3
|
||
5060 .LVL1:
|
||
2772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
5061 .loc 1 2772 5
|
||
5062 0064 C6E0 b .L263
|
||
5063 .L266:
|
||
2773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* SPI in Error Treatment --------------------------------------------------*/
|
||
2776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (((SPI_CHECK_FLAG(itflag, SPI_FLAG_MODF) != RESET) || (SPI_CHECK_FLAG(itflag, SPI_FLAG_OVR) !=
|
||
5064 .loc 1 2776 9
|
||
5065 0066 BB69 ldr r3, [r7, #24]
|
||
5066 0068 5B09 lsrs r3, r3, #5
|
||
5067 006a 03F00103 and r3, r3, #1
|
||
5068 .loc 1 2776 6
|
||
5069 006e 002B cmp r3, #0
|
||
5070 0070 0CD1 bne .L267
|
||
5071 .loc 1 2776 61 discriminator 1
|
||
5072 0072 BB69 ldr r3, [r7, #24]
|
||
5073 0074 9B09 lsrs r3, r3, #6
|
||
5074 0076 03F00103 and r3, r3, #1
|
||
5075 .loc 1 2776 57 discriminator 1
|
||
5076 007a 002B cmp r3, #0
|
||
5077 007c 06D1 bne .L267
|
||
2777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** || (SPI_CHECK_FLAG(itflag, SPI_FLAG_FRE) != RESET)) && (SPI_CHECK_IT_SOURCE(itsource, SPI_IT
|
||
5078 .loc 1 2777 12
|
||
5079 007e BB69 ldr r3, [r7, #24]
|
||
5080 0080 1B0A lsrs r3, r3, #8
|
||
5081 0082 03F00103 and r3, r3, #1
|
||
5082 .loc 1 2777 8
|
||
5083 0086 002B cmp r3, #0
|
||
5084 0088 00F0B480 beq .L263
|
||
5085 .L267:
|
||
5086 .loc 1 2777 64 discriminator 1
|
||
5087 008c FB69 ldr r3, [r7, #28]
|
||
5088 008e 5B09 lsrs r3, r3, #5
|
||
5089 0090 03F00103 and r3, r3, #1
|
||
5090 .loc 1 2777 60 discriminator 1
|
||
5091 0094 002B cmp r3, #0
|
||
5092 0096 00F0AD80 beq .L263
|
||
2778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* SPI Overrun error interrupt occurred ----------------------------------*/
|
||
2780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_CHECK_FLAG(itflag, SPI_FLAG_OVR) != RESET)
|
||
5093 .loc 1 2780 9
|
||
5094 009a BB69 ldr r3, [r7, #24]
|
||
5095 009c 9B09 lsrs r3, r3, #6
|
||
5096 009e 03F00103 and r3, r3, #1
|
||
5097 .loc 1 2780 8
|
||
5098 00a2 002B cmp r3, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 139
|
||
|
||
|
||
5099 00a4 23D0 beq .L268
|
||
2781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State != HAL_SPI_STATE_BUSY_TX)
|
||
5100 .loc 1 2782 15
|
||
5101 00a6 7B68 ldr r3, [r7, #4]
|
||
5102 00a8 93F85D30 ldrb r3, [r3, #93]
|
||
5103 00ac DBB2 uxtb r3, r3
|
||
5104 .loc 1 2782 10
|
||
5105 00ae 032B cmp r3, #3
|
||
5106 00b0 11D0 beq .L269
|
||
2783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_OVR);
|
||
5107 .loc 1 2784 9
|
||
5108 00b2 7B68 ldr r3, [r7, #4]
|
||
5109 00b4 1B6E ldr r3, [r3, #96]
|
||
5110 00b6 43F00402 orr r2, r3, #4
|
||
5111 00ba 7B68 ldr r3, [r7, #4]
|
||
5112 00bc 1A66 str r2, [r3, #96]
|
||
5113 .LBB7:
|
||
2785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
5114 .loc 1 2785 9
|
||
5115 00be 0023 movs r3, #0
|
||
5116 00c0 7B61 str r3, [r7, #20]
|
||
5117 00c2 7B68 ldr r3, [r7, #4]
|
||
5118 00c4 1B68 ldr r3, [r3]
|
||
5119 00c6 DB68 ldr r3, [r3, #12]
|
||
5120 00c8 7B61 str r3, [r7, #20]
|
||
5121 00ca 7B68 ldr r3, [r7, #4]
|
||
5122 00cc 1B68 ldr r3, [r3]
|
||
5123 00ce 9B68 ldr r3, [r3, #8]
|
||
5124 00d0 7B61 str r3, [r7, #20]
|
||
5125 00d2 7B69 ldr r3, [r7, #20]
|
||
5126 .LBE7:
|
||
5127 00d4 0BE0 b .L268
|
||
5128 .L269:
|
||
5129 .LBB8:
|
||
2786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
5130 .loc 1 2789 9
|
||
5131 00d6 0023 movs r3, #0
|
||
5132 00d8 3B61 str r3, [r7, #16]
|
||
5133 00da 7B68 ldr r3, [r7, #4]
|
||
5134 00dc 1B68 ldr r3, [r3]
|
||
5135 00de DB68 ldr r3, [r3, #12]
|
||
5136 00e0 3B61 str r3, [r7, #16]
|
||
5137 00e2 7B68 ldr r3, [r7, #4]
|
||
5138 00e4 1B68 ldr r3, [r3]
|
||
5139 00e6 9B68 ldr r3, [r3, #8]
|
||
5140 00e8 3B61 str r3, [r7, #16]
|
||
5141 00ea 3B69 ldr r3, [r7, #16]
|
||
5142 .LBE8:
|
||
2790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
5143 .loc 1 2790 9
|
||
5144 00ec 82E0 b .L263
|
||
5145 .L268:
|
||
ARM GAS /tmp/ccs34gJO.s page 140
|
||
|
||
|
||
2791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* SPI Mode Fault error interrupt occurred -------------------------------*/
|
||
2795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_CHECK_FLAG(itflag, SPI_FLAG_MODF) != RESET)
|
||
5146 .loc 1 2795 9
|
||
5147 00ee BB69 ldr r3, [r7, #24]
|
||
5148 00f0 5B09 lsrs r3, r3, #5
|
||
5149 00f2 03F00103 and r3, r3, #1
|
||
5150 .loc 1 2795 8
|
||
5151 00f6 002B cmp r3, #0
|
||
5152 00f8 14D0 beq .L270
|
||
2796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_MODF);
|
||
5153 .loc 1 2797 7
|
||
5154 00fa 7B68 ldr r3, [r7, #4]
|
||
5155 00fc 1B6E ldr r3, [r3, #96]
|
||
5156 00fe 43F00102 orr r2, r3, #1
|
||
5157 0102 7B68 ldr r3, [r7, #4]
|
||
5158 0104 1A66 str r2, [r3, #96]
|
||
5159 .LBB9:
|
||
2798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_MODFFLAG(hspi);
|
||
5160 .loc 1 2798 7
|
||
5161 0106 0023 movs r3, #0
|
||
5162 0108 FB60 str r3, [r7, #12]
|
||
5163 010a 7B68 ldr r3, [r7, #4]
|
||
5164 010c 1B68 ldr r3, [r3]
|
||
5165 010e 9B68 ldr r3, [r3, #8]
|
||
5166 0110 FB60 str r3, [r7, #12]
|
||
5167 0112 7B68 ldr r3, [r7, #4]
|
||
5168 0114 1B68 ldr r3, [r3]
|
||
5169 0116 1A68 ldr r2, [r3]
|
||
5170 0118 7B68 ldr r3, [r7, #4]
|
||
5171 011a 1B68 ldr r3, [r3]
|
||
5172 011c 22F04002 bic r2, r2, #64
|
||
5173 0120 1A60 str r2, [r3]
|
||
5174 0122 FB68 ldr r3, [r7, #12]
|
||
5175 .L270:
|
||
5176 .LBE9:
|
||
2799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* SPI Frame error interrupt occurred ------------------------------------*/
|
||
2802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_CHECK_FLAG(itflag, SPI_FLAG_FRE) != RESET)
|
||
5177 .loc 1 2802 9
|
||
5178 0124 BB69 ldr r3, [r7, #24]
|
||
5179 0126 1B0A lsrs r3, r3, #8
|
||
5180 0128 03F00103 and r3, r3, #1
|
||
5181 .loc 1 2802 8
|
||
5182 012c 002B cmp r3, #0
|
||
5183 012e 0CD0 beq .L271
|
||
2803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FRE);
|
||
5184 .loc 1 2804 7
|
||
5185 0130 7B68 ldr r3, [r7, #4]
|
||
5186 0132 1B6E ldr r3, [r3, #96]
|
||
5187 0134 43F00802 orr r2, r3, #8
|
||
5188 0138 7B68 ldr r3, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 141
|
||
|
||
|
||
5189 013a 1A66 str r2, [r3, #96]
|
||
5190 .LBB10:
|
||
2805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_FREFLAG(hspi);
|
||
5191 .loc 1 2805 7
|
||
5192 013c 0023 movs r3, #0
|
||
5193 013e BB60 str r3, [r7, #8]
|
||
5194 0140 7B68 ldr r3, [r7, #4]
|
||
5195 0142 1B68 ldr r3, [r3]
|
||
5196 0144 9B68 ldr r3, [r3, #8]
|
||
5197 0146 BB60 str r3, [r7, #8]
|
||
5198 0148 BB68 ldr r3, [r7, #8]
|
||
5199 .L271:
|
||
5200 .LBE10:
|
||
2806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
5201 .loc 1 2808 13
|
||
5202 014a 7B68 ldr r3, [r7, #4]
|
||
5203 014c 1B6E ldr r3, [r3, #96]
|
||
5204 .loc 1 2808 8
|
||
5205 014e 002B cmp r3, #0
|
||
5206 0150 4FD0 beq .L277
|
||
2809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable all interrupts */
|
||
2811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_RXNE | SPI_IT_TXE | SPI_IT_ERR);
|
||
5207 .loc 1 2811 7
|
||
5208 0152 7B68 ldr r3, [r7, #4]
|
||
5209 0154 1B68 ldr r3, [r3]
|
||
5210 0156 5A68 ldr r2, [r3, #4]
|
||
5211 0158 7B68 ldr r3, [r7, #4]
|
||
5212 015a 1B68 ldr r3, [r3]
|
||
5213 015c 22F0E002 bic r2, r2, #224
|
||
5214 0160 5A60 str r2, [r3, #4]
|
||
2812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
5215 .loc 1 2813 19
|
||
5216 0162 7B68 ldr r3, [r7, #4]
|
||
5217 0164 0122 movs r2, #1
|
||
5218 0166 83F85D20 strb r2, [r3, #93]
|
||
2814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI DMA requests if enabled */
|
||
2815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((HAL_IS_BIT_SET(itsource, SPI_CR2_TXDMAEN)) || (HAL_IS_BIT_SET(itsource, SPI_CR2_RXDMAEN)
|
||
5219 .loc 1 2815 12
|
||
5220 016a FB69 ldr r3, [r7, #28]
|
||
5221 016c 03F00203 and r3, r3, #2
|
||
5222 .loc 1 2815 10
|
||
5223 0170 002B cmp r3, #0
|
||
5224 0172 04D1 bne .L273
|
||
5225 .loc 1 2815 59 discriminator 1
|
||
5226 0174 FB69 ldr r3, [r7, #28]
|
||
5227 0176 03F00103 and r3, r3, #1
|
||
5228 .loc 1 2815 55 discriminator 1
|
||
5229 017a 002B cmp r3, #0
|
||
5230 017c 34D0 beq .L274
|
||
5231 .L273:
|
||
2816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, (SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN));
|
||
5232 .loc 1 2817 9
|
||
ARM GAS /tmp/ccs34gJO.s page 142
|
||
|
||
|
||
5233 017e 7B68 ldr r3, [r7, #4]
|
||
5234 0180 1B68 ldr r3, [r3]
|
||
5235 0182 5A68 ldr r2, [r3, #4]
|
||
5236 0184 7B68 ldr r3, [r7, #4]
|
||
5237 0186 1B68 ldr r3, [r3]
|
||
5238 0188 22F00302 bic r2, r2, #3
|
||
5239 018c 5A60 str r2, [r3, #4]
|
||
2818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA Rx channel */
|
||
2820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx != NULL)
|
||
5240 .loc 1 2820 17
|
||
5241 018e 7B68 ldr r3, [r7, #4]
|
||
5242 0190 9B6D ldr r3, [r3, #88]
|
||
5243 .loc 1 2820 12
|
||
5244 0192 002B cmp r3, #0
|
||
5245 0194 11D0 beq .L275
|
||
2821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI DMA Abort callback :
|
||
2823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** will lead to call HAL_SPI_ErrorCallback() at end of DMA abort procedure */
|
||
2824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = SPI_DMAAbortOnError;
|
||
5246 .loc 1 2824 15
|
||
5247 0196 7B68 ldr r3, [r7, #4]
|
||
5248 0198 9B6D ldr r3, [r3, #88]
|
||
5249 .loc 1 2824 43
|
||
5250 019a 184A ldr r2, .L279
|
||
5251 019c 5A63 str r2, [r3, #52]
|
||
2825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Abort_IT(hspi->hdmarx))
|
||
5252 .loc 1 2825 25
|
||
5253 019e 7B68 ldr r3, [r7, #4]
|
||
5254 01a0 9B6D ldr r3, [r3, #88]
|
||
5255 01a2 1846 mov r0, r3
|
||
5256 01a4 FFF7FEFF bl HAL_DMA_Abort_IT
|
||
5257 01a8 0346 mov r3, r0
|
||
5258 .loc 1 2825 14 discriminator 1
|
||
5259 01aa 002B cmp r3, #0
|
||
5260 01ac 05D0 beq .L275
|
||
2826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
5261 .loc 1 2827 13
|
||
5262 01ae 7B68 ldr r3, [r7, #4]
|
||
5263 01b0 1B6E ldr r3, [r3, #96]
|
||
5264 01b2 43F04002 orr r2, r3, #64
|
||
5265 01b6 7B68 ldr r3, [r7, #4]
|
||
5266 01b8 1A66 str r2, [r3, #96]
|
||
5267 .L275:
|
||
2828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Abort the SPI DMA Tx channel */
|
||
2831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx != NULL)
|
||
5268 .loc 1 2831 17
|
||
5269 01ba 7B68 ldr r3, [r7, #4]
|
||
5270 01bc 5B6D ldr r3, [r3, #84]
|
||
5271 .loc 1 2831 12
|
||
5272 01be 002B cmp r3, #0
|
||
5273 01c0 16D0 beq .L278
|
||
2832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set the SPI DMA Abort callback :
|
||
ARM GAS /tmp/ccs34gJO.s page 143
|
||
|
||
|
||
2834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** will lead to call HAL_SPI_ErrorCallback() at end of DMA abort procedure */
|
||
2835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = SPI_DMAAbortOnError;
|
||
5274 .loc 1 2835 15
|
||
5275 01c2 7B68 ldr r3, [r7, #4]
|
||
5276 01c4 5B6D ldr r3, [r3, #84]
|
||
5277 .loc 1 2835 43
|
||
5278 01c6 0D4A ldr r2, .L279
|
||
5279 01c8 5A63 str r2, [r3, #52]
|
||
2836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_OK != HAL_DMA_Abort_IT(hspi->hdmatx))
|
||
5280 .loc 1 2836 25
|
||
5281 01ca 7B68 ldr r3, [r7, #4]
|
||
5282 01cc 5B6D ldr r3, [r3, #84]
|
||
5283 01ce 1846 mov r0, r3
|
||
5284 01d0 FFF7FEFF bl HAL_DMA_Abort_IT
|
||
5285 01d4 0346 mov r3, r0
|
||
5286 .loc 1 2836 14 discriminator 1
|
||
5287 01d6 002B cmp r3, #0
|
||
5288 01d8 0AD0 beq .L278
|
||
2837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
5289 .loc 1 2838 13
|
||
5290 01da 7B68 ldr r3, [r7, #4]
|
||
5291 01dc 1B6E ldr r3, [r3, #96]
|
||
5292 01de 43F04002 orr r2, r3, #64
|
||
5293 01e2 7B68 ldr r3, [r7, #4]
|
||
5294 01e4 1A66 str r2, [r3, #96]
|
||
2831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5295 .loc 1 2831 12
|
||
5296 01e6 03E0 b .L278
|
||
5297 .L274:
|
||
2839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
2843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
2844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
2845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
2846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
2847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
2848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
5298 .loc 1 2848 9
|
||
5299 01e8 7868 ldr r0, [r7, #4]
|
||
5300 01ea FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
2849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
2850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
5301 .loc 1 2852 5
|
||
5302 01ee 00E0 b .L277
|
||
5303 .L278:
|
||
2831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5304 .loc 1 2831 12
|
||
5305 01f0 00BF nop
|
||
5306 .L277:
|
||
5307 .loc 1 2852 5
|
||
5308 01f2 00BF nop
|
||
5309 .L263:
|
||
ARM GAS /tmp/ccs34gJO.s page 144
|
||
|
||
|
||
2853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
2854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5310 .loc 1 2854 1
|
||
5311 01f4 2037 adds r7, r7, #32
|
||
5312 .cfi_def_cfa_offset 8
|
||
5313 01f6 BD46 mov sp, r7
|
||
5314 .cfi_def_cfa_register 13
|
||
5315 @ sp needed
|
||
5316 01f8 80BD pop {r7, pc}
|
||
5317 .L280:
|
||
5318 01fa 00BF .align 2
|
||
5319 .L279:
|
||
5320 01fc 00000000 .word SPI_DMAAbortOnError
|
||
5321 .cfi_endproc
|
||
5322 .LFE148:
|
||
5324 .section .text.HAL_SPI_TxCpltCallback,"ax",%progbits
|
||
5325 .align 1
|
||
5326 .weak HAL_SPI_TxCpltCallback
|
||
5327 .syntax unified
|
||
5328 .thumb
|
||
5329 .thumb_func
|
||
5331 HAL_SPI_TxCpltCallback:
|
||
5332 .LFB149:
|
||
2855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Tx Transfer completed callback.
|
||
2858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_TxCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5333 .loc 1 2863 1
|
||
5334 .cfi_startproc
|
||
5335 @ args = 0, pretend = 0, frame = 8
|
||
5336 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5337 @ link register save eliminated.
|
||
5338 0000 80B4 push {r7}
|
||
5339 .cfi_def_cfa_offset 4
|
||
5340 .cfi_offset 7, -4
|
||
5341 0002 83B0 sub sp, sp, #12
|
||
5342 .cfi_def_cfa_offset 16
|
||
5343 0004 00AF add r7, sp, #0
|
||
5344 .cfi_def_cfa_register 7
|
||
5345 0006 7860 str r0, [r7, #4]
|
||
2864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_TxCpltCallback should be implemented in the user file
|
||
2869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5346 .loc 1 2870 1
|
||
5347 0008 00BF nop
|
||
5348 000a 0C37 adds r7, r7, #12
|
||
5349 .cfi_def_cfa_offset 4
|
||
5350 000c BD46 mov sp, r7
|
||
ARM GAS /tmp/ccs34gJO.s page 145
|
||
|
||
|
||
5351 .cfi_def_cfa_register 13
|
||
5352 @ sp needed
|
||
5353 000e 5DF8047B ldr r7, [sp], #4
|
||
5354 .cfi_restore 7
|
||
5355 .cfi_def_cfa_offset 0
|
||
5356 0012 7047 bx lr
|
||
5357 .cfi_endproc
|
||
5358 .LFE149:
|
||
5360 .section .text.HAL_SPI_RxCpltCallback,"ax",%progbits
|
||
5361 .align 1
|
||
5362 .weak HAL_SPI_RxCpltCallback
|
||
5363 .syntax unified
|
||
5364 .thumb
|
||
5365 .thumb_func
|
||
5367 HAL_SPI_RxCpltCallback:
|
||
5368 .LFB150:
|
||
2871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Rx Transfer completed callback.
|
||
2874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_RxCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5369 .loc 1 2879 1
|
||
5370 .cfi_startproc
|
||
5371 @ args = 0, pretend = 0, frame = 8
|
||
5372 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5373 @ link register save eliminated.
|
||
5374 0000 80B4 push {r7}
|
||
5375 .cfi_def_cfa_offset 4
|
||
5376 .cfi_offset 7, -4
|
||
5377 0002 83B0 sub sp, sp, #12
|
||
5378 .cfi_def_cfa_offset 16
|
||
5379 0004 00AF add r7, sp, #0
|
||
5380 .cfi_def_cfa_register 7
|
||
5381 0006 7860 str r0, [r7, #4]
|
||
2880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_RxCpltCallback should be implemented in the user file
|
||
2885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5382 .loc 1 2886 1
|
||
5383 0008 00BF nop
|
||
5384 000a 0C37 adds r7, r7, #12
|
||
5385 .cfi_def_cfa_offset 4
|
||
5386 000c BD46 mov sp, r7
|
||
5387 .cfi_def_cfa_register 13
|
||
5388 @ sp needed
|
||
5389 000e 5DF8047B ldr r7, [sp], #4
|
||
5390 .cfi_restore 7
|
||
5391 .cfi_def_cfa_offset 0
|
||
5392 0012 7047 bx lr
|
||
5393 .cfi_endproc
|
||
ARM GAS /tmp/ccs34gJO.s page 146
|
||
|
||
|
||
5394 .LFE150:
|
||
5396 .section .text.HAL_SPI_TxRxCpltCallback,"ax",%progbits
|
||
5397 .align 1
|
||
5398 .weak HAL_SPI_TxRxCpltCallback
|
||
5399 .syntax unified
|
||
5400 .thumb
|
||
5401 .thumb_func
|
||
5403 HAL_SPI_TxRxCpltCallback:
|
||
5404 .LFB151:
|
||
2887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Tx and Rx Transfer completed callback.
|
||
2890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_TxRxCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5405 .loc 1 2895 1
|
||
5406 .cfi_startproc
|
||
5407 @ args = 0, pretend = 0, frame = 8
|
||
5408 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5409 @ link register save eliminated.
|
||
5410 0000 80B4 push {r7}
|
||
5411 .cfi_def_cfa_offset 4
|
||
5412 .cfi_offset 7, -4
|
||
5413 0002 83B0 sub sp, sp, #12
|
||
5414 .cfi_def_cfa_offset 16
|
||
5415 0004 00AF add r7, sp, #0
|
||
5416 .cfi_def_cfa_register 7
|
||
5417 0006 7860 str r0, [r7, #4]
|
||
2896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_TxRxCpltCallback should be implemented in the user file
|
||
2901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5418 .loc 1 2902 1
|
||
5419 0008 00BF nop
|
||
5420 000a 0C37 adds r7, r7, #12
|
||
5421 .cfi_def_cfa_offset 4
|
||
5422 000c BD46 mov sp, r7
|
||
5423 .cfi_def_cfa_register 13
|
||
5424 @ sp needed
|
||
5425 000e 5DF8047B ldr r7, [sp], #4
|
||
5426 .cfi_restore 7
|
||
5427 .cfi_def_cfa_offset 0
|
||
5428 0012 7047 bx lr
|
||
5429 .cfi_endproc
|
||
5430 .LFE151:
|
||
5432 .section .text.HAL_SPI_TxHalfCpltCallback,"ax",%progbits
|
||
5433 .align 1
|
||
5434 .weak HAL_SPI_TxHalfCpltCallback
|
||
5435 .syntax unified
|
||
5436 .thumb
|
||
5437 .thumb_func
|
||
ARM GAS /tmp/ccs34gJO.s page 147
|
||
|
||
|
||
5439 HAL_SPI_TxHalfCpltCallback:
|
||
5440 .LFB152:
|
||
2903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Tx Half Transfer completed callback.
|
||
2906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_TxHalfCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5441 .loc 1 2911 1
|
||
5442 .cfi_startproc
|
||
5443 @ args = 0, pretend = 0, frame = 8
|
||
5444 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5445 @ link register save eliminated.
|
||
5446 0000 80B4 push {r7}
|
||
5447 .cfi_def_cfa_offset 4
|
||
5448 .cfi_offset 7, -4
|
||
5449 0002 83B0 sub sp, sp, #12
|
||
5450 .cfi_def_cfa_offset 16
|
||
5451 0004 00AF add r7, sp, #0
|
||
5452 .cfi_def_cfa_register 7
|
||
5453 0006 7860 str r0, [r7, #4]
|
||
2912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_TxHalfCpltCallback should be implemented in the user file
|
||
2917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5454 .loc 1 2918 1
|
||
5455 0008 00BF nop
|
||
5456 000a 0C37 adds r7, r7, #12
|
||
5457 .cfi_def_cfa_offset 4
|
||
5458 000c BD46 mov sp, r7
|
||
5459 .cfi_def_cfa_register 13
|
||
5460 @ sp needed
|
||
5461 000e 5DF8047B ldr r7, [sp], #4
|
||
5462 .cfi_restore 7
|
||
5463 .cfi_def_cfa_offset 0
|
||
5464 0012 7047 bx lr
|
||
5465 .cfi_endproc
|
||
5466 .LFE152:
|
||
5468 .section .text.HAL_SPI_RxHalfCpltCallback,"ax",%progbits
|
||
5469 .align 1
|
||
5470 .weak HAL_SPI_RxHalfCpltCallback
|
||
5471 .syntax unified
|
||
5472 .thumb
|
||
5473 .thumb_func
|
||
5475 HAL_SPI_RxHalfCpltCallback:
|
||
5476 .LFB153:
|
||
2919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Rx Half Transfer completed callback.
|
||
2922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
ARM GAS /tmp/ccs34gJO.s page 148
|
||
|
||
|
||
2924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_RxHalfCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5477 .loc 1 2927 1
|
||
5478 .cfi_startproc
|
||
5479 @ args = 0, pretend = 0, frame = 8
|
||
5480 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5481 @ link register save eliminated.
|
||
5482 0000 80B4 push {r7}
|
||
5483 .cfi_def_cfa_offset 4
|
||
5484 .cfi_offset 7, -4
|
||
5485 0002 83B0 sub sp, sp, #12
|
||
5486 .cfi_def_cfa_offset 16
|
||
5487 0004 00AF add r7, sp, #0
|
||
5488 .cfi_def_cfa_register 7
|
||
5489 0006 7860 str r0, [r7, #4]
|
||
2928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_RxHalfCpltCallback() should be implemented in the user file
|
||
2933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5490 .loc 1 2934 1
|
||
5491 0008 00BF nop
|
||
5492 000a 0C37 adds r7, r7, #12
|
||
5493 .cfi_def_cfa_offset 4
|
||
5494 000c BD46 mov sp, r7
|
||
5495 .cfi_def_cfa_register 13
|
||
5496 @ sp needed
|
||
5497 000e 5DF8047B ldr r7, [sp], #4
|
||
5498 .cfi_restore 7
|
||
5499 .cfi_def_cfa_offset 0
|
||
5500 0012 7047 bx lr
|
||
5501 .cfi_endproc
|
||
5502 .LFE153:
|
||
5504 .section .text.HAL_SPI_TxRxHalfCpltCallback,"ax",%progbits
|
||
5505 .align 1
|
||
5506 .weak HAL_SPI_TxRxHalfCpltCallback
|
||
5507 .syntax unified
|
||
5508 .thumb
|
||
5509 .thumb_func
|
||
5511 HAL_SPI_TxRxHalfCpltCallback:
|
||
5512 .LFB154:
|
||
2935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Tx and Rx Half Transfer callback.
|
||
2938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_TxRxHalfCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5513 .loc 1 2943 1
|
||
5514 .cfi_startproc
|
||
5515 @ args = 0, pretend = 0, frame = 8
|
||
ARM GAS /tmp/ccs34gJO.s page 149
|
||
|
||
|
||
5516 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5517 @ link register save eliminated.
|
||
5518 0000 80B4 push {r7}
|
||
5519 .cfi_def_cfa_offset 4
|
||
5520 .cfi_offset 7, -4
|
||
5521 0002 83B0 sub sp, sp, #12
|
||
5522 .cfi_def_cfa_offset 16
|
||
5523 0004 00AF add r7, sp, #0
|
||
5524 .cfi_def_cfa_register 7
|
||
5525 0006 7860 str r0, [r7, #4]
|
||
2944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_TxRxHalfCpltCallback() should be implemented in the user file
|
||
2949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5526 .loc 1 2950 1
|
||
5527 0008 00BF nop
|
||
5528 000a 0C37 adds r7, r7, #12
|
||
5529 .cfi_def_cfa_offset 4
|
||
5530 000c BD46 mov sp, r7
|
||
5531 .cfi_def_cfa_register 13
|
||
5532 @ sp needed
|
||
5533 000e 5DF8047B ldr r7, [sp], #4
|
||
5534 .cfi_restore 7
|
||
5535 .cfi_def_cfa_offset 0
|
||
5536 0012 7047 bx lr
|
||
5537 .cfi_endproc
|
||
5538 .LFE154:
|
||
5540 .section .text.HAL_SPI_ErrorCallback,"ax",%progbits
|
||
5541 .align 1
|
||
5542 .weak HAL_SPI_ErrorCallback
|
||
5543 .syntax unified
|
||
5544 .thumb
|
||
5545 .thumb_func
|
||
5547 HAL_SPI_ErrorCallback:
|
||
5548 .LFB155:
|
||
2951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief SPI error callback.
|
||
2954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
2955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
2956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_ErrorCallback(SPI_HandleTypeDef *hspi)
|
||
2959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5549 .loc 1 2959 1
|
||
5550 .cfi_startproc
|
||
5551 @ args = 0, pretend = 0, frame = 8
|
||
5552 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5553 @ link register save eliminated.
|
||
5554 0000 80B4 push {r7}
|
||
5555 .cfi_def_cfa_offset 4
|
||
5556 .cfi_offset 7, -4
|
||
5557 0002 83B0 sub sp, sp, #12
|
||
5558 .cfi_def_cfa_offset 16
|
||
ARM GAS /tmp/ccs34gJO.s page 150
|
||
|
||
|
||
5559 0004 00AF add r7, sp, #0
|
||
5560 .cfi_def_cfa_register 7
|
||
5561 0006 7860 str r0, [r7, #4]
|
||
2960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
2962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_ErrorCallback should be implemented in the user file
|
||
2965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : The ErrorCode parameter in the hspi handle is updated by the SPI processes
|
||
2967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and user can use HAL_SPI_GetError() API to check the latest error occurred
|
||
2968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5562 .loc 1 2969 1
|
||
5563 0008 00BF nop
|
||
5564 000a 0C37 adds r7, r7, #12
|
||
5565 .cfi_def_cfa_offset 4
|
||
5566 000c BD46 mov sp, r7
|
||
5567 .cfi_def_cfa_register 13
|
||
5568 @ sp needed
|
||
5569 000e 5DF8047B ldr r7, [sp], #4
|
||
5570 .cfi_restore 7
|
||
5571 .cfi_def_cfa_offset 0
|
||
5572 0012 7047 bx lr
|
||
5573 .cfi_endproc
|
||
5574 .LFE155:
|
||
5576 .section .text.HAL_SPI_AbortCpltCallback,"ax",%progbits
|
||
5577 .align 1
|
||
5578 .weak HAL_SPI_AbortCpltCallback
|
||
5579 .syntax unified
|
||
5580 .thumb
|
||
5581 .thumb_func
|
||
5583 HAL_SPI_AbortCpltCallback:
|
||
5584 .LFB156:
|
||
2970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief SPI Abort Complete callback.
|
||
2973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi SPI handle.
|
||
2974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
2975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __weak void HAL_SPI_AbortCpltCallback(SPI_HandleTypeDef *hspi)
|
||
2977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5585 .loc 1 2977 1
|
||
5586 .cfi_startproc
|
||
5587 @ args = 0, pretend = 0, frame = 8
|
||
5588 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5589 @ link register save eliminated.
|
||
5590 0000 80B4 push {r7}
|
||
5591 .cfi_def_cfa_offset 4
|
||
5592 .cfi_offset 7, -4
|
||
5593 0002 83B0 sub sp, sp, #12
|
||
5594 .cfi_def_cfa_offset 16
|
||
5595 0004 00AF add r7, sp, #0
|
||
5596 .cfi_def_cfa_register 7
|
||
5597 0006 7860 str r0, [r7, #4]
|
||
2978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Prevent unused argument(s) compilation warning */
|
||
2979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(hspi);
|
||
ARM GAS /tmp/ccs34gJO.s page 151
|
||
|
||
|
||
2980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* NOTE : This function should not be modified, when the callback is needed,
|
||
2982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** the HAL_SPI_AbortCpltCallback can be implemented in the user file.
|
||
2983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5598 .loc 1 2984 1
|
||
5599 0008 00BF nop
|
||
5600 000a 0C37 adds r7, r7, #12
|
||
5601 .cfi_def_cfa_offset 4
|
||
5602 000c BD46 mov sp, r7
|
||
5603 .cfi_def_cfa_register 13
|
||
5604 @ sp needed
|
||
5605 000e 5DF8047B ldr r7, [sp], #4
|
||
5606 .cfi_restore 7
|
||
5607 .cfi_def_cfa_offset 0
|
||
5608 0012 7047 bx lr
|
||
5609 .cfi_endproc
|
||
5610 .LFE156:
|
||
5612 .section .text.HAL_SPI_GetState,"ax",%progbits
|
||
5613 .align 1
|
||
5614 .global HAL_SPI_GetState
|
||
5615 .syntax unified
|
||
5616 .thumb
|
||
5617 .thumb_func
|
||
5619 HAL_SPI_GetState:
|
||
5620 .LFB157:
|
||
2985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
2987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @}
|
||
2988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
2989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
2990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @defgroup SPI_Exported_Functions_Group3 Peripheral State and Errors functions
|
||
2991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief SPI control functions
|
||
2992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *
|
||
2993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @verbatim
|
||
2994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ===============================================================================
|
||
2995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ##### Peripheral State and Errors functions #####
|
||
2996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ===============================================================================
|
||
2997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** [..]
|
||
2998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** This subsection provides a set of functions allowing to control the SPI.
|
||
2999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+) HAL_SPI_GetState() API can be helpful to check in run-time the state of the SPI peripheral
|
||
3000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** (+) HAL_SPI_GetError() check in run-time Errors occurring during communication
|
||
3001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** @endverbatim
|
||
3002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
3003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Return the SPI handle state.
|
||
3007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval SPI state
|
||
3010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_StateTypeDef HAL_SPI_GetState(SPI_HandleTypeDef *hspi)
|
||
3012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5621 .loc 1 3012 1
|
||
5622 .cfi_startproc
|
||
5623 @ args = 0, pretend = 0, frame = 8
|
||
ARM GAS /tmp/ccs34gJO.s page 152
|
||
|
||
|
||
5624 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5625 @ link register save eliminated.
|
||
5626 0000 80B4 push {r7}
|
||
5627 .cfi_def_cfa_offset 4
|
||
5628 .cfi_offset 7, -4
|
||
5629 0002 83B0 sub sp, sp, #12
|
||
5630 .cfi_def_cfa_offset 16
|
||
5631 0004 00AF add r7, sp, #0
|
||
5632 .cfi_def_cfa_register 7
|
||
5633 0006 7860 str r0, [r7, #4]
|
||
3013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return SPI handle state */
|
||
3014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return hspi->State;
|
||
5634 .loc 1 3014 14
|
||
5635 0008 7B68 ldr r3, [r7, #4]
|
||
5636 000a 93F85D30 ldrb r3, [r3, #93]
|
||
5637 000e DBB2 uxtb r3, r3
|
||
3015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5638 .loc 1 3015 1
|
||
5639 0010 1846 mov r0, r3
|
||
5640 0012 0C37 adds r7, r7, #12
|
||
5641 .cfi_def_cfa_offset 4
|
||
5642 0014 BD46 mov sp, r7
|
||
5643 .cfi_def_cfa_register 13
|
||
5644 @ sp needed
|
||
5645 0016 5DF8047B ldr r7, [sp], #4
|
||
5646 .cfi_restore 7
|
||
5647 .cfi_def_cfa_offset 0
|
||
5648 001a 7047 bx lr
|
||
5649 .cfi_endproc
|
||
5650 .LFE157:
|
||
5652 .section .text.HAL_SPI_GetError,"ax",%progbits
|
||
5653 .align 1
|
||
5654 .global HAL_SPI_GetError
|
||
5655 .syntax unified
|
||
5656 .thumb
|
||
5657 .thumb_func
|
||
5659 HAL_SPI_GetError:
|
||
5660 .LFB158:
|
||
3016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Return the SPI error code.
|
||
3019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval SPI error code in bitmap format
|
||
3022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t HAL_SPI_GetError(SPI_HandleTypeDef *hspi)
|
||
3024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5661 .loc 1 3024 1
|
||
5662 .cfi_startproc
|
||
5663 @ args = 0, pretend = 0, frame = 8
|
||
5664 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5665 @ link register save eliminated.
|
||
5666 0000 80B4 push {r7}
|
||
5667 .cfi_def_cfa_offset 4
|
||
5668 .cfi_offset 7, -4
|
||
5669 0002 83B0 sub sp, sp, #12
|
||
5670 .cfi_def_cfa_offset 16
|
||
ARM GAS /tmp/ccs34gJO.s page 153
|
||
|
||
|
||
5671 0004 00AF add r7, sp, #0
|
||
5672 .cfi_def_cfa_register 7
|
||
5673 0006 7860 str r0, [r7, #4]
|
||
3025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Return SPI ErrorCode */
|
||
3026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return hspi->ErrorCode;
|
||
5674 .loc 1 3026 14
|
||
5675 0008 7B68 ldr r3, [r7, #4]
|
||
5676 000a 1B6E ldr r3, [r3, #96]
|
||
3027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5677 .loc 1 3027 1
|
||
5678 000c 1846 mov r0, r3
|
||
5679 000e 0C37 adds r7, r7, #12
|
||
5680 .cfi_def_cfa_offset 4
|
||
5681 0010 BD46 mov sp, r7
|
||
5682 .cfi_def_cfa_register 13
|
||
5683 @ sp needed
|
||
5684 0012 5DF8047B ldr r7, [sp], #4
|
||
5685 .cfi_restore 7
|
||
5686 .cfi_def_cfa_offset 0
|
||
5687 0016 7047 bx lr
|
||
5688 .cfi_endproc
|
||
5689 .LFE158:
|
||
5691 .section .text.SPI_DMATransmitCplt,"ax",%progbits
|
||
5692 .align 1
|
||
5693 .syntax unified
|
||
5694 .thumb
|
||
5695 .thumb_func
|
||
5697 SPI_DMATransmitCplt:
|
||
5698 .LFB159:
|
||
3028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @}
|
||
3031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @}
|
||
3035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /** @addtogroup SPI_Private_Functions
|
||
3038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Private functions
|
||
3039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @{
|
||
3040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI transmit process complete callback.
|
||
3044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMATransmitCplt(DMA_HandleTypeDef *hdma)
|
||
3049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5699 .loc 1 3049 1
|
||
5700 .cfi_startproc
|
||
5701 @ args = 0, pretend = 0, frame = 24
|
||
5702 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5703 0000 80B5 push {r7, lr}
|
||
5704 .cfi_def_cfa_offset 8
|
||
ARM GAS /tmp/ccs34gJO.s page 154
|
||
|
||
|
||
5705 .cfi_offset 7, -8
|
||
5706 .cfi_offset 14, -4
|
||
5707 0002 86B0 sub sp, sp, #24
|
||
5708 .cfi_def_cfa_offset 32
|
||
5709 0004 00AF add r7, sp, #0
|
||
5710 .cfi_def_cfa_register 7
|
||
5711 0006 7860 str r0, [r7, #4]
|
||
3050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
5712 .loc 1 3050 22
|
||
5713 0008 7B68 ldr r3, [r7, #4]
|
||
5714 000a 5B6A ldr r3, [r3, #36]
|
||
5715 000c 7B61 str r3, [r7, #20]
|
||
3051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
3052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
3054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
5716 .loc 1 3054 15
|
||
5717 000e FFF7FEFF bl HAL_GetTick
|
||
5718 0012 3861 str r0, [r7, #16]
|
||
3055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DMA Normal Mode */
|
||
3057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hdma->Instance->CCR & DMA_CCR_CIRC) != DMA_CCR_CIRC)
|
||
5719 .loc 1 3057 12
|
||
5720 0014 7B68 ldr r3, [r7, #4]
|
||
5721 0016 1B68 ldr r3, [r3]
|
||
5722 .loc 1 3057 22
|
||
5723 0018 1B68 ldr r3, [r3]
|
||
5724 .loc 1 3057 28
|
||
5725 001a 03F02003 and r3, r3, #32
|
||
5726 .loc 1 3057 6
|
||
5727 001e 202B cmp r3, #32
|
||
5728 0020 3BD0 beq .L294
|
||
3058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable ERR interrupt */
|
||
3060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_ERR);
|
||
5729 .loc 1 3060 5
|
||
5730 0022 7B69 ldr r3, [r7, #20]
|
||
5731 0024 1B68 ldr r3, [r3]
|
||
5732 0026 5A68 ldr r2, [r3, #4]
|
||
5733 0028 7B69 ldr r3, [r7, #20]
|
||
5734 002a 1B68 ldr r3, [r3]
|
||
5735 002c 22F02002 bic r2, r2, #32
|
||
5736 0030 5A60 str r2, [r3, #4]
|
||
3061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Tx DMA Request */
|
||
3063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN);
|
||
5737 .loc 1 3063 5
|
||
5738 0032 7B69 ldr r3, [r7, #20]
|
||
5739 0034 1B68 ldr r3, [r3]
|
||
5740 0036 5A68 ldr r2, [r3, #4]
|
||
5741 0038 7B69 ldr r3, [r7, #20]
|
||
5742 003a 1B68 ldr r3, [r3]
|
||
5743 003c 22F00202 bic r2, r2, #2
|
||
5744 0040 5A60 str r2, [r3, #4]
|
||
3064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
3066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, tickstart) != HAL_OK)
|
||
ARM GAS /tmp/ccs34gJO.s page 155
|
||
|
||
|
||
5745 .loc 1 3066 9
|
||
5746 0042 3A69 ldr r2, [r7, #16]
|
||
5747 0044 6421 movs r1, #100
|
||
5748 0046 7869 ldr r0, [r7, #20]
|
||
5749 0048 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
5750 004c 0346 mov r3, r0
|
||
5751 .loc 1 3066 8 discriminator 1
|
||
5752 004e 002B cmp r3, #0
|
||
5753 0050 05D0 beq .L295
|
||
3067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
5754 .loc 1 3068 7
|
||
5755 0052 7B69 ldr r3, [r7, #20]
|
||
5756 0054 1B6E ldr r3, [r3, #96]
|
||
5757 0056 43F02002 orr r2, r3, #32
|
||
5758 005a 7B69 ldr r3, [r7, #20]
|
||
5759 005c 1A66 str r2, [r3, #96]
|
||
5760 .L295:
|
||
3069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear overrun flag in 2 Lines communication mode because received data is not read */
|
||
3072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_2LINES)
|
||
5761 .loc 1 3072 19
|
||
5762 005e 7B69 ldr r3, [r7, #20]
|
||
5763 0060 9B68 ldr r3, [r3, #8]
|
||
5764 .loc 1 3072 8
|
||
5765 0062 002B cmp r3, #0
|
||
5766 0064 0AD1 bne .L296
|
||
5767 .LBB11:
|
||
3073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
5768 .loc 1 3074 7
|
||
5769 0066 0023 movs r3, #0
|
||
5770 0068 FB60 str r3, [r7, #12]
|
||
5771 006a 7B69 ldr r3, [r7, #20]
|
||
5772 006c 1B68 ldr r3, [r3]
|
||
5773 006e DB68 ldr r3, [r3, #12]
|
||
5774 0070 FB60 str r3, [r7, #12]
|
||
5775 0072 7B69 ldr r3, [r7, #20]
|
||
5776 0074 1B68 ldr r3, [r3]
|
||
5777 0076 9B68 ldr r3, [r3, #8]
|
||
5778 0078 FB60 str r3, [r7, #12]
|
||
5779 007a FB68 ldr r3, [r7, #12]
|
||
5780 .L296:
|
||
5781 .LBE11:
|
||
3075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
5782 .loc 1 3077 23
|
||
5783 007c 7B69 ldr r3, [r7, #20]
|
||
5784 007e 0022 movs r2, #0
|
||
5785 0080 DA87 strh r2, [r3, #62] @ movhi
|
||
3078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
5786 .loc 1 3078 17
|
||
5787 0082 7B69 ldr r3, [r7, #20]
|
||
5788 0084 0122 movs r2, #1
|
||
5789 0086 83F85D20 strb r2, [r3, #93]
|
||
ARM GAS /tmp/ccs34gJO.s page 156
|
||
|
||
|
||
3079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
5790 .loc 1 3080 13
|
||
5791 008a 7B69 ldr r3, [r7, #20]
|
||
5792 008c 1B6E ldr r3, [r3, #96]
|
||
5793 .loc 1 3080 8
|
||
5794 008e 002B cmp r3, #0
|
||
5795 0090 03D0 beq .L294
|
||
3081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
3083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
3085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
5796 .loc 1 3086 7
|
||
5797 0092 7869 ldr r0, [r7, #20]
|
||
5798 0094 FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
3087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
5799 .loc 1 3088 7
|
||
5800 0098 02E0 b .L293
|
||
5801 .L294:
|
||
3089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Tx complete callback */
|
||
3092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxCpltCallback(hspi);
|
||
3094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_TxCpltCallback(hspi);
|
||
5802 .loc 1 3095 3
|
||
5803 009a 7869 ldr r0, [r7, #20]
|
||
5804 009c FFF7FEFF bl HAL_SPI_TxCpltCallback
|
||
5805 .L293:
|
||
3096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5806 .loc 1 3097 1
|
||
5807 00a0 1837 adds r7, r7, #24
|
||
5808 .cfi_def_cfa_offset 8
|
||
5809 00a2 BD46 mov sp, r7
|
||
5810 .cfi_def_cfa_register 13
|
||
5811 @ sp needed
|
||
5812 00a4 80BD pop {r7, pc}
|
||
5813 .cfi_endproc
|
||
5814 .LFE159:
|
||
5816 .section .text.SPI_DMAReceiveCplt,"ax",%progbits
|
||
5817 .align 1
|
||
5818 .syntax unified
|
||
5819 .thumb
|
||
5820 .thumb_func
|
||
5822 SPI_DMAReceiveCplt:
|
||
5823 .LFB160:
|
||
3098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI receive process complete callback.
|
||
3101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
ARM GAS /tmp/ccs34gJO.s page 157
|
||
|
||
|
||
3104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAReceiveCplt(DMA_HandleTypeDef *hdma)
|
||
3106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5824 .loc 1 3106 1
|
||
5825 .cfi_startproc
|
||
5826 @ args = 0, pretend = 0, frame = 16
|
||
5827 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5828 0000 80B5 push {r7, lr}
|
||
5829 .cfi_def_cfa_offset 8
|
||
5830 .cfi_offset 7, -8
|
||
5831 .cfi_offset 14, -4
|
||
5832 0002 84B0 sub sp, sp, #16
|
||
5833 .cfi_def_cfa_offset 24
|
||
5834 0004 00AF add r7, sp, #0
|
||
5835 .cfi_def_cfa_register 7
|
||
5836 0006 7860 str r0, [r7, #4]
|
||
3107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
5837 .loc 1 3107 22
|
||
5838 0008 7B68 ldr r3, [r7, #4]
|
||
5839 000a 5B6A ldr r3, [r3, #36]
|
||
5840 000c FB60 str r3, [r7, #12]
|
||
3108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
3109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t tmpreg = 0U;
|
||
3111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
3112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
3113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
3116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
5841 .loc 1 3116 15
|
||
5842 000e FFF7FEFF bl HAL_GetTick
|
||
5843 0012 B860 str r0, [r7, #8]
|
||
3117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DMA Normal Mode */
|
||
3119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hdma->Instance->CCR & DMA_CCR_CIRC) != DMA_CCR_CIRC)
|
||
5844 .loc 1 3119 12
|
||
5845 0014 7B68 ldr r3, [r7, #4]
|
||
5846 0016 1B68 ldr r3, [r3]
|
||
5847 .loc 1 3119 22
|
||
5848 0018 1B68 ldr r3, [r3]
|
||
5849 .loc 1 3119 28
|
||
5850 001a 03F02003 and r3, r3, #32
|
||
5851 .loc 1 3119 6
|
||
5852 001e 202B cmp r3, #32
|
||
5853 0020 3CD0 beq .L299
|
||
3120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable ERR interrupt */
|
||
3122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_ERR);
|
||
5854 .loc 1 3122 5
|
||
5855 0022 FB68 ldr r3, [r7, #12]
|
||
5856 0024 1B68 ldr r3, [r3]
|
||
5857 0026 5A68 ldr r2, [r3, #4]
|
||
5858 0028 FB68 ldr r3, [r7, #12]
|
||
5859 002a 1B68 ldr r3, [r3]
|
||
5860 002c 22F02002 bic r2, r2, #32
|
||
5861 0030 5A60 str r2, [r3, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 158
|
||
|
||
|
||
3123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* CRC handling */
|
||
3126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Wait until RXNE flag */
|
||
3129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, SPI_DEFAULT_TIMEOUT, tickstart) !
|
||
3130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
3132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
3133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read CRC */
|
||
3135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.DataSize > SPI_DATASIZE_8BIT)
|
||
3136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 16bit CRC */
|
||
3138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg = READ_REG(hspi->Instance->DR);
|
||
3139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg);
|
||
3141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
3143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
3145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
3146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC */
|
||
3147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
3148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
3150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCLength == SPI_CRC_LENGTH_16BIT)
|
||
3152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_RXNE, SET, SPI_DEFAULT_TIMEOUT, tickstar
|
||
3154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
3156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
3157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC again in case of 16bit CRC in 8bit Data mode */
|
||
3159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
3160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
3162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if we are in Master RX 2 line mode */
|
||
3168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Direction == SPI_DIRECTION_2LINES) && (hspi->Init.Mode == SPI_MODE_MASTER))
|
||
5862 .loc 1 3168 20
|
||
5863 0032 FB68 ldr r3, [r7, #12]
|
||
5864 0034 9B68 ldr r3, [r3, #8]
|
||
5865 .loc 1 3168 8
|
||
5866 0036 002B cmp r3, #0
|
||
5867 0038 0DD1 bne .L300
|
||
5868 .loc 1 3168 70 discriminator 1
|
||
5869 003a FB68 ldr r3, [r7, #12]
|
||
5870 003c 5B68 ldr r3, [r3, #4]
|
||
5871 .loc 1 3168 56 discriminator 1
|
||
5872 003e B3F5827F cmp r3, #260
|
||
ARM GAS /tmp/ccs34gJO.s page 159
|
||
|
||
|
||
5873 0042 08D1 bne .L300
|
||
3169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Rx/Tx DMA Request (done by default to handle the case master rx direction 2 lines)
|
||
3171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN);
|
||
5874 .loc 1 3171 7
|
||
5875 0044 FB68 ldr r3, [r7, #12]
|
||
5876 0046 1B68 ldr r3, [r3]
|
||
5877 0048 5A68 ldr r2, [r3, #4]
|
||
5878 004a FB68 ldr r3, [r7, #12]
|
||
5879 004c 1B68 ldr r3, [r3]
|
||
5880 004e 22F00302 bic r2, r2, #3
|
||
5881 0052 5A60 str r2, [r3, #4]
|
||
5882 0054 07E0 b .L301
|
||
5883 .L300:
|
||
3172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
3174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Normal case */
|
||
3176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_RXDMAEN);
|
||
5884 .loc 1 3176 7
|
||
5885 0056 FB68 ldr r3, [r7, #12]
|
||
5886 0058 1B68 ldr r3, [r3]
|
||
5887 005a 5A68 ldr r2, [r3, #4]
|
||
5888 005c FB68 ldr r3, [r7, #12]
|
||
5889 005e 1B68 ldr r3, [r3]
|
||
5890 0060 22F00102 bic r2, r2, #1
|
||
5891 0064 5A60 str r2, [r3, #4]
|
||
5892 .L301:
|
||
3177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
3180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTransaction(hspi, SPI_DEFAULT_TIMEOUT, tickstart) != HAL_OK)
|
||
5893 .loc 1 3180 9
|
||
5894 0066 BA68 ldr r2, [r7, #8]
|
||
5895 0068 6421 movs r1, #100
|
||
5896 006a F868 ldr r0, [r7, #12]
|
||
5897 006c FFF7FEFF bl SPI_EndRxTransaction
|
||
5898 0070 0346 mov r3, r0
|
||
5899 .loc 1 3180 8 discriminator 1
|
||
5900 0072 002B cmp r3, #0
|
||
5901 0074 02D0 beq .L302
|
||
3181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_FLAG;
|
||
5902 .loc 1 3182 23
|
||
5903 0076 FB68 ldr r3, [r7, #12]
|
||
5904 0078 2022 movs r2, #32
|
||
5905 007a 1A66 str r2, [r3, #96]
|
||
5906 .L302:
|
||
3183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
5907 .loc 1 3185 23
|
||
5908 007c FB68 ldr r3, [r7, #12]
|
||
5909 007e 0022 movs r2, #0
|
||
5910 0080 A3F84620 strh r2, [r3, #70] @ movhi
|
||
3186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
5911 .loc 1 3186 17
|
||
ARM GAS /tmp/ccs34gJO.s page 160
|
||
|
||
|
||
5912 0084 FB68 ldr r3, [r7, #12]
|
||
5913 0086 0122 movs r2, #1
|
||
5914 0088 83F85D20 strb r2, [r3, #93]
|
||
3187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if CRC error occurred */
|
||
3190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_CRCERR))
|
||
3191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
3193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_CRCERRFLAG(hspi);
|
||
3194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
5915 .loc 1 3197 13
|
||
5916 008c FB68 ldr r3, [r7, #12]
|
||
5917 008e 1B6E ldr r3, [r3, #96]
|
||
5918 .loc 1 3197 8
|
||
5919 0090 002B cmp r3, #0
|
||
5920 0092 03D0 beq .L299
|
||
3198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
3200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
3202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
5921 .loc 1 3203 7
|
||
5922 0094 F868 ldr r0, [r7, #12]
|
||
5923 0096 FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
3204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
5924 .loc 1 3205 7
|
||
5925 009a 02E0 b .L298
|
||
5926 .L299:
|
||
3206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Rx complete callback */
|
||
3209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxCpltCallback(hspi);
|
||
3211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_RxCpltCallback(hspi);
|
||
5927 .loc 1 3212 3
|
||
5928 009c F868 ldr r0, [r7, #12]
|
||
5929 009e FFF7FEFF bl HAL_SPI_RxCpltCallback
|
||
5930 .L298:
|
||
3213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
5931 .loc 1 3214 1
|
||
5932 00a2 1037 adds r7, r7, #16
|
||
5933 .cfi_def_cfa_offset 8
|
||
5934 00a4 BD46 mov sp, r7
|
||
5935 .cfi_def_cfa_register 13
|
||
5936 @ sp needed
|
||
5937 00a6 80BD pop {r7, pc}
|
||
5938 .cfi_endproc
|
||
5939 .LFE160:
|
||
5941 .section .text.SPI_DMATransmitReceiveCplt,"ax",%progbits
|
||
ARM GAS /tmp/ccs34gJO.s page 161
|
||
|
||
|
||
5942 .align 1
|
||
5943 .syntax unified
|
||
5944 .thumb
|
||
5945 .thumb_func
|
||
5947 SPI_DMATransmitReceiveCplt:
|
||
5948 .LFB161:
|
||
3215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI transmit receive process complete callback.
|
||
3218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMATransmitReceiveCplt(DMA_HandleTypeDef *hdma)
|
||
3223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
5949 .loc 1 3223 1
|
||
5950 .cfi_startproc
|
||
5951 @ args = 0, pretend = 0, frame = 16
|
||
5952 @ frame_needed = 1, uses_anonymous_args = 0
|
||
5953 0000 80B5 push {r7, lr}
|
||
5954 .cfi_def_cfa_offset 8
|
||
5955 .cfi_offset 7, -8
|
||
5956 .cfi_offset 14, -4
|
||
5957 0002 84B0 sub sp, sp, #16
|
||
5958 .cfi_def_cfa_offset 24
|
||
5959 0004 00AF add r7, sp, #0
|
||
5960 .cfi_def_cfa_register 7
|
||
5961 0006 7860 str r0, [r7, #4]
|
||
3224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
5962 .loc 1 3224 22
|
||
5963 0008 7B68 ldr r3, [r7, #4]
|
||
5964 000a 5B6A ldr r3, [r3, #36]
|
||
5965 000c FB60 str r3, [r7, #12]
|
||
3225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
3226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t tmpreg = 0U;
|
||
3228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
3229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
3230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
3233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
5966 .loc 1 3233 15
|
||
5967 000e FFF7FEFF bl HAL_GetTick
|
||
5968 0012 B860 str r0, [r7, #8]
|
||
3234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* DMA Normal Mode */
|
||
3236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hdma->Instance->CCR & DMA_CCR_CIRC) != DMA_CCR_CIRC)
|
||
5969 .loc 1 3236 12
|
||
5970 0014 7B68 ldr r3, [r7, #4]
|
||
5971 0016 1B68 ldr r3, [r3]
|
||
5972 .loc 1 3236 22
|
||
5973 0018 1B68 ldr r3, [r3]
|
||
5974 .loc 1 3236 28
|
||
5975 001a 03F02003 and r3, r3, #32
|
||
5976 .loc 1 3236 6
|
||
5977 001e 202B cmp r3, #32
|
||
ARM GAS /tmp/ccs34gJO.s page 162
|
||
|
||
|
||
5978 0020 30D0 beq .L305
|
||
3237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable ERR interrupt */
|
||
3239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_ERR);
|
||
5979 .loc 1 3239 5
|
||
5980 0022 FB68 ldr r3, [r7, #12]
|
||
5981 0024 1B68 ldr r3, [r3]
|
||
5982 0026 5A68 ldr r2, [r3, #4]
|
||
5983 0028 FB68 ldr r3, [r7, #12]
|
||
5984 002a 1B68 ldr r3, [r3]
|
||
5985 002c 22F02002 bic r2, r2, #32
|
||
5986 0030 5A60 str r2, [r3, #4]
|
||
3240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* CRC handling */
|
||
3243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.DataSize == SPI_DATASIZE_8BIT) && (hspi->Init.CRCLength == SPI_CRC_LENGTH_8BI
|
||
3246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_QUARTER_FULL, SPI_DEFAULT
|
||
3248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart) != HAL_OK)
|
||
3249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
3251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
3252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
3254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
3255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC */
|
||
3256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
3257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
3259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
3261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_HALF_FULL, SPI_DEFAULT_TI
|
||
3263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Error on the CRC reception */
|
||
3265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
3266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read CRC to Flush DR and RXNE flag */
|
||
3268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg = READ_REG(hspi->Instance->DR);
|
||
3269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg);
|
||
3271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
3276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, tickstart) != HAL_OK)
|
||
5987 .loc 1 3276 9
|
||
5988 0032 BA68 ldr r2, [r7, #8]
|
||
5989 0034 6421 movs r1, #100
|
||
5990 0036 F868 ldr r0, [r7, #12]
|
||
5991 0038 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
5992 003c 0346 mov r3, r0
|
||
5993 .loc 1 3276 8 discriminator 1
|
||
5994 003e 002B cmp r3, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 163
|
||
|
||
|
||
5995 0040 05D0 beq .L306
|
||
3277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
5996 .loc 1 3278 7
|
||
5997 0042 FB68 ldr r3, [r7, #12]
|
||
5998 0044 1B6E ldr r3, [r3, #96]
|
||
5999 0046 43F02002 orr r2, r3, #32
|
||
6000 004a FB68 ldr r3, [r7, #12]
|
||
6001 004c 1A66 str r2, [r3, #96]
|
||
6002 .L306:
|
||
3279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Rx/Tx DMA Request */
|
||
3282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN);
|
||
6003 .loc 1 3282 5
|
||
6004 004e FB68 ldr r3, [r7, #12]
|
||
6005 0050 1B68 ldr r3, [r3]
|
||
6006 0052 5A68 ldr r2, [r3, #4]
|
||
6007 0054 FB68 ldr r3, [r7, #12]
|
||
6008 0056 1B68 ldr r3, [r3]
|
||
6009 0058 22F00302 bic r2, r2, #3
|
||
6010 005c 5A60 str r2, [r3, #4]
|
||
3283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
6011 .loc 1 3284 23
|
||
6012 005e FB68 ldr r3, [r7, #12]
|
||
6013 0060 0022 movs r2, #0
|
||
6014 0062 DA87 strh r2, [r3, #62] @ movhi
|
||
3285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
6015 .loc 1 3285 23
|
||
6016 0064 FB68 ldr r3, [r7, #12]
|
||
6017 0066 0022 movs r2, #0
|
||
6018 0068 A3F84620 strh r2, [r3, #70] @ movhi
|
||
3286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
6019 .loc 1 3286 17
|
||
6020 006c FB68 ldr r3, [r7, #12]
|
||
6021 006e 0122 movs r2, #1
|
||
6022 0070 83F85D20 strb r2, [r3, #93]
|
||
3287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if CRC error occurred */
|
||
3290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_CRCERR))
|
||
3291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
3293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_CRCERRFLAG(hspi);
|
||
3294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
6023 .loc 1 3297 13
|
||
6024 0074 FB68 ldr r3, [r7, #12]
|
||
6025 0076 1B6E ldr r3, [r3, #96]
|
||
6026 .loc 1 3297 8
|
||
6027 0078 002B cmp r3, #0
|
||
6028 007a 03D0 beq .L305
|
||
3298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
ARM GAS /tmp/ccs34gJO.s page 164
|
||
|
||
|
||
3300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
3302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
6029 .loc 1 3303 7
|
||
6030 007c F868 ldr r0, [r7, #12]
|
||
6031 007e FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
3304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
6032 .loc 1 3305 7
|
||
6033 0082 02E0 b .L304
|
||
6034 .L305:
|
||
3306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user TxRx complete callback */
|
||
3309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxCpltCallback(hspi);
|
||
3311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_TxRxCpltCallback(hspi);
|
||
6035 .loc 1 3312 3
|
||
6036 0084 F868 ldr r0, [r7, #12]
|
||
6037 0086 FFF7FEFF bl HAL_SPI_TxRxCpltCallback
|
||
6038 .L304:
|
||
3313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6039 .loc 1 3314 1
|
||
6040 008a 1037 adds r7, r7, #16
|
||
6041 .cfi_def_cfa_offset 8
|
||
6042 008c BD46 mov sp, r7
|
||
6043 .cfi_def_cfa_register 13
|
||
6044 @ sp needed
|
||
6045 008e 80BD pop {r7, pc}
|
||
6046 .cfi_endproc
|
||
6047 .LFE161:
|
||
6049 .section .text.SPI_DMAHalfTransmitCplt,"ax",%progbits
|
||
6050 .align 1
|
||
6051 .syntax unified
|
||
6052 .thumb
|
||
6053 .thumb_func
|
||
6055 SPI_DMAHalfTransmitCplt:
|
||
6056 .LFB162:
|
||
3315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI half transmit process complete callback.
|
||
3318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAHalfTransmitCplt(DMA_HandleTypeDef *hdma)
|
||
3323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6057 .loc 1 3323 1
|
||
6058 .cfi_startproc
|
||
6059 @ args = 0, pretend = 0, frame = 16
|
||
6060 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6061 0000 80B5 push {r7, lr}
|
||
6062 .cfi_def_cfa_offset 8
|
||
6063 .cfi_offset 7, -8
|
||
ARM GAS /tmp/ccs34gJO.s page 165
|
||
|
||
|
||
6064 .cfi_offset 14, -4
|
||
6065 0002 84B0 sub sp, sp, #16
|
||
6066 .cfi_def_cfa_offset 24
|
||
6067 0004 00AF add r7, sp, #0
|
||
6068 .cfi_def_cfa_register 7
|
||
6069 0006 7860 str r0, [r7, #4]
|
||
3324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6070 .loc 1 3324 22
|
||
6071 0008 7B68 ldr r3, [r7, #4]
|
||
6072 000a 5B6A ldr r3, [r3, #36]
|
||
6073 000c FB60 str r3, [r7, #12]
|
||
3325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Tx half complete callback */
|
||
3327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxHalfCpltCallback(hspi);
|
||
3329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_TxHalfCpltCallback(hspi);
|
||
6074 .loc 1 3330 3
|
||
6075 000e F868 ldr r0, [r7, #12]
|
||
6076 0010 FFF7FEFF bl HAL_SPI_TxHalfCpltCallback
|
||
3331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6077 .loc 1 3332 1
|
||
6078 0014 00BF nop
|
||
6079 0016 1037 adds r7, r7, #16
|
||
6080 .cfi_def_cfa_offset 8
|
||
6081 0018 BD46 mov sp, r7
|
||
6082 .cfi_def_cfa_register 13
|
||
6083 @ sp needed
|
||
6084 001a 80BD pop {r7, pc}
|
||
6085 .cfi_endproc
|
||
6086 .LFE162:
|
||
6088 .section .text.SPI_DMAHalfReceiveCplt,"ax",%progbits
|
||
6089 .align 1
|
||
6090 .syntax unified
|
||
6091 .thumb
|
||
6092 .thumb_func
|
||
6094 SPI_DMAHalfReceiveCplt:
|
||
6095 .LFB163:
|
||
3333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI half receive process complete callback
|
||
3336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAHalfReceiveCplt(DMA_HandleTypeDef *hdma)
|
||
3341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6096 .loc 1 3341 1
|
||
6097 .cfi_startproc
|
||
6098 @ args = 0, pretend = 0, frame = 16
|
||
6099 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6100 0000 80B5 push {r7, lr}
|
||
6101 .cfi_def_cfa_offset 8
|
||
6102 .cfi_offset 7, -8
|
||
6103 .cfi_offset 14, -4
|
||
6104 0002 84B0 sub sp, sp, #16
|
||
ARM GAS /tmp/ccs34gJO.s page 166
|
||
|
||
|
||
6105 .cfi_def_cfa_offset 24
|
||
6106 0004 00AF add r7, sp, #0
|
||
6107 .cfi_def_cfa_register 7
|
||
6108 0006 7860 str r0, [r7, #4]
|
||
3342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6109 .loc 1 3342 22
|
||
6110 0008 7B68 ldr r3, [r7, #4]
|
||
6111 000a 5B6A ldr r3, [r3, #36]
|
||
6112 000c FB60 str r3, [r7, #12]
|
||
3343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Rx half complete callback */
|
||
3345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxHalfCpltCallback(hspi);
|
||
3347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_RxHalfCpltCallback(hspi);
|
||
6113 .loc 1 3348 3
|
||
6114 000e F868 ldr r0, [r7, #12]
|
||
6115 0010 FFF7FEFF bl HAL_SPI_RxHalfCpltCallback
|
||
3349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6116 .loc 1 3350 1
|
||
6117 0014 00BF nop
|
||
6118 0016 1037 adds r7, r7, #16
|
||
6119 .cfi_def_cfa_offset 8
|
||
6120 0018 BD46 mov sp, r7
|
||
6121 .cfi_def_cfa_register 13
|
||
6122 @ sp needed
|
||
6123 001a 80BD pop {r7, pc}
|
||
6124 .cfi_endproc
|
||
6125 .LFE163:
|
||
6127 .section .text.SPI_DMAHalfTransmitReceiveCplt,"ax",%progbits
|
||
6128 .align 1
|
||
6129 .syntax unified
|
||
6130 .thumb
|
||
6131 .thumb_func
|
||
6133 SPI_DMAHalfTransmitReceiveCplt:
|
||
6134 .LFB164:
|
||
3351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI half transmit receive process complete callback.
|
||
3354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAHalfTransmitReceiveCplt(DMA_HandleTypeDef *hdma)
|
||
3359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6135 .loc 1 3359 1
|
||
6136 .cfi_startproc
|
||
6137 @ args = 0, pretend = 0, frame = 16
|
||
6138 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6139 0000 80B5 push {r7, lr}
|
||
6140 .cfi_def_cfa_offset 8
|
||
6141 .cfi_offset 7, -8
|
||
6142 .cfi_offset 14, -4
|
||
6143 0002 84B0 sub sp, sp, #16
|
||
6144 .cfi_def_cfa_offset 24
|
||
6145 0004 00AF add r7, sp, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 167
|
||
|
||
|
||
6146 .cfi_def_cfa_register 7
|
||
6147 0006 7860 str r0, [r7, #4]
|
||
3360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6148 .loc 1 3360 22
|
||
6149 0008 7B68 ldr r3, [r7, #4]
|
||
6150 000a 5B6A ldr r3, [r3, #36]
|
||
6151 000c FB60 str r3, [r7, #12]
|
||
3361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user TxRx half complete callback */
|
||
3363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxHalfCpltCallback(hspi);
|
||
3365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_TxRxHalfCpltCallback(hspi);
|
||
6152 .loc 1 3366 3
|
||
6153 000e F868 ldr r0, [r7, #12]
|
||
6154 0010 FFF7FEFF bl HAL_SPI_TxRxHalfCpltCallback
|
||
3367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6155 .loc 1 3368 1
|
||
6156 0014 00BF nop
|
||
6157 0016 1037 adds r7, r7, #16
|
||
6158 .cfi_def_cfa_offset 8
|
||
6159 0018 BD46 mov sp, r7
|
||
6160 .cfi_def_cfa_register 13
|
||
6161 @ sp needed
|
||
6162 001a 80BD pop {r7, pc}
|
||
6163 .cfi_endproc
|
||
6164 .LFE164:
|
||
6166 .section .text.SPI_DMAError,"ax",%progbits
|
||
6167 .align 1
|
||
6168 .syntax unified
|
||
6169 .thumb
|
||
6170 .thumb_func
|
||
6172 SPI_DMAError:
|
||
6173 .LFB165:
|
||
3369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI communication error callback.
|
||
3372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
|
||
3373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for the specified DMA module.
|
||
3374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAError(DMA_HandleTypeDef *hdma)
|
||
3377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6174 .loc 1 3377 1
|
||
6175 .cfi_startproc
|
||
6176 @ args = 0, pretend = 0, frame = 16
|
||
6177 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6178 0000 80B5 push {r7, lr}
|
||
6179 .cfi_def_cfa_offset 8
|
||
6180 .cfi_offset 7, -8
|
||
6181 .cfi_offset 14, -4
|
||
6182 0002 84B0 sub sp, sp, #16
|
||
6183 .cfi_def_cfa_offset 24
|
||
6184 0004 00AF add r7, sp, #0
|
||
6185 .cfi_def_cfa_register 7
|
||
6186 0006 7860 str r0, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 168
|
||
|
||
|
||
3378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6187 .loc 1 3378 22
|
||
6188 0008 7B68 ldr r3, [r7, #4]
|
||
6189 000a 5B6A ldr r3, [r3, #36]
|
||
6190 000c FB60 str r3, [r7, #12]
|
||
3379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Stop the disable DMA transfer on SPI side */
|
||
3381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN);
|
||
6191 .loc 1 3381 3
|
||
6192 000e FB68 ldr r3, [r7, #12]
|
||
6193 0010 1B68 ldr r3, [r3]
|
||
6194 0012 5A68 ldr r2, [r3, #4]
|
||
6195 0014 FB68 ldr r3, [r7, #12]
|
||
6196 0016 1B68 ldr r3, [r3]
|
||
6197 0018 22F00302 bic r2, r2, #3
|
||
6198 001c 5A60 str r2, [r3, #4]
|
||
3382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_DMA);
|
||
6199 .loc 1 3383 3
|
||
6200 001e FB68 ldr r3, [r7, #12]
|
||
6201 0020 1B6E ldr r3, [r3, #96]
|
||
6202 0022 43F01002 orr r2, r3, #16
|
||
6203 0026 FB68 ldr r3, [r7, #12]
|
||
6204 0028 1A66 str r2, [r3, #96]
|
||
3384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
6205 .loc 1 3384 15
|
||
6206 002a FB68 ldr r3, [r7, #12]
|
||
6207 002c 0122 movs r2, #1
|
||
6208 002e 83F85D20 strb r2, [r3, #93]
|
||
3385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
3386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
3388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
6209 .loc 1 3389 3
|
||
6210 0032 F868 ldr r0, [r7, #12]
|
||
6211 0034 FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
3390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6212 .loc 1 3391 1
|
||
6213 0038 00BF nop
|
||
6214 003a 1037 adds r7, r7, #16
|
||
6215 .cfi_def_cfa_offset 8
|
||
6216 003c BD46 mov sp, r7
|
||
6217 .cfi_def_cfa_register 13
|
||
6218 @ sp needed
|
||
6219 003e 80BD pop {r7, pc}
|
||
6220 .cfi_endproc
|
||
6221 .LFE165:
|
||
6223 .section .text.SPI_DMAAbortOnError,"ax",%progbits
|
||
6224 .align 1
|
||
6225 .syntax unified
|
||
6226 .thumb
|
||
6227 .thumb_func
|
||
6229 SPI_DMAAbortOnError:
|
||
6230 .LFB166:
|
||
3392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 169
|
||
|
||
|
||
3393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI communication abort callback, when initiated by HAL services on Error
|
||
3395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * (To be called at end of DMA Abort procedure following error occurrence).
|
||
3396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma DMA handle.
|
||
3397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMAAbortOnError(DMA_HandleTypeDef *hdma)
|
||
3400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6231 .loc 1 3400 1
|
||
6232 .cfi_startproc
|
||
6233 @ args = 0, pretend = 0, frame = 16
|
||
6234 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6235 0000 80B5 push {r7, lr}
|
||
6236 .cfi_def_cfa_offset 8
|
||
6237 .cfi_offset 7, -8
|
||
6238 .cfi_offset 14, -4
|
||
6239 0002 84B0 sub sp, sp, #16
|
||
6240 .cfi_def_cfa_offset 24
|
||
6241 0004 00AF add r7, sp, #0
|
||
6242 .cfi_def_cfa_register 7
|
||
6243 0006 7860 str r0, [r7, #4]
|
||
3401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6244 .loc 1 3401 22
|
||
6245 0008 7B68 ldr r3, [r7, #4]
|
||
6246 000a 5B6A ldr r3, [r3, #36]
|
||
6247 000c FB60 str r3, [r7, #12]
|
||
3402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
6248 .loc 1 3402 21
|
||
6249 000e FB68 ldr r3, [r7, #12]
|
||
6250 0010 0022 movs r2, #0
|
||
6251 0012 A3F84620 strh r2, [r3, #70] @ movhi
|
||
3403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
6252 .loc 1 3403 21
|
||
6253 0016 FB68 ldr r3, [r7, #12]
|
||
6254 0018 0022 movs r2, #0
|
||
6255 001a DA87 strh r2, [r3, #62] @ movhi
|
||
3404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
3406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
3408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
6256 .loc 1 3409 3
|
||
6257 001c F868 ldr r0, [r7, #12]
|
||
6258 001e FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
3410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6259 .loc 1 3411 1
|
||
6260 0022 00BF nop
|
||
6261 0024 1037 adds r7, r7, #16
|
||
6262 .cfi_def_cfa_offset 8
|
||
6263 0026 BD46 mov sp, r7
|
||
6264 .cfi_def_cfa_register 13
|
||
6265 @ sp needed
|
||
6266 0028 80BD pop {r7, pc}
|
||
6267 .cfi_endproc
|
||
6268 .LFE166:
|
||
ARM GAS /tmp/ccs34gJO.s page 170
|
||
|
||
|
||
6270 .section .text.SPI_DMATxAbortCallback,"ax",%progbits
|
||
6271 .align 1
|
||
6272 .syntax unified
|
||
6273 .thumb
|
||
6274 .thumb_func
|
||
6276 SPI_DMATxAbortCallback:
|
||
6277 .LFB167:
|
||
3412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI Tx communication abort callback, when initiated by user
|
||
3415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * (To be called at end of DMA Tx Abort procedure following user abort request).
|
||
3416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note When this callback is executed, User Abort complete call back is called only if no
|
||
3417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * Abort still ongoing for Rx DMA Handle.
|
||
3418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma DMA handle.
|
||
3419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMATxAbortCallback(DMA_HandleTypeDef *hdma)
|
||
3422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6278 .loc 1 3422 1
|
||
6279 .cfi_startproc
|
||
6280 @ args = 0, pretend = 0, frame = 24
|
||
6281 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6282 0000 80B5 push {r7, lr}
|
||
6283 .cfi_def_cfa_offset 8
|
||
6284 .cfi_offset 7, -8
|
||
6285 .cfi_offset 14, -4
|
||
6286 0002 88B0 sub sp, sp, #32
|
||
6287 .cfi_def_cfa_offset 40
|
||
6288 0004 02AF add r7, sp, #8
|
||
6289 .cfi_def_cfa 7, 32
|
||
6290 0006 7860 str r0, [r7, #4]
|
||
3423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6291 .loc 1 3423 22
|
||
6292 0008 7B68 ldr r3, [r7, #4]
|
||
6293 000a 5B6A ldr r3, [r3, #36]
|
||
6294 000c 7B61 str r3, [r7, #20]
|
||
3424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmatx->XferAbortCallback = NULL;
|
||
6295 .loc 1 3425 7
|
||
6296 000e 7B69 ldr r3, [r7, #20]
|
||
6297 0010 5B6D ldr r3, [r3, #84]
|
||
6298 .loc 1 3425 35
|
||
6299 0012 0022 movs r2, #0
|
||
6300 0014 5A63 str r2, [r3, #52]
|
||
3426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Tx DMA Request */
|
||
3428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_TXDMAEN);
|
||
6301 .loc 1 3428 3
|
||
6302 0016 7B69 ldr r3, [r7, #20]
|
||
6303 0018 1B68 ldr r3, [r3]
|
||
6304 001a 5A68 ldr r2, [r3, #4]
|
||
6305 001c 7B69 ldr r3, [r7, #20]
|
||
6306 001e 1B68 ldr r3, [r3]
|
||
6307 0020 22F00202 bic r2, r2, #2
|
||
6308 0024 5A60 str r2, [r3, #4]
|
||
3429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, HAL_GetTick()) != HAL_OK)
|
||
ARM GAS /tmp/ccs34gJO.s page 171
|
||
|
||
|
||
6309 .loc 1 3430 7
|
||
6310 0026 FFF7FEFF bl HAL_GetTick
|
||
6311 002a 0346 mov r3, r0
|
||
6312 .loc 1 3430 7 is_stmt 0 discriminator 1
|
||
6313 002c 1A46 mov r2, r3
|
||
6314 002e 6421 movs r1, #100
|
||
6315 0030 7869 ldr r0, [r7, #20]
|
||
6316 0032 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
6317 0036 0346 mov r3, r0
|
||
6318 .loc 1 3430 6 is_stmt 1 discriminator 2
|
||
6319 0038 002B cmp r3, #0
|
||
6320 003a 02D0 beq .L314
|
||
3431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
6321 .loc 1 3432 21
|
||
6322 003c 7B69 ldr r3, [r7, #20]
|
||
6323 003e 4022 movs r2, #64
|
||
6324 0040 1A66 str r2, [r3, #96]
|
||
6325 .L314:
|
||
3433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral */
|
||
3436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
6326 .loc 1 3436 3
|
||
6327 0042 7B69 ldr r3, [r7, #20]
|
||
6328 0044 1B68 ldr r3, [r3]
|
||
6329 0046 1A68 ldr r2, [r3]
|
||
6330 0048 7B69 ldr r3, [r7, #20]
|
||
6331 004a 1B68 ldr r3, [r3]
|
||
6332 004c 22F04002 bic r2, r2, #64
|
||
6333 0050 1A60 str r2, [r3]
|
||
3437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
3439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT, HAL
|
||
6334 .loc 1 3439 7
|
||
6335 0052 FFF7FEFF bl HAL_GetTick
|
||
6336 0056 0346 mov r3, r0
|
||
6337 .loc 1 3439 7 is_stmt 0 discriminator 1
|
||
6338 0058 0093 str r3, [sp]
|
||
6339 005a 6423 movs r3, #100
|
||
6340 005c 0022 movs r2, #0
|
||
6341 005e 4FF4C061 mov r1, #1536
|
||
6342 0062 7869 ldr r0, [r7, #20]
|
||
6343 0064 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
6344 0068 0346 mov r3, r0
|
||
6345 .loc 1 3439 6 is_stmt 1 discriminator 2
|
||
6346 006a 002B cmp r3, #0
|
||
6347 006c 02D0 beq .L315
|
||
3440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
6348 .loc 1 3441 21
|
||
6349 006e 7B69 ldr r3, [r7, #20]
|
||
6350 0070 4022 movs r2, #64
|
||
6351 0072 1A66 str r2, [r3, #96]
|
||
6352 .L315:
|
||
3442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 172
|
||
|
||
|
||
3444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if an Abort process is still ongoing */
|
||
3445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx != NULL)
|
||
6353 .loc 1 3445 11
|
||
6354 0074 7B69 ldr r3, [r7, #20]
|
||
6355 0076 9B6D ldr r3, [r3, #88]
|
||
6356 .loc 1 3445 6
|
||
6357 0078 002B cmp r3, #0
|
||
6358 007a 04D0 beq .L316
|
||
3446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmarx->XferAbortCallback != NULL)
|
||
6359 .loc 1 3447 13
|
||
6360 007c 7B69 ldr r3, [r7, #20]
|
||
6361 007e 9B6D ldr r3, [r3, #88]
|
||
6362 .loc 1 3447 21
|
||
6363 0080 5B6B ldr r3, [r3, #52]
|
||
6364 .loc 1 3447 8
|
||
6365 0082 002B cmp r3, #0
|
||
6366 0084 27D1 bne .L319
|
||
6367 .L316:
|
||
3448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* No Abort process still ongoing : All DMA Stream/Channel are aborted, call user Abort Complete
|
||
3454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
6368 .loc 1 3454 21
|
||
6369 0086 7B69 ldr r3, [r7, #20]
|
||
6370 0088 0022 movs r2, #0
|
||
6371 008a A3F84620 strh r2, [r3, #70] @ movhi
|
||
3455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
6372 .loc 1 3455 21
|
||
6373 008e 7B69 ldr r3, [r7, #20]
|
||
6374 0090 0022 movs r2, #0
|
||
6375 0092 DA87 strh r2, [r3, #62] @ movhi
|
||
3456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check no error during Abort procedure */
|
||
3458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_ABORT)
|
||
6376 .loc 1 3458 11
|
||
6377 0094 7B69 ldr r3, [r7, #20]
|
||
6378 0096 1B6E ldr r3, [r3, #96]
|
||
6379 .loc 1 3458 6
|
||
6380 0098 402B cmp r3, #64
|
||
6381 009a 02D0 beq .L318
|
||
3459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset errorCode */
|
||
3461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
6382 .loc 1 3461 21
|
||
6383 009c 7B69 ldr r3, [r7, #20]
|
||
6384 009e 0022 movs r2, #0
|
||
6385 00a0 1A66 str r2, [r3, #96]
|
||
6386 .L318:
|
||
6387 .LBB12:
|
||
3462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear the Error flags in the SR register */
|
||
3465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
ARM GAS /tmp/ccs34gJO.s page 173
|
||
|
||
|
||
6388 .loc 1 3465 3
|
||
6389 00a2 0023 movs r3, #0
|
||
6390 00a4 3B61 str r3, [r7, #16]
|
||
6391 00a6 7B69 ldr r3, [r7, #20]
|
||
6392 00a8 1B68 ldr r3, [r3]
|
||
6393 00aa DB68 ldr r3, [r3, #12]
|
||
6394 00ac 3B61 str r3, [r7, #16]
|
||
6395 00ae 7B69 ldr r3, [r7, #20]
|
||
6396 00b0 1B68 ldr r3, [r3]
|
||
6397 00b2 9B68 ldr r3, [r3, #8]
|
||
6398 00b4 3B61 str r3, [r7, #16]
|
||
6399 00b6 3B69 ldr r3, [r7, #16]
|
||
6400 .LBE12:
|
||
6401 .LBB13:
|
||
3466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_FREFLAG(hspi);
|
||
6402 .loc 1 3466 3
|
||
6403 00b8 0023 movs r3, #0
|
||
6404 00ba FB60 str r3, [r7, #12]
|
||
6405 00bc 7B69 ldr r3, [r7, #20]
|
||
6406 00be 1B68 ldr r3, [r3]
|
||
6407 00c0 9B68 ldr r3, [r3, #8]
|
||
6408 00c2 FB60 str r3, [r7, #12]
|
||
6409 00c4 FB68 ldr r3, [r7, #12]
|
||
6410 .LBE13:
|
||
3467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Restore hspi->State to Ready */
|
||
3469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
6411 .loc 1 3469 16
|
||
6412 00c6 7B69 ldr r3, [r7, #20]
|
||
6413 00c8 0122 movs r2, #1
|
||
6414 00ca 83F85D20 strb r2, [r3, #93]
|
||
3470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Abort complete callback */
|
||
3472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->AbortCpltCallback(hspi);
|
||
3474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_AbortCpltCallback(hspi);
|
||
6415 .loc 1 3475 3
|
||
6416 00ce 7869 ldr r0, [r7, #20]
|
||
6417 00d0 FFF7FEFF bl HAL_SPI_AbortCpltCallback
|
||
6418 00d4 00E0 b .L313
|
||
6419 .L319:
|
||
3449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6420 .loc 1 3449 7
|
||
6421 00d6 00BF nop
|
||
6422 .L313:
|
||
3476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6423 .loc 1 3477 1
|
||
6424 00d8 1837 adds r7, r7, #24
|
||
6425 .cfi_def_cfa_offset 8
|
||
6426 00da BD46 mov sp, r7
|
||
6427 .cfi_def_cfa_register 13
|
||
6428 @ sp needed
|
||
6429 00dc 80BD pop {r7, pc}
|
||
6430 .cfi_endproc
|
||
6431 .LFE167:
|
||
ARM GAS /tmp/ccs34gJO.s page 174
|
||
|
||
|
||
6433 .section .text.SPI_DMARxAbortCallback,"ax",%progbits
|
||
6434 .align 1
|
||
6435 .syntax unified
|
||
6436 .thumb
|
||
6437 .thumb_func
|
||
6439 SPI_DMARxAbortCallback:
|
||
6440 .LFB168:
|
||
3478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief DMA SPI Rx communication abort callback, when initiated by user
|
||
3481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * (To be called at end of DMA Rx Abort procedure following user abort request).
|
||
3482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @note When this callback is executed, User Abort complete call back is called only if no
|
||
3483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * Abort still ongoing for Tx DMA Handle.
|
||
3484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hdma DMA handle.
|
||
3485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_DMARxAbortCallback(DMA_HandleTypeDef *hdma)
|
||
3488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6441 .loc 1 3488 1
|
||
6442 .cfi_startproc
|
||
6443 @ args = 0, pretend = 0, frame = 24
|
||
6444 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6445 0000 80B5 push {r7, lr}
|
||
6446 .cfi_def_cfa_offset 8
|
||
6447 .cfi_offset 7, -8
|
||
6448 .cfi_offset 14, -4
|
||
6449 0002 88B0 sub sp, sp, #32
|
||
6450 .cfi_def_cfa_offset 40
|
||
6451 0004 02AF add r7, sp, #8
|
||
6452 .cfi_def_cfa 7, 32
|
||
6453 0006 7860 str r0, [r7, #4]
|
||
3489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_HandleTypeDef *hspi = (SPI_HandleTypeDef *)(((DMA_HandleTypeDef *)hdma)->Parent); /* Derogati
|
||
6454 .loc 1 3489 22
|
||
6455 0008 7B68 ldr r3, [r7, #4]
|
||
6456 000a 5B6A ldr r3, [r3, #36]
|
||
6457 000c 7B61 str r3, [r7, #20]
|
||
3490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral */
|
||
3492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
6458 .loc 1 3492 3
|
||
6459 000e 7B69 ldr r3, [r7, #20]
|
||
6460 0010 1B68 ldr r3, [r3]
|
||
6461 0012 1A68 ldr r2, [r3]
|
||
6462 0014 7B69 ldr r3, [r7, #20]
|
||
6463 0016 1B68 ldr r3, [r3]
|
||
6464 0018 22F04002 bic r2, r2, #64
|
||
6465 001c 1A60 str r2, [r3]
|
||
3493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->hdmarx->XferAbortCallback = NULL;
|
||
6466 .loc 1 3494 7
|
||
6467 001e 7B69 ldr r3, [r7, #20]
|
||
6468 0020 9B6D ldr r3, [r3, #88]
|
||
6469 .loc 1 3494 35
|
||
6470 0022 0022 movs r2, #0
|
||
6471 0024 5A63 str r2, [r3, #52]
|
||
3495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable Rx DMA Request */
|
||
ARM GAS /tmp/ccs34gJO.s page 175
|
||
|
||
|
||
3497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, SPI_CR2_RXDMAEN);
|
||
6472 .loc 1 3497 3
|
||
6473 0026 7B69 ldr r3, [r7, #20]
|
||
6474 0028 1B68 ldr r3, [r3]
|
||
6475 002a 5A68 ldr r2, [r3, #4]
|
||
6476 002c 7B69 ldr r3, [r7, #20]
|
||
6477 002e 1B68 ldr r3, [r3]
|
||
6478 0030 22F00102 bic r2, r2, #1
|
||
6479 0034 5A60 str r2, [r3, #4]
|
||
3498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control the BSY flag */
|
||
3500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_BSY, RESET, SPI_DEFAULT_TIMEOUT, HAL_GetTick())
|
||
6480 .loc 1 3500 7
|
||
6481 0036 FFF7FEFF bl HAL_GetTick
|
||
6482 003a 0346 mov r3, r0
|
||
6483 .loc 1 3500 7 is_stmt 0 discriminator 1
|
||
6484 003c 0093 str r3, [sp]
|
||
6485 003e 6423 movs r3, #100
|
||
6486 0040 0022 movs r2, #0
|
||
6487 0042 8021 movs r1, #128
|
||
6488 0044 7869 ldr r0, [r7, #20]
|
||
6489 0046 FFF7FEFF bl SPI_WaitFlagStateUntilTimeout
|
||
6490 004a 0346 mov r3, r0
|
||
6491 .loc 1 3500 6 is_stmt 1 discriminator 2
|
||
6492 004c 002B cmp r3, #0
|
||
6493 004e 02D0 beq .L321
|
||
3501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
6494 .loc 1 3502 21
|
||
6495 0050 7B69 ldr r3, [r7, #20]
|
||
6496 0052 4022 movs r2, #64
|
||
6497 0054 1A66 str r2, [r3, #96]
|
||
6498 .L321:
|
||
3503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
3506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT, HAL
|
||
6499 .loc 1 3506 7
|
||
6500 0056 FFF7FEFF bl HAL_GetTick
|
||
6501 005a 0346 mov r3, r0
|
||
6502 .loc 1 3506 7 is_stmt 0 discriminator 1
|
||
6503 005c 0093 str r3, [sp]
|
||
6504 005e 6423 movs r3, #100
|
||
6505 0060 0022 movs r2, #0
|
||
6506 0062 4FF4C061 mov r1, #1536
|
||
6507 0066 7869 ldr r0, [r7, #20]
|
||
6508 0068 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
6509 006c 0346 mov r3, r0
|
||
6510 .loc 1 3506 6 is_stmt 1 discriminator 2
|
||
6511 006e 002B cmp r3, #0
|
||
6512 0070 02D0 beq .L322
|
||
3507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
6513 .loc 1 3508 21
|
||
6514 0072 7B69 ldr r3, [r7, #20]
|
||
6515 0074 4022 movs r2, #64
|
||
6516 0076 1A66 str r2, [r3, #96]
|
||
ARM GAS /tmp/ccs34gJO.s page 176
|
||
|
||
|
||
6517 .L322:
|
||
3509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if an Abort process is still ongoing */
|
||
3512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx != NULL)
|
||
6518 .loc 1 3512 11
|
||
6519 0078 7B69 ldr r3, [r7, #20]
|
||
6520 007a 5B6D ldr r3, [r3, #84]
|
||
6521 .loc 1 3512 6
|
||
6522 007c 002B cmp r3, #0
|
||
6523 007e 04D0 beq .L323
|
||
3513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->hdmatx->XferAbortCallback != NULL)
|
||
6524 .loc 1 3514 13
|
||
6525 0080 7B69 ldr r3, [r7, #20]
|
||
6526 0082 5B6D ldr r3, [r3, #84]
|
||
6527 .loc 1 3514 21
|
||
6528 0084 5B6B ldr r3, [r3, #52]
|
||
6529 .loc 1 3514 8
|
||
6530 0086 002B cmp r3, #0
|
||
6531 0088 27D1 bne .L326
|
||
6532 .L323:
|
||
3515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* No Abort process still ongoing : All DMA Stream/Channel are aborted, call user Abort Complete
|
||
3521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount = 0U;
|
||
6533 .loc 1 3521 21
|
||
6534 008a 7B69 ldr r3, [r7, #20]
|
||
6535 008c 0022 movs r2, #0
|
||
6536 008e A3F84620 strh r2, [r3, #70] @ movhi
|
||
3522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount = 0U;
|
||
6537 .loc 1 3522 21
|
||
6538 0092 7B69 ldr r3, [r7, #20]
|
||
6539 0094 0022 movs r2, #0
|
||
6540 0096 DA87 strh r2, [r3, #62] @ movhi
|
||
3523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check no error during Abort procedure */
|
||
3525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_ABORT)
|
||
6541 .loc 1 3525 11
|
||
6542 0098 7B69 ldr r3, [r7, #20]
|
||
6543 009a 1B6E ldr r3, [r3, #96]
|
||
6544 .loc 1 3525 6
|
||
6545 009c 402B cmp r3, #64
|
||
6546 009e 02D0 beq .L325
|
||
3526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset errorCode */
|
||
3528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_NONE;
|
||
6547 .loc 1 3528 21
|
||
6548 00a0 7B69 ldr r3, [r7, #20]
|
||
6549 00a2 0022 movs r2, #0
|
||
6550 00a4 1A66 str r2, [r3, #96]
|
||
6551 .L325:
|
||
6552 .LBB14:
|
||
3529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 177
|
||
|
||
|
||
3530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear the Error flags in the SR register */
|
||
3532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
6553 .loc 1 3532 3
|
||
6554 00a6 0023 movs r3, #0
|
||
6555 00a8 3B61 str r3, [r7, #16]
|
||
6556 00aa 7B69 ldr r3, [r7, #20]
|
||
6557 00ac 1B68 ldr r3, [r3]
|
||
6558 00ae DB68 ldr r3, [r3, #12]
|
||
6559 00b0 3B61 str r3, [r7, #16]
|
||
6560 00b2 7B69 ldr r3, [r7, #20]
|
||
6561 00b4 1B68 ldr r3, [r3]
|
||
6562 00b6 9B68 ldr r3, [r3, #8]
|
||
6563 00b8 3B61 str r3, [r7, #16]
|
||
6564 00ba 3B69 ldr r3, [r7, #16]
|
||
6565 .LBE14:
|
||
6566 .LBB15:
|
||
3533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_FREFLAG(hspi);
|
||
6567 .loc 1 3533 3
|
||
6568 00bc 0023 movs r3, #0
|
||
6569 00be FB60 str r3, [r7, #12]
|
||
6570 00c0 7B69 ldr r3, [r7, #20]
|
||
6571 00c2 1B68 ldr r3, [r3]
|
||
6572 00c4 9B68 ldr r3, [r3, #8]
|
||
6573 00c6 FB60 str r3, [r7, #12]
|
||
6574 00c8 FB68 ldr r3, [r7, #12]
|
||
6575 .LBE15:
|
||
3534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Restore hspi->State to Ready */
|
||
3536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
6576 .loc 1 3536 16
|
||
6577 00ca 7B69 ldr r3, [r7, #20]
|
||
6578 00cc 0122 movs r2, #1
|
||
6579 00ce 83F85D20 strb r2, [r3, #93]
|
||
3537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Abort complete callback */
|
||
3539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
3540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->AbortCpltCallback(hspi);
|
||
3541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
3542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_AbortCpltCallback(hspi);
|
||
6580 .loc 1 3542 3
|
||
6581 00d2 7869 ldr r0, [r7, #20]
|
||
6582 00d4 FFF7FEFF bl HAL_SPI_AbortCpltCallback
|
||
6583 00d8 00E0 b .L320
|
||
6584 .L326:
|
||
3516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6585 .loc 1 3516 7
|
||
6586 00da 00BF nop
|
||
6587 .L320:
|
||
3543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
3544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6588 .loc 1 3544 1
|
||
6589 00dc 1837 adds r7, r7, #24
|
||
6590 .cfi_def_cfa_offset 8
|
||
6591 00de BD46 mov sp, r7
|
||
6592 .cfi_def_cfa_register 13
|
||
6593 @ sp needed
|
||
ARM GAS /tmp/ccs34gJO.s page 178
|
||
|
||
|
||
6594 00e0 80BD pop {r7, pc}
|
||
6595 .cfi_endproc
|
||
6596 .LFE168:
|
||
6598 .section .text.SPI_2linesRxISR_8BIT,"ax",%progbits
|
||
6599 .align 1
|
||
6600 .syntax unified
|
||
6601 .thumb
|
||
6602 .thumb_func
|
||
6604 SPI_2linesRxISR_8BIT:
|
||
6605 .LFB169:
|
||
3545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Rx 8-bit handler for Transmit and Receive in Interrupt mode.
|
||
3548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_8BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6606 .loc 1 3553 1
|
||
6607 .cfi_startproc
|
||
6608 @ args = 0, pretend = 0, frame = 8
|
||
6609 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6610 0000 80B5 push {r7, lr}
|
||
6611 .cfi_def_cfa_offset 8
|
||
6612 .cfi_offset 7, -8
|
||
6613 .cfi_offset 14, -4
|
||
6614 0002 82B0 sub sp, sp, #8
|
||
6615 .cfi_def_cfa_offset 16
|
||
6616 0004 00AF add r7, sp, #0
|
||
6617 .cfi_def_cfa_register 7
|
||
6618 0006 7860 str r0, [r7, #4]
|
||
3554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Receive data in packing mode */
|
||
3555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount > 1U)
|
||
6619 .loc 1 3555 11
|
||
6620 0008 7B68 ldr r3, [r7, #4]
|
||
6621 000a B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6622 000e 9BB2 uxth r3, r3
|
||
6623 .loc 1 3555 6
|
||
6624 0010 012B cmp r3, #1
|
||
6625 0012 23D9 bls .L328
|
||
3556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)(hspi->Instance->DR);
|
||
6626 .loc 1 3557 54
|
||
6627 0014 7B68 ldr r3, [r7, #4]
|
||
6628 0016 1B68 ldr r3, [r3]
|
||
6629 .loc 1 3557 64
|
||
6630 0018 DA68 ldr r2, [r3, #12]
|
||
6631 .loc 1 3557 23
|
||
6632 001a 7B68 ldr r3, [r7, #4]
|
||
6633 001c 1B6C ldr r3, [r3, #64]
|
||
6634 .loc 1 3557 39
|
||
6635 001e 92B2 uxth r2, r2
|
||
6636 .loc 1 3557 37
|
||
6637 0020 1A80 strh r2, [r3] @ movhi
|
||
3558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint16_t);
|
||
6638 .loc 1 3558 9
|
||
ARM GAS /tmp/ccs34gJO.s page 179
|
||
|
||
|
||
6639 0022 7B68 ldr r3, [r7, #4]
|
||
6640 0024 1B6C ldr r3, [r3, #64]
|
||
6641 .loc 1 3558 22
|
||
6642 0026 9A1C adds r2, r3, #2
|
||
6643 0028 7B68 ldr r3, [r7, #4]
|
||
6644 002a 1A64 str r2, [r3, #64]
|
||
3559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount -= 2U;
|
||
6645 .loc 1 3559 9
|
||
6646 002c 7B68 ldr r3, [r7, #4]
|
||
6647 002e B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6648 0032 9BB2 uxth r3, r3
|
||
6649 .loc 1 3559 23
|
||
6650 0034 023B subs r3, r3, #2
|
||
6651 0036 9AB2 uxth r2, r3
|
||
6652 0038 7B68 ldr r3, [r7, #4]
|
||
6653 003a A3F84620 strh r2, [r3, #70] @ movhi
|
||
3560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 1U)
|
||
6654 .loc 1 3560 13
|
||
6655 003e 7B68 ldr r3, [r7, #4]
|
||
6656 0040 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6657 0044 9BB2 uxth r3, r3
|
||
6658 .loc 1 3560 8
|
||
6659 0046 012B cmp r3, #1
|
||
6660 0048 1FD1 bne .L329
|
||
3561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set RX Fifo threshold according the reception data length: 8bit */
|
||
3563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
6661 .loc 1 3563 7
|
||
6662 004a 7B68 ldr r3, [r7, #4]
|
||
6663 004c 1B68 ldr r3, [r3]
|
||
6664 004e 5A68 ldr r2, [r3, #4]
|
||
6665 0050 7B68 ldr r3, [r7, #4]
|
||
6666 0052 1B68 ldr r3, [r3]
|
||
6667 0054 42F48052 orr r2, r2, #4096
|
||
6668 0058 5A60 str r2, [r3, #4]
|
||
6669 005a 16E0 b .L329
|
||
6670 .L328:
|
||
3564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Receive data in 8 Bit mode */
|
||
3567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
3568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *hspi->pRxBuffPtr = *((__IO uint8_t *)&hspi->Instance->DR);
|
||
6671 .loc 1 3569 48
|
||
6672 005c 7B68 ldr r3, [r7, #4]
|
||
6673 005e 1B68 ldr r3, [r3]
|
||
6674 .loc 1 3569 43
|
||
6675 0060 03F10C02 add r2, r3, #12
|
||
6676 .loc 1 3569 10
|
||
6677 0064 7B68 ldr r3, [r7, #4]
|
||
6678 0066 1B6C ldr r3, [r3, #64]
|
||
6679 .loc 1 3569 25
|
||
6680 0068 1278 ldrb r2, [r2]
|
||
6681 006a D2B2 uxtb r2, r2
|
||
6682 .loc 1 3569 23
|
||
6683 006c 1A70 strb r2, [r3]
|
||
3570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr++;
|
||
ARM GAS /tmp/ccs34gJO.s page 180
|
||
|
||
|
||
6684 .loc 1 3570 9
|
||
6685 006e 7B68 ldr r3, [r7, #4]
|
||
6686 0070 1B6C ldr r3, [r3, #64]
|
||
6687 .loc 1 3570 21
|
||
6688 0072 5A1C adds r2, r3, #1
|
||
6689 0074 7B68 ldr r3, [r7, #4]
|
||
6690 0076 1A64 str r2, [r3, #64]
|
||
3571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
6691 .loc 1 3571 9
|
||
6692 0078 7B68 ldr r3, [r7, #4]
|
||
6693 007a B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6694 007e 9BB2 uxth r3, r3
|
||
6695 .loc 1 3571 22
|
||
6696 0080 013B subs r3, r3, #1
|
||
6697 0082 9AB2 uxth r2, r3
|
||
6698 0084 7B68 ldr r3, [r7, #4]
|
||
6699 0086 A3F84620 strh r2, [r3, #70] @ movhi
|
||
6700 .L329:
|
||
3572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check end of the reception */
|
||
3575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 0U)
|
||
6701 .loc 1 3575 11
|
||
6702 008a 7B68 ldr r3, [r7, #4]
|
||
6703 008c B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6704 0090 9BB2 uxth r3, r3
|
||
6705 .loc 1 3575 6
|
||
6706 0092 002B cmp r3, #0
|
||
6707 0094 0FD1 bne .L331
|
||
3576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR2, SPI_RXFIFO_THRESHOLD);
|
||
3581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_2linesRxISR_8BITCRC;
|
||
3582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNE and ERR interrupt */
|
||
3587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_RXNE | SPI_IT_ERR));
|
||
6708 .loc 1 3587 5
|
||
6709 0096 7B68 ldr r3, [r7, #4]
|
||
6710 0098 1B68 ldr r3, [r3]
|
||
6711 009a 5A68 ldr r2, [r3, #4]
|
||
6712 009c 7B68 ldr r3, [r7, #4]
|
||
6713 009e 1B68 ldr r3, [r3]
|
||
6714 00a0 22F06002 bic r2, r2, #96
|
||
6715 00a4 5A60 str r2, [r3, #4]
|
||
3588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
6716 .loc 1 3589 13
|
||
6717 00a6 7B68 ldr r3, [r7, #4]
|
||
6718 00a8 DB8F ldrh r3, [r3, #62] @ movhi
|
||
6719 00aa 9BB2 uxth r3, r3
|
||
6720 .loc 1 3589 8
|
||
6721 00ac 002B cmp r3, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 181
|
||
|
||
|
||
6722 00ae 02D1 bne .L331
|
||
3590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRxTx_ISR(hspi);
|
||
6723 .loc 1 3591 7
|
||
6724 00b0 7868 ldr r0, [r7, #4]
|
||
6725 00b2 FFF7FEFF bl SPI_CloseRxTx_ISR
|
||
6726 .L331:
|
||
3592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6727 .loc 1 3594 1
|
||
6728 00b6 00BF nop
|
||
6729 00b8 0837 adds r7, r7, #8
|
||
6730 .cfi_def_cfa_offset 8
|
||
6731 00ba BD46 mov sp, r7
|
||
6732 .cfi_def_cfa_register 13
|
||
6733 @ sp needed
|
||
6734 00bc 80BD pop {r7, pc}
|
||
6735 .cfi_endproc
|
||
6736 .LFE169:
|
||
6738 .section .text.SPI_2linesTxISR_8BIT,"ax",%progbits
|
||
6739 .align 1
|
||
6740 .syntax unified
|
||
6741 .thumb
|
||
6742 .thumb_func
|
||
6744 SPI_2linesTxISR_8BIT:
|
||
6745 .LFB170:
|
||
3595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Rx 8-bit handler for Transmit and Receive in Interrupt mode.
|
||
3599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_8BITCRC(struct __SPI_HandleTypeDef *hspi)
|
||
3604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
3606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
3607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
3609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
3610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC to flush Data Register */
|
||
3611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
3612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
3614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize--;
|
||
3616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check end of the reception */
|
||
3618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->CRCSize == 0U)
|
||
3619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNE and ERR interrupt */
|
||
3621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_RXNE | SPI_IT_ERR));
|
||
3622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
3624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 182
|
||
|
||
|
||
3625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRxTx_ISR(hspi);
|
||
3626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Tx 8-bit handler for Transmit and Receive in Interrupt mode.
|
||
3633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesTxISR_8BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6746 .loc 1 3638 1
|
||
6747 .cfi_startproc
|
||
6748 @ args = 0, pretend = 0, frame = 8
|
||
6749 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6750 0000 80B5 push {r7, lr}
|
||
6751 .cfi_def_cfa_offset 8
|
||
6752 .cfi_offset 7, -8
|
||
6753 .cfi_offset 14, -4
|
||
6754 0002 82B0 sub sp, sp, #8
|
||
6755 .cfi_def_cfa_offset 16
|
||
6756 0004 00AF add r7, sp, #0
|
||
6757 .cfi_def_cfa_register 7
|
||
6758 0006 7860 str r0, [r7, #4]
|
||
3639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in packing Bit mode */
|
||
3640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount >= 2U)
|
||
6759 .loc 1 3640 11
|
||
6760 0008 7B68 ldr r3, [r7, #4]
|
||
6761 000a DB8F ldrh r3, [r3, #62] @ movhi
|
||
6762 000c 9BB2 uxth r3, r3
|
||
6763 .loc 1 3640 6
|
||
6764 000e 012B cmp r3, #1
|
||
6765 0010 12D9 bls .L333
|
||
3641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
6766 .loc 1 3642 44
|
||
6767 0012 7B68 ldr r3, [r7, #4]
|
||
6768 0014 9B6B ldr r3, [r3, #56]
|
||
6769 .loc 1 3642 26
|
||
6770 0016 1A88 ldrh r2, [r3]
|
||
6771 .loc 1 3642 9
|
||
6772 0018 7B68 ldr r3, [r7, #4]
|
||
6773 001a 1B68 ldr r3, [r3]
|
||
6774 .loc 1 3642 24
|
||
6775 001c DA60 str r2, [r3, #12]
|
||
3643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
6776 .loc 1 3643 9
|
||
6777 001e 7B68 ldr r3, [r7, #4]
|
||
6778 0020 9B6B ldr r3, [r3, #56]
|
||
6779 .loc 1 3643 22
|
||
6780 0022 9A1C adds r2, r3, #2
|
||
6781 0024 7B68 ldr r3, [r7, #4]
|
||
6782 0026 9A63 str r2, [r3, #56]
|
||
3644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount -= 2U;
|
||
ARM GAS /tmp/ccs34gJO.s page 183
|
||
|
||
|
||
6783 .loc 1 3644 9
|
||
6784 0028 7B68 ldr r3, [r7, #4]
|
||
6785 002a DB8F ldrh r3, [r3, #62] @ movhi
|
||
6786 002c 9BB2 uxth r3, r3
|
||
6787 .loc 1 3644 23
|
||
6788 002e 023B subs r3, r3, #2
|
||
6789 0030 9AB2 uxth r2, r3
|
||
6790 0032 7B68 ldr r3, [r7, #4]
|
||
6791 0034 DA87 strh r2, [r3, #62] @ movhi
|
||
6792 0036 12E0 b .L334
|
||
6793 .L333:
|
||
3645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in 8 Bit mode */
|
||
3647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
3648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *(__IO uint8_t *)&hspi->Instance->DR = (*hspi->pTxBuffPtr);
|
||
6794 .loc 1 3649 50
|
||
6795 0038 7B68 ldr r3, [r7, #4]
|
||
6796 003a 9A6B ldr r2, [r3, #56]
|
||
6797 .loc 1 3649 27
|
||
6798 003c 7B68 ldr r3, [r7, #4]
|
||
6799 003e 1B68 ldr r3, [r3]
|
||
6800 .loc 1 3649 22
|
||
6801 0040 0C33 adds r3, r3, #12
|
||
6802 .loc 1 3649 45
|
||
6803 0042 1278 ldrb r2, [r2] @ zero_extendqisi2
|
||
6804 .loc 1 3649 42
|
||
6805 0044 1A70 strb r2, [r3]
|
||
3650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr++;
|
||
6806 .loc 1 3650 9
|
||
6807 0046 7B68 ldr r3, [r7, #4]
|
||
6808 0048 9B6B ldr r3, [r3, #56]
|
||
6809 .loc 1 3650 21
|
||
6810 004a 5A1C adds r2, r3, #1
|
||
6811 004c 7B68 ldr r3, [r7, #4]
|
||
6812 004e 9A63 str r2, [r3, #56]
|
||
3651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
6813 .loc 1 3651 9
|
||
6814 0050 7B68 ldr r3, [r7, #4]
|
||
6815 0052 DB8F ldrh r3, [r3, #62] @ movhi
|
||
6816 0054 9BB2 uxth r3, r3
|
||
6817 .loc 1 3651 22
|
||
6818 0056 013B subs r3, r3, #1
|
||
6819 0058 9AB2 uxth r2, r3
|
||
6820 005a 7B68 ldr r3, [r7, #4]
|
||
6821 005c DA87 strh r2, [r3, #62] @ movhi
|
||
6822 .L334:
|
||
3652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transmission */
|
||
3655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
6823 .loc 1 3655 11
|
||
6824 005e 7B68 ldr r3, [r7, #4]
|
||
6825 0060 DB8F ldrh r3, [r3, #62] @ movhi
|
||
6826 0062 9BB2 uxth r3, r3
|
||
6827 .loc 1 3655 6
|
||
6828 0064 002B cmp r3, #0
|
||
ARM GAS /tmp/ccs34gJO.s page 184
|
||
|
||
|
||
6829 0066 10D1 bne .L336
|
||
3656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set CRC Next Bit to send CRC */
|
||
3661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
3662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE interrupt */
|
||
3663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_TXE);
|
||
3664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE interrupt */
|
||
3669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_TXE);
|
||
6830 .loc 1 3669 5
|
||
6831 0068 7B68 ldr r3, [r7, #4]
|
||
6832 006a 1B68 ldr r3, [r3]
|
||
6833 006c 5A68 ldr r2, [r3, #4]
|
||
6834 006e 7B68 ldr r3, [r7, #4]
|
||
6835 0070 1B68 ldr r3, [r3]
|
||
6836 0072 22F08002 bic r2, r2, #128
|
||
6837 0076 5A60 str r2, [r3, #4]
|
||
3670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 0U)
|
||
6838 .loc 1 3671 13
|
||
6839 0078 7B68 ldr r3, [r7, #4]
|
||
6840 007a B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6841 007e 9BB2 uxth r3, r3
|
||
6842 .loc 1 3671 8
|
||
6843 0080 002B cmp r3, #0
|
||
6844 0082 02D1 bne .L336
|
||
3672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRxTx_ISR(hspi);
|
||
6845 .loc 1 3673 7
|
||
6846 0084 7868 ldr r0, [r7, #4]
|
||
6847 0086 FFF7FEFF bl SPI_CloseRxTx_ISR
|
||
6848 .L336:
|
||
3674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6849 .loc 1 3676 1
|
||
6850 008a 00BF nop
|
||
6851 008c 0837 adds r7, r7, #8
|
||
6852 .cfi_def_cfa_offset 8
|
||
6853 008e BD46 mov sp, r7
|
||
6854 .cfi_def_cfa_register 13
|
||
6855 @ sp needed
|
||
6856 0090 80BD pop {r7, pc}
|
||
6857 .cfi_endproc
|
||
6858 .LFE170:
|
||
6860 .section .text.SPI_2linesRxISR_16BIT,"ax",%progbits
|
||
6861 .align 1
|
||
6862 .syntax unified
|
||
6863 .thumb
|
||
6864 .thumb_func
|
||
6866 SPI_2linesRxISR_16BIT:
|
||
ARM GAS /tmp/ccs34gJO.s page 185
|
||
|
||
|
||
6867 .LFB171:
|
||
3677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Rx 16-bit handler for Transmit and Receive in Interrupt mode.
|
||
3680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_16BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6868 .loc 1 3685 1
|
||
6869 .cfi_startproc
|
||
6870 @ args = 0, pretend = 0, frame = 8
|
||
6871 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6872 0000 80B5 push {r7, lr}
|
||
6873 .cfi_def_cfa_offset 8
|
||
6874 .cfi_offset 7, -8
|
||
6875 .cfi_offset 14, -4
|
||
6876 0002 82B0 sub sp, sp, #8
|
||
6877 .cfi_def_cfa_offset 16
|
||
6878 0004 00AF add r7, sp, #0
|
||
6879 .cfi_def_cfa_register 7
|
||
6880 0006 7860 str r0, [r7, #4]
|
||
3686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Receive data in 16 Bit mode */
|
||
3687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)(hspi->Instance->DR);
|
||
6881 .loc 1 3687 52
|
||
6882 0008 7B68 ldr r3, [r7, #4]
|
||
6883 000a 1B68 ldr r3, [r3]
|
||
6884 .loc 1 3687 62
|
||
6885 000c DA68 ldr r2, [r3, #12]
|
||
6886 .loc 1 3687 21
|
||
6887 000e 7B68 ldr r3, [r7, #4]
|
||
6888 0010 1B6C ldr r3, [r3, #64]
|
||
6889 .loc 1 3687 37
|
||
6890 0012 92B2 uxth r2, r2
|
||
6891 .loc 1 3687 35
|
||
6892 0014 1A80 strh r2, [r3] @ movhi
|
||
3688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint16_t);
|
||
6893 .loc 1 3688 7
|
||
6894 0016 7B68 ldr r3, [r7, #4]
|
||
6895 0018 1B6C ldr r3, [r3, #64]
|
||
6896 .loc 1 3688 20
|
||
6897 001a 9A1C adds r2, r3, #2
|
||
6898 001c 7B68 ldr r3, [r7, #4]
|
||
6899 001e 1A64 str r2, [r3, #64]
|
||
3689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
6900 .loc 1 3689 7
|
||
6901 0020 7B68 ldr r3, [r7, #4]
|
||
6902 0022 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6903 0026 9BB2 uxth r3, r3
|
||
6904 .loc 1 3689 20
|
||
6905 0028 013B subs r3, r3, #1
|
||
6906 002a 9AB2 uxth r2, r3
|
||
6907 002c 7B68 ldr r3, [r7, #4]
|
||
6908 002e A3F84620 strh r2, [r3, #70] @ movhi
|
||
3690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 0U)
|
||
ARM GAS /tmp/ccs34gJO.s page 186
|
||
|
||
|
||
6909 .loc 1 3691 11
|
||
6910 0032 7B68 ldr r3, [r7, #4]
|
||
6911 0034 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
6912 0038 9BB2 uxth r3, r3
|
||
6913 .loc 1 3691 6
|
||
6914 003a 002B cmp r3, #0
|
||
6915 003c 0FD1 bne .L339
|
||
3692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_2linesRxISR_16BITCRC;
|
||
3697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNE interrupt */
|
||
3702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_RXNE);
|
||
6916 .loc 1 3702 5
|
||
6917 003e 7B68 ldr r3, [r7, #4]
|
||
6918 0040 1B68 ldr r3, [r3]
|
||
6919 0042 5A68 ldr r2, [r3, #4]
|
||
6920 0044 7B68 ldr r3, [r7, #4]
|
||
6921 0046 1B68 ldr r3, [r3]
|
||
6922 0048 22F04002 bic r2, r2, #64
|
||
6923 004c 5A60 str r2, [r3, #4]
|
||
3703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
6924 .loc 1 3704 13
|
||
6925 004e 7B68 ldr r3, [r7, #4]
|
||
6926 0050 DB8F ldrh r3, [r3, #62] @ movhi
|
||
6927 0052 9BB2 uxth r3, r3
|
||
6928 .loc 1 3704 8
|
||
6929 0054 002B cmp r3, #0
|
||
6930 0056 02D1 bne .L339
|
||
3705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRxTx_ISR(hspi);
|
||
6931 .loc 1 3706 7
|
||
6932 0058 7868 ldr r0, [r7, #4]
|
||
6933 005a FFF7FEFF bl SPI_CloseRxTx_ISR
|
||
6934 .L339:
|
||
3707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
6935 .loc 1 3709 1
|
||
6936 005e 00BF nop
|
||
6937 0060 0837 adds r7, r7, #8
|
||
6938 .cfi_def_cfa_offset 8
|
||
6939 0062 BD46 mov sp, r7
|
||
6940 .cfi_def_cfa_register 13
|
||
6941 @ sp needed
|
||
6942 0064 80BD pop {r7, pc}
|
||
6943 .cfi_endproc
|
||
6944 .LFE171:
|
||
6946 .section .text.SPI_2linesTxISR_16BIT,"ax",%progbits
|
||
6947 .align 1
|
||
6948 .syntax unified
|
||
ARM GAS /tmp/ccs34gJO.s page 187
|
||
|
||
|
||
6949 .thumb
|
||
6950 .thumb_func
|
||
6952 SPI_2linesTxISR_16BIT:
|
||
6953 .LFB172:
|
||
3710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Manage the CRC 16-bit receive for Transmit and Receive in Interrupt mode.
|
||
3714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesRxISR_16BITCRC(struct __SPI_HandleTypeDef *hspi)
|
||
3719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t tmpreg = 0U;
|
||
3721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 16bit CRC to flush Data Register */
|
||
3723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg = READ_REG(hspi->Instance->DR);
|
||
3724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg);
|
||
3726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNE interrupt */
|
||
3728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_RXNE);
|
||
3729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRxTx_ISR(hspi);
|
||
3731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Tx 16-bit handler for Transmit and Receive in Interrupt mode.
|
||
3736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_2linesTxISR_16BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
6954 .loc 1 3741 1
|
||
6955 .cfi_startproc
|
||
6956 @ args = 0, pretend = 0, frame = 8
|
||
6957 @ frame_needed = 1, uses_anonymous_args = 0
|
||
6958 0000 80B5 push {r7, lr}
|
||
6959 .cfi_def_cfa_offset 8
|
||
6960 .cfi_offset 7, -8
|
||
6961 .cfi_offset 14, -4
|
||
6962 0002 82B0 sub sp, sp, #8
|
||
6963 .cfi_def_cfa_offset 16
|
||
6964 0004 00AF add r7, sp, #0
|
||
6965 .cfi_def_cfa_register 7
|
||
6966 0006 7860 str r0, [r7, #4]
|
||
3742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in 16 Bit mode */
|
||
3743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
6967 .loc 1 3743 42
|
||
6968 0008 7B68 ldr r3, [r7, #4]
|
||
6969 000a 9B6B ldr r3, [r3, #56]
|
||
6970 .loc 1 3743 24
|
||
6971 000c 1A88 ldrh r2, [r3]
|
||
6972 .loc 1 3743 7
|
||
ARM GAS /tmp/ccs34gJO.s page 188
|
||
|
||
|
||
6973 000e 7B68 ldr r3, [r7, #4]
|
||
6974 0010 1B68 ldr r3, [r3]
|
||
6975 .loc 1 3743 22
|
||
6976 0012 DA60 str r2, [r3, #12]
|
||
3744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
6977 .loc 1 3744 7
|
||
6978 0014 7B68 ldr r3, [r7, #4]
|
||
6979 0016 9B6B ldr r3, [r3, #56]
|
||
6980 .loc 1 3744 20
|
||
6981 0018 9A1C adds r2, r3, #2
|
||
6982 001a 7B68 ldr r3, [r7, #4]
|
||
6983 001c 9A63 str r2, [r3, #56]
|
||
3745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
6984 .loc 1 3745 7
|
||
6985 001e 7B68 ldr r3, [r7, #4]
|
||
6986 0020 DB8F ldrh r3, [r3, #62] @ movhi
|
||
6987 0022 9BB2 uxth r3, r3
|
||
6988 .loc 1 3745 20
|
||
6989 0024 013B subs r3, r3, #1
|
||
6990 0026 9AB2 uxth r2, r3
|
||
6991 0028 7B68 ldr r3, [r7, #4]
|
||
6992 002a DA87 strh r2, [r3, #62] @ movhi
|
||
3746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
3748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
6993 .loc 1 3748 11
|
||
6994 002c 7B68 ldr r3, [r7, #4]
|
||
6995 002e DB8F ldrh r3, [r3, #62] @ movhi
|
||
6996 0030 9BB2 uxth r3, r3
|
||
6997 .loc 1 3748 6
|
||
6998 0032 002B cmp r3, #0
|
||
6999 0034 10D1 bne .L342
|
||
3749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Set CRC Next Bit to send CRC */
|
||
3754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
3755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE interrupt */
|
||
3756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_TXE);
|
||
3757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE interrupt */
|
||
3762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_TXE);
|
||
7000 .loc 1 3762 5
|
||
7001 0036 7B68 ldr r3, [r7, #4]
|
||
7002 0038 1B68 ldr r3, [r3]
|
||
7003 003a 5A68 ldr r2, [r3, #4]
|
||
7004 003c 7B68 ldr r3, [r7, #4]
|
||
7005 003e 1B68 ldr r3, [r3]
|
||
7006 0040 22F08002 bic r2, r2, #128
|
||
7007 0044 5A60 str r2, [r3, #4]
|
||
3763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 0U)
|
||
7008 .loc 1 3764 13
|
||
ARM GAS /tmp/ccs34gJO.s page 189
|
||
|
||
|
||
7009 0046 7B68 ldr r3, [r7, #4]
|
||
7010 0048 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
7011 004c 9BB2 uxth r3, r3
|
||
7012 .loc 1 3764 8
|
||
7013 004e 002B cmp r3, #0
|
||
7014 0050 02D1 bne .L342
|
||
3765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRxTx_ISR(hspi);
|
||
7015 .loc 1 3766 7
|
||
7016 0052 7868 ldr r0, [r7, #4]
|
||
7017 0054 FFF7FEFF bl SPI_CloseRxTx_ISR
|
||
7018 .L342:
|
||
3767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7019 .loc 1 3769 1
|
||
7020 0058 00BF nop
|
||
7021 005a 0837 adds r7, r7, #8
|
||
7022 .cfi_def_cfa_offset 8
|
||
7023 005c BD46 mov sp, r7
|
||
7024 .cfi_def_cfa_register 13
|
||
7025 @ sp needed
|
||
7026 005e 80BD pop {r7, pc}
|
||
7027 .cfi_endproc
|
||
7028 .LFE172:
|
||
7030 .section .text.SPI_RxISR_8BIT,"ax",%progbits
|
||
7031 .align 1
|
||
7032 .syntax unified
|
||
7033 .thumb
|
||
7034 .thumb_func
|
||
7036 SPI_RxISR_8BIT:
|
||
7037 .LFB173:
|
||
3770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Manage the CRC 8-bit receive in Interrupt context.
|
||
3774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_8BITCRC(struct __SPI_HandleTypeDef *hspi)
|
||
3779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
3781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
3782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
3784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
3785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 8bit CRC to flush Data Register */
|
||
3786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
3787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
3789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->CRCSize--;
|
||
3791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->CRCSize == 0U)
|
||
3793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRx_ISR(hspi);
|
||
ARM GAS /tmp/ccs34gJO.s page 190
|
||
|
||
|
||
3795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Manage the receive 8-bit in Interrupt context.
|
||
3801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_8BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7038 .loc 1 3806 1
|
||
7039 .cfi_startproc
|
||
7040 @ args = 0, pretend = 0, frame = 8
|
||
7041 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7042 0000 80B5 push {r7, lr}
|
||
7043 .cfi_def_cfa_offset 8
|
||
7044 .cfi_offset 7, -8
|
||
7045 .cfi_offset 14, -4
|
||
7046 0002 82B0 sub sp, sp, #8
|
||
7047 .cfi_def_cfa_offset 16
|
||
7048 0004 00AF add r7, sp, #0
|
||
7049 .cfi_def_cfa_register 7
|
||
7050 0006 7860 str r0, [r7, #4]
|
||
3807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *hspi->pRxBuffPtr = (*(__IO uint8_t *)&hspi->Instance->DR);
|
||
7051 .loc 1 3807 46
|
||
7052 0008 7B68 ldr r3, [r7, #4]
|
||
7053 000a 1B68 ldr r3, [r3]
|
||
7054 .loc 1 3807 41
|
||
7055 000c 03F10C02 add r2, r3, #12
|
||
7056 .loc 1 3807 8
|
||
7057 0010 7B68 ldr r3, [r7, #4]
|
||
7058 0012 1B6C ldr r3, [r3, #64]
|
||
7059 .loc 1 3807 24
|
||
7060 0014 1278 ldrb r2, [r2]
|
||
7061 0016 D2B2 uxtb r2, r2
|
||
7062 .loc 1 3807 21
|
||
7063 0018 1A70 strb r2, [r3]
|
||
3808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr++;
|
||
7064 .loc 1 3808 7
|
||
7065 001a 7B68 ldr r3, [r7, #4]
|
||
7066 001c 1B6C ldr r3, [r3, #64]
|
||
7067 .loc 1 3808 19
|
||
7068 001e 5A1C adds r2, r3, #1
|
||
7069 0020 7B68 ldr r3, [r7, #4]
|
||
7070 0022 1A64 str r2, [r3, #64]
|
||
3809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
7071 .loc 1 3809 7
|
||
7072 0024 7B68 ldr r3, [r7, #4]
|
||
7073 0026 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
7074 002a 9BB2 uxth r3, r3
|
||
7075 .loc 1 3809 20
|
||
7076 002c 013B subs r3, r3, #1
|
||
7077 002e 9AB2 uxth r2, r3
|
||
7078 0030 7B68 ldr r3, [r7, #4]
|
||
7079 0032 A3F84620 strh r2, [r3, #70] @ movhi
|
||
ARM GAS /tmp/ccs34gJO.s page 191
|
||
|
||
|
||
3810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
3813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->RxXferCount == 1U) && (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE))
|
||
3814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
3816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 0U)
|
||
7080 .loc 1 3819 11
|
||
7081 0036 7B68 ldr r3, [r7, #4]
|
||
7082 0038 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
7083 003c 9BB2 uxth r3, r3
|
||
7084 .loc 1 3819 6
|
||
7085 003e 002B cmp r3, #0
|
||
7086 0040 02D1 bne .L345
|
||
3820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_RxISR_8BITCRC;
|
||
3825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRx_ISR(hspi);
|
||
7087 .loc 1 3828 5
|
||
7088 0042 7868 ldr r0, [r7, #4]
|
||
7089 0044 FFF7FEFF bl SPI_CloseRx_ISR
|
||
7090 .L345:
|
||
3829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7091 .loc 1 3830 1
|
||
7092 0048 00BF nop
|
||
7093 004a 0837 adds r7, r7, #8
|
||
7094 .cfi_def_cfa_offset 8
|
||
7095 004c BD46 mov sp, r7
|
||
7096 .cfi_def_cfa_register 13
|
||
7097 @ sp needed
|
||
7098 004e 80BD pop {r7, pc}
|
||
7099 .cfi_endproc
|
||
7100 .LFE173:
|
||
7102 .section .text.SPI_RxISR_16BIT,"ax",%progbits
|
||
7103 .align 1
|
||
7104 .syntax unified
|
||
7105 .thumb
|
||
7106 .thumb_func
|
||
7108 SPI_RxISR_16BIT:
|
||
7109 .LFB174:
|
||
3831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Manage the CRC 16-bit receive in Interrupt context.
|
||
3835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
ARM GAS /tmp/ccs34gJO.s page 192
|
||
|
||
|
||
3839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_16BITCRC(struct __SPI_HandleTypeDef *hspi)
|
||
3840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t tmpreg = 0U;
|
||
3842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Read 16bit CRC to flush Data Register */
|
||
3844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg = READ_REG(hspi->Instance->DR);
|
||
3845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
3846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg);
|
||
3847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNE and ERR interrupt */
|
||
3849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_RXNE | SPI_IT_ERR));
|
||
3850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRx_ISR(hspi);
|
||
3852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Manage the 16-bit receive in Interrupt context.
|
||
3857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_RxISR_16BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7110 .loc 1 3862 1
|
||
7111 .cfi_startproc
|
||
7112 @ args = 0, pretend = 0, frame = 8
|
||
7113 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7114 0000 80B5 push {r7, lr}
|
||
7115 .cfi_def_cfa_offset 8
|
||
7116 .cfi_offset 7, -8
|
||
7117 .cfi_offset 14, -4
|
||
7118 0002 82B0 sub sp, sp, #8
|
||
7119 .cfi_def_cfa_offset 16
|
||
7120 0004 00AF add r7, sp, #0
|
||
7121 .cfi_def_cfa_register 7
|
||
7122 0006 7860 str r0, [r7, #4]
|
||
3863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *((uint16_t *)hspi->pRxBuffPtr) = (uint16_t)(hspi->Instance->DR);
|
||
7123 .loc 1 3863 52
|
||
7124 0008 7B68 ldr r3, [r7, #4]
|
||
7125 000a 1B68 ldr r3, [r3]
|
||
7126 .loc 1 3863 62
|
||
7127 000c DA68 ldr r2, [r3, #12]
|
||
7128 .loc 1 3863 21
|
||
7129 000e 7B68 ldr r3, [r7, #4]
|
||
7130 0010 1B6C ldr r3, [r3, #64]
|
||
7131 .loc 1 3863 37
|
||
7132 0012 92B2 uxth r2, r2
|
||
7133 .loc 1 3863 35
|
||
7134 0014 1A80 strh r2, [r3] @ movhi
|
||
3864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pRxBuffPtr += sizeof(uint16_t);
|
||
7135 .loc 1 3864 7
|
||
7136 0016 7B68 ldr r3, [r7, #4]
|
||
7137 0018 1B6C ldr r3, [r3, #64]
|
||
7138 .loc 1 3864 20
|
||
7139 001a 9A1C adds r2, r3, #2
|
||
7140 001c 7B68 ldr r3, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 193
|
||
|
||
|
||
7141 001e 1A64 str r2, [r3, #64]
|
||
3865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxXferCount--;
|
||
7142 .loc 1 3865 7
|
||
7143 0020 7B68 ldr r3, [r7, #4]
|
||
7144 0022 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
7145 0026 9BB2 uxth r3, r3
|
||
7146 .loc 1 3865 20
|
||
7147 0028 013B subs r3, r3, #1
|
||
7148 002a 9AB2 uxth r2, r3
|
||
7149 002c 7B68 ldr r3, [r7, #4]
|
||
7150 002e A3F84620 strh r2, [r3, #70] @ movhi
|
||
3866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
3869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->RxXferCount == 1U) && (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE))
|
||
3870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
3872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->RxXferCount == 0U)
|
||
7151 .loc 1 3875 11
|
||
7152 0032 7B68 ldr r3, [r7, #4]
|
||
7153 0034 B3F84630 ldrh r3, [r3, #70] @ movhi
|
||
7154 0038 9BB2 uxth r3, r3
|
||
7155 .loc 1 3875 6
|
||
7156 003a 002B cmp r3, #0
|
||
7157 003c 02D1 bne .L348
|
||
3876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxISR = SPI_RxISR_16BITCRC;
|
||
3881:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return;
|
||
3882:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3883:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3884:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseRx_ISR(hspi);
|
||
7158 .loc 1 3884 5
|
||
7159 003e 7868 ldr r0, [r7, #4]
|
||
7160 0040 FFF7FEFF bl SPI_CloseRx_ISR
|
||
7161 .L348:
|
||
3885:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3886:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7162 .loc 1 3886 1
|
||
7163 0044 00BF nop
|
||
7164 0046 0837 adds r7, r7, #8
|
||
7165 .cfi_def_cfa_offset 8
|
||
7166 0048 BD46 mov sp, r7
|
||
7167 .cfi_def_cfa_register 13
|
||
7168 @ sp needed
|
||
7169 004a 80BD pop {r7, pc}
|
||
7170 .cfi_endproc
|
||
7171 .LFE174:
|
||
7173 .section .text.SPI_TxISR_8BIT,"ax",%progbits
|
||
7174 .align 1
|
||
7175 .syntax unified
|
||
7176 .thumb
|
||
ARM GAS /tmp/ccs34gJO.s page 194
|
||
|
||
|
||
7177 .thumb_func
|
||
7179 SPI_TxISR_8BIT:
|
||
7180 .LFB175:
|
||
3887:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3888:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3889:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the data 8-bit transmit in Interrupt mode.
|
||
3890:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3891:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3892:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3893:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3894:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_TxISR_8BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3895:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7181 .loc 1 3895 1
|
||
7182 .cfi_startproc
|
||
7183 @ args = 0, pretend = 0, frame = 8
|
||
7184 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7185 0000 80B5 push {r7, lr}
|
||
7186 .cfi_def_cfa_offset 8
|
||
7187 .cfi_offset 7, -8
|
||
7188 .cfi_offset 14, -4
|
||
7189 0002 82B0 sub sp, sp, #8
|
||
7190 .cfi_def_cfa_offset 16
|
||
7191 0004 00AF add r7, sp, #0
|
||
7192 .cfi_def_cfa_register 7
|
||
7193 0006 7860 str r0, [r7, #4]
|
||
3896:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** *(__IO uint8_t *)&hspi->Instance->DR = (*hspi->pTxBuffPtr);
|
||
7194 .loc 1 3896 48
|
||
7195 0008 7B68 ldr r3, [r7, #4]
|
||
7196 000a 9A6B ldr r2, [r3, #56]
|
||
7197 .loc 1 3896 25
|
||
7198 000c 7B68 ldr r3, [r7, #4]
|
||
7199 000e 1B68 ldr r3, [r3]
|
||
7200 .loc 1 3896 20
|
||
7201 0010 0C33 adds r3, r3, #12
|
||
7202 .loc 1 3896 43
|
||
7203 0012 1278 ldrb r2, [r2] @ zero_extendqisi2
|
||
7204 .loc 1 3896 40
|
||
7205 0014 1A70 strb r2, [r3]
|
||
3897:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr++;
|
||
7206 .loc 1 3897 7
|
||
7207 0016 7B68 ldr r3, [r7, #4]
|
||
7208 0018 9B6B ldr r3, [r3, #56]
|
||
7209 .loc 1 3897 19
|
||
7210 001a 5A1C adds r2, r3, #1
|
||
7211 001c 7B68 ldr r3, [r7, #4]
|
||
7212 001e 9A63 str r2, [r3, #56]
|
||
3898:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
7213 .loc 1 3898 7
|
||
7214 0020 7B68 ldr r3, [r7, #4]
|
||
7215 0022 DB8F ldrh r3, [r3, #62] @ movhi
|
||
7216 0024 9BB2 uxth r3, r3
|
||
7217 .loc 1 3898 20
|
||
7218 0026 013B subs r3, r3, #1
|
||
7219 0028 9AB2 uxth r2, r3
|
||
7220 002a 7B68 ldr r3, [r7, #4]
|
||
7221 002c DA87 strh r2, [r3, #62] @ movhi
|
||
3899:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
ARM GAS /tmp/ccs34gJO.s page 195
|
||
|
||
|
||
3900:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
7222 .loc 1 3900 11
|
||
7223 002e 7B68 ldr r3, [r7, #4]
|
||
7224 0030 DB8F ldrh r3, [r3, #62] @ movhi
|
||
7225 0032 9BB2 uxth r3, r3
|
||
7226 .loc 1 3900 6
|
||
7227 0034 002B cmp r3, #0
|
||
7228 0036 02D1 bne .L351
|
||
3901:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3902:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3903:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3904:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3905:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
3906:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
3907:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3908:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3909:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseTx_ISR(hspi);
|
||
7229 .loc 1 3909 5
|
||
7230 0038 7868 ldr r0, [r7, #4]
|
||
7231 003a FFF7FEFF bl SPI_CloseTx_ISR
|
||
7232 .L351:
|
||
3910:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3911:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7233 .loc 1 3911 1
|
||
7234 003e 00BF nop
|
||
7235 0040 0837 adds r7, r7, #8
|
||
7236 .cfi_def_cfa_offset 8
|
||
7237 0042 BD46 mov sp, r7
|
||
7238 .cfi_def_cfa_register 13
|
||
7239 @ sp needed
|
||
7240 0044 80BD pop {r7, pc}
|
||
7241 .cfi_endproc
|
||
7242 .LFE175:
|
||
7244 .section .text.SPI_TxISR_16BIT,"ax",%progbits
|
||
7245 .align 1
|
||
7246 .syntax unified
|
||
7247 .thumb
|
||
7248 .thumb_func
|
||
7250 SPI_TxISR_16BIT:
|
||
7251 .LFB176:
|
||
3912:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3913:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3914:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the data 16-bit transmit in Interrupt mode.
|
||
3915:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3916:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3917:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
3918:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3919:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_TxISR_16BIT(struct __SPI_HandleTypeDef *hspi)
|
||
3920:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7252 .loc 1 3920 1
|
||
7253 .cfi_startproc
|
||
7254 @ args = 0, pretend = 0, frame = 8
|
||
7255 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7256 0000 80B5 push {r7, lr}
|
||
7257 .cfi_def_cfa_offset 8
|
||
7258 .cfi_offset 7, -8
|
||
7259 .cfi_offset 14, -4
|
||
ARM GAS /tmp/ccs34gJO.s page 196
|
||
|
||
|
||
7260 0002 82B0 sub sp, sp, #8
|
||
7261 .cfi_def_cfa_offset 16
|
||
7262 0004 00AF add r7, sp, #0
|
||
7263 .cfi_def_cfa_register 7
|
||
7264 0006 7860 str r0, [r7, #4]
|
||
3921:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Transmit data in 16 Bit mode */
|
||
3922:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->Instance->DR = *((uint16_t *)hspi->pTxBuffPtr);
|
||
7265 .loc 1 3922 42
|
||
7266 0008 7B68 ldr r3, [r7, #4]
|
||
7267 000a 9B6B ldr r3, [r3, #56]
|
||
7268 .loc 1 3922 24
|
||
7269 000c 1A88 ldrh r2, [r3]
|
||
7270 .loc 1 3922 7
|
||
7271 000e 7B68 ldr r3, [r7, #4]
|
||
7272 0010 1B68 ldr r3, [r3]
|
||
7273 .loc 1 3922 22
|
||
7274 0012 DA60 str r2, [r3, #12]
|
||
3923:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->pTxBuffPtr += sizeof(uint16_t);
|
||
7275 .loc 1 3923 7
|
||
7276 0014 7B68 ldr r3, [r7, #4]
|
||
7277 0016 9B6B ldr r3, [r3, #56]
|
||
7278 .loc 1 3923 20
|
||
7279 0018 9A1C adds r2, r3, #2
|
||
7280 001a 7B68 ldr r3, [r7, #4]
|
||
7281 001c 9A63 str r2, [r3, #56]
|
||
3924:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxXferCount--;
|
||
7282 .loc 1 3924 7
|
||
7283 001e 7B68 ldr r3, [r7, #4]
|
||
7284 0020 DB8F ldrh r3, [r3, #62] @ movhi
|
||
7285 0022 9BB2 uxth r3, r3
|
||
7286 .loc 1 3924 20
|
||
7287 0024 013B subs r3, r3, #1
|
||
7288 0026 9AB2 uxth r2, r3
|
||
7289 0028 7B68 ldr r3, [r7, #4]
|
||
7290 002a DA87 strh r2, [r3, #62] @ movhi
|
||
3925:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3926:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->TxXferCount == 0U)
|
||
7291 .loc 1 3926 11
|
||
7292 002c 7B68 ldr r3, [r7, #4]
|
||
7293 002e DB8F ldrh r3, [r3, #62] @ movhi
|
||
7294 0030 9BB2 uxth r3, r3
|
||
7295 .loc 1 3926 6
|
||
7296 0032 002B cmp r3, #0
|
||
7297 0034 02D1 bne .L354
|
||
3927:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3928:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
3929:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
3930:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3931:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Enable CRC Transmission */
|
||
3932:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->Instance->CR1, SPI_CR1_CRCNEXT);
|
||
3933:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3934:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
3935:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_CloseTx_ISR(hspi);
|
||
7298 .loc 1 3935 5
|
||
7299 0036 7868 ldr r0, [r7, #4]
|
||
7300 0038 FFF7FEFF bl SPI_CloseTx_ISR
|
||
7301 .L354:
|
||
ARM GAS /tmp/ccs34gJO.s page 197
|
||
|
||
|
||
3936:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3937:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7302 .loc 1 3937 1
|
||
7303 003c 00BF nop
|
||
7304 003e 0837 adds r7, r7, #8
|
||
7305 .cfi_def_cfa_offset 8
|
||
7306 0040 BD46 mov sp, r7
|
||
7307 .cfi_def_cfa_register 13
|
||
7308 @ sp needed
|
||
7309 0042 80BD pop {r7, pc}
|
||
7310 .cfi_endproc
|
||
7311 .LFE176:
|
||
7313 .section .text.SPI_WaitFlagStateUntilTimeout,"ax",%progbits
|
||
7314 .align 1
|
||
7315 .syntax unified
|
||
7316 .thumb
|
||
7317 .thumb_func
|
||
7319 SPI_WaitFlagStateUntilTimeout:
|
||
7320 .LFB177:
|
||
3938:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3939:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
3940:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle SPI Communication Timeout.
|
||
3941:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
3942:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
3943:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Flag SPI flag to check
|
||
3944:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param State flag state to check
|
||
3945:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
3946:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Tickstart tick start value
|
||
3947:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
3948:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
3949:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_WaitFlagStateUntilTimeout(SPI_HandleTypeDef *hspi, uint32_t Flag, Flag
|
||
3950:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t Timeout, uint32_t Tickstart)
|
||
3951:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7321 .loc 1 3951 1
|
||
7322 .cfi_startproc
|
||
7323 @ args = 4, pretend = 0, frame = 32
|
||
7324 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7325 0000 80B5 push {r7, lr}
|
||
7326 .cfi_def_cfa_offset 8
|
||
7327 .cfi_offset 7, -8
|
||
7328 .cfi_offset 14, -4
|
||
7329 0002 88B0 sub sp, sp, #32
|
||
7330 .cfi_def_cfa_offset 40
|
||
7331 0004 00AF add r7, sp, #0
|
||
7332 .cfi_def_cfa_register 7
|
||
7333 0006 F860 str r0, [r7, #12]
|
||
7334 0008 B960 str r1, [r7, #8]
|
||
7335 000a 3B60 str r3, [r7]
|
||
7336 000c 1346 mov r3, r2
|
||
7337 000e FB71 strb r3, [r7, #7]
|
||
3952:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t count;
|
||
3953:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_timeout;
|
||
3954:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_tickstart;
|
||
3955:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3956:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Adjust Timeout value in case of end of transfer */
|
||
3957:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_timeout = Timeout - (HAL_GetTick() - Tickstart);
|
||
7338 .loc 1 3957 30
|
||
ARM GAS /tmp/ccs34gJO.s page 198
|
||
|
||
|
||
7339 0010 FFF7FEFF bl HAL_GetTick
|
||
7340 0014 0246 mov r2, r0
|
||
7341 .loc 1 3957 44 discriminator 1
|
||
7342 0016 BB6A ldr r3, [r7, #40]
|
||
7343 0018 9B1A subs r3, r3, r2
|
||
7344 .loc 1 3957 17 discriminator 1
|
||
7345 001a 3A68 ldr r2, [r7]
|
||
7346 001c 1344 add r3, r3, r2
|
||
7347 001e FB61 str r3, [r7, #28]
|
||
3958:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_tickstart = HAL_GetTick();
|
||
7348 .loc 1 3958 19
|
||
7349 0020 FFF7FEFF bl HAL_GetTick
|
||
7350 0024 B861 str r0, [r7, #24]
|
||
3959:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3960:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Calculate Timeout based on a software loop to avoid blocking issue if Systick is disabled */
|
||
3961:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = tmp_timeout * ((SystemCoreClock * 32U) >> 20U);
|
||
7351 .loc 1 3961 43
|
||
7352 0026 394B ldr r3, .L366
|
||
7353 0028 1B68 ldr r3, [r3]
|
||
7354 002a 5B01 lsls r3, r3, #5
|
||
7355 .loc 1 3961 50
|
||
7356 002c 1B0D lsrs r3, r3, #20
|
||
7357 .loc 1 3961 23
|
||
7358 002e FA69 ldr r2, [r7, #28]
|
||
7359 0030 02FB03F3 mul r3, r2, r3
|
||
7360 .loc 1 3961 9
|
||
7361 0034 7B61 str r3, [r7, #20]
|
||
3962:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while ((__HAL_SPI_GET_FLAG(hspi, Flag) ? SET : RESET) != State)
|
||
7362 .loc 1 3963 9
|
||
7363 0036 54E0 b .L357
|
||
7364 .L365:
|
||
3964:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3965:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (Timeout != HAL_MAX_DELAY)
|
||
7365 .loc 1 3965 8
|
||
7366 0038 3B68 ldr r3, [r7]
|
||
7367 003a B3F1FF3F cmp r3, #-1
|
||
7368 003e 50D0 beq .L357
|
||
3966:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3967:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (((HAL_GetTick() - tmp_tickstart) >= tmp_timeout) || (tmp_timeout == 0U))
|
||
7369 .loc 1 3967 13
|
||
7370 0040 FFF7FEFF bl HAL_GetTick
|
||
7371 0044 0246 mov r2, r0
|
||
7372 .loc 1 3967 27 discriminator 1
|
||
7373 0046 BB69 ldr r3, [r7, #24]
|
||
7374 0048 D31A subs r3, r2, r3
|
||
7375 .loc 1 3967 10 discriminator 1
|
||
7376 004a FA69 ldr r2, [r7, #28]
|
||
7377 004c 9A42 cmp r2, r3
|
||
7378 004e 02D9 bls .L358
|
||
7379 .loc 1 3967 60 discriminator 1
|
||
7380 0050 FB69 ldr r3, [r7, #28]
|
||
7381 0052 002B cmp r3, #0
|
||
7382 0054 3DD1 bne .L359
|
||
7383 .L358:
|
||
3968:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3969:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI and reset the CRC: the CRC value should be cleared
|
||
ARM GAS /tmp/ccs34gJO.s page 199
|
||
|
||
|
||
3970:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** on both master and slave sides in order to resynchronize the master
|
||
3971:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and slave for their respective CRC calculation */
|
||
3972:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3973:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE, RXNE and ERR interrupts for the interrupt process */
|
||
3974:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_TXE | SPI_IT_RXNE | SPI_IT_ERR));
|
||
7384 .loc 1 3974 9
|
||
7385 0056 FB68 ldr r3, [r7, #12]
|
||
7386 0058 1B68 ldr r3, [r3]
|
||
7387 005a 5A68 ldr r2, [r3, #4]
|
||
7388 005c FB68 ldr r3, [r7, #12]
|
||
7389 005e 1B68 ldr r3, [r3]
|
||
7390 0060 22F0E002 bic r2, r2, #224
|
||
7391 0064 5A60 str r2, [r3, #4]
|
||
3975:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3976:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_MASTER) && ((hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
7392 .loc 1 3976 24
|
||
7393 0066 FB68 ldr r3, [r7, #12]
|
||
7394 0068 5B68 ldr r3, [r3, #4]
|
||
7395 .loc 1 3976 12
|
||
7396 006a B3F5827F cmp r3, #260
|
||
7397 006e 11D1 bne .L360
|
||
7398 .loc 1 3976 65 discriminator 1
|
||
7399 0070 FB68 ldr r3, [r7, #12]
|
||
7400 0072 9B68 ldr r3, [r3, #8]
|
||
7401 .loc 1 3976 50 discriminator 1
|
||
7402 0074 B3F5004F cmp r3, #32768
|
||
7403 0078 04D0 beq .L361
|
||
3977:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** || (hspi->Init.Direction == SPI_DIRECTION_2LIN
|
||
7404 .loc 1 3977 68
|
||
7405 007a FB68 ldr r3, [r7, #12]
|
||
7406 007c 9B68 ldr r3, [r3, #8]
|
||
7407 .loc 1 3977 54
|
||
7408 007e B3F5806F cmp r3, #1024
|
||
7409 0082 07D1 bne .L360
|
||
7410 .L361:
|
||
3978:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3979:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI peripheral */
|
||
3980:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
7411 .loc 1 3980 11
|
||
7412 0084 FB68 ldr r3, [r7, #12]
|
||
7413 0086 1B68 ldr r3, [r3]
|
||
7414 0088 1A68 ldr r2, [r3]
|
||
7415 008a FB68 ldr r3, [r7, #12]
|
||
7416 008c 1B68 ldr r3, [r3]
|
||
7417 008e 22F04002 bic r2, r2, #64
|
||
7418 0092 1A60 str r2, [r3]
|
||
7419 .L360:
|
||
3981:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3982:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3983:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
3984:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
7420 .loc 1 3984 23
|
||
7421 0094 FB68 ldr r3, [r7, #12]
|
||
7422 0096 9B6A ldr r3, [r3, #40]
|
||
7423 .loc 1 3984 12
|
||
7424 0098 B3F5005F cmp r3, #8192
|
||
7425 009c 0FD1 bne .L362
|
||
ARM GAS /tmp/ccs34gJO.s page 200
|
||
|
||
|
||
3985:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3986:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
7426 .loc 1 3986 11
|
||
7427 009e FB68 ldr r3, [r7, #12]
|
||
7428 00a0 1B68 ldr r3, [r3]
|
||
7429 00a2 1A68 ldr r2, [r3]
|
||
7430 00a4 FB68 ldr r3, [r7, #12]
|
||
7431 00a6 1B68 ldr r3, [r3]
|
||
7432 00a8 22F40052 bic r2, r2, #8192
|
||
7433 00ac 1A60 str r2, [r3]
|
||
7434 00ae FB68 ldr r3, [r7, #12]
|
||
7435 00b0 1B68 ldr r3, [r3]
|
||
7436 00b2 1A68 ldr r2, [r3]
|
||
7437 00b4 FB68 ldr r3, [r7, #12]
|
||
7438 00b6 1B68 ldr r3, [r3]
|
||
7439 00b8 42F40052 orr r2, r2, #8192
|
||
7440 00bc 1A60 str r2, [r3]
|
||
7441 .L362:
|
||
3987:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3988:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3989:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
7442 .loc 1 3989 21
|
||
7443 00be FB68 ldr r3, [r7, #12]
|
||
7444 00c0 0122 movs r2, #1
|
||
7445 00c2 83F85D20 strb r2, [r3, #93]
|
||
3990:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3991:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
3992:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
7446 .loc 1 3992 9
|
||
7447 00c6 FB68 ldr r3, [r7, #12]
|
||
7448 00c8 0022 movs r2, #0
|
||
7449 00ca 83F85C20 strb r2, [r3, #92]
|
||
3993:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
3994:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7450 .loc 1 3994 16
|
||
7451 00ce 0323 movs r3, #3
|
||
7452 00d0 17E0 b .L363
|
||
7453 .L359:
|
||
3995:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
3996:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* If Systick is disabled or not incremented, deactivate timeout to go in disable loop proced
|
||
3997:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
7454 .loc 1 3997 17
|
||
7455 00d2 7B69 ldr r3, [r7, #20]
|
||
7456 .loc 1 3997 10
|
||
7457 00d4 002B cmp r3, #0
|
||
7458 00d6 01D1 bne .L364
|
||
3998:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
3999:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_timeout = 0U;
|
||
7459 .loc 1 3999 21
|
||
7460 00d8 0023 movs r3, #0
|
||
7461 00da FB61 str r3, [r7, #28]
|
||
7462 .L364:
|
||
4000:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4001:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
7463 .loc 1 4001 12
|
||
7464 00dc 7B69 ldr r3, [r7, #20]
|
||
7465 00de 013B subs r3, r3, #1
|
||
ARM GAS /tmp/ccs34gJO.s page 201
|
||
|
||
|
||
7466 00e0 7B61 str r3, [r7, #20]
|
||
7467 .L357:
|
||
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7468 .loc 1 3963 11
|
||
7469 00e2 FB68 ldr r3, [r7, #12]
|
||
7470 00e4 1B68 ldr r3, [r3]
|
||
7471 00e6 9A68 ldr r2, [r3, #8]
|
||
7472 00e8 BB68 ldr r3, [r7, #8]
|
||
7473 00ea 1340 ands r3, r3, r2
|
||
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7474 .loc 1 3963 48
|
||
7475 00ec BA68 ldr r2, [r7, #8]
|
||
7476 00ee 9A42 cmp r2, r3
|
||
7477 00f0 0CBF ite eq
|
||
7478 00f2 0123 moveq r3, #1
|
||
7479 00f4 0023 movne r3, #0
|
||
7480 00f6 DBB2 uxtb r3, r3
|
||
7481 00f8 1A46 mov r2, r3
|
||
3963:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7482 .loc 1 3963 57
|
||
7483 00fa FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
|
||
7484 00fc 9A42 cmp r2, r3
|
||
7485 00fe 9BD1 bne .L365
|
||
4002:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4003:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4004:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4005:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
7486 .loc 1 4005 10
|
||
7487 0100 0023 movs r3, #0
|
||
7488 .L363:
|
||
4006:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7489 .loc 1 4006 1
|
||
7490 0102 1846 mov r0, r3
|
||
7491 0104 2037 adds r7, r7, #32
|
||
7492 .cfi_def_cfa_offset 8
|
||
7493 0106 BD46 mov sp, r7
|
||
7494 .cfi_def_cfa_register 13
|
||
7495 @ sp needed
|
||
7496 0108 80BD pop {r7, pc}
|
||
7497 .L367:
|
||
7498 010a 00BF .align 2
|
||
7499 .L366:
|
||
7500 010c 00000000 .word SystemCoreClock
|
||
7501 .cfi_endproc
|
||
7502 .LFE177:
|
||
7504 .section .text.SPI_WaitFifoStateUntilTimeout,"ax",%progbits
|
||
7505 .align 1
|
||
7506 .syntax unified
|
||
7507 .thumb
|
||
7508 .thumb_func
|
||
7510 SPI_WaitFifoStateUntilTimeout:
|
||
7511 .LFB178:
|
||
4007:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4008:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4009:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle SPI FIFO Communication Timeout.
|
||
4010:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4011:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
ARM GAS /tmp/ccs34gJO.s page 202
|
||
|
||
|
||
4012:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Fifo Fifo to check
|
||
4013:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param State Fifo state to check
|
||
4014:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
4015:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Tickstart tick start value
|
||
4016:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
4017:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4018:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_WaitFifoStateUntilTimeout(SPI_HandleTypeDef *hspi, uint32_t Fifo, uint
|
||
4019:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t Timeout, uint32_t Tickstart)
|
||
4020:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7512 .loc 1 4020 1
|
||
7513 .cfi_startproc
|
||
7514 @ args = 4, pretend = 0, frame = 40
|
||
7515 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7516 0000 80B5 push {r7, lr}
|
||
7517 .cfi_def_cfa_offset 8
|
||
7518 .cfi_offset 7, -8
|
||
7519 .cfi_offset 14, -4
|
||
7520 0002 8AB0 sub sp, sp, #40
|
||
7521 .cfi_def_cfa_offset 48
|
||
7522 0004 00AF add r7, sp, #0
|
||
7523 .cfi_def_cfa_register 7
|
||
7524 0006 F860 str r0, [r7, #12]
|
||
7525 0008 B960 str r1, [r7, #8]
|
||
7526 000a 7A60 str r2, [r7, #4]
|
||
7527 000c 3B60 str r3, [r7]
|
||
4021:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t count;
|
||
4022:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_timeout;
|
||
4023:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tmp_tickstart;
|
||
4024:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t *ptmpreg8;
|
||
4025:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint8_t tmpreg8 = 0;
|
||
7528 .loc 1 4025 17
|
||
7529 000e 0023 movs r3, #0
|
||
7530 0010 FB75 strb r3, [r7, #23]
|
||
4026:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4027:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Adjust Timeout value in case of end of transfer */
|
||
4028:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_timeout = Timeout - (HAL_GetTick() - Tickstart);
|
||
7531 .loc 1 4028 28
|
||
7532 0012 FFF7FEFF bl HAL_GetTick
|
||
7533 0016 0246 mov r2, r0
|
||
7534 .loc 1 4028 42 discriminator 1
|
||
7535 0018 3B6B ldr r3, [r7, #48]
|
||
7536 001a 9B1A subs r3, r3, r2
|
||
7537 .loc 1 4028 15 discriminator 1
|
||
7538 001c 3A68 ldr r2, [r7]
|
||
7539 001e 1344 add r3, r3, r2
|
||
7540 0020 7B62 str r3, [r7, #36]
|
||
4029:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_tickstart = HAL_GetTick();
|
||
7541 .loc 1 4029 19
|
||
7542 0022 FFF7FEFF bl HAL_GetTick
|
||
7543 0026 3862 str r0, [r7, #32]
|
||
4030:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4031:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Initialize the 8bit temporary pointer */
|
||
4032:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** ptmpreg8 = (__IO uint8_t *)&hspi->Instance->DR;
|
||
7544 .loc 1 4032 35
|
||
7545 0028 FB68 ldr r3, [r7, #12]
|
||
7546 002a 1B68 ldr r3, [r3]
|
||
7547 .loc 1 4032 12
|
||
ARM GAS /tmp/ccs34gJO.s page 203
|
||
|
||
|
||
7548 002c 0C33 adds r3, r3, #12
|
||
7549 002e FB61 str r3, [r7, #28]
|
||
4033:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4034:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Calculate Timeout based on a software loop to avoid blocking issue if Systick is disabled */
|
||
4035:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = tmp_timeout * ((SystemCoreClock * 35U) >> 20U);
|
||
7550 .loc 1 4035 43
|
||
7551 0030 3D4B ldr r3, .L380
|
||
7552 0032 1A68 ldr r2, [r3]
|
||
7553 0034 1346 mov r3, r2
|
||
7554 0036 9B00 lsls r3, r3, #2
|
||
7555 0038 1344 add r3, r3, r2
|
||
7556 003a DA00 lsls r2, r3, #3
|
||
7557 003c D31A subs r3, r2, r3
|
||
7558 .loc 1 4035 50
|
||
7559 003e 1B0D lsrs r3, r3, #20
|
||
7560 .loc 1 4035 23
|
||
7561 0040 7A6A ldr r2, [r7, #36]
|
||
7562 0042 02FB03F3 mul r3, r2, r3
|
||
7563 .loc 1 4035 9
|
||
7564 0046 BB61 str r3, [r7, #24]
|
||
4036:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** while ((hspi->Instance->SR & Fifo) != State)
|
||
7565 .loc 1 4037 9
|
||
7566 0048 60E0 b .L371
|
||
7567 .L379:
|
||
4038:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4039:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((Fifo == SPI_SR_FRLVL) && (State == SPI_FRLVL_EMPTY))
|
||
7568 .loc 1 4039 8
|
||
7569 004a BB68 ldr r3, [r7, #8]
|
||
7570 004c B3F5C06F cmp r3, #1536
|
||
7571 0050 07D1 bne .L370
|
||
7572 .loc 1 4039 32 discriminator 1
|
||
7573 0052 7B68 ldr r3, [r7, #4]
|
||
7574 0054 002B cmp r3, #0
|
||
7575 0056 04D1 bne .L370
|
||
4040:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4041:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Flush Data Register by a blank read */
|
||
4042:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmpreg8 = *ptmpreg8;
|
||
7576 .loc 1 4042 17
|
||
7577 0058 FB69 ldr r3, [r7, #28]
|
||
7578 005a 1B78 ldrb r3, [r3]
|
||
7579 005c DBB2 uxtb r3, r3
|
||
7580 .loc 1 4042 15
|
||
7581 005e FB75 strb r3, [r7, #23]
|
||
4043:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* To avoid GCC warning */
|
||
4044:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** UNUSED(tmpreg8);
|
||
7582 .loc 1 4044 7
|
||
7583 0060 FB7D ldrb r3, [r7, #23]
|
||
7584 .L370:
|
||
4045:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4046:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4047:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (Timeout != HAL_MAX_DELAY)
|
||
7585 .loc 1 4047 8
|
||
7586 0062 3B68 ldr r3, [r7]
|
||
7587 0064 B3F1FF3F cmp r3, #-1
|
||
7588 0068 50D0 beq .L371
|
||
4048:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
ARM GAS /tmp/ccs34gJO.s page 204
|
||
|
||
|
||
4049:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (((HAL_GetTick() - tmp_tickstart) >= tmp_timeout) || (tmp_timeout == 0U))
|
||
7589 .loc 1 4049 13
|
||
7590 006a FFF7FEFF bl HAL_GetTick
|
||
7591 006e 0246 mov r2, r0
|
||
7592 .loc 1 4049 27 discriminator 1
|
||
7593 0070 3B6A ldr r3, [r7, #32]
|
||
7594 0072 D31A subs r3, r2, r3
|
||
7595 .loc 1 4049 10 discriminator 1
|
||
7596 0074 7A6A ldr r2, [r7, #36]
|
||
7597 0076 9A42 cmp r2, r3
|
||
7598 0078 02D9 bls .L372
|
||
7599 .loc 1 4049 60 discriminator 1
|
||
7600 007a 7B6A ldr r3, [r7, #36]
|
||
7601 007c 002B cmp r3, #0
|
||
7602 007e 3DD1 bne .L373
|
||
7603 .L372:
|
||
4050:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4051:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable the SPI and reset the CRC: the CRC value should be cleared
|
||
4052:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** on both master and slave sides in order to resynchronize the master
|
||
4053:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** and slave for their respective CRC calculation */
|
||
4054:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4055:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE, RXNE and ERR interrupts for the interrupt process */
|
||
4056:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_TXE | SPI_IT_RXNE | SPI_IT_ERR));
|
||
7604 .loc 1 4056 9
|
||
7605 0080 FB68 ldr r3, [r7, #12]
|
||
7606 0082 1B68 ldr r3, [r3]
|
||
7607 0084 5A68 ldr r2, [r3, #4]
|
||
7608 0086 FB68 ldr r3, [r7, #12]
|
||
7609 0088 1B68 ldr r3, [r3]
|
||
7610 008a 22F0E002 bic r2, r2, #224
|
||
7611 008e 5A60 str r2, [r3, #4]
|
||
4057:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4058:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_MASTER) && ((hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
7612 .loc 1 4058 24
|
||
7613 0090 FB68 ldr r3, [r7, #12]
|
||
7614 0092 5B68 ldr r3, [r3, #4]
|
||
7615 .loc 1 4058 12
|
||
7616 0094 B3F5827F cmp r3, #260
|
||
7617 0098 11D1 bne .L374
|
||
7618 .loc 1 4058 65 discriminator 1
|
||
7619 009a FB68 ldr r3, [r7, #12]
|
||
7620 009c 9B68 ldr r3, [r3, #8]
|
||
7621 .loc 1 4058 50 discriminator 1
|
||
7622 009e B3F5004F cmp r3, #32768
|
||
7623 00a2 04D0 beq .L375
|
||
4059:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** || (hspi->Init.Direction == SPI_DIRECTION_2LIN
|
||
7624 .loc 1 4059 68
|
||
7625 00a4 FB68 ldr r3, [r7, #12]
|
||
7626 00a6 9B68 ldr r3, [r3, #8]
|
||
7627 .loc 1 4059 54
|
||
7628 00a8 B3F5806F cmp r3, #1024
|
||
7629 00ac 07D1 bne .L374
|
||
7630 .L375:
|
||
4060:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4061:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI peripheral */
|
||
4062:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
7631 .loc 1 4062 11
|
||
ARM GAS /tmp/ccs34gJO.s page 205
|
||
|
||
|
||
7632 00ae FB68 ldr r3, [r7, #12]
|
||
7633 00b0 1B68 ldr r3, [r3]
|
||
7634 00b2 1A68 ldr r2, [r3]
|
||
7635 00b4 FB68 ldr r3, [r7, #12]
|
||
7636 00b6 1B68 ldr r3, [r3]
|
||
7637 00b8 22F04002 bic r2, r2, #64
|
||
7638 00bc 1A60 str r2, [r3]
|
||
7639 .L374:
|
||
4063:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4064:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4065:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Reset CRC Calculation */
|
||
4066:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.CRCCalculation == SPI_CRCCALCULATION_ENABLE)
|
||
7640 .loc 1 4066 23
|
||
7641 00be FB68 ldr r3, [r7, #12]
|
||
7642 00c0 9B6A ldr r3, [r3, #40]
|
||
7643 .loc 1 4066 12
|
||
7644 00c2 B3F5005F cmp r3, #8192
|
||
7645 00c6 0FD1 bne .L376
|
||
4067:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4068:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SPI_RESET_CRC(hspi);
|
||
7646 .loc 1 4068 11
|
||
7647 00c8 FB68 ldr r3, [r7, #12]
|
||
7648 00ca 1B68 ldr r3, [r3]
|
||
7649 00cc 1A68 ldr r2, [r3]
|
||
7650 00ce FB68 ldr r3, [r7, #12]
|
||
7651 00d0 1B68 ldr r3, [r3]
|
||
7652 00d2 22F40052 bic r2, r2, #8192
|
||
7653 00d6 1A60 str r2, [r3]
|
||
7654 00d8 FB68 ldr r3, [r7, #12]
|
||
7655 00da 1B68 ldr r3, [r3]
|
||
7656 00dc 1A68 ldr r2, [r3]
|
||
7657 00de FB68 ldr r3, [r7, #12]
|
||
7658 00e0 1B68 ldr r3, [r3]
|
||
7659 00e2 42F40052 orr r2, r2, #8192
|
||
7660 00e6 1A60 str r2, [r3]
|
||
7661 .L376:
|
||
4069:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4070:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4071:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
7662 .loc 1 4071 21
|
||
7663 00e8 FB68 ldr r3, [r7, #12]
|
||
7664 00ea 0122 movs r2, #1
|
||
7665 00ec 83F85D20 strb r2, [r3, #93]
|
||
4072:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4073:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Process Unlocked */
|
||
4074:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_UNLOCK(hspi);
|
||
7666 .loc 1 4074 9
|
||
7667 00f0 FB68 ldr r3, [r7, #12]
|
||
7668 00f2 0022 movs r2, #0
|
||
7669 00f4 83F85C20 strb r2, [r3, #92]
|
||
4075:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4076:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7670 .loc 1 4076 16
|
||
7671 00f8 0323 movs r3, #3
|
||
7672 00fa 10E0 b .L377
|
||
7673 .L373:
|
||
4077:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 206
|
||
|
||
|
||
4078:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* If Systick is disabled or not incremented, deactivate timeout to go in disable loop proced
|
||
4079:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
7674 .loc 1 4079 17
|
||
7675 00fc BB69 ldr r3, [r7, #24]
|
||
7676 .loc 1 4079 10
|
||
7677 00fe 002B cmp r3, #0
|
||
7678 0100 01D1 bne .L378
|
||
4080:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4081:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tmp_timeout = 0U;
|
||
7679 .loc 1 4081 21
|
||
7680 0102 0023 movs r3, #0
|
||
7681 0104 7B62 str r3, [r7, #36]
|
||
7682 .L378:
|
||
4082:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4083:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
7683 .loc 1 4083 12
|
||
7684 0106 BB69 ldr r3, [r7, #24]
|
||
7685 0108 013B subs r3, r3, #1
|
||
7686 010a BB61 str r3, [r7, #24]
|
||
7687 .L371:
|
||
4037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7688 .loc 1 4037 15
|
||
7689 010c FB68 ldr r3, [r7, #12]
|
||
7690 010e 1B68 ldr r3, [r3]
|
||
4037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7691 .loc 1 4037 25
|
||
7692 0110 9A68 ldr r2, [r3, #8]
|
||
4037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7693 .loc 1 4037 30
|
||
7694 0112 BB68 ldr r3, [r7, #8]
|
||
7695 0114 1340 ands r3, r3, r2
|
||
4037:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7696 .loc 1 4037 38
|
||
7697 0116 7A68 ldr r2, [r7, #4]
|
||
7698 0118 9A42 cmp r2, r3
|
||
7699 011a 96D1 bne .L379
|
||
4084:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4085:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4086:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4087:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
7700 .loc 1 4087 10
|
||
7701 011c 0023 movs r3, #0
|
||
7702 .L377:
|
||
4088:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7703 .loc 1 4088 1
|
||
7704 011e 1846 mov r0, r3
|
||
7705 0120 2837 adds r7, r7, #40
|
||
7706 .cfi_def_cfa_offset 8
|
||
7707 0122 BD46 mov sp, r7
|
||
7708 .cfi_def_cfa_register 13
|
||
7709 @ sp needed
|
||
7710 0124 80BD pop {r7, pc}
|
||
7711 .L381:
|
||
7712 0126 00BF .align 2
|
||
7713 .L380:
|
||
7714 0128 00000000 .word SystemCoreClock
|
||
7715 .cfi_endproc
|
||
ARM GAS /tmp/ccs34gJO.s page 207
|
||
|
||
|
||
7716 .LFE178:
|
||
7718 .section .text.SPI_EndRxTransaction,"ax",%progbits
|
||
7719 .align 1
|
||
7720 .syntax unified
|
||
7721 .thumb
|
||
7722 .thumb_func
|
||
7724 SPI_EndRxTransaction:
|
||
7725 .LFB179:
|
||
4089:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4090:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4091:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the check of the RX transaction complete.
|
||
4092:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4093:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
4094:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
4095:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Tickstart tick start value
|
||
4096:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
4097:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4098:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_EndRxTransaction(SPI_HandleTypeDef *hspi, uint32_t Timeout, uint32_t
|
||
4099:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7726 .loc 1 4099 1
|
||
7727 .cfi_startproc
|
||
7728 @ args = 0, pretend = 0, frame = 16
|
||
7729 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7730 0000 80B5 push {r7, lr}
|
||
7731 .cfi_def_cfa_offset 8
|
||
7732 .cfi_offset 7, -8
|
||
7733 .cfi_offset 14, -4
|
||
7734 0002 86B0 sub sp, sp, #24
|
||
7735 .cfi_def_cfa_offset 32
|
||
7736 0004 02AF add r7, sp, #8
|
||
7737 .cfi_def_cfa 7, 24
|
||
7738 0006 F860 str r0, [r7, #12]
|
||
7739 0008 B960 str r1, [r7, #8]
|
||
7740 000a 7A60 str r2, [r7, #4]
|
||
4100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_MASTER) && ((hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
7741 .loc 1 4100 18
|
||
7742 000c FB68 ldr r3, [r7, #12]
|
||
7743 000e 5B68 ldr r3, [r3, #4]
|
||
7744 .loc 1 4100 6
|
||
7745 0010 B3F5827F cmp r3, #260
|
||
7746 0014 11D1 bne .L383
|
||
7747 .loc 1 4100 59 discriminator 1
|
||
7748 0016 FB68 ldr r3, [r7, #12]
|
||
7749 0018 9B68 ldr r3, [r3, #8]
|
||
7750 .loc 1 4100 44 discriminator 1
|
||
7751 001a B3F5004F cmp r3, #32768
|
||
7752 001e 04D0 beq .L384
|
||
4101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** || (hspi->Init.Direction == SPI_DIRECTION_2LINES_RXO
|
||
7753 .loc 1 4101 62
|
||
7754 0020 FB68 ldr r3, [r7, #12]
|
||
7755 0022 9B68 ldr r3, [r3, #8]
|
||
7756 .loc 1 4101 48
|
||
7757 0024 B3F5806F cmp r3, #1024
|
||
7758 0028 07D1 bne .L383
|
||
7759 .L384:
|
||
4102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI peripheral */
|
||
ARM GAS /tmp/ccs34gJO.s page 208
|
||
|
||
|
||
4104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
7760 .loc 1 4104 5
|
||
7761 002a FB68 ldr r3, [r7, #12]
|
||
7762 002c 1B68 ldr r3, [r3]
|
||
7763 002e 1A68 ldr r2, [r3]
|
||
7764 0030 FB68 ldr r3, [r7, #12]
|
||
7765 0032 1B68 ldr r3, [r3]
|
||
7766 0034 22F04002 bic r2, r2, #64
|
||
7767 0038 1A60 str r2, [r3]
|
||
7768 .L383:
|
||
4105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control the BSY flag */
|
||
4108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_BSY, RESET, Timeout, Tickstart) != HAL_OK)
|
||
7769 .loc 1 4108 7
|
||
7770 003a 7B68 ldr r3, [r7, #4]
|
||
7771 003c 0093 str r3, [sp]
|
||
7772 003e BB68 ldr r3, [r7, #8]
|
||
7773 0040 0022 movs r2, #0
|
||
7774 0042 8021 movs r1, #128
|
||
7775 0044 F868 ldr r0, [r7, #12]
|
||
7776 0046 FFF7FEFF bl SPI_WaitFlagStateUntilTimeout
|
||
7777 004a 0346 mov r3, r0
|
||
7778 .loc 1 4108 6 discriminator 1
|
||
7779 004c 002B cmp r3, #0
|
||
7780 004e 07D0 beq .L385
|
||
4109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
7781 .loc 1 4110 5
|
||
7782 0050 FB68 ldr r3, [r7, #12]
|
||
7783 0052 1B6E ldr r3, [r3, #96]
|
||
7784 0054 43F02002 orr r2, r3, #32
|
||
7785 0058 FB68 ldr r3, [r7, #12]
|
||
7786 005a 1A66 str r2, [r3, #96]
|
||
4111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7787 .loc 1 4111 12
|
||
7788 005c 0323 movs r3, #3
|
||
7789 005e 23E0 b .L386
|
||
7790 .L385:
|
||
4112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if ((hspi->Init.Mode == SPI_MODE_MASTER) && ((hspi->Init.Direction == SPI_DIRECTION_1LINE)
|
||
7791 .loc 1 4114 18
|
||
7792 0060 FB68 ldr r3, [r7, #12]
|
||
7793 0062 5B68 ldr r3, [r3, #4]
|
||
7794 .loc 1 4114 6
|
||
7795 0064 B3F5827F cmp r3, #260
|
||
7796 0068 1DD1 bne .L387
|
||
7797 .loc 1 4114 59 discriminator 1
|
||
7798 006a FB68 ldr r3, [r7, #12]
|
||
7799 006c 9B68 ldr r3, [r3, #8]
|
||
7800 .loc 1 4114 44 discriminator 1
|
||
7801 006e B3F5004F cmp r3, #32768
|
||
7802 0072 04D0 beq .L388
|
||
4115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** || (hspi->Init.Direction == SPI_DIRECTION_2LINES_RXO
|
||
7803 .loc 1 4115 62
|
||
7804 0074 FB68 ldr r3, [r7, #12]
|
||
ARM GAS /tmp/ccs34gJO.s page 209
|
||
|
||
|
||
7805 0076 9B68 ldr r3, [r3, #8]
|
||
7806 .loc 1 4115 48
|
||
7807 0078 B3F5806F cmp r3, #1024
|
||
7808 007c 13D1 bne .L387
|
||
7809 .L388:
|
||
4116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
4118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, Timeout, Tickstart) !=
|
||
7810 .loc 1 4118 9
|
||
7811 007e 7B68 ldr r3, [r7, #4]
|
||
7812 0080 0093 str r3, [sp]
|
||
7813 0082 BB68 ldr r3, [r7, #8]
|
||
7814 0084 0022 movs r2, #0
|
||
7815 0086 4FF4C061 mov r1, #1536
|
||
7816 008a F868 ldr r0, [r7, #12]
|
||
7817 008c FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
7818 0090 0346 mov r3, r0
|
||
7819 .loc 1 4118 8 discriminator 1
|
||
7820 0092 002B cmp r3, #0
|
||
7821 0094 07D0 beq .L387
|
||
4119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
7822 .loc 1 4120 7
|
||
7823 0096 FB68 ldr r3, [r7, #12]
|
||
7824 0098 1B6E ldr r3, [r3, #96]
|
||
7825 009a 43F02002 orr r2, r3, #32
|
||
7826 009e FB68 ldr r3, [r7, #12]
|
||
7827 00a0 1A66 str r2, [r3, #96]
|
||
4121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7828 .loc 1 4121 14
|
||
7829 00a2 0323 movs r3, #3
|
||
7830 00a4 00E0 b .L386
|
||
7831 .L387:
|
||
4122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
7832 .loc 1 4124 10
|
||
7833 00a6 0023 movs r3, #0
|
||
7834 .L386:
|
||
4125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7835 .loc 1 4125 1
|
||
7836 00a8 1846 mov r0, r3
|
||
7837 00aa 1037 adds r7, r7, #16
|
||
7838 .cfi_def_cfa_offset 8
|
||
7839 00ac BD46 mov sp, r7
|
||
7840 .cfi_def_cfa_register 13
|
||
7841 @ sp needed
|
||
7842 00ae 80BD pop {r7, pc}
|
||
7843 .cfi_endproc
|
||
7844 .LFE179:
|
||
7846 .section .text.SPI_EndRxTxTransaction,"ax",%progbits
|
||
7847 .align 1
|
||
7848 .syntax unified
|
||
7849 .thumb
|
||
7850 .thumb_func
|
||
7852 SPI_EndRxTxTransaction:
|
||
7853 .LFB180:
|
||
ARM GAS /tmp/ccs34gJO.s page 210
|
||
|
||
|
||
4126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the check of the RXTX or TX transaction complete.
|
||
4129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi SPI handle
|
||
4130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Timeout Timeout duration
|
||
4131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param Tickstart tick start value
|
||
4132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval HAL status
|
||
4133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static HAL_StatusTypeDef SPI_EndRxTxTransaction(SPI_HandleTypeDef *hspi, uint32_t Timeout, uint32_t
|
||
4135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7854 .loc 1 4135 1
|
||
7855 .cfi_startproc
|
||
7856 @ args = 0, pretend = 0, frame = 16
|
||
7857 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7858 0000 80B5 push {r7, lr}
|
||
7859 .cfi_def_cfa_offset 8
|
||
7860 .cfi_offset 7, -8
|
||
7861 .cfi_offset 14, -4
|
||
7862 0002 86B0 sub sp, sp, #24
|
||
7863 .cfi_def_cfa_offset 32
|
||
7864 0004 02AF add r7, sp, #8
|
||
7865 .cfi_def_cfa 7, 24
|
||
7866 0006 F860 str r0, [r7, #12]
|
||
7867 0008 B960 str r1, [r7, #8]
|
||
7868 000a 7A60 str r2, [r7, #4]
|
||
4136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control if the TX fifo is empty */
|
||
4137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FTLVL, SPI_FTLVL_EMPTY, Timeout, Tickstart) != H
|
||
7869 .loc 1 4137 7
|
||
7870 000c 7B68 ldr r3, [r7, #4]
|
||
7871 000e 0093 str r3, [sp]
|
||
7872 0010 BB68 ldr r3, [r7, #8]
|
||
7873 0012 0022 movs r2, #0
|
||
7874 0014 4FF4C051 mov r1, #6144
|
||
7875 0018 F868 ldr r0, [r7, #12]
|
||
7876 001a FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
7877 001e 0346 mov r3, r0
|
||
7878 .loc 1 4137 6 discriminator 1
|
||
7879 0020 002B cmp r3, #0
|
||
7880 0022 07D0 beq .L390
|
||
4138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
7881 .loc 1 4139 5
|
||
7882 0024 FB68 ldr r3, [r7, #12]
|
||
7883 0026 1B6E ldr r3, [r3, #96]
|
||
7884 0028 43F02002 orr r2, r3, #32
|
||
7885 002c FB68 ldr r3, [r7, #12]
|
||
7886 002e 1A66 str r2, [r3, #96]
|
||
4140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7887 .loc 1 4140 12
|
||
7888 0030 0323 movs r3, #3
|
||
7889 0032 27E0 b .L391
|
||
7890 .L390:
|
||
4141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control the BSY flag */
|
||
4144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_BSY, RESET, Timeout, Tickstart) != HAL_OK)
|
||
7891 .loc 1 4144 7
|
||
ARM GAS /tmp/ccs34gJO.s page 211
|
||
|
||
|
||
7892 0034 7B68 ldr r3, [r7, #4]
|
||
7893 0036 0093 str r3, [sp]
|
||
7894 0038 BB68 ldr r3, [r7, #8]
|
||
7895 003a 0022 movs r2, #0
|
||
7896 003c 8021 movs r1, #128
|
||
7897 003e F868 ldr r0, [r7, #12]
|
||
7898 0040 FFF7FEFF bl SPI_WaitFlagStateUntilTimeout
|
||
7899 0044 0346 mov r3, r0
|
||
7900 .loc 1 4144 6 discriminator 1
|
||
7901 0046 002B cmp r3, #0
|
||
7902 0048 07D0 beq .L392
|
||
4145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
7903 .loc 1 4146 5
|
||
7904 004a FB68 ldr r3, [r7, #12]
|
||
7905 004c 1B6E ldr r3, [r3, #96]
|
||
7906 004e 43F02002 orr r2, r3, #32
|
||
7907 0052 FB68 ldr r3, [r7, #12]
|
||
7908 0054 1A66 str r2, [r3, #96]
|
||
4147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7909 .loc 1 4147 12
|
||
7910 0056 0323 movs r3, #3
|
||
7911 0058 14E0 b .L391
|
||
7912 .L392:
|
||
4148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control if the RX fifo is empty */
|
||
4151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, Timeout, Tickstart) != H
|
||
7913 .loc 1 4151 7
|
||
7914 005a 7B68 ldr r3, [r7, #4]
|
||
7915 005c 0093 str r3, [sp]
|
||
7916 005e BB68 ldr r3, [r7, #8]
|
||
7917 0060 0022 movs r2, #0
|
||
7918 0062 4FF4C061 mov r1, #1536
|
||
7919 0066 F868 ldr r0, [r7, #12]
|
||
7920 0068 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
7921 006c 0346 mov r3, r0
|
||
7922 .loc 1 4151 6 discriminator 1
|
||
7923 006e 002B cmp r3, #0
|
||
7924 0070 07D0 beq .L393
|
||
4152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
7925 .loc 1 4153 5
|
||
7926 0072 FB68 ldr r3, [r7, #12]
|
||
7927 0074 1B6E ldr r3, [r3, #96]
|
||
7928 0076 43F02002 orr r2, r3, #32
|
||
7929 007a FB68 ldr r3, [r7, #12]
|
||
7930 007c 1A66 str r2, [r3, #96]
|
||
4154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_TIMEOUT;
|
||
7931 .loc 1 4154 12
|
||
7932 007e 0323 movs r3, #3
|
||
7933 0080 00E0 b .L391
|
||
7934 .L393:
|
||
4155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** return HAL_OK;
|
||
7935 .loc 1 4157 10
|
||
ARM GAS /tmp/ccs34gJO.s page 212
|
||
|
||
|
||
7936 0082 0023 movs r3, #0
|
||
7937 .L391:
|
||
4158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
7938 .loc 1 4158 1
|
||
7939 0084 1846 mov r0, r3
|
||
7940 0086 1037 adds r7, r7, #16
|
||
7941 .cfi_def_cfa_offset 8
|
||
7942 0088 BD46 mov sp, r7
|
||
7943 .cfi_def_cfa_register 13
|
||
7944 @ sp needed
|
||
7945 008a 80BD pop {r7, pc}
|
||
7946 .cfi_endproc
|
||
7947 .LFE180:
|
||
7949 .section .text.SPI_CloseRxTx_ISR,"ax",%progbits
|
||
7950 .align 1
|
||
7951 .syntax unified
|
||
7952 .thumb
|
||
7953 .thumb_func
|
||
7955 SPI_CloseRxTx_ISR:
|
||
7956 .LFB181:
|
||
4159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the end of the RXTX transaction.
|
||
4162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
4164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
4165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_CloseRxTx_ISR(SPI_HandleTypeDef *hspi)
|
||
4167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
7957 .loc 1 4167 1
|
||
7958 .cfi_startproc
|
||
7959 @ args = 0, pretend = 0, frame = 16
|
||
7960 @ frame_needed = 1, uses_anonymous_args = 0
|
||
7961 0000 80B5 push {r7, lr}
|
||
7962 .cfi_def_cfa_offset 8
|
||
7963 .cfi_offset 7, -8
|
||
7964 .cfi_offset 14, -4
|
||
7965 0002 84B0 sub sp, sp, #16
|
||
7966 .cfi_def_cfa_offset 24
|
||
7967 0004 00AF add r7, sp, #0
|
||
7968 .cfi_def_cfa_register 7
|
||
7969 0006 7860 str r0, [r7, #4]
|
||
4168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
4169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management */
|
||
4171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
7970 .loc 1 4171 15
|
||
7971 0008 FFF7FEFF bl HAL_GetTick
|
||
7972 000c F860 str r0, [r7, #12]
|
||
4172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable ERR interrupt */
|
||
4174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, SPI_IT_ERR);
|
||
7973 .loc 1 4174 3
|
||
7974 000e 7B68 ldr r3, [r7, #4]
|
||
7975 0010 1B68 ldr r3, [r3]
|
||
7976 0012 5A68 ldr r2, [r3, #4]
|
||
7977 0014 7B68 ldr r3, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 213
|
||
|
||
|
||
7978 0016 1B68 ldr r3, [r3]
|
||
7979 0018 22F02002 bic r2, r2, #32
|
||
7980 001c 5A60 str r2, [r3, #4]
|
||
4175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
4177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, tickstart) != HAL_OK)
|
||
7981 .loc 1 4177 7
|
||
7982 001e FA68 ldr r2, [r7, #12]
|
||
7983 0020 6421 movs r1, #100
|
||
7984 0022 7868 ldr r0, [r7, #4]
|
||
7985 0024 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
7986 0028 0346 mov r3, r0
|
||
7987 .loc 1 4177 6 discriminator 1
|
||
7988 002a 002B cmp r3, #0
|
||
7989 002c 05D0 beq .L395
|
||
4178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
7990 .loc 1 4179 5
|
||
7991 002e 7B68 ldr r3, [r7, #4]
|
||
7992 0030 1B6E ldr r3, [r3, #96]
|
||
7993 0032 43F02002 orr r2, r3, #32
|
||
7994 0036 7B68 ldr r3, [r7, #4]
|
||
7995 0038 1A66 str r2, [r3, #96]
|
||
7996 .L395:
|
||
4180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
4183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if CRC error occurred */
|
||
4184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_CRCERR) != RESET)
|
||
4185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
4187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
4188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_CRCERRFLAG(hspi);
|
||
4189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
4190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
4192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
4194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
4197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
4199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode == HAL_SPI_ERROR_NONE)
|
||
7997 .loc 1 4199 13
|
||
7998 003a 7B68 ldr r3, [r7, #4]
|
||
7999 003c 1B6E ldr r3, [r3, #96]
|
||
8000 .loc 1 4199 8
|
||
8001 003e 002B cmp r3, #0
|
||
8002 0040 15D1 bne .L396
|
||
4200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->State == HAL_SPI_STATE_BUSY_RX)
|
||
8003 .loc 1 4201 15
|
||
8004 0042 7B68 ldr r3, [r7, #4]
|
||
8005 0044 93F85D30 ldrb r3, [r3, #93]
|
||
8006 0048 DBB2 uxtb r3, r3
|
||
8007 .loc 1 4201 10
|
||
ARM GAS /tmp/ccs34gJO.s page 214
|
||
|
||
|
||
8008 004a 042B cmp r3, #4
|
||
8009 004c 07D1 bne .L397
|
||
4202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
8010 .loc 1 4203 21
|
||
8011 004e 7B68 ldr r3, [r7, #4]
|
||
8012 0050 0122 movs r2, #1
|
||
8013 0052 83F85D20 strb r2, [r3, #93]
|
||
4204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Rx complete callback */
|
||
4205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxCpltCallback(hspi);
|
||
4207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_RxCpltCallback(hspi);
|
||
8014 .loc 1 4208 9
|
||
8015 0056 7868 ldr r0, [r7, #4]
|
||
8016 0058 FFF7FEFF bl HAL_SPI_RxCpltCallback
|
||
4209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
4212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
4214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user TxRx complete callback */
|
||
4215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxRxCpltCallback(hspi);
|
||
4217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_TxRxCpltCallback(hspi);
|
||
4219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
4223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
4225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
4226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
4228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
4230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
4233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
4235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
8017 .loc 1 4235 1
|
||
8018 005c 0EE0 b .L399
|
||
8019 .L397:
|
||
4213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user TxRx complete callback */
|
||
8020 .loc 1 4213 21
|
||
8021 005e 7B68 ldr r3, [r7, #4]
|
||
8022 0060 0122 movs r2, #1
|
||
8023 0062 83F85D20 strb r2, [r3, #93]
|
||
4218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
8024 .loc 1 4218 9
|
||
8025 0066 7868 ldr r0, [r7, #4]
|
||
8026 0068 FFF7FEFF bl HAL_SPI_TxRxCpltCallback
|
||
8027 .loc 1 4235 1
|
||
8028 006c 06E0 b .L399
|
||
ARM GAS /tmp/ccs34gJO.s page 215
|
||
|
||
|
||
8029 .L396:
|
||
4224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
8030 .loc 1 4224 19
|
||
8031 006e 7B68 ldr r3, [r7, #4]
|
||
8032 0070 0122 movs r2, #1
|
||
8033 0072 83F85D20 strb r2, [r3, #93]
|
||
4229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
8034 .loc 1 4229 7
|
||
8035 0076 7868 ldr r0, [r7, #4]
|
||
8036 0078 FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
8037 .L399:
|
||
8038 .loc 1 4235 1
|
||
8039 007c 00BF nop
|
||
8040 007e 1037 adds r7, r7, #16
|
||
8041 .cfi_def_cfa_offset 8
|
||
8042 0080 BD46 mov sp, r7
|
||
8043 .cfi_def_cfa_register 13
|
||
8044 @ sp needed
|
||
8045 0082 80BD pop {r7, pc}
|
||
8046 .cfi_endproc
|
||
8047 .LFE181:
|
||
8049 .section .text.SPI_CloseRx_ISR,"ax",%progbits
|
||
8050 .align 1
|
||
8051 .syntax unified
|
||
8052 .thumb
|
||
8053 .thumb_func
|
||
8055 SPI_CloseRx_ISR:
|
||
8056 .LFB182:
|
||
4236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the end of the RX transaction.
|
||
4239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
4241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
4242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_CloseRx_ISR(SPI_HandleTypeDef *hspi)
|
||
4244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
8057 .loc 1 4244 1
|
||
8058 .cfi_startproc
|
||
8059 @ args = 0, pretend = 0, frame = 8
|
||
8060 @ frame_needed = 1, uses_anonymous_args = 0
|
||
8061 0000 80B5 push {r7, lr}
|
||
8062 .cfi_def_cfa_offset 8
|
||
8063 .cfi_offset 7, -8
|
||
8064 .cfi_offset 14, -4
|
||
8065 0002 82B0 sub sp, sp, #8
|
||
8066 .cfi_def_cfa_offset 16
|
||
8067 0004 00AF add r7, sp, #0
|
||
8068 .cfi_def_cfa_register 7
|
||
8069 0006 7860 str r0, [r7, #4]
|
||
4245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNE and ERR interrupt */
|
||
4246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_RXNE | SPI_IT_ERR));
|
||
8070 .loc 1 4246 3
|
||
8071 0008 7B68 ldr r3, [r7, #4]
|
||
8072 000a 1B68 ldr r3, [r3]
|
||
8073 000c 5A68 ldr r2, [r3, #4]
|
||
8074 000e 7B68 ldr r3, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 216
|
||
|
||
|
||
8075 0010 1B68 ldr r3, [r3]
|
||
8076 0012 22F06002 bic r2, r2, #96
|
||
8077 0016 5A60 str r2, [r3, #4]
|
||
4247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
4249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTransaction(hspi, SPI_DEFAULT_TIMEOUT, HAL_GetTick()) != HAL_OK)
|
||
8078 .loc 1 4249 7
|
||
8079 0018 FFF7FEFF bl HAL_GetTick
|
||
8080 001c 0346 mov r3, r0
|
||
8081 .loc 1 4249 7 is_stmt 0 discriminator 1
|
||
8082 001e 1A46 mov r2, r3
|
||
8083 0020 6421 movs r1, #100
|
||
8084 0022 7868 ldr r0, [r7, #4]
|
||
8085 0024 FFF7FEFF bl SPI_EndRxTransaction
|
||
8086 0028 0346 mov r3, r0
|
||
8087 .loc 1 4249 6 is_stmt 1 discriminator 2
|
||
8088 002a 002B cmp r3, #0
|
||
8089 002c 05D0 beq .L401
|
||
4250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
8090 .loc 1 4251 5
|
||
8091 002e 7B68 ldr r3, [r7, #4]
|
||
8092 0030 1B6E ldr r3, [r3, #96]
|
||
8093 0032 43F02002 orr r2, r3, #32
|
||
8094 0036 7B68 ldr r3, [r7, #4]
|
||
8095 0038 1A66 str r2, [r3, #96]
|
||
8096 .L401:
|
||
4252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
8097 .loc 1 4253 15
|
||
8098 003a 7B68 ldr r3, [r7, #4]
|
||
8099 003c 0122 movs r2, #1
|
||
8100 003e 83F85D20 strb r2, [r3, #93]
|
||
4254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
4256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check if CRC error occurred */
|
||
4257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_CRCERR) != RESET)
|
||
4258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_CRC);
|
||
4260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_CRCERRFLAG(hspi);
|
||
4261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
4262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
4264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
4266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
4269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
4271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode == HAL_SPI_ERROR_NONE)
|
||
8101 .loc 1 4271 13
|
||
8102 0042 7B68 ldr r3, [r7, #4]
|
||
8103 0044 1B6E ldr r3, [r3, #96]
|
||
8104 .loc 1 4271 8
|
||
8105 0046 002B cmp r3, #0
|
||
8106 0048 03D1 bne .L402
|
||
ARM GAS /tmp/ccs34gJO.s page 217
|
||
|
||
|
||
4272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Rx complete callback */
|
||
4274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->RxCpltCallback(hspi);
|
||
4276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_RxCpltCallback(hspi);
|
||
8107 .loc 1 4277 7
|
||
8108 004a 7868 ldr r0, [r7, #4]
|
||
8109 004c FFF7FEFF bl HAL_SPI_RxCpltCallback
|
||
4278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
4281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
4283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
4285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
4287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_SPI_CRC != 0U)
|
||
4290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_SPI_CRC */
|
||
4292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
8110 .loc 1 4292 1
|
||
8111 0050 02E0 b .L404
|
||
8112 .L402:
|
||
4286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
8113 .loc 1 4286 7
|
||
8114 0052 7868 ldr r0, [r7, #4]
|
||
8115 0054 FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
8116 .L404:
|
||
8117 .loc 1 4292 1
|
||
8118 0058 00BF nop
|
||
8119 005a 0837 adds r7, r7, #8
|
||
8120 .cfi_def_cfa_offset 8
|
||
8121 005c BD46 mov sp, r7
|
||
8122 .cfi_def_cfa_register 13
|
||
8123 @ sp needed
|
||
8124 005e 80BD pop {r7, pc}
|
||
8125 .cfi_endproc
|
||
8126 .LFE182:
|
||
8128 .section .text.SPI_CloseTx_ISR,"ax",%progbits
|
||
8129 .align 1
|
||
8130 .syntax unified
|
||
8131 .thumb
|
||
8132 .thumb_func
|
||
8134 SPI_CloseTx_ISR:
|
||
8135 .LFB183:
|
||
4293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle the end of the TX transaction.
|
||
4296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
4298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
4299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_CloseTx_ISR(SPI_HandleTypeDef *hspi)
|
||
ARM GAS /tmp/ccs34gJO.s page 218
|
||
|
||
|
||
4301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
8136 .loc 1 4301 1
|
||
8137 .cfi_startproc
|
||
8138 @ args = 0, pretend = 0, frame = 16
|
||
8139 @ frame_needed = 1, uses_anonymous_args = 0
|
||
8140 0000 80B5 push {r7, lr}
|
||
8141 .cfi_def_cfa_offset 8
|
||
8142 .cfi_offset 7, -8
|
||
8143 .cfi_offset 14, -4
|
||
8144 0002 84B0 sub sp, sp, #16
|
||
8145 .cfi_def_cfa_offset 24
|
||
8146 0004 00AF add r7, sp, #0
|
||
8147 .cfi_def_cfa_register 7
|
||
8148 0006 7860 str r0, [r7, #4]
|
||
4302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** uint32_t tickstart;
|
||
4303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Init tickstart for timeout management*/
|
||
4305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** tickstart = HAL_GetTick();
|
||
8149 .loc 1 4305 15
|
||
8150 0008 FFF7FEFF bl HAL_GetTick
|
||
8151 000c F860 str r0, [r7, #12]
|
||
4306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXE and ERR interrupt */
|
||
4308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE_IT(hspi, (SPI_IT_TXE | SPI_IT_ERR));
|
||
8152 .loc 1 4308 3
|
||
8153 000e 7B68 ldr r3, [r7, #4]
|
||
8154 0010 1B68 ldr r3, [r3]
|
||
8155 0012 5A68 ldr r2, [r3, #4]
|
||
8156 0014 7B68 ldr r3, [r7, #4]
|
||
8157 0016 1B68 ldr r3, [r3]
|
||
8158 0018 22F0A002 bic r2, r2, #160
|
||
8159 001c 5A60 str r2, [r3, #4]
|
||
4309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check the end of the transaction */
|
||
4311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, tickstart) != HAL_OK)
|
||
8160 .loc 1 4311 7
|
||
8161 001e FA68 ldr r2, [r7, #12]
|
||
8162 0020 6421 movs r1, #100
|
||
8163 0022 7868 ldr r0, [r7, #4]
|
||
8164 0024 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
8165 0028 0346 mov r3, r0
|
||
8166 .loc 1 4311 6 discriminator 1
|
||
8167 002a 002B cmp r3, #0
|
||
8168 002c 05D0 beq .L406
|
||
4312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_FLAG);
|
||
8169 .loc 1 4313 5
|
||
8170 002e 7B68 ldr r3, [r7, #4]
|
||
8171 0030 1B6E ldr r3, [r3, #96]
|
||
8172 0032 43F02002 orr r2, r3, #32
|
||
8173 0036 7B68 ldr r3, [r7, #4]
|
||
8174 0038 1A66 str r2, [r3, #96]
|
||
8175 .L406:
|
||
4314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Clear overrun flag in 2 Lines communication mode because received is not read */
|
||
4317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->Init.Direction == SPI_DIRECTION_2LINES)
|
||
ARM GAS /tmp/ccs34gJO.s page 219
|
||
|
||
|
||
8176 .loc 1 4317 17
|
||
8177 003a 7B68 ldr r3, [r7, #4]
|
||
8178 003c 9B68 ldr r3, [r3, #8]
|
||
8179 .loc 1 4317 6
|
||
8180 003e 002B cmp r3, #0
|
||
8181 0040 0AD1 bne .L407
|
||
8182 .LBB16:
|
||
4318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_CLEAR_OVRFLAG(hspi);
|
||
8183 .loc 1 4319 5
|
||
8184 0042 0023 movs r3, #0
|
||
8185 0044 BB60 str r3, [r7, #8]
|
||
8186 0046 7B68 ldr r3, [r7, #4]
|
||
8187 0048 1B68 ldr r3, [r3]
|
||
8188 004a DB68 ldr r3, [r3, #12]
|
||
8189 004c BB60 str r3, [r7, #8]
|
||
8190 004e 7B68 ldr r3, [r7, #4]
|
||
8191 0050 1B68 ldr r3, [r3]
|
||
8192 0052 9B68 ldr r3, [r3, #8]
|
||
8193 0054 BB60 str r3, [r7, #8]
|
||
8194 0056 BB68 ldr r3, [r7, #8]
|
||
8195 .L407:
|
||
8196 .LBE16:
|
||
4320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_READY;
|
||
8197 .loc 1 4322 15
|
||
8198 0058 7B68 ldr r3, [r7, #4]
|
||
8199 005a 0122 movs r2, #1
|
||
8200 005c 83F85D20 strb r2, [r3, #93]
|
||
4323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (hspi->ErrorCode != HAL_SPI_ERROR_NONE)
|
||
8201 .loc 1 4323 11
|
||
8202 0060 7B68 ldr r3, [r7, #4]
|
||
8203 0062 1B6E ldr r3, [r3, #96]
|
||
8204 .loc 1 4323 6
|
||
8205 0064 002B cmp r3, #0
|
||
8206 0066 03D0 beq .L408
|
||
4324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user error callback */
|
||
4326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCallback(hspi);
|
||
4328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_ErrorCallback(hspi);
|
||
8207 .loc 1 4329 5
|
||
8208 0068 7868 ldr r0, [r7, #4]
|
||
8209 006a FFF7FEFF bl HAL_SPI_ErrorCallback
|
||
4330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** else
|
||
4333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Call user Rx complete callback */
|
||
4335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #if (USE_HAL_SPI_REGISTER_CALLBACKS == 1U)
|
||
4336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->TxCpltCallback(hspi);
|
||
4337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #else
|
||
4338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** HAL_SPI_TxCpltCallback(hspi);
|
||
4339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
4340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
ARM GAS /tmp/ccs34gJO.s page 220
|
||
|
||
|
||
4341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
8210 .loc 1 4341 1
|
||
8211 006e 02E0 b .L410
|
||
8212 .L408:
|
||
4338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** #endif /* USE_HAL_SPI_REGISTER_CALLBACKS */
|
||
8213 .loc 1 4338 5
|
||
8214 0070 7868 ldr r0, [r7, #4]
|
||
8215 0072 FFF7FEFF bl HAL_SPI_TxCpltCallback
|
||
8216 .L410:
|
||
8217 .loc 1 4341 1
|
||
8218 0076 00BF nop
|
||
8219 0078 1037 adds r7, r7, #16
|
||
8220 .cfi_def_cfa_offset 8
|
||
8221 007a BD46 mov sp, r7
|
||
8222 .cfi_def_cfa_register 13
|
||
8223 @ sp needed
|
||
8224 007c 80BD pop {r7, pc}
|
||
8225 .cfi_endproc
|
||
8226 .LFE183:
|
||
8228 .section .text.SPI_AbortRx_ISR,"ax",%progbits
|
||
8229 .align 1
|
||
8230 .syntax unified
|
||
8231 .thumb
|
||
8232 .thumb_func
|
||
8234 SPI_AbortRx_ISR:
|
||
8235 .LFB184:
|
||
4342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle abort a Rx transaction.
|
||
4345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
4347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
4348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_AbortRx_ISR(SPI_HandleTypeDef *hspi)
|
||
4350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
8236 .loc 1 4350 1
|
||
8237 .cfi_startproc
|
||
8238 @ args = 0, pretend = 0, frame = 16
|
||
8239 @ frame_needed = 1, uses_anonymous_args = 0
|
||
8240 0000 80B5 push {r7, lr}
|
||
8241 .cfi_def_cfa_offset 8
|
||
8242 .cfi_offset 7, -8
|
||
8243 .cfi_offset 14, -4
|
||
8244 0002 86B0 sub sp, sp, #24
|
||
8245 .cfi_def_cfa_offset 32
|
||
8246 0004 02AF add r7, sp, #8
|
||
8247 .cfi_def_cfa 7, 24
|
||
8248 0006 7860 str r0, [r7, #4]
|
||
4351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t count;
|
||
4352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral */
|
||
4354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
8249 .loc 1 4354 3
|
||
8250 0008 7B68 ldr r3, [r7, #4]
|
||
8251 000a 1B68 ldr r3, [r3]
|
||
8252 000c 1A68 ldr r2, [r3]
|
||
8253 000e 7B68 ldr r3, [r7, #4]
|
||
ARM GAS /tmp/ccs34gJO.s page 221
|
||
|
||
|
||
8254 0010 1B68 ldr r3, [r3]
|
||
8255 0012 22F04002 bic r2, r2, #64
|
||
8256 0016 1A60 str r2, [r3]
|
||
4355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = SPI_DEFAULT_TIMEOUT * (SystemCoreClock / 24U / 1000U);
|
||
8257 .loc 1 4356 56
|
||
8258 0018 274B ldr r3, .L417
|
||
8259 001a 1B68 ldr r3, [r3]
|
||
8260 001c 274A ldr r2, .L417+4
|
||
8261 001e A2FB0323 umull r2, r3, r2, r3
|
||
8262 0022 5B0A lsrs r3, r3, #9
|
||
8263 .loc 1 4356 31
|
||
8264 0024 6422 movs r2, #100
|
||
8265 0026 02FB03F3 mul r3, r2, r3
|
||
8266 .loc 1 4356 9
|
||
8267 002a FB60 str r3, [r7, #12]
|
||
4357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNEIE interrupt */
|
||
4359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, (SPI_CR2_RXNEIE));
|
||
8268 .loc 1 4359 3
|
||
8269 002c 7B68 ldr r3, [r7, #4]
|
||
8270 002e 1B68 ldr r3, [r3]
|
||
8271 0030 5A68 ldr r2, [r3, #4]
|
||
8272 0032 7B68 ldr r3, [r7, #4]
|
||
8273 0034 1B68 ldr r3, [r3]
|
||
8274 0036 22F04002 bic r2, r2, #64
|
||
8275 003a 5A60 str r2, [r3, #4]
|
||
8276 .L414:
|
||
4360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check RXNEIE is disabled */
|
||
4362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
4363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
8277 .loc 1 4364 15
|
||
8278 003c FB68 ldr r3, [r7, #12]
|
||
8279 .loc 1 4364 8
|
||
8280 003e 002B cmp r3, #0
|
||
8281 0040 06D1 bne .L412
|
||
4365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
8282 .loc 1 4366 7
|
||
8283 0042 7B68 ldr r3, [r7, #4]
|
||
8284 0044 1B6E ldr r3, [r3, #96]
|
||
8285 0046 43F04002 orr r2, r3, #64
|
||
8286 004a 7B68 ldr r3, [r7, #4]
|
||
8287 004c 1A66 str r2, [r3, #96]
|
||
4367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
8288 .loc 1 4367 7
|
||
8289 004e 09E0 b .L413
|
||
8290 .L412:
|
||
4368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
8291 .loc 1 4369 10
|
||
8292 0050 FB68 ldr r3, [r7, #12]
|
||
8293 0052 013B subs r3, r3, #1
|
||
8294 0054 FB60 str r3, [r7, #12]
|
||
4370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXNEIE));
|
||
ARM GAS /tmp/ccs34gJO.s page 222
|
||
|
||
|
||
8295 .loc 1 4370 12
|
||
8296 0056 7B68 ldr r3, [r7, #4]
|
||
8297 0058 1B68 ldr r3, [r3]
|
||
8298 005a 5B68 ldr r3, [r3, #4]
|
||
8299 005c 03F04003 and r3, r3, #64
|
||
8300 0060 402B cmp r3, #64
|
||
8301 0062 EBD0 beq .L414
|
||
8302 .L413:
|
||
4371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control the BSY flag */
|
||
4373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_BSY, RESET, SPI_DEFAULT_TIMEOUT, HAL_GetTick())
|
||
8303 .loc 1 4373 7
|
||
8304 0064 FFF7FEFF bl HAL_GetTick
|
||
8305 0068 0346 mov r3, r0
|
||
8306 .loc 1 4373 7 is_stmt 0 discriminator 1
|
||
8307 006a 0093 str r3, [sp]
|
||
8308 006c 6423 movs r3, #100
|
||
8309 006e 0022 movs r2, #0
|
||
8310 0070 8021 movs r1, #128
|
||
8311 0072 7868 ldr r0, [r7, #4]
|
||
8312 0074 FFF7FEFF bl SPI_WaitFlagStateUntilTimeout
|
||
8313 0078 0346 mov r3, r0
|
||
8314 .loc 1 4373 6 is_stmt 1 discriminator 2
|
||
8315 007a 002B cmp r3, #0
|
||
8316 007c 02D0 beq .L415
|
||
4374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
8317 .loc 1 4375 21
|
||
8318 007e 7B68 ldr r3, [r7, #4]
|
||
8319 0080 4022 movs r2, #64
|
||
8320 0082 1A66 str r2, [r3, #96]
|
||
8321 .L415:
|
||
4376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
4379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT, HAL
|
||
8322 .loc 1 4379 7
|
||
8323 0084 FFF7FEFF bl HAL_GetTick
|
||
8324 0088 0346 mov r3, r0
|
||
8325 .loc 1 4379 7 is_stmt 0 discriminator 1
|
||
8326 008a 0093 str r3, [sp]
|
||
8327 008c 6423 movs r3, #100
|
||
8328 008e 0022 movs r2, #0
|
||
8329 0090 4FF4C061 mov r1, #1536
|
||
8330 0094 7868 ldr r0, [r7, #4]
|
||
8331 0096 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
8332 009a 0346 mov r3, r0
|
||
8333 .loc 1 4379 6 is_stmt 1 discriminator 2
|
||
8334 009c 002B cmp r3, #0
|
||
8335 009e 02D0 beq .L416
|
||
4380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
8336 .loc 1 4381 21
|
||
8337 00a0 7B68 ldr r3, [r7, #4]
|
||
8338 00a2 4022 movs r2, #64
|
||
8339 00a4 1A66 str r2, [r3, #96]
|
||
8340 .L416:
|
||
ARM GAS /tmp/ccs34gJO.s page 223
|
||
|
||
|
||
4382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_ABORT;
|
||
8341 .loc 1 4384 15
|
||
8342 00a6 7B68 ldr r3, [r7, #4]
|
||
8343 00a8 0722 movs r2, #7
|
||
8344 00aa 83F85D20 strb r2, [r3, #93]
|
||
4385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
8345 .loc 1 4385 1
|
||
8346 00ae 00BF nop
|
||
8347 00b0 1037 adds r7, r7, #16
|
||
8348 .cfi_def_cfa_offset 8
|
||
8349 00b2 BD46 mov sp, r7
|
||
8350 .cfi_def_cfa_register 13
|
||
8351 @ sp needed
|
||
8352 00b4 80BD pop {r7, pc}
|
||
8353 .L418:
|
||
8354 00b6 00BF .align 2
|
||
8355 .L417:
|
||
8356 00b8 00000000 .word SystemCoreClock
|
||
8357 00bc F1197605 .word 91625969
|
||
8358 .cfi_endproc
|
||
8359 .LFE184:
|
||
8361 .section .text.SPI_AbortTx_ISR,"ax",%progbits
|
||
8362 .align 1
|
||
8363 .syntax unified
|
||
8364 .thumb
|
||
8365 .thumb_func
|
||
8367 SPI_AbortTx_ISR:
|
||
8368 .LFB185:
|
||
4386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /**
|
||
4388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @brief Handle abort a Tx or Rx/Tx transaction.
|
||
4389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @param hspi pointer to a SPI_HandleTypeDef structure that contains
|
||
4390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * the configuration information for SPI module.
|
||
4391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** * @retval None
|
||
4392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** */
|
||
4393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** static void SPI_AbortTx_ISR(SPI_HandleTypeDef *hspi)
|
||
4394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
8369 .loc 1 4394 1
|
||
8370 .cfi_startproc
|
||
8371 @ args = 0, pretend = 0, frame = 16
|
||
8372 @ frame_needed = 1, uses_anonymous_args = 0
|
||
8373 0000 80B5 push {r7, lr}
|
||
8374 .cfi_def_cfa_offset 8
|
||
8375 .cfi_offset 7, -8
|
||
8376 .cfi_offset 14, -4
|
||
8377 0002 86B0 sub sp, sp, #24
|
||
8378 .cfi_def_cfa_offset 32
|
||
8379 0004 02AF add r7, sp, #8
|
||
8380 .cfi_def_cfa 7, 24
|
||
8381 0006 7860 str r0, [r7, #4]
|
||
4395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __IO uint32_t count;
|
||
4396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count = SPI_DEFAULT_TIMEOUT * (SystemCoreClock / 24U / 1000U);
|
||
8382 .loc 1 4397 56
|
||
8383 0008 4C4B ldr r3, .L430
|
||
ARM GAS /tmp/ccs34gJO.s page 224
|
||
|
||
|
||
8384 000a 1B68 ldr r3, [r3]
|
||
8385 000c 4C4A ldr r2, .L430+4
|
||
8386 000e A2FB0323 umull r2, r3, r2, r3
|
||
8387 0012 5B0A lsrs r3, r3, #9
|
||
8388 .loc 1 4397 31
|
||
8389 0014 6422 movs r2, #100
|
||
8390 0016 02FB03F3 mul r3, r2, r3
|
||
8391 .loc 1 4397 9
|
||
8392 001a FB60 str r3, [r7, #12]
|
||
4398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable TXEIE interrupt */
|
||
4400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, (SPI_CR2_TXEIE));
|
||
8393 .loc 1 4400 3
|
||
8394 001c 7B68 ldr r3, [r7, #4]
|
||
8395 001e 1B68 ldr r3, [r3]
|
||
8396 0020 5A68 ldr r2, [r3, #4]
|
||
8397 0022 7B68 ldr r3, [r7, #4]
|
||
8398 0024 1B68 ldr r3, [r3]
|
||
8399 0026 22F08002 bic r2, r2, #128
|
||
8400 002a 5A60 str r2, [r3, #4]
|
||
8401 .L422:
|
||
4401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check TXEIE is disabled */
|
||
4403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
4404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
8402 .loc 1 4405 15
|
||
8403 002c FB68 ldr r3, [r7, #12]
|
||
8404 .loc 1 4405 8
|
||
8405 002e 002B cmp r3, #0
|
||
8406 0030 06D1 bne .L420
|
||
4406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
8407 .loc 1 4407 7
|
||
8408 0032 7B68 ldr r3, [r7, #4]
|
||
8409 0034 1B6E ldr r3, [r3, #96]
|
||
8410 0036 43F04002 orr r2, r3, #64
|
||
8411 003a 7B68 ldr r3, [r7, #4]
|
||
8412 003c 1A66 str r2, [r3, #96]
|
||
4408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
8413 .loc 1 4408 7
|
||
8414 003e 09E0 b .L421
|
||
8415 .L420:
|
||
4409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
8416 .loc 1 4410 10
|
||
8417 0040 FB68 ldr r3, [r7, #12]
|
||
8418 0042 013B subs r3, r3, #1
|
||
8419 0044 FB60 str r3, [r7, #12]
|
||
4411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_TXEIE));
|
||
8420 .loc 1 4411 12
|
||
8421 0046 7B68 ldr r3, [r7, #4]
|
||
8422 0048 1B68 ldr r3, [r3]
|
||
8423 004a 5B68 ldr r3, [r3, #4]
|
||
8424 004c 03F08003 and r3, r3, #128
|
||
8425 0050 802B cmp r3, #128
|
||
8426 0052 EBD0 beq .L422
|
||
ARM GAS /tmp/ccs34gJO.s page 225
|
||
|
||
|
||
8427 .L421:
|
||
4412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_EndRxTxTransaction(hspi, SPI_DEFAULT_TIMEOUT, HAL_GetTick()) != HAL_OK)
|
||
8428 .loc 1 4413 7
|
||
8429 0054 FFF7FEFF bl HAL_GetTick
|
||
8430 0058 0346 mov r3, r0
|
||
8431 .loc 1 4413 7 is_stmt 0 discriminator 1
|
||
8432 005a 1A46 mov r2, r3
|
||
8433 005c 6421 movs r1, #100
|
||
8434 005e 7868 ldr r0, [r7, #4]
|
||
8435 0060 FFF7FEFF bl SPI_EndRxTxTransaction
|
||
8436 0064 0346 mov r3, r0
|
||
8437 .loc 1 4413 6 is_stmt 1 discriminator 2
|
||
8438 0066 002B cmp r3, #0
|
||
8439 0068 02D0 beq .L423
|
||
4414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
8440 .loc 1 4415 21
|
||
8441 006a 7B68 ldr r3, [r7, #4]
|
||
8442 006c 4022 movs r2, #64
|
||
8443 006e 1A66 str r2, [r3, #96]
|
||
8444 .L423:
|
||
4416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable SPI Peripheral */
|
||
4419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** __HAL_SPI_DISABLE(hspi);
|
||
8445 .loc 1 4419 3
|
||
8446 0070 7B68 ldr r3, [r7, #4]
|
||
8447 0072 1B68 ldr r3, [r3]
|
||
8448 0074 1A68 ldr r2, [r3]
|
||
8449 0076 7B68 ldr r3, [r7, #4]
|
||
8450 0078 1B68 ldr r3, [r3]
|
||
8451 007a 22F04002 bic r2, r2, #64
|
||
8452 007e 1A60 str r2, [r3]
|
||
4420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
4422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT, HAL
|
||
8453 .loc 1 4422 7
|
||
8454 0080 FFF7FEFF bl HAL_GetTick
|
||
8455 0084 0346 mov r3, r0
|
||
8456 .loc 1 4422 7 is_stmt 0 discriminator 1
|
||
8457 0086 0093 str r3, [sp]
|
||
8458 0088 6423 movs r3, #100
|
||
8459 008a 0022 movs r2, #0
|
||
8460 008c 4FF4C061 mov r1, #1536
|
||
8461 0090 7868 ldr r0, [r7, #4]
|
||
8462 0092 FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
8463 0096 0346 mov r3, r0
|
||
8464 .loc 1 4422 6 is_stmt 1 discriminator 2
|
||
8465 0098 002B cmp r3, #0
|
||
8466 009a 02D0 beq .L424
|
||
4423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
8467 .loc 1 4424 21
|
||
8468 009c 7B68 ldr r3, [r7, #4]
|
||
8469 009e 4022 movs r2, #64
|
||
8470 00a0 1A66 str r2, [r3, #96]
|
||
ARM GAS /tmp/ccs34gJO.s page 226
|
||
|
||
|
||
8471 .L424:
|
||
4425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check case of Full-Duplex Mode and disable directly RXNEIE interrupt */
|
||
4428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXNEIE))
|
||
8472 .loc 1 4428 7
|
||
8473 00a2 7B68 ldr r3, [r7, #4]
|
||
8474 00a4 1B68 ldr r3, [r3]
|
||
8475 00a6 5B68 ldr r3, [r3, #4]
|
||
8476 00a8 03F04003 and r3, r3, #64
|
||
8477 .loc 1 4428 6
|
||
8478 00ac 402B cmp r3, #64
|
||
8479 00ae 3CD1 bne .L425
|
||
4429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Disable RXNEIE interrupt */
|
||
4431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** CLEAR_BIT(hspi->Instance->CR2, (SPI_CR2_RXNEIE));
|
||
8480 .loc 1 4431 5
|
||
8481 00b0 7B68 ldr r3, [r7, #4]
|
||
8482 00b2 1B68 ldr r3, [r3]
|
||
8483 00b4 5A68 ldr r2, [r3, #4]
|
||
8484 00b6 7B68 ldr r3, [r7, #4]
|
||
8485 00b8 1B68 ldr r3, [r3]
|
||
8486 00ba 22F04002 bic r2, r2, #64
|
||
8487 00be 5A60 str r2, [r3, #4]
|
||
8488 .L428:
|
||
4432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Check RXNEIE is disabled */
|
||
4434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** do
|
||
4435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (count == 0U)
|
||
8489 .loc 1 4436 17
|
||
8490 00c0 FB68 ldr r3, [r7, #12]
|
||
8491 .loc 1 4436 10
|
||
8492 00c2 002B cmp r3, #0
|
||
8493 00c4 06D1 bne .L426
|
||
4437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** SET_BIT(hspi->ErrorCode, HAL_SPI_ERROR_ABORT);
|
||
8494 .loc 1 4438 9
|
||
8495 00c6 7B68 ldr r3, [r7, #4]
|
||
8496 00c8 1B6E ldr r3, [r3, #96]
|
||
8497 00ca 43F04002 orr r2, r3, #64
|
||
8498 00ce 7B68 ldr r3, [r7, #4]
|
||
8499 00d0 1A66 str r2, [r3, #96]
|
||
4439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** break;
|
||
8500 .loc 1 4439 9
|
||
8501 00d2 09E0 b .L427
|
||
8502 .L426:
|
||
4440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** count--;
|
||
8503 .loc 1 4441 12
|
||
8504 00d4 FB68 ldr r3, [r7, #12]
|
||
8505 00d6 013B subs r3, r3, #1
|
||
8506 00d8 FB60 str r3, [r7, #12]
|
||
4442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** } while (HAL_IS_BIT_SET(hspi->Instance->CR2, SPI_CR2_RXNEIE));
|
||
8507 .loc 1 4442 14
|
||
8508 00da 7B68 ldr r3, [r7, #4]
|
||
8509 00dc 1B68 ldr r3, [r3]
|
||
ARM GAS /tmp/ccs34gJO.s page 227
|
||
|
||
|
||
8510 00de 5B68 ldr r3, [r3, #4]
|
||
8511 00e0 03F04003 and r3, r3, #64
|
||
8512 00e4 402B cmp r3, #64
|
||
8513 00e6 EBD0 beq .L428
|
||
8514 .L427:
|
||
4443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Control the BSY flag */
|
||
4445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFlagStateUntilTimeout(hspi, SPI_FLAG_BSY, RESET, SPI_DEFAULT_TIMEOUT, HAL_GetTick()
|
||
8515 .loc 1 4445 9
|
||
8516 00e8 FFF7FEFF bl HAL_GetTick
|
||
8517 00ec 0346 mov r3, r0
|
||
8518 .loc 1 4445 9 is_stmt 0 discriminator 1
|
||
8519 00ee 0093 str r3, [sp]
|
||
8520 00f0 6423 movs r3, #100
|
||
8521 00f2 0022 movs r2, #0
|
||
8522 00f4 8021 movs r1, #128
|
||
8523 00f6 7868 ldr r0, [r7, #4]
|
||
8524 00f8 FFF7FEFF bl SPI_WaitFlagStateUntilTimeout
|
||
8525 00fc 0346 mov r3, r0
|
||
8526 .loc 1 4445 8 is_stmt 1 discriminator 2
|
||
8527 00fe 002B cmp r3, #0
|
||
8528 0100 02D0 beq .L429
|
||
4446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
8529 .loc 1 4447 23
|
||
8530 0102 7B68 ldr r3, [r7, #4]
|
||
8531 0104 4022 movs r2, #64
|
||
8532 0106 1A66 str r2, [r3, #96]
|
||
8533 .L429:
|
||
4448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c ****
|
||
4450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** /* Empty the FRLVL fifo */
|
||
4451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** if (SPI_WaitFifoStateUntilTimeout(hspi, SPI_FLAG_FRLVL, SPI_FRLVL_EMPTY, SPI_DEFAULT_TIMEOUT, H
|
||
8534 .loc 1 4451 9
|
||
8535 0108 FFF7FEFF bl HAL_GetTick
|
||
8536 010c 0346 mov r3, r0
|
||
8537 .loc 1 4451 9 is_stmt 0 discriminator 1
|
||
8538 010e 0093 str r3, [sp]
|
||
8539 0110 6423 movs r3, #100
|
||
8540 0112 0022 movs r2, #0
|
||
8541 0114 4FF4C061 mov r1, #1536
|
||
8542 0118 7868 ldr r0, [r7, #4]
|
||
8543 011a FFF7FEFF bl SPI_WaitFifoStateUntilTimeout
|
||
8544 011e 0346 mov r3, r0
|
||
8545 .loc 1 4451 8 is_stmt 1 discriminator 2
|
||
8546 0120 002B cmp r3, #0
|
||
8547 0122 02D0 beq .L425
|
||
4452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** {
|
||
4453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->ErrorCode = HAL_SPI_ERROR_ABORT;
|
||
8548 .loc 1 4453 23
|
||
8549 0124 7B68 ldr r3, [r7, #4]
|
||
8550 0126 4022 movs r2, #64
|
||
8551 0128 1A66 str r2, [r3, #96]
|
||
8552 .L425:
|
||
4454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
4456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** hspi->State = HAL_SPI_STATE_ABORT;
|
||
ARM GAS /tmp/ccs34gJO.s page 228
|
||
|
||
|
||
8553 .loc 1 4456 15
|
||
8554 012a 7B68 ldr r3, [r7, #4]
|
||
8555 012c 0722 movs r2, #7
|
||
8556 012e 83F85D20 strb r2, [r3, #93]
|
||
4457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_spi.c **** }
|
||
8557 .loc 1 4457 1
|
||
8558 0132 00BF nop
|
||
8559 0134 1037 adds r7, r7, #16
|
||
8560 .cfi_def_cfa_offset 8
|
||
8561 0136 BD46 mov sp, r7
|
||
8562 .cfi_def_cfa_register 13
|
||
8563 @ sp needed
|
||
8564 0138 80BD pop {r7, pc}
|
||
8565 .L431:
|
||
8566 013a 00BF .align 2
|
||
8567 .L430:
|
||
8568 013c 00000000 .word SystemCoreClock
|
||
8569 0140 F1197605 .word 91625969
|
||
8570 .cfi_endproc
|
||
8571 .LFE185:
|
||
8573 .text
|
||
8574 .Letext0:
|
||
8575 .file 2 "/nix/store/p8vkamc9b2vlibs9aw76vnasdbifhcbm-gcc-arm-embedded-13.2.rel1/arm-none-eabi/incl
|
||
8576 .file 3 "/nix/store/p8vkamc9b2vlibs9aw76vnasdbifhcbm-gcc-arm-embedded-13.2.rel1/arm-none-eabi/incl
|
||
8577 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
|
||
8578 .file 5 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f3xx.h"
|
||
8579 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
|
||
8580 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h"
|
||
8581 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_spi.h"
|
||
8582 .file 9 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/system_stm32f3xx.h"
|
||
8583 .file 10 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal.h"
|
||
ARM GAS /tmp/ccs34gJO.s page 229
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:00000000 stm32f3xx_hal_spi.c
|
||
/tmp/ccs34gJO.s:21 .text.HAL_SPI_Init:00000000 $t
|
||
/tmp/ccs34gJO.s:27 .text.HAL_SPI_Init:00000000 HAL_SPI_Init
|
||
/tmp/ccs34gJO.s:306 .text.HAL_SPI_MspInit:00000000 HAL_SPI_MspInit
|
||
/tmp/ccs34gJO.s:229 .text.HAL_SPI_DeInit:00000000 $t
|
||
/tmp/ccs34gJO.s:235 .text.HAL_SPI_DeInit:00000000 HAL_SPI_DeInit
|
||
/tmp/ccs34gJO.s:342 .text.HAL_SPI_MspDeInit:00000000 HAL_SPI_MspDeInit
|
||
/tmp/ccs34gJO.s:300 .text.HAL_SPI_MspInit:00000000 $t
|
||
/tmp/ccs34gJO.s:336 .text.HAL_SPI_MspDeInit:00000000 $t
|
||
/tmp/ccs34gJO.s:372 .text.HAL_SPI_Transmit:00000000 $t
|
||
/tmp/ccs34gJO.s:378 .text.HAL_SPI_Transmit:00000000 HAL_SPI_Transmit
|
||
/tmp/ccs34gJO.s:7852 .text.SPI_EndRxTxTransaction:00000000 SPI_EndRxTxTransaction
|
||
/tmp/ccs34gJO.s:909 .text.HAL_SPI_Receive:00000000 $t
|
||
/tmp/ccs34gJO.s:915 .text.HAL_SPI_Receive:00000000 HAL_SPI_Receive
|
||
/tmp/ccs34gJO.s:1335 .text.HAL_SPI_TransmitReceive:00000000 HAL_SPI_TransmitReceive
|
||
/tmp/ccs34gJO.s:7724 .text.SPI_EndRxTransaction:00000000 SPI_EndRxTransaction
|
||
/tmp/ccs34gJO.s:1329 .text.HAL_SPI_TransmitReceive:00000000 $t
|
||
/tmp/ccs34gJO.s:2075 .text.HAL_SPI_Transmit_IT:00000000 $t
|
||
/tmp/ccs34gJO.s:2081 .text.HAL_SPI_Transmit_IT:00000000 HAL_SPI_Transmit_IT
|
||
/tmp/ccs34gJO.s:2272 .text.HAL_SPI_Transmit_IT:00000114 $d
|
||
/tmp/ccs34gJO.s:7250 .text.SPI_TxISR_16BIT:00000000 SPI_TxISR_16BIT
|
||
/tmp/ccs34gJO.s:7179 .text.SPI_TxISR_8BIT:00000000 SPI_TxISR_8BIT
|
||
/tmp/ccs34gJO.s:2278 .text.HAL_SPI_Receive_IT:00000000 $t
|
||
/tmp/ccs34gJO.s:2284 .text.HAL_SPI_Receive_IT:00000000 HAL_SPI_Receive_IT
|
||
/tmp/ccs34gJO.s:2525 .text.HAL_SPI_TransmitReceive_IT:00000000 HAL_SPI_TransmitReceive_IT
|
||
/tmp/ccs34gJO.s:2513 .text.HAL_SPI_Receive_IT:00000158 $d
|
||
/tmp/ccs34gJO.s:7108 .text.SPI_RxISR_16BIT:00000000 SPI_RxISR_16BIT
|
||
/tmp/ccs34gJO.s:7036 .text.SPI_RxISR_8BIT:00000000 SPI_RxISR_8BIT
|
||
/tmp/ccs34gJO.s:2519 .text.HAL_SPI_TransmitReceive_IT:00000000 $t
|
||
/tmp/ccs34gJO.s:2759 .text.HAL_SPI_TransmitReceive_IT:00000150 $d
|
||
/tmp/ccs34gJO.s:6866 .text.SPI_2linesRxISR_16BIT:00000000 SPI_2linesRxISR_16BIT
|
||
/tmp/ccs34gJO.s:6952 .text.SPI_2linesTxISR_16BIT:00000000 SPI_2linesTxISR_16BIT
|
||
/tmp/ccs34gJO.s:6604 .text.SPI_2linesRxISR_8BIT:00000000 SPI_2linesRxISR_8BIT
|
||
/tmp/ccs34gJO.s:6744 .text.SPI_2linesTxISR_8BIT:00000000 SPI_2linesTxISR_8BIT
|
||
/tmp/ccs34gJO.s:2767 .text.HAL_SPI_Transmit_DMA:00000000 $t
|
||
/tmp/ccs34gJO.s:2773 .text.HAL_SPI_Transmit_DMA:00000000 HAL_SPI_Transmit_DMA
|
||
/tmp/ccs34gJO.s:3085 .text.HAL_SPI_Transmit_DMA:000001d4 $d
|
||
/tmp/ccs34gJO.s:6055 .text.SPI_DMAHalfTransmitCplt:00000000 SPI_DMAHalfTransmitCplt
|
||
/tmp/ccs34gJO.s:5697 .text.SPI_DMATransmitCplt:00000000 SPI_DMATransmitCplt
|
||
/tmp/ccs34gJO.s:6172 .text.SPI_DMAError:00000000 SPI_DMAError
|
||
/tmp/ccs34gJO.s:3092 .text.HAL_SPI_Receive_DMA:00000000 $t
|
||
/tmp/ccs34gJO.s:3098 .text.HAL_SPI_Receive_DMA:00000000 HAL_SPI_Receive_DMA
|
||
/tmp/ccs34gJO.s:3490 .text.HAL_SPI_TransmitReceive_DMA:00000000 HAL_SPI_TransmitReceive_DMA
|
||
/tmp/ccs34gJO.s:3477 .text.HAL_SPI_Receive_DMA:00000250 $d
|
||
/tmp/ccs34gJO.s:6094 .text.SPI_DMAHalfReceiveCplt:00000000 SPI_DMAHalfReceiveCplt
|
||
/tmp/ccs34gJO.s:5822 .text.SPI_DMAReceiveCplt:00000000 SPI_DMAReceiveCplt
|
||
/tmp/ccs34gJO.s:3484 .text.HAL_SPI_TransmitReceive_DMA:00000000 $t
|
||
/tmp/ccs34gJO.s:4004 .text.HAL_SPI_TransmitReceive_DMA:00000310 $d
|
||
/tmp/ccs34gJO.s:6133 .text.SPI_DMAHalfTransmitReceiveCplt:00000000 SPI_DMAHalfTransmitReceiveCplt
|
||
/tmp/ccs34gJO.s:5947 .text.SPI_DMATransmitReceiveCplt:00000000 SPI_DMATransmitReceiveCplt
|
||
/tmp/ccs34gJO.s:4013 .text.HAL_SPI_Abort:00000000 $t
|
||
/tmp/ccs34gJO.s:4019 .text.HAL_SPI_Abort:00000000 HAL_SPI_Abort
|
||
/tmp/ccs34gJO.s:7510 .text.SPI_WaitFifoStateUntilTimeout:00000000 SPI_WaitFifoStateUntilTimeout
|
||
/tmp/ccs34gJO.s:7319 .text.SPI_WaitFlagStateUntilTimeout:00000000 SPI_WaitFlagStateUntilTimeout
|
||
/tmp/ccs34gJO.s:4385 .text.HAL_SPI_Abort:00000230 $d
|
||
/tmp/ccs34gJO.s:8367 .text.SPI_AbortTx_ISR:00000000 SPI_AbortTx_ISR
|
||
ARM GAS /tmp/ccs34gJO.s page 230
|
||
|
||
|
||
/tmp/ccs34gJO.s:8234 .text.SPI_AbortRx_ISR:00000000 SPI_AbortRx_ISR
|
||
/tmp/ccs34gJO.s:4393 .text.HAL_SPI_Abort_IT:00000000 $t
|
||
/tmp/ccs34gJO.s:4399 .text.HAL_SPI_Abort_IT:00000000 HAL_SPI_Abort_IT
|
||
/tmp/ccs34gJO.s:5583 .text.HAL_SPI_AbortCpltCallback:00000000 HAL_SPI_AbortCpltCallback
|
||
/tmp/ccs34gJO.s:4737 .text.HAL_SPI_Abort_IT:000001dc $d
|
||
/tmp/ccs34gJO.s:6276 .text.SPI_DMATxAbortCallback:00000000 SPI_DMATxAbortCallback
|
||
/tmp/ccs34gJO.s:6439 .text.SPI_DMARxAbortCallback:00000000 SPI_DMARxAbortCallback
|
||
/tmp/ccs34gJO.s:4747 .text.HAL_SPI_DMAPause:00000000 $t
|
||
/tmp/ccs34gJO.s:4753 .text.HAL_SPI_DMAPause:00000000 HAL_SPI_DMAPause
|
||
/tmp/ccs34gJO.s:4812 .text.HAL_SPI_DMAResume:00000000 $t
|
||
/tmp/ccs34gJO.s:4818 .text.HAL_SPI_DMAResume:00000000 HAL_SPI_DMAResume
|
||
/tmp/ccs34gJO.s:4877 .text.HAL_SPI_DMAStop:00000000 $t
|
||
/tmp/ccs34gJO.s:4883 .text.HAL_SPI_DMAStop:00000000 HAL_SPI_DMAStop
|
||
/tmp/ccs34gJO.s:4977 .text.HAL_SPI_IRQHandler:00000000 $t
|
||
/tmp/ccs34gJO.s:4983 .text.HAL_SPI_IRQHandler:00000000 HAL_SPI_IRQHandler
|
||
/tmp/ccs34gJO.s:5547 .text.HAL_SPI_ErrorCallback:00000000 HAL_SPI_ErrorCallback
|
||
/tmp/ccs34gJO.s:5320 .text.HAL_SPI_IRQHandler:000001fc $d
|
||
/tmp/ccs34gJO.s:6229 .text.SPI_DMAAbortOnError:00000000 SPI_DMAAbortOnError
|
||
/tmp/ccs34gJO.s:5325 .text.HAL_SPI_TxCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5331 .text.HAL_SPI_TxCpltCallback:00000000 HAL_SPI_TxCpltCallback
|
||
/tmp/ccs34gJO.s:5361 .text.HAL_SPI_RxCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5367 .text.HAL_SPI_RxCpltCallback:00000000 HAL_SPI_RxCpltCallback
|
||
/tmp/ccs34gJO.s:5397 .text.HAL_SPI_TxRxCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5403 .text.HAL_SPI_TxRxCpltCallback:00000000 HAL_SPI_TxRxCpltCallback
|
||
/tmp/ccs34gJO.s:5433 .text.HAL_SPI_TxHalfCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5439 .text.HAL_SPI_TxHalfCpltCallback:00000000 HAL_SPI_TxHalfCpltCallback
|
||
/tmp/ccs34gJO.s:5469 .text.HAL_SPI_RxHalfCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5475 .text.HAL_SPI_RxHalfCpltCallback:00000000 HAL_SPI_RxHalfCpltCallback
|
||
/tmp/ccs34gJO.s:5505 .text.HAL_SPI_TxRxHalfCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5511 .text.HAL_SPI_TxRxHalfCpltCallback:00000000 HAL_SPI_TxRxHalfCpltCallback
|
||
/tmp/ccs34gJO.s:5541 .text.HAL_SPI_ErrorCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5577 .text.HAL_SPI_AbortCpltCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:5613 .text.HAL_SPI_GetState:00000000 $t
|
||
/tmp/ccs34gJO.s:5619 .text.HAL_SPI_GetState:00000000 HAL_SPI_GetState
|
||
/tmp/ccs34gJO.s:5653 .text.HAL_SPI_GetError:00000000 $t
|
||
/tmp/ccs34gJO.s:5659 .text.HAL_SPI_GetError:00000000 HAL_SPI_GetError
|
||
/tmp/ccs34gJO.s:5692 .text.SPI_DMATransmitCplt:00000000 $t
|
||
/tmp/ccs34gJO.s:5817 .text.SPI_DMAReceiveCplt:00000000 $t
|
||
/tmp/ccs34gJO.s:5942 .text.SPI_DMATransmitReceiveCplt:00000000 $t
|
||
/tmp/ccs34gJO.s:6050 .text.SPI_DMAHalfTransmitCplt:00000000 $t
|
||
/tmp/ccs34gJO.s:6089 .text.SPI_DMAHalfReceiveCplt:00000000 $t
|
||
/tmp/ccs34gJO.s:6128 .text.SPI_DMAHalfTransmitReceiveCplt:00000000 $t
|
||
/tmp/ccs34gJO.s:6167 .text.SPI_DMAError:00000000 $t
|
||
/tmp/ccs34gJO.s:6224 .text.SPI_DMAAbortOnError:00000000 $t
|
||
/tmp/ccs34gJO.s:6271 .text.SPI_DMATxAbortCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:6434 .text.SPI_DMARxAbortCallback:00000000 $t
|
||
/tmp/ccs34gJO.s:6599 .text.SPI_2linesRxISR_8BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:7955 .text.SPI_CloseRxTx_ISR:00000000 SPI_CloseRxTx_ISR
|
||
/tmp/ccs34gJO.s:6739 .text.SPI_2linesTxISR_8BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:6861 .text.SPI_2linesRxISR_16BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:6947 .text.SPI_2linesTxISR_16BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:7031 .text.SPI_RxISR_8BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:8055 .text.SPI_CloseRx_ISR:00000000 SPI_CloseRx_ISR
|
||
/tmp/ccs34gJO.s:7103 .text.SPI_RxISR_16BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:7174 .text.SPI_TxISR_8BIT:00000000 $t
|
||
/tmp/ccs34gJO.s:8134 .text.SPI_CloseTx_ISR:00000000 SPI_CloseTx_ISR
|
||
/tmp/ccs34gJO.s:7245 .text.SPI_TxISR_16BIT:00000000 $t
|
||
ARM GAS /tmp/ccs34gJO.s page 231
|
||
|
||
|
||
/tmp/ccs34gJO.s:7314 .text.SPI_WaitFlagStateUntilTimeout:00000000 $t
|
||
/tmp/ccs34gJO.s:7500 .text.SPI_WaitFlagStateUntilTimeout:0000010c $d
|
||
/tmp/ccs34gJO.s:7505 .text.SPI_WaitFifoStateUntilTimeout:00000000 $t
|
||
/tmp/ccs34gJO.s:7714 .text.SPI_WaitFifoStateUntilTimeout:00000128 $d
|
||
/tmp/ccs34gJO.s:7719 .text.SPI_EndRxTransaction:00000000 $t
|
||
/tmp/ccs34gJO.s:7847 .text.SPI_EndRxTxTransaction:00000000 $t
|
||
/tmp/ccs34gJO.s:7950 .text.SPI_CloseRxTx_ISR:00000000 $t
|
||
/tmp/ccs34gJO.s:8050 .text.SPI_CloseRx_ISR:00000000 $t
|
||
/tmp/ccs34gJO.s:8129 .text.SPI_CloseTx_ISR:00000000 $t
|
||
/tmp/ccs34gJO.s:8229 .text.SPI_AbortRx_ISR:00000000 $t
|
||
/tmp/ccs34gJO.s:8356 .text.SPI_AbortRx_ISR:000000b8 $d
|
||
/tmp/ccs34gJO.s:8362 .text.SPI_AbortTx_ISR:00000000 $t
|
||
/tmp/ccs34gJO.s:8568 .text.SPI_AbortTx_ISR:0000013c $d
|
||
|
||
UNDEFINED SYMBOLS
|
||
HAL_GetTick
|
||
HAL_DMA_Start_IT
|
||
HAL_DMA_Abort
|
||
SystemCoreClock
|
||
HAL_DMA_Abort_IT
|