ARM GAS /tmp/ccmx4Y0c.s page 1 1 .cpu cortex-m7 2 .arch armv7e-m 3 .fpu fpv5-d16 4 .eabi_attribute 28, 1 5 .eabi_attribute 20, 1 6 .eabi_attribute 21, 1 7 .eabi_attribute 23, 3 8 .eabi_attribute 24, 1 9 .eabi_attribute 25, 1 10 .eabi_attribute 26, 1 11 .eabi_attribute 30, 1 12 .eabi_attribute 34, 1 13 .eabi_attribute 18, 4 14 .file "stm32f7xx_hal_i2c_ex.c" 15 .text 16 .Ltext0: 17 .cfi_sections .debug_frame 18 .file 1 "Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c" 19 .section .text.HAL_I2CEx_ConfigAnalogFilter,"ax",%progbits 20 .align 1 21 .global HAL_I2CEx_ConfigAnalogFilter 22 .syntax unified 23 .thumb 24 .thumb_func 26 HAL_I2CEx_ConfigAnalogFilter: 27 .LVL0: 28 .LFB141: 1:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** 2:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ****************************************************************************** 3:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @file stm32f7xx_hal_i2c_ex.c 4:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @author MCD Application Team 5:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief I2C Extended HAL module driver. 6:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * This file provides firmware functions to manage the following 7:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * functionalities of I2C Extended peripheral: 8:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * + Filter Mode Functions 9:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * + FastModePlus Functions 10:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * 11:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ****************************************************************************** 12:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @attention 13:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * 14:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * Copyright (c) 2017 STMicroelectronics. 15:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * All rights reserved. 16:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * 17:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * This software is licensed under terms that can be found in the LICENSE file 18:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * in the root directory of this software component. 19:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 20:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * 21:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ****************************************************************************** 22:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** @verbatim 23:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ============================================================================== 24:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ##### I2C peripheral Extended features ##### 25:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ============================================================================== 26:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 27:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** [..] Comparing to other previous devices, the I2C interface for STM32F7xx 28:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** devices contains the following additional features 29:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 30:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (+) Possibility to disable or enable Analog Noise Filter ARM GAS /tmp/ccmx4Y0c.s page 2 31:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (+) Use of a configured Digital Noise Filter 32:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (+) Disable or enable Fast Mode Plus 33:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 34:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ##### How to use this driver ##### 35:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ============================================================================== 36:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** [..] This driver provides functions to: 37:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (#) Configure I2C Analog noise filter using the function HAL_I2CEx_ConfigAnalogFilter() 38:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (#) Configure I2C Digital noise filter using the function HAL_I2CEx_ConfigDigitalFilter() 39:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (#) Configure the enable or disable of fast mode plus driving capability using the functions : 40:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (++) HAL_I2CEx_EnableFastModePlus() 41:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (++) HAL_I2CEx_DisableFastModePlus() 42:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** @endverbatim 43:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 44:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 45:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Includes ------------------------------------------------------------------*/ 46:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** #include "stm32f7xx_hal.h" 47:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 48:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** @addtogroup STM32F7xx_HAL_Driver 49:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @{ 50:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 51:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 52:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** @defgroup I2CEx I2CEx 53:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief I2C Extended HAL module driver 54:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @{ 55:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 56:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 57:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** #ifdef HAL_I2C_MODULE_ENABLED 58:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 59:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Private typedef -----------------------------------------------------------*/ 60:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Private define ------------------------------------------------------------*/ 61:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Private macro -------------------------------------------------------------*/ 62:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Private variables ---------------------------------------------------------*/ 63:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Private function prototypes -----------------------------------------------*/ 64:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Private functions ---------------------------------------------------------*/ 65:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 66:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** @defgroup I2CEx_Exported_Functions I2C Extended Exported Functions 67:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @{ 68:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 69:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 70:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** @defgroup I2CEx_Exported_Functions_Group1 Filter Mode Functions 71:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief Filter Mode Functions 72:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * 73:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** @verbatim 74:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** =============================================================================== 75:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ##### Filter Mode Functions ##### 76:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** =============================================================================== 77:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** [..] This section provides functions allowing to: 78:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (+) Configure Noise Filters 79:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 80:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** @endverbatim 81:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @{ 82:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 83:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 84:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** 85:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief Configure I2C Analog noise filter. 86:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains 87:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * the configuration information for the specified I2Cx peripheral. ARM GAS /tmp/ccmx4Y0c.s page 3 88:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @param AnalogFilter New state of the Analog filter. 89:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @retval HAL status 90:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 91:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** HAL_StatusTypeDef HAL_I2CEx_ConfigAnalogFilter(I2C_HandleTypeDef *hi2c, uint32_t AnalogFilter) 92:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 29 .loc 1 92 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 @ link register save eliminated. 34 .loc 1 92 1 is_stmt 0 view .LVU1 35 0000 0346 mov r3, r0 93:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Check the parameters */ 94:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** assert_param(IS_I2C_ALL_INSTANCE(hi2c->Instance)); 36 .loc 1 94 3 is_stmt 1 view .LVU2 95:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** assert_param(IS_I2C_ANALOG_FILTER(AnalogFilter)); 37 .loc 1 95 3 view .LVU3 96:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 97:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** if (hi2c->State == HAL_I2C_STATE_READY) 38 .loc 1 97 3 view .LVU4 39 .loc 1 97 11 is_stmt 0 view .LVU5 40 0002 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2 41 0006 D2B2 uxtb r2, r2 42 .loc 1 97 6 view .LVU6 43 0008 202A cmp r2, #32 44 000a 23D1 bne .L3 98:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 99:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Process Locked */ 100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_LOCK(hi2c); 45 .loc 1 100 5 is_stmt 1 view .LVU7 46 .loc 1 100 5 view .LVU8 47 000c 90F84020 ldrb r2, [r0, #64] @ zero_extendqisi2 48 0010 012A cmp r2, #1 49 0012 21D0 beq .L4 50 .loc 1 100 5 discriminator 2 view .LVU9 51 0014 0122 movs r2, #1 52 0016 80F84020 strb r2, [r0, #64] 53 .loc 1 100 5 discriminator 2 view .LVU10 101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->State = HAL_I2C_STATE_BUSY; 54 .loc 1 102 5 view .LVU11 55 .loc 1 102 17 is_stmt 0 view .LVU12 56 001a 2422 movs r2, #36 57 001c 80F84120 strb r2, [r0, #65] 103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 104:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Disable the selected I2C peripheral */ 105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_I2C_DISABLE(hi2c); 58 .loc 1 105 5 is_stmt 1 view .LVU13 59 0020 0068 ldr r0, [r0] 60 .LVL1: 61 .loc 1 105 5 is_stmt 0 view .LVU14 62 0022 0268 ldr r2, [r0] 63 0024 22F00102 bic r2, r2, #1 64 0028 0260 str r2, [r0] 106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Reset I2Cx ANOFF bit */ 108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->Instance->CR1 &= ~(I2C_CR1_ANFOFF); ARM GAS /tmp/ccmx4Y0c.s page 4 65 .loc 1 108 5 is_stmt 1 view .LVU15 66 .loc 1 108 9 is_stmt 0 view .LVU16 67 002a 1868 ldr r0, [r3] 68 .loc 1 108 19 view .LVU17 69 002c 0268 ldr r2, [r0] 70 .loc 1 108 25 view .LVU18 71 002e 22F48052 bic r2, r2, #4096 72 0032 0260 str r2, [r0] 109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Set analog filter bit*/ 111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->Instance->CR1 |= AnalogFilter; 73 .loc 1 111 5 is_stmt 1 view .LVU19 74 .loc 1 111 9 is_stmt 0 view .LVU20 75 0034 1868 ldr r0, [r3] 76 .loc 1 111 19 view .LVU21 77 0036 0268 ldr r2, [r0] 78 .loc 1 111 25 view .LVU22 79 0038 1143 orrs r1, r1, r2 80 .LVL2: 81 .loc 1 111 25 view .LVU23 82 003a 0160 str r1, [r0] 112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_I2C_ENABLE(hi2c); 83 .loc 1 113 5 is_stmt 1 view .LVU24 84 003c 1968 ldr r1, [r3] 85 003e 0A68 ldr r2, [r1] 86 0040 42F00102 orr r2, r2, #1 87 0044 0A60 str r2, [r1] 114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->State = HAL_I2C_STATE_READY; 88 .loc 1 115 5 view .LVU25 89 .loc 1 115 17 is_stmt 0 view .LVU26 90 0046 2022 movs r2, #32 91 0048 83F84120 strb r2, [r3, #65] 116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Process Unlocked */ 118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_UNLOCK(hi2c); 92 .loc 1 118 5 is_stmt 1 view .LVU27 93 .loc 1 118 5 view .LVU28 94 004c 0020 movs r0, #0 95 004e 83F84000 strb r0, [r3, #64] 96 .loc 1 118 5 view .LVU29 119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** return HAL_OK; 97 .loc 1 120 5 view .LVU30 98 .loc 1 120 12 is_stmt 0 view .LVU31 99 0052 7047 bx lr 100 .LVL3: 101 .L3: 121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** else 123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** return HAL_BUSY; 102 .loc 1 124 12 view .LVU32 103 0054 0220 movs r0, #2 104 .LVL4: 105 .loc 1 124 12 view .LVU33 ARM GAS /tmp/ccmx4Y0c.s page 5 106 0056 7047 bx lr 107 .LVL5: 108 .L4: 100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 109 .loc 1 100 5 discriminator 1 view .LVU34 110 0058 0220 movs r0, #2 111 .LVL6: 125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 112 .loc 1 126 1 view .LVU35 113 005a 7047 bx lr 114 .cfi_endproc 115 .LFE141: 117 .section .text.HAL_I2CEx_ConfigDigitalFilter,"ax",%progbits 118 .align 1 119 .global HAL_I2CEx_ConfigDigitalFilter 120 .syntax unified 121 .thumb 122 .thumb_func 124 HAL_I2CEx_ConfigDigitalFilter: 125 .LVL7: 126 .LFB142: 127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 128:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** 129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief Configure I2C Digital noise filter. 130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @param hi2c Pointer to a I2C_HandleTypeDef structure that contains 131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * the configuration information for the specified I2Cx peripheral. 132:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @param DigitalFilter Coefficient of digital noise filter between Min_Data=0x00 and Max_Data=0x 133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @retval HAL status 134:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** HAL_StatusTypeDef HAL_I2CEx_ConfigDigitalFilter(I2C_HandleTypeDef *hi2c, uint32_t DigitalFilter) 136:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 127 .loc 1 136 1 is_stmt 1 view -0 128 .cfi_startproc 129 @ args = 0, pretend = 0, frame = 0 130 @ frame_needed = 0, uses_anonymous_args = 0 131 @ link register save eliminated. 132 .loc 1 136 1 is_stmt 0 view .LVU37 133 0000 0346 mov r3, r0 137:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** uint32_t tmpreg; 134 .loc 1 137 3 is_stmt 1 view .LVU38 138:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Check the parameters */ 140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** assert_param(IS_I2C_ALL_INSTANCE(hi2c->Instance)); 135 .loc 1 140 3 view .LVU39 141:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** assert_param(IS_I2C_DIGITAL_FILTER(DigitalFilter)); 136 .loc 1 141 3 view .LVU40 142:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** if (hi2c->State == HAL_I2C_STATE_READY) 137 .loc 1 143 3 view .LVU41 138 .loc 1 143 11 is_stmt 0 view .LVU42 139 0002 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2 140 0006 D2B2 uxtb r2, r2 141 .loc 1 143 6 view .LVU43 142 0008 202A cmp r2, #32 143 000a 21D1 bne .L7 144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { ARM GAS /tmp/ccmx4Y0c.s page 6 145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Process Locked */ 146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_LOCK(hi2c); 144 .loc 1 146 5 is_stmt 1 view .LVU44 145 .loc 1 146 5 view .LVU45 146 000c 90F84020 ldrb r2, [r0, #64] @ zero_extendqisi2 147 0010 012A cmp r2, #1 148 0012 1FD0 beq .L8 149 .loc 1 146 5 discriminator 2 view .LVU46 150 0014 0122 movs r2, #1 151 0016 80F84020 strb r2, [r0, #64] 152 .loc 1 146 5 discriminator 2 view .LVU47 147:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 148:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->State = HAL_I2C_STATE_BUSY; 153 .loc 1 148 5 view .LVU48 154 .loc 1 148 17 is_stmt 0 view .LVU49 155 001a 2422 movs r2, #36 156 001c 80F84120 strb r2, [r0, #65] 149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Disable the selected I2C peripheral */ 151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_I2C_DISABLE(hi2c); 157 .loc 1 151 5 is_stmt 1 view .LVU50 158 0020 0068 ldr r0, [r0] 159 .LVL8: 160 .loc 1 151 5 is_stmt 0 view .LVU51 161 0022 0268 ldr r2, [r0] 162 0024 22F00102 bic r2, r2, #1 163 0028 0260 str r2, [r0] 152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Get the old register value */ 154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** tmpreg = hi2c->Instance->CR1; 164 .loc 1 154 5 is_stmt 1 view .LVU52 165 .loc 1 154 18 is_stmt 0 view .LVU53 166 002a 1868 ldr r0, [r3] 167 .loc 1 154 12 view .LVU54 168 002c 0268 ldr r2, [r0] 169 .LVL9: 155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Reset I2Cx DNF bits [11:8] */ 157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** tmpreg &= ~(I2C_CR1_DNF); 170 .loc 1 157 5 is_stmt 1 view .LVU55 171 .loc 1 157 12 is_stmt 0 view .LVU56 172 002e 22F47062 bic r2, r2, #3840 173 .LVL10: 158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Set I2Cx DNF coefficient */ 160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** tmpreg |= DigitalFilter << 8U; 174 .loc 1 160 5 is_stmt 1 view .LVU57 175 .loc 1 160 12 is_stmt 0 view .LVU58 176 0032 42EA0122 orr r2, r2, r1, lsl #8 177 .LVL11: 161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Store the new register value */ 163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->Instance->CR1 = tmpreg; 178 .loc 1 163 5 is_stmt 1 view .LVU59 179 .loc 1 163 25 is_stmt 0 view .LVU60 180 0036 0260 str r2, [r0] 164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ARM GAS /tmp/ccmx4Y0c.s page 7 165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_I2C_ENABLE(hi2c); 181 .loc 1 165 5 is_stmt 1 view .LVU61 182 0038 1968 ldr r1, [r3] 183 .LVL12: 184 .loc 1 165 5 is_stmt 0 view .LVU62 185 003a 0A68 ldr r2, [r1] 186 .LVL13: 187 .loc 1 165 5 view .LVU63 188 003c 42F00102 orr r2, r2, #1 189 0040 0A60 str r2, [r1] 190 .LVL14: 166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** hi2c->State = HAL_I2C_STATE_READY; 191 .loc 1 167 5 is_stmt 1 view .LVU64 192 .loc 1 167 17 is_stmt 0 view .LVU65 193 0042 2022 movs r2, #32 194 0044 83F84120 strb r2, [r3, #65] 168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Process Unlocked */ 170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_UNLOCK(hi2c); 195 .loc 1 170 5 is_stmt 1 view .LVU66 196 .loc 1 170 5 view .LVU67 197 0048 0020 movs r0, #0 198 004a 83F84000 strb r0, [r3, #64] 199 .loc 1 170 5 view .LVU68 171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** return HAL_OK; 200 .loc 1 172 5 view .LVU69 201 .loc 1 172 12 is_stmt 0 view .LVU70 202 004e 7047 bx lr 203 .LVL15: 204 .L7: 173:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 174:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** else 175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 176:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** return HAL_BUSY; 205 .loc 1 176 12 view .LVU71 206 0050 0220 movs r0, #2 207 .LVL16: 208 .loc 1 176 12 view .LVU72 209 0052 7047 bx lr 210 .LVL17: 211 .L8: 146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 212 .loc 1 146 5 discriminator 1 view .LVU73 213 0054 0220 movs r0, #2 214 .LVL18: 177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 215 .loc 1 178 1 view .LVU74 216 0056 7047 bx lr 217 .cfi_endproc 218 .LFE142: 220 .section .text.HAL_I2CEx_EnableFastModePlus,"ax",%progbits 221 .align 1 222 .global HAL_I2CEx_EnableFastModePlus 223 .syntax unified ARM GAS /tmp/ccmx4Y0c.s page 8 224 .thumb 225 .thumb_func 227 HAL_I2CEx_EnableFastModePlus: 228 .LVL19: 229 .LFB143: 179:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** 180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @} 181:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 182:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** #if (defined(SYSCFG_PMC_I2C_PB6_FMP) || defined(SYSCFG_PMC_I2C_PB7_FMP)) || (defined(SYSCFG_PMC_I2 183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 184:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** @defgroup I2CEx_Exported_Functions_Group3 Fast Mode Plus Functions 185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief Fast Mode Plus Functions 186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * 187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** @verbatim 188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** =============================================================================== 189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** ##### Fast Mode Plus Functions ##### 190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** =============================================================================== 191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** [..] This section provides functions allowing to: 192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** (+) Configure Fast Mode Plus 193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** @endverbatim 195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @{ 196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** 199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief Enable the I2C fast mode plus driving capability. 200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @param ConfigFastModePlus Selects the pin. 201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * This parameter can be one of the @ref I2CEx_FastModePlus values 202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For I2C1, fast mode plus driving capability can be enabled on all selected 203:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * I2C1 pins using I2C_FASTMODEPLUS_I2C1 parameter or independently 204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * on each one of the following pins PB6, PB7, PB8 and PB9. 205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For remaining I2C1 pins (PA14, PA15...) fast mode plus driving capability 206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * can be enabled only by using I2C_FASTMODEPLUS_I2C1 parameter. 207:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For all I2C2 pins fast mode plus driving capability can be enabled 208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * only by using I2C_FASTMODEPLUS_I2C2 parameter. 209:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For all I2C3 pins fast mode plus driving capability can be enabled 210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * only by using I2C_FASTMODEPLUS_I2C3 parameter. 211:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For all I2C4 pins fast mode plus driving capability can be enabled 212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * only by using I2C_FASTMODEPLUS_I2C4 parameter. 213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @retval None 214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** void HAL_I2CEx_EnableFastModePlus(uint32_t ConfigFastModePlus) 216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 230 .loc 1 216 1 is_stmt 1 view -0 231 .cfi_startproc 232 @ args = 0, pretend = 0, frame = 8 233 @ frame_needed = 0, uses_anonymous_args = 0 234 @ link register save eliminated. 235 .loc 1 216 1 is_stmt 0 view .LVU76 236 0000 82B0 sub sp, sp, #8 237 .LCFI0: 238 .cfi_def_cfa_offset 8 217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Check the parameter */ 218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** assert_param(IS_I2C_FASTMODEPLUS(ConfigFastModePlus)); 239 .loc 1 218 3 is_stmt 1 view .LVU77 219:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 220:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Enable SYSCFG clock */ ARM GAS /tmp/ccmx4Y0c.s page 9 221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_RCC_SYSCFG_CLK_ENABLE(); 240 .loc 1 221 3 view .LVU78 241 .LBB2: 242 .loc 1 221 3 view .LVU79 243 .loc 1 221 3 view .LVU80 244 0002 084B ldr r3, .L11 245 0004 5A6C ldr r2, [r3, #68] 246 0006 42F48042 orr r2, r2, #16384 247 000a 5A64 str r2, [r3, #68] 248 .loc 1 221 3 view .LVU81 249 000c 5B6C ldr r3, [r3, #68] 250 000e 03F48043 and r3, r3, #16384 251 0012 0193 str r3, [sp, #4] 252 .loc 1 221 3 view .LVU82 253 0014 019B ldr r3, [sp, #4] 254 .LBE2: 255 .loc 1 221 3 view .LVU83 222:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Enable fast mode plus driving capability for selected pin */ 224:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** SET_BIT(SYSCFG->PMC, (uint32_t)ConfigFastModePlus); 256 .loc 1 224 3 view .LVU84 257 0016 044A ldr r2, .L11+4 258 0018 5368 ldr r3, [r2, #4] 259 001a 0343 orrs r3, r3, r0 260 001c 5360 str r3, [r2, #4] 225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 261 .loc 1 225 1 is_stmt 0 view .LVU85 262 001e 02B0 add sp, sp, #8 263 .LCFI1: 264 .cfi_def_cfa_offset 0 265 @ sp needed 266 0020 7047 bx lr 267 .L12: 268 0022 00BF .align 2 269 .L11: 270 0024 00380240 .word 1073887232 271 0028 00380140 .word 1073821696 272 .cfi_endproc 273 .LFE143: 275 .section .text.HAL_I2CEx_DisableFastModePlus,"ax",%progbits 276 .align 1 277 .global HAL_I2CEx_DisableFastModePlus 278 .syntax unified 279 .thumb 280 .thumb_func 282 HAL_I2CEx_DisableFastModePlus: 283 .LVL20: 284 .LFB144: 226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 227:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /** 228:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @brief Disable the I2C fast mode plus driving capability. 229:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @param ConfigFastModePlus Selects the pin. 230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * This parameter can be one of the @ref I2CEx_FastModePlus values 231:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For I2C1, fast mode plus driving capability can be disabled on all selected 232:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * I2C1 pins using I2C_FASTMODEPLUS_I2C1 parameter or independently 233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * on each one of the following pins PB6, PB7, PB8 and PB9. 234:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For remaining I2C1 pins (PA14, PA15...) fast mode plus driving capability ARM GAS /tmp/ccmx4Y0c.s page 10 235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * can be disabled only by using I2C_FASTMODEPLUS_I2C1 parameter. 236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For all I2C2 pins fast mode plus driving capability can be disabled 237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * only by using I2C_FASTMODEPLUS_I2C2 parameter. 238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For all I2C3 pins fast mode plus driving capability can be disabled 239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * only by using I2C_FASTMODEPLUS_I2C3 parameter. 240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @note For all I2C4 pins fast mode plus driving capability can be disabled 241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * only by using I2C_FASTMODEPLUS_I2C4 parameter. 242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** * @retval None 243:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** */ 244:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** void HAL_I2CEx_DisableFastModePlus(uint32_t ConfigFastModePlus) 245:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** { 285 .loc 1 245 1 is_stmt 1 view -0 286 .cfi_startproc 287 @ args = 0, pretend = 0, frame = 8 288 @ frame_needed = 0, uses_anonymous_args = 0 289 @ link register save eliminated. 290 .loc 1 245 1 is_stmt 0 view .LVU87 291 0000 82B0 sub sp, sp, #8 292 .LCFI2: 293 .cfi_def_cfa_offset 8 246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Check the parameter */ 247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** assert_param(IS_I2C_FASTMODEPLUS(ConfigFastModePlus)); 294 .loc 1 247 3 is_stmt 1 view .LVU88 248:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 249:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Enable SYSCFG clock */ 250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** __HAL_RCC_SYSCFG_CLK_ENABLE(); 295 .loc 1 250 3 view .LVU89 296 .LBB3: 297 .loc 1 250 3 view .LVU90 298 .loc 1 250 3 view .LVU91 299 0002 084B ldr r3, .L15 300 0004 5A6C ldr r2, [r3, #68] 301 0006 42F48042 orr r2, r2, #16384 302 000a 5A64 str r2, [r3, #68] 303 .loc 1 250 3 view .LVU92 304 000c 5B6C ldr r3, [r3, #68] 305 000e 03F48043 and r3, r3, #16384 306 0012 0193 str r3, [sp, #4] 307 .loc 1 250 3 view .LVU93 308 0014 019B ldr r3, [sp, #4] 309 .LBE3: 310 .loc 1 250 3 view .LVU94 251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** 252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** /* Disable fast mode plus driving capability for selected pin */ 253:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** CLEAR_BIT(SYSCFG->PMC, (uint32_t)ConfigFastModePlus); 311 .loc 1 253 3 view .LVU95 312 0016 044A ldr r2, .L15+4 313 0018 5368 ldr r3, [r2, #4] 314 001a 23EA0003 bic r3, r3, r0 315 001e 5360 str r3, [r2, #4] 254:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_i2c_ex.c **** } 316 .loc 1 254 1 is_stmt 0 view .LVU96 317 0020 02B0 add sp, sp, #8 318 .LCFI3: 319 .cfi_def_cfa_offset 0 320 @ sp needed 321 0022 7047 bx lr ARM GAS /tmp/ccmx4Y0c.s page 11 322 .L16: 323 .align 2 324 .L15: 325 0024 00380240 .word 1073887232 326 0028 00380140 .word 1073821696 327 .cfi_endproc 328 .LFE144: 330 .text 331 .Letext0: 332 .file 2 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" 333 .file 3 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" 334 .file 4 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" 335 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" 336 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_i2c.h" ARM GAS /tmp/ccmx4Y0c.s page 12 DEFINED SYMBOLS *ABS*:00000000 stm32f7xx_hal_i2c_ex.c /tmp/ccmx4Y0c.s:20 .text.HAL_I2CEx_ConfigAnalogFilter:00000000 $t /tmp/ccmx4Y0c.s:26 .text.HAL_I2CEx_ConfigAnalogFilter:00000000 HAL_I2CEx_ConfigAnalogFilter /tmp/ccmx4Y0c.s:118 .text.HAL_I2CEx_ConfigDigitalFilter:00000000 $t /tmp/ccmx4Y0c.s:124 .text.HAL_I2CEx_ConfigDigitalFilter:00000000 HAL_I2CEx_ConfigDigitalFilter /tmp/ccmx4Y0c.s:221 .text.HAL_I2CEx_EnableFastModePlus:00000000 $t /tmp/ccmx4Y0c.s:227 .text.HAL_I2CEx_EnableFastModePlus:00000000 HAL_I2CEx_EnableFastModePlus /tmp/ccmx4Y0c.s:270 .text.HAL_I2CEx_EnableFastModePlus:00000024 $d /tmp/ccmx4Y0c.s:276 .text.HAL_I2CEx_DisableFastModePlus:00000000 $t /tmp/ccmx4Y0c.s:282 .text.HAL_I2CEx_DisableFastModePlus:00000000 HAL_I2CEx_DisableFastModePlus /tmp/ccmx4Y0c.s:325 .text.HAL_I2CEx_DisableFastModePlus:00000024 $d NO UNDEFINED SYMBOLS