ARM GAS /tmp/cc7t8dPw.s page 1
1 .cpu cortex-m3
2 .arch armv7-m
3 .fpu softvfp
4 .eabi_attribute 20, 1
5 .eabi_attribute 21, 1
6 .eabi_attribute 23, 3
7 .eabi_attribute 24, 1
8 .eabi_attribute 25, 1
9 .eabi_attribute 26, 1
10 .eabi_attribute 30, 1
11 .eabi_attribute 34, 1
12 .eabi_attribute 18, 4
13 .file "usbd_core.c"
14 .text
15 .Ltext0:
16 .cfi_sections .debug_frame
17 .section .text.USBD_Init,"ax",%progbits
18 .align 1
19 .global USBD_Init
20 .syntax unified
21 .thumb
22 .thumb_func
24 USBD_Init:
25 .LVL0:
26 .LFB655:
27 .file 1 "Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c"
1:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
2:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ******************************************************************************
3:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @file usbd_core.c
4:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @author MCD Application Team
5:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief This file provides all the USBD core functions.
6:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ******************************************************************************
7:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @attention
8:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *
9:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *
© Copyright (c) 2015 STMicroelectronics.
10:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * All rights reserved.
11:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *
12:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * This software component is licensed by ST under Ultimate Liberty license
13:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * SLA0044, the "License"; You may not use this file except in compliance with
14:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * the License. You may obtain a copy of the License at:
15:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * www.st.com/SLA0044
16:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *
17:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ******************************************************************************
18:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
19:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
20:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Includes ------------------------------------------------------------------*/
21:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #include "usbd_core.h"
22:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
23:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @addtogroup STM32_USBD_DEVICE_LIBRARY
24:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
25:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
26:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
27:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
28:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE
29:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief usbd core module
30:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
31:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
ARM GAS /tmp/cc7t8dPw.s page 2
32:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
33:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_TypesDefinitions
34:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
35:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
36:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
37:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
38:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
39:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
40:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
41:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
42:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Defines
43:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
44:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
45:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
46:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
47:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
48:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
49:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
50:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
51:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Macros
52:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
53:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
54:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
55:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
56:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
57:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
58:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
59:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
60:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_FunctionPrototypes
61:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
62:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
63:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
64:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
65:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
66:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
67:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
68:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Variables
69:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
70:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
71:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
72:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
73:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
74:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
75:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
76:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
77:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Functions
78:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
79:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
80:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
81:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
82:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Init
83:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Initializes the device stack and load the class driver
84:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
85:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdesc: Descriptor structure address
86:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param id: Low level core index
87:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval None
88:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
ARM GAS /tmp/cc7t8dPw.s page 3
89:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_Init(USBD_HandleTypeDef *pdev,
90:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_DescriptorsTypeDef *pdesc, uint8_t id)
91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
28 .loc 1 91 1 view -0
29 .cfi_startproc
30 @ args = 0, pretend = 0, frame = 0
31 @ frame_needed = 0, uses_anonymous_args = 0
92:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Check whether the USB Host handle is valid */
93:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev == NULL)
32 .loc 1 93 3 view .LVU1
33 .loc 1 93 6 is_stmt 0 view .LVU2
34 0000 98B1 cbz r0, .L5
91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Check whether the USB Host handle is valid */
35 .loc 1 91 1 view .LVU3
36 0002 08B5 push {r3, lr}
37 .LCFI0:
38 .cfi_def_cfa_offset 8
39 .cfi_offset 3, -8
40 .cfi_offset 14, -4
41 0004 0346 mov r3, r0
94:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
95:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if (USBD_DEBUG_LEVEL > 1U)
96:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_ErrLog("Invalid Device handle");
97:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
99:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
100:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Unlink previous class*/
102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
42 .loc 1 102 3 is_stmt 1 view .LVU4
43 .loc 1 102 11 is_stmt 0 view .LVU5
44 0006 D0F8B402 ldr r0, [r0, #692]
45 .LVL1:
46 .loc 1 102 6 view .LVU6
47 000a 10B1 cbz r0, .L3
103:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass = NULL;
48 .loc 1 104 5 is_stmt 1 view .LVU7
49 .loc 1 104 18 is_stmt 0 view .LVU8
50 000c 0020 movs r0, #0
51 000e C3F8B402 str r0, [r3, #692]
52 .L3:
105:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
106:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
107:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Assign USBD Descriptors */
108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdesc != NULL)
53 .loc 1 108 3 is_stmt 1 view .LVU9
54 .loc 1 108 6 is_stmt 0 view .LVU10
55 0012 09B1 cbz r1, .L4
109:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
110:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pDesc = pdesc;
56 .loc 1 110 5 is_stmt 1 view .LVU11
57 .loc 1 110 17 is_stmt 0 view .LVU12
58 0014 C3F8B012 str r1, [r3, #688]
59 .L4:
111:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
ARM GAS /tmp/cc7t8dPw.s page 4
113:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Set Device initial State */
114:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
60 .loc 1 114 3 is_stmt 1 view .LVU13
61 .loc 1 114 19 is_stmt 0 view .LVU14
62 0018 0121 movs r1, #1
63 .LVL2:
64 .loc 1 114 19 view .LVU15
65 001a 83F89C12 strb r1, [r3, #668]
115:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->id = id;
66 .loc 1 115 3 is_stmt 1 view .LVU16
67 .loc 1 115 12 is_stmt 0 view .LVU17
68 001e 1A70 strb r2, [r3]
116:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Initialize low level driver */
117:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_Init(pdev);
69 .loc 1 117 3 is_stmt 1 view .LVU18
70 0020 1846 mov r0, r3
71 0022 FFF7FEFF bl USBD_LL_Init
72 .LVL3:
118:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
119:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
73 .loc 1 119 3 view .LVU19
74 .loc 1 119 10 is_stmt 0 view .LVU20
75 0026 0020 movs r0, #0
120:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
76 .loc 1 120 1 view .LVU21
77 0028 08BD pop {r3, pc}
78 .LVL4:
79 .L5:
80 .LCFI1:
81 .cfi_def_cfa_offset 0
82 .cfi_restore 3
83 .cfi_restore 14
98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
84 .loc 1 98 12 view .LVU22
85 002a 0220 movs r0, #2
86 .LVL5:
87 .loc 1 120 1 view .LVU23
88 002c 7047 bx lr
89 .cfi_endproc
90 .LFE655:
92 .section .text.USBD_DeInit,"ax",%progbits
93 .align 1
94 .global USBD_DeInit
95 .syntax unified
96 .thumb
97 .thumb_func
99 USBD_DeInit:
100 .LVL6:
101 .LFB656:
121:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
122:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_DeInit
124:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Re-Initialize th device library
125:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
126:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status: status
127:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
128:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_DeInit(USBD_HandleTypeDef *pdev)
ARM GAS /tmp/cc7t8dPw.s page 5
129:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
102 .loc 1 129 1 is_stmt 1 view -0
103 .cfi_startproc
104 @ args = 0, pretend = 0, frame = 0
105 @ frame_needed = 0, uses_anonymous_args = 0
106 .loc 1 129 1 is_stmt 0 view .LVU25
107 0000 10B5 push {r4, lr}
108 .LCFI2:
109 .cfi_def_cfa_offset 8
110 .cfi_offset 4, -8
111 .cfi_offset 14, -4
112 0002 0446 mov r4, r0
130:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Set Default State */
131:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
113 .loc 1 131 3 is_stmt 1 view .LVU26
114 .loc 1 131 19 is_stmt 0 view .LVU27
115 0004 0123 movs r3, #1
116 0006 80F89C32 strb r3, [r0, #668]
132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
133:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Class Resources */
134:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
117 .loc 1 134 3 is_stmt 1 view .LVU28
118 .loc 1 134 7 is_stmt 0 view .LVU29
119 000a D0F8B432 ldr r3, [r0, #692]
120 .loc 1 134 15 view .LVU30
121 000e 5B68 ldr r3, [r3, #4]
122 .loc 1 134 3 view .LVU31
123 0010 0179 ldrb r1, [r0, #4] @ zero_extendqisi2
124 0012 9847 blx r3
125 .LVL7:
135:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
136:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Stop the low level driver */
137:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_Stop(pdev);
126 .loc 1 137 3 is_stmt 1 view .LVU32
127 0014 2046 mov r0, r4
128 0016 FFF7FEFF bl USBD_LL_Stop
129 .LVL8:
138:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
139:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Initialize low level driver */
140:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_DeInit(pdev);
130 .loc 1 140 3 view .LVU33
131 001a 2046 mov r0, r4
132 001c FFF7FEFF bl USBD_LL_DeInit
133 .LVL9:
141:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
142:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
134 .loc 1 142 3 view .LVU34
143:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
135 .loc 1 143 1 is_stmt 0 view .LVU35
136 0020 0020 movs r0, #0
137 0022 10BD pop {r4, pc}
138 .loc 1 143 1 view .LVU36
139 .cfi_endproc
140 .LFE656:
142 .section .text.USBD_RegisterClass,"ax",%progbits
143 .align 1
144 .global USBD_RegisterClass
ARM GAS /tmp/cc7t8dPw.s page 6
145 .syntax unified
146 .thumb
147 .thumb_func
149 USBD_RegisterClass:
150 .LVL10:
151 .LFB657:
144:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
145:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
146:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_RegisterClass
147:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Link class driver to Device Core.
148:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pDevice : Device Handle
149:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pclass: Class handle
150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval USBD Status
151:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
152:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_RegisterClass(USBD_HandleTypeDef *pdev, USBD_ClassTypeDef *pclass)
153:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
152 .loc 1 153 1 is_stmt 1 view -0
153 .cfi_startproc
154 @ args = 0, pretend = 0, frame = 0
155 @ frame_needed = 0, uses_anonymous_args = 0
156 @ link register save eliminated.
154:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef status = USBD_OK;
157 .loc 1 154 3 view .LVU38
155:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pclass != NULL)
158 .loc 1 155 3 view .LVU39
159 .loc 1 155 6 is_stmt 0 view .LVU40
160 0000 19B1 cbz r1, .L14
156:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
157:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* link the class to the USB Device handle */
158:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass = pclass;
161 .loc 1 158 5 is_stmt 1 view .LVU41
162 .loc 1 158 18 is_stmt 0 view .LVU42
163 0002 C0F8B412 str r1, [r0, #692]
159:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** status = USBD_OK;
164 .loc 1 159 5 is_stmt 1 view .LVU43
165 .loc 1 159 12 is_stmt 0 view .LVU44
166 0006 0020 movs r0, #0
167 .LVL11:
168 .loc 1 159 12 view .LVU45
169 0008 7047 bx lr
170 .LVL12:
171 .L14:
160:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
161:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
162:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
163:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if (USBD_DEBUG_LEVEL > 1U)
164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_ErrLog("Invalid Class handle");
165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
166:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** status = USBD_FAIL;
172 .loc 1 166 12 view .LVU46
173 000a 0220 movs r0, #2
174 .LVL13:
167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
168:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
169:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return status;
175 .loc 1 169 3 is_stmt 1 view .LVU47
170:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
ARM GAS /tmp/cc7t8dPw.s page 7
176 .loc 1 170 1 is_stmt 0 view .LVU48
177 000c 7047 bx lr
178 .cfi_endproc
179 .LFE657:
181 .section .text.USBD_Start,"ax",%progbits
182 .align 1
183 .global USBD_Start
184 .syntax unified
185 .thumb
186 .thumb_func
188 USBD_Start:
189 .LVL14:
190 .LFB658:
171:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
173:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Start
174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Start the USB Device Core.
175:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: Device Handle
176:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval USBD Status
177:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_Start(USBD_HandleTypeDef *pdev)
179:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
191 .loc 1 179 1 is_stmt 1 view -0
192 .cfi_startproc
193 @ args = 0, pretend = 0, frame = 0
194 @ frame_needed = 0, uses_anonymous_args = 0
195 .loc 1 179 1 is_stmt 0 view .LVU50
196 0000 08B5 push {r3, lr}
197 .LCFI3:
198 .cfi_def_cfa_offset 8
199 .cfi_offset 3, -8
200 .cfi_offset 14, -4
180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Start the low level driver */
181:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_Start(pdev);
201 .loc 1 181 3 is_stmt 1 view .LVU51
202 0002 FFF7FEFF bl USBD_LL_Start
203 .LVL15:
182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
183:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
204 .loc 1 183 3 view .LVU52
184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
205 .loc 1 184 1 is_stmt 0 view .LVU53
206 0006 0020 movs r0, #0
207 0008 08BD pop {r3, pc}
208 .cfi_endproc
209 .LFE658:
211 .section .text.USBD_Stop,"ax",%progbits
212 .align 1
213 .global USBD_Stop
214 .syntax unified
215 .thumb
216 .thumb_func
218 USBD_Stop:
219 .LVL16:
220 .LFB659:
185:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
186:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
ARM GAS /tmp/cc7t8dPw.s page 8
187:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Stop
188:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Stop the USB Device Core.
189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: Device Handle
190:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval USBD Status
191:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
192:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_Stop(USBD_HandleTypeDef *pdev)
193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
221 .loc 1 193 1 is_stmt 1 view -0
222 .cfi_startproc
223 @ args = 0, pretend = 0, frame = 0
224 @ frame_needed = 0, uses_anonymous_args = 0
225 .loc 1 193 1 is_stmt 0 view .LVU55
226 0000 10B5 push {r4, lr}
227 .LCFI4:
228 .cfi_def_cfa_offset 8
229 .cfi_offset 4, -8
230 .cfi_offset 14, -4
231 0002 0446 mov r4, r0
194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Class Resources */
195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
232 .loc 1 195 3 is_stmt 1 view .LVU56
233 .loc 1 195 7 is_stmt 0 view .LVU57
234 0004 D0F8B432 ldr r3, [r0, #692]
235 .loc 1 195 15 view .LVU58
236 0008 5B68 ldr r3, [r3, #4]
237 .loc 1 195 3 view .LVU59
238 000a 0179 ldrb r1, [r0, #4] @ zero_extendqisi2
239 000c 9847 blx r3
240 .LVL17:
196:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
197:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Stop the low level driver */
198:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_Stop(pdev);
241 .loc 1 198 3 is_stmt 1 view .LVU60
242 000e 2046 mov r0, r4
243 0010 FFF7FEFF bl USBD_LL_Stop
244 .LVL18:
199:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
200:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
245 .loc 1 200 3 view .LVU61
201:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
246 .loc 1 201 1 is_stmt 0 view .LVU62
247 0014 0020 movs r0, #0
248 0016 10BD pop {r4, pc}
249 .loc 1 201 1 view .LVU63
250 .cfi_endproc
251 .LFE659:
253 .section .text.USBD_RunTestMode,"ax",%progbits
254 .align 1
255 .global USBD_RunTestMode
256 .syntax unified
257 .thumb
258 .thumb_func
260 USBD_RunTestMode:
261 .LVL19:
262 .LFB660:
202:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
203:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
ARM GAS /tmp/cc7t8dPw.s page 9
204:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_RunTestMode
205:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Launch test mode process
206:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
207:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
208:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
209:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_RunTestMode(USBD_HandleTypeDef *pdev)
210:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
263 .loc 1 210 1 is_stmt 1 view -0
264 .cfi_startproc
265 @ args = 0, pretend = 0, frame = 0
266 @ frame_needed = 0, uses_anonymous_args = 0
267 @ link register save eliminated.
211:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prevent unused argument compilation warning */
212:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(pdev);
268 .loc 1 212 3 view .LVU65
213:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
214:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
269 .loc 1 214 3 view .LVU66
215:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
270 .loc 1 215 1 is_stmt 0 view .LVU67
271 0000 0020 movs r0, #0
272 .LVL20:
273 .loc 1 215 1 view .LVU68
274 0002 7047 bx lr
275 .cfi_endproc
276 .LFE660:
278 .section .text.USBD_SetClassConfig,"ax",%progbits
279 .align 1
280 .global USBD_SetClassConfig
281 .syntax unified
282 .thumb
283 .thumb_func
285 USBD_SetClassConfig:
286 .LVL21:
287 .LFB661:
216:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
217:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_SetClassConfig
219:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Configure device and start the interface
220:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param cfgidx: configuration index
222:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
223:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
224:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_SetClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx)
226:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
288 .loc 1 226 1 is_stmt 1 view -0
289 .cfi_startproc
290 @ args = 0, pretend = 0, frame = 0
291 @ frame_needed = 0, uses_anonymous_args = 0
292 .loc 1 226 1 is_stmt 0 view .LVU70
293 0000 08B5 push {r3, lr}
294 .LCFI5:
295 .cfi_def_cfa_offset 8
296 .cfi_offset 3, -8
297 .cfi_offset 14, -4
227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret = USBD_FAIL;
ARM GAS /tmp/cc7t8dPw.s page 10
298 .loc 1 227 3 is_stmt 1 view .LVU71
299 .LVL22:
228:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
229:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
300 .loc 1 229 3 view .LVU72
301 .loc 1 229 11 is_stmt 0 view .LVU73
302 0002 D0F8B432 ldr r3, [r0, #692]
303 .loc 1 229 6 view .LVU74
304 0006 2BB1 cbz r3, .L22
230:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
231:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Set configuration and Start the Class*/
232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->Init(pdev, cfgidx) == 0U)
305 .loc 1 232 5 is_stmt 1 view .LVU75
306 .loc 1 232 21 is_stmt 0 view .LVU76
307 0008 1B68 ldr r3, [r3]
308 .loc 1 232 9 view .LVU77
309 000a 9847 blx r3
310 .LVL23:
311 .loc 1 232 8 view .LVU78
312 000c 00B9 cbnz r0, .L24
313 .L21:
314 .LVL24:
233:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
234:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_OK;
235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
236:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
237:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
315 .loc 1 238 3 is_stmt 1 view .LVU79
239:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
316 .loc 1 239 1 is_stmt 0 view .LVU80
317 000e 08BD pop {r3, pc}
318 .LVL25:
319 .L24:
227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
320 .loc 1 227 22 view .LVU81
321 0010 0220 movs r0, #2
322 0012 FCE7 b .L21
323 .LVL26:
324 .L22:
227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
325 .loc 1 227 22 view .LVU82
326 0014 0220 movs r0, #2
327 .LVL27:
227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
328 .loc 1 227 22 view .LVU83
329 0016 FAE7 b .L21
330 .cfi_endproc
331 .LFE661:
333 .section .text.USBD_ClrClassConfig,"ax",%progbits
334 .align 1
335 .global USBD_ClrClassConfig
336 .syntax unified
337 .thumb
338 .thumb_func
340 USBD_ClrClassConfig:
341 .LVL28:
ARM GAS /tmp/cc7t8dPw.s page 11
342 .LFB662:
240:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
241:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_ClrClassConfig
243:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Clear current configuration
244:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
245:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param cfgidx: configuration index
246:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status: USBD_StatusTypeDef
247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
248:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_ClrClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx)
249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
343 .loc 1 249 1 is_stmt 1 view -0
344 .cfi_startproc
345 @ args = 0, pretend = 0, frame = 0
346 @ frame_needed = 0, uses_anonymous_args = 0
347 .loc 1 249 1 is_stmt 0 view .LVU85
348 0000 08B5 push {r3, lr}
349 .LCFI6:
350 .cfi_def_cfa_offset 8
351 .cfi_offset 3, -8
352 .cfi_offset 14, -4
250:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Clear configuration and De-initialize the Class process*/
251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, cfgidx);
353 .loc 1 251 3 is_stmt 1 view .LVU86
354 .loc 1 251 7 is_stmt 0 view .LVU87
355 0002 D0F8B432 ldr r3, [r0, #692]
356 .loc 1 251 15 view .LVU88
357 0006 5B68 ldr r3, [r3, #4]
358 .loc 1 251 3 view .LVU89
359 0008 9847 blx r3
360 .LVL29:
252:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
253:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
361 .loc 1 253 3 is_stmt 1 view .LVU90
254:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
362 .loc 1 254 1 is_stmt 0 view .LVU91
363 000a 0020 movs r0, #0
364 000c 08BD pop {r3, pc}
365 .cfi_endproc
366 .LFE662:
368 .section .text.USBD_LL_SetupStage,"ax",%progbits
369 .align 1
370 .global USBD_LL_SetupStage
371 .syntax unified
372 .thumb
373 .thumb_func
375 USBD_LL_SetupStage:
376 .LVL30:
377 .LFB663:
255:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
256:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
257:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
258:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_SetupStage
259:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle the setup stage
260:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
261:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
262:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
ARM GAS /tmp/cc7t8dPw.s page 12
263:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SetupStage(USBD_HandleTypeDef *pdev, uint8_t *psetup)
264:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
378 .loc 1 264 1 is_stmt 1 view -0
379 .cfi_startproc
380 @ args = 0, pretend = 0, frame = 0
381 @ frame_needed = 0, uses_anonymous_args = 0
382 .loc 1 264 1 is_stmt 0 view .LVU93
383 0000 38B5 push {r3, r4, r5, lr}
384 .LCFI7:
385 .cfi_def_cfa_offset 16
386 .cfi_offset 3, -16
387 .cfi_offset 4, -12
388 .cfi_offset 5, -8
389 .cfi_offset 14, -4
390 0002 0446 mov r4, r0
265:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_ParseSetupRequest(&pdev->request, psetup);
391 .loc 1 265 3 is_stmt 1 view .LVU94
392 0004 00F52A75 add r5, r0, #680
393 0008 2846 mov r0, r5
394 .LVL31:
395 .loc 1 265 3 is_stmt 0 view .LVU95
396 000a FFF7FEFF bl USBD_ParseSetupRequest
397 .LVL32:
266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
267:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_state = USBD_EP0_SETUP;
398 .loc 1 267 3 is_stmt 1 view .LVU96
399 .loc 1 267 19 is_stmt 0 view .LVU97
400 000e 0123 movs r3, #1
401 0010 C4F89432 str r3, [r4, #660]
268:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = pdev->request.wLength;
402 .loc 1 269 3 is_stmt 1 view .LVU98
403 .loc 1 269 37 is_stmt 0 view .LVU99
404 0014 B4F8AE32 ldrh r3, [r4, #686]
405 .loc 1 269 22 view .LVU100
406 0018 C4F89832 str r3, [r4, #664]
270:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
271:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** switch (pdev->request.bmRequest & 0x1FU)
407 .loc 1 271 3 is_stmt 1 view .LVU101
408 .loc 1 271 24 is_stmt 0 view .LVU102
409 001c 94F8A812 ldrb r1, [r4, #680] @ zero_extendqisi2
410 0020 01F01F03 and r3, r1, #31
411 .loc 1 271 3 view .LVU103
412 0024 012B cmp r3, #1
413 0026 0ED0 beq .L28
414 0028 022B cmp r3, #2
415 002a 11D0 beq .L29
416 002c 2BB1 cbz r3, .L33
272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
273:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** case USB_REQ_RECIPIENT_DEVICE:
274:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StdDevReq(pdev, &pdev->request);
275:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
277:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** case USB_REQ_RECIPIENT_INTERFACE:
278:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StdItfReq(pdev, &pdev->request);
279:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
280:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
ARM GAS /tmp/cc7t8dPw.s page 13
281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** case USB_REQ_RECIPIENT_ENDPOINT:
282:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StdEPReq(pdev, &pdev->request);
283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
284:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** default:
286:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, (pdev->request.bmRequest & 0x80U));
417 .loc 1 286 7 is_stmt 1 view .LVU104
418 002e 01F08001 and r1, r1, #128
419 0032 2046 mov r0, r4
420 0034 FFF7FEFF bl USBD_LL_StallEP
421 .LVL33:
287:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
422 .loc 1 287 7 view .LVU105
423 0038 03E0 b .L31
424 .L33:
274:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
425 .loc 1 274 7 view .LVU106
426 003a 2946 mov r1, r5
427 003c 2046 mov r0, r4
428 003e FFF7FEFF bl USBD_StdDevReq
429 .LVL34:
275:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
430 .loc 1 275 7 view .LVU107
431 .L31:
288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
289:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
290:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
432 .loc 1 290 3 view .LVU108
291:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
433 .loc 1 291 1 is_stmt 0 view .LVU109
434 0042 0020 movs r0, #0
435 0044 38BD pop {r3, r4, r5, pc}
436 .LVL35:
437 .L28:
278:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
438 .loc 1 278 7 is_stmt 1 view .LVU110
439 0046 2946 mov r1, r5
440 0048 2046 mov r0, r4
441 004a FFF7FEFF bl USBD_StdItfReq
442 .LVL36:
279:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
443 .loc 1 279 7 view .LVU111
444 004e F8E7 b .L31
445 .L29:
282:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
446 .loc 1 282 7 view .LVU112
447 0050 2946 mov r1, r5
448 0052 2046 mov r0, r4
449 0054 FFF7FEFF bl USBD_StdEPReq
450 .LVL37:
283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
451 .loc 1 283 7 view .LVU113
452 0058 F3E7 b .L31
453 .cfi_endproc
454 .LFE663:
456 .section .text.USBD_LL_DataOutStage,"ax",%progbits
457 .align 1
ARM GAS /tmp/cc7t8dPw.s page 14
458 .global USBD_LL_DataOutStage
459 .syntax unified
460 .thumb
461 .thumb_func
463 USBD_LL_DataOutStage:
464 .LVL38:
465 .LFB664:
292:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
293:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
294:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_DataOutStage
295:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle data OUT stage
296:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
297:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param epnum: endpoint index
298:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
299:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
300:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DataOutStage(USBD_HandleTypeDef *pdev,
301:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum, uint8_t *pdata)
302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
466 .loc 1 302 1 view -0
467 .cfi_startproc
468 @ args = 0, pretend = 0, frame = 0
469 @ frame_needed = 0, uses_anonymous_args = 0
470 .loc 1 302 1 is_stmt 0 view .LVU115
471 0000 38B5 push {r3, r4, r5, lr}
472 .LCFI8:
473 .cfi_def_cfa_offset 16
474 .cfi_offset 3, -16
475 .cfi_offset 4, -12
476 .cfi_offset 5, -8
477 .cfi_offset 14, -4
478 0002 0446 mov r4, r0
303:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_EndpointTypeDef *pep;
479 .loc 1 303 3 is_stmt 1 view .LVU116
304:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (epnum == 0U)
480 .loc 1 305 3 view .LVU117
481 .loc 1 305 6 is_stmt 0 view .LVU118
482 0004 0D46 mov r5, r1
483 0006 91BB cbnz r1, .L35
484 0008 1346 mov r3, r2
306:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep = &pdev->ep_out[0];
485 .loc 1 307 5 is_stmt 1 view .LVU119
486 .LVL39:
308:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
309:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->ep0_state == USBD_EP0_DATA_OUT)
487 .loc 1 309 5 view .LVU120
488 .loc 1 309 13 is_stmt 0 view .LVU121
489 000a D0F89422 ldr r2, [r0, #660]
490 .LVL40:
491 .loc 1 309 8 view .LVU122
492 000e 032A cmp r2, #3
493 0010 03D0 beq .L46
310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pep->rem_length > pep->maxpacket)
312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep->rem_length -= pep->maxpacket;
ARM GAS /tmp/cc7t8dPw.s page 15
314:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_CtlContinueRx(pdev, pdata,
316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (uint16_t)MIN(pep->rem_length, pep->maxpacket));
317:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
319:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if ((pdev->pClass->EP0_RxReady != NULL) &&
321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
322:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->EP0_RxReady(pdev);
324:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
325:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_CtlSendStatus(pdev);
326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
327:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
328:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
329:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
330:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->ep0_state == USBD_EP0_STATUS_OUT)
494 .loc 1 330 7 is_stmt 1 view .LVU123
495 .loc 1 330 10 is_stmt 0 view .LVU124
496 0012 052A cmp r2, #5
497 0014 24D0 beq .L47
331:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
332:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /*
333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * STATUS PHASE completed, update ep0_state to idle
334:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_state = USBD_EP0_IDLE;
336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, 0U);
337:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
338:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
339:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else if ((pdev->pClass->DataOut != NULL) &&
341:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DataOut(pdev, epnum);
344:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
345:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
346:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
347:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* should never be in this condition */
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
349:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
351:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
498 .loc 1 351 10 view .LVU125
499 0016 0846 mov r0, r1
500 .LVL41:
501 .loc 1 351 10 view .LVU126
502 0018 33E0 b .L40
503 .LVL42:
504 .L46:
311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
505 .loc 1 311 7 is_stmt 1 view .LVU127
311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
506 .loc 1 311 14 is_stmt 0 view .LVU128
507 001a D0F86011 ldr r1, [r0, #352]
508 .LVL43:
311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
509 .loc 1 311 32 view .LVU129
ARM GAS /tmp/cc7t8dPw.s page 16
510 001e D0F86421 ldr r2, [r0, #356]
311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
511 .loc 1 311 10 view .LVU130
512 0022 9142 cmp r1, r2
513 0024 0DD9 bls .L37
313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
514 .loc 1 313 9 is_stmt 1 view .LVU131
313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
515 .loc 1 313 25 is_stmt 0 view .LVU132
516 0026 891A subs r1, r1, r2
517 0028 C0F86011 str r1, [r0, #352]
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (uint16_t)MIN(pep->rem_length, pep->maxpacket));
518 .loc 1 315 9 is_stmt 1 view .LVU133
519 002c 8A42 cmp r2, r1
520 002e 06D9 bls .L38
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (uint16_t)MIN(pep->rem_length, pep->maxpacket));
521 .loc 1 315 9 is_stmt 0 discriminator 1 view .LVU134
522 0030 8AB2 uxth r2, r1
523 .L39:
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (uint16_t)MIN(pep->rem_length, pep->maxpacket));
524 .loc 1 315 9 discriminator 4 view .LVU135
525 0032 1946 mov r1, r3
526 0034 2046 mov r0, r4
527 .LVL44:
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (uint16_t)MIN(pep->rem_length, pep->maxpacket));
528 .loc 1 315 9 discriminator 4 view .LVU136
529 0036 FFF7FEFF bl USBD_CtlContinueRx
530 .LVL45:
531 .loc 1 351 10 discriminator 4 view .LVU137
532 003a 2846 mov r0, r5
533 003c 21E0 b .L40
534 .LVL46:
535 .L38:
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (uint16_t)MIN(pep->rem_length, pep->maxpacket));
536 .loc 1 315 9 discriminator 2 view .LVU138
537 003e 92B2 uxth r2, r2
538 0040 F7E7 b .L39
539 .L37:
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
540 .loc 1 320 9 is_stmt 1 view .LVU139
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
541 .loc 1 320 18 is_stmt 0 view .LVU140
542 0042 D0F8B432 ldr r3, [r0, #692]
543 .LVL47:
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
544 .loc 1 320 26 view .LVU141
545 0046 1B69 ldr r3, [r3, #16]
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
546 .loc 1 320 12 view .LVU142
547 0048 1BB1 cbz r3, .L41
321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
548 .loc 1 321 18 discriminator 1 view .LVU143
549 004a 90F89C22 ldrb r2, [r0, #668] @ zero_extendqisi2
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
550 .loc 1 320 49 discriminator 1 view .LVU144
551 004e 032A cmp r2, #3
552 0050 04D0 beq .L48
ARM GAS /tmp/cc7t8dPw.s page 17
553 .LVL48:
554 .L41:
325:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
555 .loc 1 325 9 is_stmt 1 view .LVU145
556 0052 2046 mov r0, r4
557 0054 FFF7FEFF bl USBD_CtlSendStatus
558 .LVL49:
559 .loc 1 351 10 is_stmt 0 view .LVU146
560 0058 2846 mov r0, r5
561 005a 12E0 b .L40
562 .LVL50:
563 .L48:
323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
564 .loc 1 323 11 is_stmt 1 view .LVU147
565 005c 9847 blx r3
566 .LVL51:
323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
567 .loc 1 323 11 is_stmt 0 view .LVU148
568 005e F8E7 b .L41
569 .LVL52:
570 .L47:
335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, 0U);
571 .loc 1 335 9 is_stmt 1 view .LVU149
335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, 0U);
572 .loc 1 335 25 is_stmt 0 view .LVU150
573 0060 0021 movs r1, #0
574 .LVL53:
335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, 0U);
575 .loc 1 335 25 view .LVU151
576 0062 C0F89412 str r1, [r0, #660]
336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
577 .loc 1 336 9 is_stmt 1 view .LVU152
578 0066 FFF7FEFF bl USBD_LL_StallEP
579 .LVL54:
580 .loc 1 351 10 is_stmt 0 view .LVU153
581 006a 2846 mov r0, r5
582 006c 09E0 b .L40
583 .LVL55:
584 .L35:
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
585 .loc 1 340 8 is_stmt 1 view .LVU154
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
586 .loc 1 340 17 is_stmt 0 view .LVU155
587 006e D0F8B432 ldr r3, [r0, #692]
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
588 .loc 1 340 25 view .LVU156
589 0072 9B69 ldr r3, [r3, #24]
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
590 .loc 1 340 11 view .LVU157
591 0074 33B1 cbz r3, .L43
341:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
592 .loc 1 341 17 discriminator 1 view .LVU158
593 0076 90F89C22 ldrb r2, [r0, #668] @ zero_extendqisi2
594 .LVL56:
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
595 .loc 1 340 44 discriminator 1 view .LVU159
596 007a 032A cmp r2, #3
ARM GAS /tmp/cc7t8dPw.s page 18
597 007c 04D1 bne .L44
343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
598 .loc 1 343 5 is_stmt 1 view .LVU160
599 007e 9847 blx r3
600 .LVL57:
601 .loc 1 351 10 is_stmt 0 view .LVU161
602 0080 0020 movs r0, #0
603 .L40:
352:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
604 .loc 1 352 1 view .LVU162
605 0082 38BD pop {r3, r4, r5, pc}
606 .LVL58:
607 .L43:
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
608 .loc 1 348 12 view .LVU163
609 0084 0220 movs r0, #2
610 .LVL59:
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
611 .loc 1 348 12 view .LVU164
612 0086 FCE7 b .L40
613 .LVL60:
614 .L44:
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
615 .loc 1 348 12 view .LVU165
616 0088 0220 movs r0, #2
617 .LVL61:
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
618 .loc 1 348 12 view .LVU166
619 008a FAE7 b .L40
620 .cfi_endproc
621 .LFE664:
623 .section .text.USBD_LL_DataInStage,"ax",%progbits
624 .align 1
625 .global USBD_LL_DataInStage
626 .syntax unified
627 .thumb
628 .thumb_func
630 USBD_LL_DataInStage:
631 .LVL62:
632 .LFB665:
353:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
354:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
355:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_DataInStage
356:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle data in stage
357:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
358:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param epnum: endpoint index
359:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
360:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
361:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DataInStage(USBD_HandleTypeDef *pdev,
362:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum, uint8_t *pdata)
363:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
633 .loc 1 363 1 is_stmt 1 view -0
634 .cfi_startproc
635 @ args = 0, pretend = 0, frame = 0
636 @ frame_needed = 0, uses_anonymous_args = 0
637 .loc 1 363 1 is_stmt 0 view .LVU168
638 0000 38B5 push {r3, r4, r5, lr}
ARM GAS /tmp/cc7t8dPw.s page 19
639 .LCFI9:
640 .cfi_def_cfa_offset 16
641 .cfi_offset 3, -16
642 .cfi_offset 4, -12
643 .cfi_offset 5, -8
644 .cfi_offset 14, -4
645 0002 0446 mov r4, r0
364:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_EndpointTypeDef *pep;
646 .loc 1 364 3 is_stmt 1 view .LVU169
365:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
366:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (epnum == 0U)
647 .loc 1 366 3 view .LVU170
648 .loc 1 366 6 is_stmt 0 view .LVU171
649 0004 0D46 mov r5, r1
650 0006 0029 cmp r1, #0
651 0008 53D1 bne .L50
652 000a 1346 mov r3, r2
367:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
368:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep = &pdev->ep_in[0];
653 .loc 1 368 5 is_stmt 1 view .LVU172
654 .LVL63:
369:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
370:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->ep0_state == USBD_EP0_DATA_IN)
655 .loc 1 370 5 view .LVU173
656 .loc 1 370 13 is_stmt 0 view .LVU174
657 000c D0F89422 ldr r2, [r0, #660]
658 .LVL64:
659 .loc 1 370 8 view .LVU175
660 0010 022A cmp r2, #2
661 0012 0CD0 beq .L62
371:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pep->rem_length > pep->maxpacket)
373:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep->rem_length -= pep->maxpacket;
375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
376:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_CtlContinueSendData(pdev, pdata, (uint16_t)pep->rem_length);
377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
378:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prepare endpoint for premature end of transfer */
379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_PrepareReceive(pdev, 0U, NULL, 0U);
380:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
382:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
383:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* last packet is MPS multiple, so send ZLP packet */
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if ((pep->total_length % pep->maxpacket == 0U) &&
385:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length < pdev->ep0_data_len))
387:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
388:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_CtlContinueSendData(pdev, NULL, 0U);
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = 0U;
390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
391:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prepare endpoint for premature end of transfer */
392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_PrepareReceive(pdev, 0U, NULL, 0U);
393:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
394:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
395:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if ((pdev->pClass->EP0_TxSent != NULL) &&
397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
ARM GAS /tmp/cc7t8dPw.s page 20
398:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->EP0_TxSent(pdev);
400:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
401:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, 0x80U);
402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_CtlReceiveStatus(pdev);
403:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
404:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
405:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
407:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if ((pdev->ep0_state == USBD_EP0_STATUS_IN) ||
662 .loc 1 408 7 is_stmt 1 view .LVU176
663 .loc 1 408 10 is_stmt 0 view .LVU177
664 0014 042A cmp r2, #4
665 0016 00D0 beq .L56
666 .loc 1 408 51 discriminator 1 view .LVU178
667 0018 1AB9 cbnz r2, .L53
668 .L56:
409:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->ep0_state == USBD_EP0_IDLE))
410:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_StallEP(pdev, 0x80U);
669 .loc 1 411 9 is_stmt 1 view .LVU179
670 001a 8021 movs r1, #128
671 .LVL65:
672 .loc 1 411 9 is_stmt 0 view .LVU180
673 001c 2046 mov r0, r4
674 .LVL66:
675 .loc 1 411 9 view .LVU181
676 001e FFF7FEFF bl USBD_LL_StallEP
677 .LVL67:
678 .L53:
412:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
414:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
415:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_test_mode == 1U)
679 .loc 1 415 5 is_stmt 1 view .LVU182
680 .loc 1 415 13 is_stmt 0 view .LVU183
681 0022 94F8A032 ldrb r3, [r4, #672] @ zero_extendqisi2
682 .loc 1 415 8 view .LVU184
683 0026 012B cmp r3, #1
684 0028 3ED0 beq .L63
416:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
417:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_RunTestMode(pdev);
418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_test_mode = 0U;
419:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
420:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else if ((pdev->pClass->DataIn != NULL) &&
422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DataIn(pdev, epnum);
425:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
426:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
427:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* should never be in this condition */
429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
430:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
ARM GAS /tmp/cc7t8dPw.s page 21
432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
685 .loc 1 432 10 view .LVU185
686 002a 2846 mov r0, r5
687 .LVL68:
688 .L57:
433:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
689 .loc 1 433 1 view .LVU186
690 002c 38BD pop {r3, r4, r5, pc}
691 .LVL69:
692 .L62:
372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
693 .loc 1 372 7 is_stmt 1 view .LVU187
372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
694 .loc 1 372 14 is_stmt 0 view .LVU188
695 002e 016A ldr r1, [r0, #32]
696 .LVL70:
372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
697 .loc 1 372 32 view .LVU189
698 0030 426A ldr r2, [r0, #36]
372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
699 .loc 1 372 10 view .LVU190
700 0032 9142 cmp r1, r2
701 0034 1BD8 bhi .L64
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
702 .loc 1 384 9 is_stmt 1 view .LVU191
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
703 .loc 1 384 17 is_stmt 0 view .LVU192
704 0036 C169 ldr r1, [r0, #28]
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
705 .loc 1 384 32 view .LVU193
706 0038 B1FBF2F3 udiv r3, r1, r2
707 .LVL71:
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
708 .loc 1 384 32 view .LVU194
709 003c 02FB1313 mls r3, r2, r3, r1
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
710 .loc 1 384 12 view .LVU195
711 0040 2BB9 cbnz r3, .L54
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
712 .loc 1 384 56 discriminator 1 view .LVU196
713 0042 8A42 cmp r2, r1
714 0044 03D8 bhi .L54
386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
715 .loc 1 386 38 view .LVU197
716 0046 D0F89832 ldr r3, [r0, #664]
385:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length < pdev->ep0_data_len))
717 .loc 1 385 51 view .LVU198
718 004a 9942 cmp r1, r3
719 004c 1CD3 bcc .L65
720 .L54:
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
721 .loc 1 396 11 is_stmt 1 view .LVU199
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
722 .loc 1 396 20 is_stmt 0 view .LVU200
723 004e D4F8B432 ldr r3, [r4, #692]
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
724 .loc 1 396 28 view .LVU201
ARM GAS /tmp/cc7t8dPw.s page 22
725 0052 DB68 ldr r3, [r3, #12]
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
726 .loc 1 396 14 view .LVU202
727 0054 1BB1 cbz r3, .L55
397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
728 .loc 1 397 20 discriminator 1 view .LVU203
729 0056 94F89C22 ldrb r2, [r4, #668] @ zero_extendqisi2
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
730 .loc 1 396 50 discriminator 1 view .LVU204
731 005a 032A cmp r2, #3
732 005c 21D0 beq .L66
733 .LVL72:
734 .L55:
401:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_CtlReceiveStatus(pdev);
735 .loc 1 401 11 is_stmt 1 view .LVU205
736 005e 8021 movs r1, #128
737 0060 2046 mov r0, r4
738 0062 FFF7FEFF bl USBD_LL_StallEP
739 .LVL73:
402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
740 .loc 1 402 11 view .LVU206
741 0066 2046 mov r0, r4
742 0068 FFF7FEFF bl USBD_CtlReceiveStatus
743 .LVL74:
744 006c D9E7 b .L53
745 .LVL75:
746 .L64:
374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
747 .loc 1 374 9 view .LVU207
374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
748 .loc 1 374 25 is_stmt 0 view .LVU208
749 006e 8A1A subs r2, r1, r2
750 0070 0262 str r2, [r0, #32]
376:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
751 .loc 1 376 9 is_stmt 1 view .LVU209
752 0072 92B2 uxth r2, r2
753 0074 1946 mov r1, r3
754 0076 FFF7FEFF bl USBD_CtlContinueSendData
755 .LVL76:
379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
756 .loc 1 379 9 view .LVU210
757 007a 0023 movs r3, #0
758 007c 1A46 mov r2, r3
759 007e 1946 mov r1, r3
760 0080 2046 mov r0, r4
761 0082 FFF7FEFF bl USBD_LL_PrepareReceive
762 .LVL77:
763 0086 CCE7 b .L53
764 .LVL78:
765 .L65:
388:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = 0U;
766 .loc 1 388 11 view .LVU211
767 0088 0022 movs r2, #0
768 008a 1146 mov r1, r2
769 008c FFF7FEFF bl USBD_CtlContinueSendData
770 .LVL79:
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
ARM GAS /tmp/cc7t8dPw.s page 23
771 .loc 1 389 11 view .LVU212
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
772 .loc 1 389 30 is_stmt 0 view .LVU213
773 0090 0021 movs r1, #0
774 0092 C4F89812 str r1, [r4, #664]
392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
775 .loc 1 392 11 is_stmt 1 view .LVU214
776 0096 0B46 mov r3, r1
777 0098 0A46 mov r2, r1
778 009a 2046 mov r0, r4
779 009c FFF7FEFF bl USBD_LL_PrepareReceive
780 .LVL80:
781 00a0 BFE7 b .L53
782 .LVL81:
783 .L66:
399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
784 .loc 1 399 13 view .LVU215
785 00a2 2046 mov r0, r4
786 .LVL82:
399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
787 .loc 1 399 13 is_stmt 0 view .LVU216
788 00a4 9847 blx r3
789 .LVL83:
790 00a6 DAE7 b .L55
791 .L63:
417:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_test_mode = 0U;
792 .loc 1 417 7 is_stmt 1 view .LVU217
418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
793 .loc 1 418 7 view .LVU218
418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
794 .loc 1 418 27 is_stmt 0 view .LVU219
795 00a8 0023 movs r3, #0
796 00aa 84F8A032 strb r3, [r4, #672]
432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
797 .loc 1 432 10 view .LVU220
798 00ae 2846 mov r0, r5
799 00b0 BCE7 b .L57
800 .LVL84:
801 .L50:
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
802 .loc 1 421 8 is_stmt 1 view .LVU221
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
803 .loc 1 421 17 is_stmt 0 view .LVU222
804 00b2 D0F8B432 ldr r3, [r0, #692]
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
805 .loc 1 421 25 view .LVU223
806 00b6 5B69 ldr r3, [r3, #20]
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
807 .loc 1 421 11 view .LVU224
808 00b8 33B1 cbz r3, .L59
422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
809 .loc 1 422 17 discriminator 1 view .LVU225
810 00ba 90F89C22 ldrb r2, [r0, #668] @ zero_extendqisi2
811 .LVL85:
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->dev_state == USBD_STATE_CONFIGURED))
812 .loc 1 421 43 discriminator 1 view .LVU226
813 00be 032A cmp r2, #3
ARM GAS /tmp/cc7t8dPw.s page 24
814 00c0 04D1 bne .L60
424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
815 .loc 1 424 5 is_stmt 1 view .LVU227
816 00c2 9847 blx r3
817 .LVL86:
432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
818 .loc 1 432 10 is_stmt 0 view .LVU228
819 00c4 0020 movs r0, #0
424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
820 .loc 1 424 5 view .LVU229
821 00c6 B1E7 b .L57
822 .LVL87:
823 .L59:
429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
824 .loc 1 429 12 view .LVU230
825 00c8 0220 movs r0, #2
826 .LVL88:
429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
827 .loc 1 429 12 view .LVU231
828 00ca AFE7 b .L57
829 .LVL89:
830 .L60:
429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
831 .loc 1 429 12 view .LVU232
832 00cc 0220 movs r0, #2
833 .LVL90:
429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
834 .loc 1 429 12 view .LVU233
835 00ce ADE7 b .L57
836 .cfi_endproc
837 .LFE665:
839 .section .text.USBD_LL_Reset,"ax",%progbits
840 .align 1
841 .global USBD_LL_Reset
842 .syntax unified
843 .thumb
844 .thumb_func
846 USBD_LL_Reset:
847 .LVL91:
848 .LFB666:
434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_Reset
437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Reset event
438:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
439:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
440:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
441:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
442:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Reset(USBD_HandleTypeDef *pdev)
443:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
849 .loc 1 443 1 is_stmt 1 view -0
850 .cfi_startproc
851 @ args = 0, pretend = 0, frame = 0
852 @ frame_needed = 0, uses_anonymous_args = 0
853 .loc 1 443 1 is_stmt 0 view .LVU235
854 0000 70B5 push {r4, r5, r6, lr}
855 .LCFI10:
ARM GAS /tmp/cc7t8dPw.s page 25
856 .cfi_def_cfa_offset 16
857 .cfi_offset 4, -16
858 .cfi_offset 5, -12
859 .cfi_offset 6, -8
860 .cfi_offset 14, -4
861 0002 0446 mov r4, r0
444:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Open EP0 OUT */
445:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_OpenEP(pdev, 0x00U, USBD_EP_TYPE_CTRL, USB_MAX_EP0_SIZE);
862 .loc 1 445 3 is_stmt 1 view .LVU236
863 0004 4023 movs r3, #64
864 0006 0022 movs r2, #0
865 0008 1146 mov r1, r2
866 000a FFF7FEFF bl USBD_LL_OpenEP
867 .LVL92:
446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_out[0x00U & 0xFU].is_used = 1U;
868 .loc 1 446 3 view .LVU237
869 .loc 1 446 38 is_stmt 0 view .LVU238
870 000e 0125 movs r5, #1
871 0010 C4F85851 str r5, [r4, #344]
447:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_out[0].maxpacket = USB_MAX_EP0_SIZE;
872 .loc 1 448 3 is_stmt 1 view .LVU239
873 .loc 1 448 29 is_stmt 0 view .LVU240
874 0014 4026 movs r6, #64
875 0016 C4F86461 str r6, [r4, #356]
449:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
450:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Open EP0 IN */
451:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_LL_OpenEP(pdev, 0x80U, USBD_EP_TYPE_CTRL, USB_MAX_EP0_SIZE);
876 .loc 1 451 3 is_stmt 1 view .LVU241
877 001a 3346 mov r3, r6
878 001c 0022 movs r2, #0
879 001e 8021 movs r1, #128
880 0020 2046 mov r0, r4
881 0022 FFF7FEFF bl USBD_LL_OpenEP
882 .LVL93:
452:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_in[0x80U & 0xFU].is_used = 1U;
883 .loc 1 452 3 view .LVU242
884 .loc 1 452 37 is_stmt 0 view .LVU243
885 0026 A561 str r5, [r4, #24]
453:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
454:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_in[0].maxpacket = USB_MAX_EP0_SIZE;
886 .loc 1 454 3 is_stmt 1 view .LVU244
887 .loc 1 454 28 is_stmt 0 view .LVU245
888 0028 6662 str r6, [r4, #36]
455:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
456:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Upon Reset call user call back */
457:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
889 .loc 1 457 3 is_stmt 1 view .LVU246
890 .loc 1 457 19 is_stmt 0 view .LVU247
891 002a 84F89C52 strb r5, [r4, #668]
458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_state = USBD_EP0_IDLE;
892 .loc 1 458 3 is_stmt 1 view .LVU248
893 .loc 1 458 19 is_stmt 0 view .LVU249
894 002e 0023 movs r3, #0
895 0030 C4F89432 str r3, [r4, #660]
459:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_config = 0U;
896 .loc 1 459 3 is_stmt 1 view .LVU250
ARM GAS /tmp/cc7t8dPw.s page 26
897 .loc 1 459 20 is_stmt 0 view .LVU251
898 0034 6360 str r3, [r4, #4]
460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_remote_wakeup = 0U;
899 .loc 1 460 3 is_stmt 1 view .LVU252
900 .loc 1 460 27 is_stmt 0 view .LVU253
901 0036 C4F8A432 str r3, [r4, #676]
461:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
462:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClassData)
902 .loc 1 462 3 is_stmt 1 view .LVU254
903 .loc 1 462 11 is_stmt 0 view .LVU255
904 003a D4F8B832 ldr r3, [r4, #696]
905 .loc 1 462 6 view .LVU256
906 003e 2BB1 cbz r3, .L68
463:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
464:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
907 .loc 1 464 5 is_stmt 1 view .LVU257
908 .loc 1 464 9 is_stmt 0 view .LVU258
909 0040 D4F8B432 ldr r3, [r4, #692]
910 .loc 1 464 17 view .LVU259
911 0044 5B68 ldr r3, [r3, #4]
912 .loc 1 464 5 view .LVU260
913 0046 0021 movs r1, #0
914 0048 2046 mov r0, r4
915 004a 9847 blx r3
916 .LVL94:
917 .L68:
465:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
467:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
918 .loc 1 467 3 is_stmt 1 view .LVU261
468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
919 .loc 1 468 1 is_stmt 0 view .LVU262
920 004c 0020 movs r0, #0
921 004e 70BD pop {r4, r5, r6, pc}
922 .loc 1 468 1 view .LVU263
923 .cfi_endproc
924 .LFE666:
926 .section .text.USBD_LL_SetSpeed,"ax",%progbits
927 .align 1
928 .global USBD_LL_SetSpeed
929 .syntax unified
930 .thumb
931 .thumb_func
933 USBD_LL_SetSpeed:
934 .LVL95:
935 .LFB667:
469:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
471:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_Reset
472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Reset event
473:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
474:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
475:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
476:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SetSpeed(USBD_HandleTypeDef *pdev,
477:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_SpeedTypeDef speed)
478:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
936 .loc 1 478 1 is_stmt 1 view -0
ARM GAS /tmp/cc7t8dPw.s page 27
937 .cfi_startproc
938 @ args = 0, pretend = 0, frame = 0
939 @ frame_needed = 0, uses_anonymous_args = 0
940 @ link register save eliminated.
479:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_speed = speed;
941 .loc 1 479 3 view .LVU265
942 .loc 1 479 19 is_stmt 0 view .LVU266
943 0000 0174 strb r1, [r0, #16]
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
481:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
944 .loc 1 481 3 is_stmt 1 view .LVU267
482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
945 .loc 1 482 1 is_stmt 0 view .LVU268
946 0002 0020 movs r0, #0
947 .LVL96:
948 .loc 1 482 1 view .LVU269
949 0004 7047 bx lr
950 .cfi_endproc
951 .LFE667:
953 .section .text.USBD_LL_Suspend,"ax",%progbits
954 .align 1
955 .global USBD_LL_Suspend
956 .syntax unified
957 .thumb
958 .thumb_func
960 USBD_LL_Suspend:
961 .LVL97:
962 .LFB668:
483:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
485:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Suspend
486:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Suspend event
487:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
488:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
489:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
490:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
491:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Suspend(USBD_HandleTypeDef *pdev)
492:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
963 .loc 1 492 1 is_stmt 1 view -0
964 .cfi_startproc
965 @ args = 0, pretend = 0, frame = 0
966 @ frame_needed = 0, uses_anonymous_args = 0
967 @ link register save eliminated.
493:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_old_state = pdev->dev_state;
968 .loc 1 493 3 view .LVU271
969 .loc 1 493 30 is_stmt 0 view .LVU272
970 0000 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
971 .loc 1 493 23 view .LVU273
972 0004 80F89D32 strb r3, [r0, #669]
494:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_SUSPENDED;
973 .loc 1 494 3 is_stmt 1 view .LVU274
974 .loc 1 494 20 is_stmt 0 view .LVU275
975 0008 0423 movs r3, #4
976 000a 80F89C32 strb r3, [r0, #668]
495:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
496:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
977 .loc 1 496 3 is_stmt 1 view .LVU276
ARM GAS /tmp/cc7t8dPw.s page 28
497:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
978 .loc 1 497 1 is_stmt 0 view .LVU277
979 000e 0020 movs r0, #0
980 .LVL98:
981 .loc 1 497 1 view .LVU278
982 0010 7047 bx lr
983 .cfi_endproc
984 .LFE668:
986 .section .text.USBD_LL_Resume,"ax",%progbits
987 .align 1
988 .global USBD_LL_Resume
989 .syntax unified
990 .thumb
991 .thumb_func
993 USBD_LL_Resume:
994 .LVL99:
995 .LFB669:
498:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
499:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
500:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Resume
501:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Resume event
502:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
503:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
504:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
505:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
506:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Resume(USBD_HandleTypeDef *pdev)
507:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
996 .loc 1 507 1 is_stmt 1 view -0
997 .cfi_startproc
998 @ args = 0, pretend = 0, frame = 0
999 @ frame_needed = 0, uses_anonymous_args = 0
1000 @ link register save eliminated.
508:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_SUSPENDED)
1001 .loc 1 508 3 view .LVU280
1002 .loc 1 508 11 is_stmt 0 view .LVU281
1003 0000 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1004 .loc 1 508 6 view .LVU282
1005 0004 042B cmp r3, #4
1006 0006 01D0 beq .L74
1007 .L73:
509:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = pdev->dev_old_state;
511:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
512:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
513:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1008 .loc 1 513 3 is_stmt 1 view .LVU283
514:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1009 .loc 1 514 1 is_stmt 0 view .LVU284
1010 0008 0020 movs r0, #0
1011 .LVL100:
1012 .loc 1 514 1 view .LVU285
1013 000a 7047 bx lr
1014 .LVL101:
1015 .L74:
510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1016 .loc 1 510 5 is_stmt 1 view .LVU286
510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
ARM GAS /tmp/cc7t8dPw.s page 29
1017 .loc 1 510 27 is_stmt 0 view .LVU287
1018 000c 90F89D32 ldrb r3, [r0, #669] @ zero_extendqisi2
510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1019 .loc 1 510 21 view .LVU288
1020 0010 80F89C32 strb r3, [r0, #668]
1021 0014 F8E7 b .L73
1022 .cfi_endproc
1023 .LFE669:
1025 .section .text.USBD_LL_SOF,"ax",%progbits
1026 .align 1
1027 .global USBD_LL_SOF
1028 .syntax unified
1029 .thumb
1030 .thumb_func
1032 USBD_LL_SOF:
1033 .LVL102:
1034 .LFB670:
515:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
516:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
517:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_SOF
518:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle SOF event
519:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
520:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
521:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
522:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
523:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SOF(USBD_HandleTypeDef *pdev)
524:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1035 .loc 1 524 1 is_stmt 1 view -0
1036 .cfi_startproc
1037 @ args = 0, pretend = 0, frame = 0
1038 @ frame_needed = 0, uses_anonymous_args = 0
1039 .loc 1 524 1 is_stmt 0 view .LVU290
1040 0000 08B5 push {r3, lr}
1041 .LCFI11:
1042 .cfi_def_cfa_offset 8
1043 .cfi_offset 3, -8
1044 .cfi_offset 14, -4
525:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
1045 .loc 1 525 3 is_stmt 1 view .LVU291
1046 .loc 1 525 11 is_stmt 0 view .LVU292
1047 0002 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1048 .loc 1 525 6 view .LVU293
1049 0006 032B cmp r3, #3
1050 0008 01D0 beq .L78
1051 .LVL103:
1052 .L76:
526:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->SOF != NULL)
528:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->SOF(pdev);
530:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
531:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
532:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
533:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1053 .loc 1 533 3 is_stmt 1 view .LVU294
534:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1054 .loc 1 534 1 is_stmt 0 view .LVU295
ARM GAS /tmp/cc7t8dPw.s page 30
1055 000a 0020 movs r0, #0
1056 000c 08BD pop {r3, pc}
1057 .LVL104:
1058 .L78:
527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1059 .loc 1 527 5 is_stmt 1 view .LVU296
527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1060 .loc 1 527 13 is_stmt 0 view .LVU297
1061 000e D0F8B432 ldr r3, [r0, #692]
527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1062 .loc 1 527 21 view .LVU298
1063 0012 DB69 ldr r3, [r3, #28]
527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1064 .loc 1 527 8 view .LVU299
1065 0014 002B cmp r3, #0
1066 0016 F8D0 beq .L76
529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1067 .loc 1 529 7 is_stmt 1 view .LVU300
1068 0018 9847 blx r3
1069 .LVL105:
529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1070 .loc 1 529 7 is_stmt 0 view .LVU301
1071 001a F6E7 b .L76
1072 .cfi_endproc
1073 .LFE670:
1075 .section .text.USBD_LL_IsoINIncomplete,"ax",%progbits
1076 .align 1
1077 .global USBD_LL_IsoINIncomplete
1078 .syntax unified
1079 .thumb
1080 .thumb_func
1082 USBD_LL_IsoINIncomplete:
1083 .LVL106:
1084 .LFB671:
535:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
536:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
537:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_IsoINIncomplete
538:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle iso in incomplete event
539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
540:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
542:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_IsoINIncomplete(USBD_HandleTypeDef *pdev,
543:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum)
544:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1085 .loc 1 544 1 is_stmt 1 view -0
1086 .cfi_startproc
1087 @ args = 0, pretend = 0, frame = 0
1088 @ frame_needed = 0, uses_anonymous_args = 0
1089 @ link register save eliminated.
545:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prevent unused arguments compilation warning */
546:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(pdev);
1090 .loc 1 546 3 view .LVU303
547:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(epnum);
1091 .loc 1 547 3 view .LVU304
548:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
549:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1092 .loc 1 549 3 view .LVU305
ARM GAS /tmp/cc7t8dPw.s page 31
550:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1093 .loc 1 550 1 is_stmt 0 view .LVU306
1094 0000 0020 movs r0, #0
1095 .LVL107:
1096 .loc 1 550 1 view .LVU307
1097 0002 7047 bx lr
1098 .cfi_endproc
1099 .LFE671:
1101 .section .text.USBD_LL_IsoOUTIncomplete,"ax",%progbits
1102 .align 1
1103 .global USBD_LL_IsoOUTIncomplete
1104 .syntax unified
1105 .thumb
1106 .thumb_func
1108 USBD_LL_IsoOUTIncomplete:
1109 .LVL108:
1110 .LFB672:
551:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
552:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
553:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_IsoOUTIncomplete
554:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle iso out incomplete event
555:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
556:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
558:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_IsoOUTIncomplete(USBD_HandleTypeDef *pdev,
559:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum)
560:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1111 .loc 1 560 1 is_stmt 1 view -0
1112 .cfi_startproc
1113 @ args = 0, pretend = 0, frame = 0
1114 @ frame_needed = 0, uses_anonymous_args = 0
1115 @ link register save eliminated.
561:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prevent unused arguments compilation warning */
562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(pdev);
1116 .loc 1 562 3 view .LVU309
563:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(epnum);
1117 .loc 1 563 3 view .LVU310
564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
565:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1118 .loc 1 565 3 view .LVU311
566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1119 .loc 1 566 1 is_stmt 0 view .LVU312
1120 0000 0020 movs r0, #0
1121 .LVL109:
1122 .loc 1 566 1 view .LVU313
1123 0002 7047 bx lr
1124 .cfi_endproc
1125 .LFE672:
1127 .section .text.USBD_LL_DevConnected,"ax",%progbits
1128 .align 1
1129 .global USBD_LL_DevConnected
1130 .syntax unified
1131 .thumb
1132 .thumb_func
1134 USBD_LL_DevConnected:
1135 .LVL110:
1136 .LFB673:
ARM GAS /tmp/cc7t8dPw.s page 32
567:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
568:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
569:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_DevConnected
570:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle device connection event
571:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
572:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
573:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
574:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DevConnected(USBD_HandleTypeDef *pdev)
575:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1137 .loc 1 575 1 is_stmt 1 view -0
1138 .cfi_startproc
1139 @ args = 0, pretend = 0, frame = 0
1140 @ frame_needed = 0, uses_anonymous_args = 0
1141 @ link register save eliminated.
576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prevent unused argument compilation warning */
577:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(pdev);
1142 .loc 1 577 3 view .LVU315
578:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
579:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1143 .loc 1 579 3 view .LVU316
580:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1144 .loc 1 580 1 is_stmt 0 view .LVU317
1145 0000 0020 movs r0, #0
1146 .LVL111:
1147 .loc 1 580 1 view .LVU318
1148 0002 7047 bx lr
1149 .cfi_endproc
1150 .LFE673:
1152 .section .text.USBD_LL_DevDisconnected,"ax",%progbits
1153 .align 1
1154 .global USBD_LL_DevDisconnected
1155 .syntax unified
1156 .thumb
1157 .thumb_func
1159 USBD_LL_DevDisconnected:
1160 .LVL112:
1161 .LFB674:
581:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
582:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
583:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_DevDisconnected
584:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle device disconnection event
585:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
586:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
587:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DevDisconnected(USBD_HandleTypeDef *pdev)
589:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1162 .loc 1 589 1 is_stmt 1 view -0
1163 .cfi_startproc
1164 @ args = 0, pretend = 0, frame = 0
1165 @ frame_needed = 0, uses_anonymous_args = 0
1166 .loc 1 589 1 is_stmt 0 view .LVU320
1167 0000 08B5 push {r3, lr}
1168 .LCFI12:
1169 .cfi_def_cfa_offset 8
1170 .cfi_offset 3, -8
1171 .cfi_offset 14, -4
590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Class Resources */
ARM GAS /tmp/cc7t8dPw.s page 33
591:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
1172 .loc 1 591 3 is_stmt 1 view .LVU321
1173 .loc 1 591 19 is_stmt 0 view .LVU322
1174 0002 0122 movs r2, #1
1175 0004 80F89C22 strb r2, [r0, #668]
592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
1176 .loc 1 592 3 is_stmt 1 view .LVU323
1177 .loc 1 592 7 is_stmt 0 view .LVU324
1178 0008 D0F8B422 ldr r2, [r0, #692]
1179 .loc 1 592 15 view .LVU325
1180 000c 5268 ldr r2, [r2, #4]
1181 .loc 1 592 3 view .LVU326
1182 000e 0179 ldrb r1, [r0, #4] @ zero_extendqisi2
1183 0010 9047 blx r2
1184 .LVL113:
593:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1185 .loc 1 594 3 is_stmt 1 view .LVU327
595:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1186 .loc 1 595 1 is_stmt 0 view .LVU328
1187 0012 0020 movs r0, #0
1188 0014 08BD pop {r3, pc}
1189 .cfi_endproc
1190 .LFE674:
1192 .text
1193 .Letext0:
1194 .file 2 "/opt/gcc-arm/arm-none-eabi/include/machine/_default_types.h"
1195 .file 3 "/opt/gcc-arm/arm-none-eabi/include/sys/_stdint.h"
1196 .file 4 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_dma.h"
1197 .file 5 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_tim.h"
1198 .file 6 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h"
1199 .file 7 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h"
1200 .file 8 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h"
1201 .file 9 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h"
ARM GAS /tmp/cc7t8dPw.s page 34
DEFINED SYMBOLS
*ABS*:0000000000000000 usbd_core.c
/tmp/cc7t8dPw.s:18 .text.USBD_Init:0000000000000000 $t
/tmp/cc7t8dPw.s:24 .text.USBD_Init:0000000000000000 USBD_Init
/tmp/cc7t8dPw.s:93 .text.USBD_DeInit:0000000000000000 $t
/tmp/cc7t8dPw.s:99 .text.USBD_DeInit:0000000000000000 USBD_DeInit
/tmp/cc7t8dPw.s:143 .text.USBD_RegisterClass:0000000000000000 $t
/tmp/cc7t8dPw.s:149 .text.USBD_RegisterClass:0000000000000000 USBD_RegisterClass
/tmp/cc7t8dPw.s:182 .text.USBD_Start:0000000000000000 $t
/tmp/cc7t8dPw.s:188 .text.USBD_Start:0000000000000000 USBD_Start
/tmp/cc7t8dPw.s:212 .text.USBD_Stop:0000000000000000 $t
/tmp/cc7t8dPw.s:218 .text.USBD_Stop:0000000000000000 USBD_Stop
/tmp/cc7t8dPw.s:254 .text.USBD_RunTestMode:0000000000000000 $t
/tmp/cc7t8dPw.s:260 .text.USBD_RunTestMode:0000000000000000 USBD_RunTestMode
/tmp/cc7t8dPw.s:279 .text.USBD_SetClassConfig:0000000000000000 $t
/tmp/cc7t8dPw.s:285 .text.USBD_SetClassConfig:0000000000000000 USBD_SetClassConfig
/tmp/cc7t8dPw.s:334 .text.USBD_ClrClassConfig:0000000000000000 $t
/tmp/cc7t8dPw.s:340 .text.USBD_ClrClassConfig:0000000000000000 USBD_ClrClassConfig
/tmp/cc7t8dPw.s:369 .text.USBD_LL_SetupStage:0000000000000000 $t
/tmp/cc7t8dPw.s:375 .text.USBD_LL_SetupStage:0000000000000000 USBD_LL_SetupStage
/tmp/cc7t8dPw.s:457 .text.USBD_LL_DataOutStage:0000000000000000 $t
/tmp/cc7t8dPw.s:463 .text.USBD_LL_DataOutStage:0000000000000000 USBD_LL_DataOutStage
/tmp/cc7t8dPw.s:624 .text.USBD_LL_DataInStage:0000000000000000 $t
/tmp/cc7t8dPw.s:630 .text.USBD_LL_DataInStage:0000000000000000 USBD_LL_DataInStage
/tmp/cc7t8dPw.s:840 .text.USBD_LL_Reset:0000000000000000 $t
/tmp/cc7t8dPw.s:846 .text.USBD_LL_Reset:0000000000000000 USBD_LL_Reset
/tmp/cc7t8dPw.s:927 .text.USBD_LL_SetSpeed:0000000000000000 $t
/tmp/cc7t8dPw.s:933 .text.USBD_LL_SetSpeed:0000000000000000 USBD_LL_SetSpeed
/tmp/cc7t8dPw.s:954 .text.USBD_LL_Suspend:0000000000000000 $t
/tmp/cc7t8dPw.s:960 .text.USBD_LL_Suspend:0000000000000000 USBD_LL_Suspend
/tmp/cc7t8dPw.s:987 .text.USBD_LL_Resume:0000000000000000 $t
/tmp/cc7t8dPw.s:993 .text.USBD_LL_Resume:0000000000000000 USBD_LL_Resume
/tmp/cc7t8dPw.s:1026 .text.USBD_LL_SOF:0000000000000000 $t
/tmp/cc7t8dPw.s:1032 .text.USBD_LL_SOF:0000000000000000 USBD_LL_SOF
/tmp/cc7t8dPw.s:1076 .text.USBD_LL_IsoINIncomplete:0000000000000000 $t
/tmp/cc7t8dPw.s:1082 .text.USBD_LL_IsoINIncomplete:0000000000000000 USBD_LL_IsoINIncomplete
/tmp/cc7t8dPw.s:1102 .text.USBD_LL_IsoOUTIncomplete:0000000000000000 $t
/tmp/cc7t8dPw.s:1108 .text.USBD_LL_IsoOUTIncomplete:0000000000000000 USBD_LL_IsoOUTIncomplete
/tmp/cc7t8dPw.s:1128 .text.USBD_LL_DevConnected:0000000000000000 $t
/tmp/cc7t8dPw.s:1134 .text.USBD_LL_DevConnected:0000000000000000 USBD_LL_DevConnected
/tmp/cc7t8dPw.s:1153 .text.USBD_LL_DevDisconnected:0000000000000000 $t
/tmp/cc7t8dPw.s:1159 .text.USBD_LL_DevDisconnected:0000000000000000 USBD_LL_DevDisconnected
UNDEFINED SYMBOLS
USBD_LL_Init
USBD_LL_Stop
USBD_LL_DeInit
USBD_LL_Start
USBD_ParseSetupRequest
USBD_LL_StallEP
USBD_StdDevReq
USBD_StdItfReq
USBD_StdEPReq
USBD_CtlContinueRx
USBD_CtlSendStatus
USBD_CtlReceiveStatus
USBD_CtlContinueSendData
ARM GAS /tmp/cc7t8dPw.s page 35
USBD_LL_PrepareReceive
USBD_LL_OpenEP