ARM GAS /tmp/ccVuJrQ5.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "gpio.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.MX_GPIO_Init,"ax",%progbits 20 .align 1 21 .global MX_GPIO_Init 22 .syntax unified 23 .thumb 24 .thumb_func 26 MX_GPIO_Init: 27 .LFB134: 28 .file 1 "Src/gpio.c" 1:Src/gpio.c **** /* USER CODE BEGIN Header */ 2:Src/gpio.c **** /** 3:Src/gpio.c **** ****************************************************************************** 4:Src/gpio.c **** * @file gpio.c 5:Src/gpio.c **** * @brief This file provides code for the configuration 6:Src/gpio.c **** * of all used GPIO pins. 7:Src/gpio.c **** ****************************************************************************** 8:Src/gpio.c **** * @attention 9:Src/gpio.c **** * 10:Src/gpio.c **** * Copyright (c) 2025 STMicroelectronics. 11:Src/gpio.c **** * All rights reserved. 12:Src/gpio.c **** * 13:Src/gpio.c **** * This software is licensed under terms that can be found in the LICENSE file 14:Src/gpio.c **** * in the root directory of this software component. 15:Src/gpio.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 16:Src/gpio.c **** * 17:Src/gpio.c **** ****************************************************************************** 18:Src/gpio.c **** */ 19:Src/gpio.c **** /* USER CODE END Header */ 20:Src/gpio.c **** 21:Src/gpio.c **** /* Includes ------------------------------------------------------------------*/ 22:Src/gpio.c **** #include "gpio.h" 23:Src/gpio.c **** 24:Src/gpio.c **** /* USER CODE BEGIN 0 */ 25:Src/gpio.c **** 26:Src/gpio.c **** /* USER CODE END 0 */ 27:Src/gpio.c **** 28:Src/gpio.c **** /*----------------------------------------------------------------------------*/ 29:Src/gpio.c **** /* Configure GPIO */ 30:Src/gpio.c **** /*----------------------------------------------------------------------------*/ ARM GAS /tmp/ccVuJrQ5.s page 2 31:Src/gpio.c **** /* USER CODE BEGIN 1 */ 32:Src/gpio.c **** 33:Src/gpio.c **** /* USER CODE END 1 */ 34:Src/gpio.c **** 35:Src/gpio.c **** /** Configure pins as 36:Src/gpio.c **** * Analog 37:Src/gpio.c **** * Input 38:Src/gpio.c **** * Output 39:Src/gpio.c **** * EVENT_OUT 40:Src/gpio.c **** * EXTI 41:Src/gpio.c **** PD0 ------> CAN1_RX 42:Src/gpio.c **** */ 43:Src/gpio.c **** void MX_GPIO_Init(void) 44:Src/gpio.c **** { 29 .loc 1 44 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 40 32 @ frame_needed = 0, uses_anonymous_args = 0 33 0000 70B5 push {r4, r5, r6, lr} 34 .LCFI0: 35 .cfi_def_cfa_offset 16 36 .cfi_offset 4, -16 37 .cfi_offset 5, -12 38 .cfi_offset 6, -8 39 .cfi_offset 14, -4 40 0002 8AB0 sub sp, sp, #40 41 .LCFI1: 42 .cfi_def_cfa_offset 56 45:Src/gpio.c **** 46:Src/gpio.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; 43 .loc 1 46 3 view .LVU1 44 .loc 1 46 20 is_stmt 0 view .LVU2 45 0004 0024 movs r4, #0 46 0006 0594 str r4, [sp, #20] 47 0008 0694 str r4, [sp, #24] 48 000a 0794 str r4, [sp, #28] 49 000c 0894 str r4, [sp, #32] 50 000e 0994 str r4, [sp, #36] 47:Src/gpio.c **** 48:Src/gpio.c **** /* GPIO Ports Clock Enable */ 49:Src/gpio.c **** __HAL_RCC_GPIOC_CLK_ENABLE(); 51 .loc 1 49 3 is_stmt 1 view .LVU3 52 .LBB2: 53 .loc 1 49 3 view .LVU4 54 0010 0094 str r4, [sp] 55 .loc 1 49 3 view .LVU5 56 0012 2C4B ldr r3, .L3 57 0014 1A6B ldr r2, [r3, #48] 58 0016 42F00402 orr r2, r2, #4 59 001a 1A63 str r2, [r3, #48] 60 .loc 1 49 3 view .LVU6 61 001c 1A6B ldr r2, [r3, #48] 62 001e 02F00402 and r2, r2, #4 63 0022 0092 str r2, [sp] 64 .loc 1 49 3 view .LVU7 65 0024 009A ldr r2, [sp] 66 .LBE2: ARM GAS /tmp/ccVuJrQ5.s page 3 67 .loc 1 49 3 view .LVU8 50:Src/gpio.c **** __HAL_RCC_GPIOH_CLK_ENABLE(); 68 .loc 1 50 3 view .LVU9 69 .LBB3: 70 .loc 1 50 3 view .LVU10 71 0026 0194 str r4, [sp, #4] 72 .loc 1 50 3 view .LVU11 73 0028 1A6B ldr r2, [r3, #48] 74 002a 42F08002 orr r2, r2, #128 75 002e 1A63 str r2, [r3, #48] 76 .loc 1 50 3 view .LVU12 77 0030 1A6B ldr r2, [r3, #48] 78 0032 02F08002 and r2, r2, #128 79 0036 0192 str r2, [sp, #4] 80 .loc 1 50 3 view .LVU13 81 0038 019A ldr r2, [sp, #4] 82 .LBE3: 83 .loc 1 50 3 view .LVU14 51:Src/gpio.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); 84 .loc 1 51 3 view .LVU15 85 .LBB4: 86 .loc 1 51 3 view .LVU16 87 003a 0294 str r4, [sp, #8] 88 .loc 1 51 3 view .LVU17 89 003c 1A6B ldr r2, [r3, #48] 90 003e 42F00202 orr r2, r2, #2 91 0042 1A63 str r2, [r3, #48] 92 .loc 1 51 3 view .LVU18 93 0044 1A6B ldr r2, [r3, #48] 94 0046 02F00202 and r2, r2, #2 95 004a 0292 str r2, [sp, #8] 96 .loc 1 51 3 view .LVU19 97 004c 029A ldr r2, [sp, #8] 98 .LBE4: 99 .loc 1 51 3 view .LVU20 52:Src/gpio.c **** __HAL_RCC_GPIOA_CLK_ENABLE(); 100 .loc 1 52 3 view .LVU21 101 .LBB5: 102 .loc 1 52 3 view .LVU22 103 004e 0394 str r4, [sp, #12] 104 .loc 1 52 3 view .LVU23 105 0050 1A6B ldr r2, [r3, #48] 106 0052 42F00102 orr r2, r2, #1 107 0056 1A63 str r2, [r3, #48] 108 .loc 1 52 3 view .LVU24 109 0058 1A6B ldr r2, [r3, #48] 110 005a 02F00102 and r2, r2, #1 111 005e 0392 str r2, [sp, #12] 112 .loc 1 52 3 view .LVU25 113 0060 039A ldr r2, [sp, #12] 114 .LBE5: 115 .loc 1 52 3 view .LVU26 53:Src/gpio.c **** __HAL_RCC_GPIOD_CLK_ENABLE(); 116 .loc 1 53 3 view .LVU27 117 .LBB6: 118 .loc 1 53 3 view .LVU28 119 0062 0494 str r4, [sp, #16] ARM GAS /tmp/ccVuJrQ5.s page 4 120 .loc 1 53 3 view .LVU29 121 0064 1A6B ldr r2, [r3, #48] 122 0066 42F00802 orr r2, r2, #8 123 006a 1A63 str r2, [r3, #48] 124 .loc 1 53 3 view .LVU30 125 006c 1B6B ldr r3, [r3, #48] 126 006e 03F00803 and r3, r3, #8 127 0072 0493 str r3, [sp, #16] 128 .loc 1 53 3 view .LVU31 129 0074 049B ldr r3, [sp, #16] 130 .LBE6: 131 .loc 1 53 3 view .LVU32 54:Src/gpio.c **** 55:Src/gpio.c **** /*Configure GPIO pin Output Level */ 56:Src/gpio.c **** HAL_GPIO_WritePin(SPI_FLASH_CS_GPIO_Port, SPI_FLASH_CS_Pin, GPIO_PIN_RESET); 132 .loc 1 56 3 view .LVU33 133 0076 144E ldr r6, .L3+4 134 0078 2246 mov r2, r4 135 007a 0121 movs r1, #1 136 007c 3046 mov r0, r6 137 007e FFF7FEFF bl HAL_GPIO_WritePin 138 .LVL0: 57:Src/gpio.c **** 58:Src/gpio.c **** /*Configure GPIO pin : SPI_FLASH_CS_Pin */ 59:Src/gpio.c **** GPIO_InitStruct.Pin = SPI_FLASH_CS_Pin; 139 .loc 1 59 3 view .LVU34 140 .loc 1 59 23 is_stmt 0 view .LVU35 141 0082 0125 movs r5, #1 142 0084 0595 str r5, [sp, #20] 60:Src/gpio.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; 143 .loc 1 60 3 is_stmt 1 view .LVU36 144 .loc 1 60 24 is_stmt 0 view .LVU37 145 0086 0695 str r5, [sp, #24] 61:Src/gpio.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; 146 .loc 1 61 3 is_stmt 1 view .LVU38 147 .loc 1 61 24 is_stmt 0 view .LVU39 148 0088 0794 str r4, [sp, #28] 62:Src/gpio.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; 149 .loc 1 62 3 is_stmt 1 view .LVU40 150 .loc 1 62 25 is_stmt 0 view .LVU41 151 008a 0894 str r4, [sp, #32] 63:Src/gpio.c **** HAL_GPIO_Init(SPI_FLASH_CS_GPIO_Port, &GPIO_InitStruct); 152 .loc 1 63 3 is_stmt 1 view .LVU42 153 008c 05A9 add r1, sp, #20 154 008e 3046 mov r0, r6 155 0090 FFF7FEFF bl HAL_GPIO_Init 156 .LVL1: 64:Src/gpio.c **** 65:Src/gpio.c **** /*Configure GPIO pin : PD0 */ 66:Src/gpio.c **** GPIO_InitStruct.Pin = GPIO_PIN_0; 157 .loc 1 66 3 view .LVU43 158 .loc 1 66 23 is_stmt 0 view .LVU44 159 0094 0595 str r5, [sp, #20] 67:Src/gpio.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 160 .loc 1 67 3 is_stmt 1 view .LVU45 161 .loc 1 67 24 is_stmt 0 view .LVU46 162 0096 0223 movs r3, #2 ARM GAS /tmp/ccVuJrQ5.s page 5 163 0098 0693 str r3, [sp, #24] 68:Src/gpio.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; 164 .loc 1 68 3 is_stmt 1 view .LVU47 165 .loc 1 68 24 is_stmt 0 view .LVU48 166 009a 0794 str r4, [sp, #28] 69:Src/gpio.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 167 .loc 1 69 3 is_stmt 1 view .LVU49 168 .loc 1 69 25 is_stmt 0 view .LVU50 169 009c 0323 movs r3, #3 170 009e 0893 str r3, [sp, #32] 70:Src/gpio.c **** GPIO_InitStruct.Alternate = GPIO_AF9_CAN1; 171 .loc 1 70 3 is_stmt 1 view .LVU51 172 .loc 1 70 29 is_stmt 0 view .LVU52 173 00a0 0923 movs r3, #9 174 00a2 0993 str r3, [sp, #36] 71:Src/gpio.c **** HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); 175 .loc 1 71 3 is_stmt 1 view .LVU53 176 00a4 094D ldr r5, .L3+8 177 00a6 05A9 add r1, sp, #20 178 00a8 2846 mov r0, r5 179 00aa FFF7FEFF bl HAL_GPIO_Init 180 .LVL2: 72:Src/gpio.c **** 73:Src/gpio.c **** /*Configure GPIO pin : SD_CARD_DET_Pin */ 74:Src/gpio.c **** GPIO_InitStruct.Pin = SD_CARD_DET_Pin; 181 .loc 1 74 3 view .LVU54 182 .loc 1 74 23 is_stmt 0 view .LVU55 183 00ae 0823 movs r3, #8 184 00b0 0593 str r3, [sp, #20] 75:Src/gpio.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; 185 .loc 1 75 3 is_stmt 1 view .LVU56 186 .loc 1 75 24 is_stmt 0 view .LVU57 187 00b2 0694 str r4, [sp, #24] 76:Src/gpio.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; 188 .loc 1 76 3 is_stmt 1 view .LVU58 189 .loc 1 76 24 is_stmt 0 view .LVU59 190 00b4 0794 str r4, [sp, #28] 77:Src/gpio.c **** HAL_GPIO_Init(SD_CARD_DET_GPIO_Port, &GPIO_InitStruct); 191 .loc 1 77 3 is_stmt 1 view .LVU60 192 00b6 05A9 add r1, sp, #20 193 00b8 2846 mov r0, r5 194 00ba FFF7FEFF bl HAL_GPIO_Init 195 .LVL3: 78:Src/gpio.c **** 79:Src/gpio.c **** } 196 .loc 1 79 1 is_stmt 0 view .LVU61 197 00be 0AB0 add sp, sp, #40 198 .LCFI2: 199 .cfi_def_cfa_offset 16 200 @ sp needed 201 00c0 70BD pop {r4, r5, r6, pc} 202 .L4: 203 00c2 00BF .align 2 204 .L3: 205 00c4 00380240 .word 1073887232 206 00c8 00040240 .word 1073873920 207 00cc 000C0240 .word 1073875968 ARM GAS /tmp/ccVuJrQ5.s page 6 208 .cfi_endproc 209 .LFE134: 211 .text 212 .Letext0: 213 .file 2 "/home/jfen/toolchain/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/machine/_defaul 214 .file 3 "/home/jfen/toolchain/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/sys/_stdint.h" 215 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h" 216 .file 5 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h" ARM GAS /tmp/ccVuJrQ5.s page 7 DEFINED SYMBOLS *ABS*:0000000000000000 gpio.c /tmp/ccVuJrQ5.s:20 .text.MX_GPIO_Init:0000000000000000 $t /tmp/ccVuJrQ5.s:26 .text.MX_GPIO_Init:0000000000000000 MX_GPIO_Init /tmp/ccVuJrQ5.s:205 .text.MX_GPIO_Init:00000000000000c4 $d UNDEFINED SYMBOLS HAL_GPIO_WritePin HAL_GPIO_Init