ARM GAS /tmp/ccXNKvGT.s page 1
1 .cpu cortex-m4
2 .arch armv7e-m
3 .fpu fpv4-sp-d16
4 .eabi_attribute 27, 1
5 .eabi_attribute 28, 1
6 .eabi_attribute 20, 1
7 .eabi_attribute 21, 1
8 .eabi_attribute 23, 3
9 .eabi_attribute 24, 1
10 .eabi_attribute 25, 1
11 .eabi_attribute 26, 1
12 .eabi_attribute 30, 1
13 .eabi_attribute 34, 1
14 .eabi_attribute 18, 4
15 .file "usbd_core.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c"
20 .section .text.USBD_Init,"ax",%progbits
21 .align 1
22 .global USBD_Init
23 .syntax unified
24 .thumb
25 .thumb_func
27 USBD_Init:
28 .LVL0:
29 .LFB333:
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
ARM GAS /tmp/ccXNKvGT.s page 2
30:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
31:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
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
ARM GAS /tmp/ccXNKvGT.s page 3
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 **** */
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 **** {
30 .loc 1 91 1 view -0
31 .cfi_startproc
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
92:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret;
34 .loc 1 92 3 view .LVU1
93:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
94:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Check whether the USB Host handle is valid */
95:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev == NULL)
35 .loc 1 95 3 view .LVU2
36 .loc 1 95 6 is_stmt 0 view .LVU3
37 0000 98B1 cbz r0, .L4
91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret;
38 .loc 1 91 1 view .LVU4
39 0002 08B5 push {r3, lr}
40 .LCFI0:
41 .cfi_def_cfa_offset 8
42 .cfi_offset 3, -8
43 .cfi_offset 14, -4
44 0004 0346 mov r3, r0
96:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
97:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if (USBD_DEBUG_LEVEL > 1U)
98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_ErrLog("Invalid Device handle");
99:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
100:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
103:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Unlink previous class resources */
104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass = NULL;
45 .loc 1 104 3 is_stmt 1 view .LVU5
46 .loc 1 104 16 is_stmt 0 view .LVU6
47 0006 0020 movs r0, #0
48 .LVL1:
49 .loc 1 104 16 view .LVU7
50 0008 C3F8B802 str r0, [r3, #696]
105:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pUserData = NULL;
51 .loc 1 105 3 is_stmt 1 view .LVU8
52 .loc 1 105 19 is_stmt 0 view .LVU9
53 000c C3F8C002 str r0, [r3, #704]
106:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pConfDesc = NULL;
54 .loc 1 106 3 is_stmt 1 view .LVU10
55 .loc 1 106 19 is_stmt 0 view .LVU11
56 0010 C3F8CC02 str r0, [r3, #716]
107:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Assign USBD Descriptors */
109:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdesc != NULL)
57 .loc 1 109 3 is_stmt 1 view .LVU12
58 .loc 1 109 6 is_stmt 0 view .LVU13
59 0014 09B1 cbz r1, .L3
110:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
111:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pDesc = pdesc;
60 .loc 1 111 5 is_stmt 1 view .LVU14
ARM GAS /tmp/ccXNKvGT.s page 4
61 .loc 1 111 17 is_stmt 0 view .LVU15
62 0016 C3F8B412 str r1, [r3, #692]
63 .L3:
112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
113:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
114:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Set Device initial State */
115:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
64 .loc 1 115 3 is_stmt 1 view .LVU16
65 .loc 1 115 19 is_stmt 0 view .LVU17
66 001a 0121 movs r1, #1
67 .LVL2:
68 .loc 1 115 19 view .LVU18
69 001c 83F89C12 strb r1, [r3, #668]
116:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->id = id;
70 .loc 1 116 3 is_stmt 1 view .LVU19
71 .loc 1 116 12 is_stmt 0 view .LVU20
72 0020 1A70 strb r2, [r3]
117:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
118:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Initialize low level driver */
119:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_LL_Init(pdev);
73 .loc 1 119 3 is_stmt 1 view .LVU21
74 .loc 1 119 9 is_stmt 0 view .LVU22
75 0022 1846 mov r0, r3
76 0024 FFF7FEFF bl USBD_LL_Init
77 .LVL3:
120:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
121:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
78 .loc 1 121 3 is_stmt 1 view .LVU23
122:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
79 .loc 1 122 1 is_stmt 0 view .LVU24
80 0028 08BD pop {r3, pc}
81 .LVL4:
82 .L4:
83 .LCFI1:
84 .cfi_def_cfa_offset 0
85 .cfi_restore 3
86 .cfi_restore 14
100:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
87 .loc 1 100 12 view .LVU25
88 002a 0320 movs r0, #3
89 .LVL5:
90 .loc 1 122 1 view .LVU26
91 002c 7047 bx lr
92 .cfi_endproc
93 .LFE333:
95 .section .text.USBD_DeInit,"ax",%progbits
96 .align 1
97 .global USBD_DeInit
98 .syntax unified
99 .thumb
100 .thumb_func
102 USBD_DeInit:
103 .LVL6:
104 .LFB334:
123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
124:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
125:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_DeInit
ARM GAS /tmp/ccXNKvGT.s page 5
126:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Re-Initialize the device library
127:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
128:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status: status
129:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
130:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_DeInit(USBD_HandleTypeDef *pdev)
131:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
105 .loc 1 131 1 is_stmt 1 view -0
106 .cfi_startproc
107 @ args = 0, pretend = 0, frame = 0
108 @ frame_needed = 0, uses_anonymous_args = 0
109 .loc 1 131 1 is_stmt 0 view .LVU28
110 0000 10B5 push {r4, lr}
111 .LCFI2:
112 .cfi_def_cfa_offset 8
113 .cfi_offset 4, -8
114 .cfi_offset 14, -4
115 0002 0446 mov r4, r0
132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret;
116 .loc 1 132 3 is_stmt 1 view .LVU29
133:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
134:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Disconnect the USB Device */
135:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_Stop(pdev);
117 .loc 1 135 3 view .LVU30
118 .loc 1 135 9 is_stmt 0 view .LVU31
119 0004 FFF7FEFF bl USBD_LL_Stop
120 .LVL7:
136:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
137:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Set Default State */
138:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
121 .loc 1 138 3 is_stmt 1 view .LVU32
122 .loc 1 138 19 is_stmt 0 view .LVU33
123 0008 0123 movs r3, #1
124 000a 84F89C32 strb r3, [r4, #668]
139:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
140:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Class Resources */
141:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
125 .loc 1 141 3 is_stmt 1 view .LVU34
126 .loc 1 141 11 is_stmt 0 view .LVU35
127 000e D4F8B832 ldr r3, [r4, #696]
128 .loc 1 141 6 view .LVU36
129 0012 43B1 cbz r3, .L10
142:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
143:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
130 .loc 1 143 5 is_stmt 1 view .LVU37
131 .loc 1 143 17 is_stmt 0 view .LVU38
132 0014 5B68 ldr r3, [r3, #4]
133 .loc 1 143 5 view .LVU39
134 0016 2179 ldrb r1, [r4, #4] @ zero_extendqisi2
135 0018 2046 mov r0, r4
136 001a 9847 blx r3
137 .LVL8:
144:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass = NULL;
138 .loc 1 144 5 is_stmt 1 view .LVU40
139 .loc 1 144 18 is_stmt 0 view .LVU41
140 001c 0023 movs r3, #0
141 001e C4F8B832 str r3, [r4, #696]
145:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pUserData = NULL;
ARM GAS /tmp/ccXNKvGT.s page 6
142 .loc 1 145 5 is_stmt 1 view .LVU42
143 .loc 1 145 21 is_stmt 0 view .LVU43
144 0022 C4F8C032 str r3, [r4, #704]
145 .L10:
146:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
147:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
148:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Device descriptors resources */
149:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pDesc = NULL;
146 .loc 1 149 3 is_stmt 1 view .LVU44
147 .loc 1 149 15 is_stmt 0 view .LVU45
148 0026 0023 movs r3, #0
149 0028 C4F8B432 str r3, [r4, #692]
150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pConfDesc = NULL;
150 .loc 1 150 3 is_stmt 1 view .LVU46
151 .loc 1 150 19 is_stmt 0 view .LVU47
152 002c C4F8CC32 str r3, [r4, #716]
151:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
152:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* DeInitialize low level driver */
153:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_LL_DeInit(pdev);
153 .loc 1 153 3 is_stmt 1 view .LVU48
154 .loc 1 153 9 is_stmt 0 view .LVU49
155 0030 2046 mov r0, r4
156 0032 FFF7FEFF bl USBD_LL_DeInit
157 .LVL9:
154:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
155:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
158 .loc 1 155 3 is_stmt 1 view .LVU50
156:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
159 .loc 1 156 1 is_stmt 0 view .LVU51
160 0036 10BD pop {r4, pc}
161 .loc 1 156 1 view .LVU52
162 .cfi_endproc
163 .LFE334:
165 .section .text.USBD_RegisterClass,"ax",%progbits
166 .align 1
167 .global USBD_RegisterClass
168 .syntax unified
169 .thumb
170 .thumb_func
172 USBD_RegisterClass:
173 .LVL10:
174 .LFB335:
157:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
158:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
159:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_RegisterClass
160:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Link class driver to Device Core.
161:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pDevice : Device Handle
162:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pclass: Class handle
163:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval USBD Status
164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_RegisterClass(USBD_HandleTypeDef *pdev, USBD_ClassTypeDef *pclass)
166:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
175 .loc 1 166 1 is_stmt 1 view -0
176 .cfi_startproc
177 @ args = 0, pretend = 0, frame = 8
178 @ frame_needed = 0, uses_anonymous_args = 0
179 .loc 1 166 1 is_stmt 0 view .LVU54
ARM GAS /tmp/ccXNKvGT.s page 7
180 0000 10B5 push {r4, lr}
181 .LCFI3:
182 .cfi_def_cfa_offset 8
183 .cfi_offset 4, -8
184 .cfi_offset 14, -4
185 0002 82B0 sub sp, sp, #8
186 .LCFI4:
187 .cfi_def_cfa_offset 16
167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint16_t len = 0U;
188 .loc 1 167 3 is_stmt 1 view .LVU55
189 .loc 1 167 12 is_stmt 0 view .LVU56
190 0004 0023 movs r3, #0
191 0006 ADF80630 strh r3, [sp, #6] @ movhi
168:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
169:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pclass == NULL)
192 .loc 1 169 3 is_stmt 1 view .LVU57
193 .loc 1 169 6 is_stmt 0 view .LVU58
194 000a 61B1 cbz r1, .L14
195 000c 0446 mov r4, r0
170:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
171:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if (USBD_DEBUG_LEVEL > 1U)
172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_ErrLog("Invalid Class handle");
173:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
175:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
176:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
177:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* link the class to the USB Device handle */
178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass = pclass;
196 .loc 1 178 3 is_stmt 1 view .LVU59
197 .loc 1 178 16 is_stmt 0 view .LVU60
198 000e C0F8B812 str r1, [r0, #696]
179:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Get Device Configuration Descriptor */
181:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #ifdef USE_USB_HS
182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->GetHSConfigDescriptor != NULL)
183:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pConfDesc = (void *)pdev->pClass->GetHSConfigDescriptor(&len);
185:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
186:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #else /* Default USE_USB_FS */
187:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->GetFSConfigDescriptor != NULL)
199 .loc 1 187 3 is_stmt 1 view .LVU61
200 .loc 1 187 19 is_stmt 0 view .LVU62
201 0012 CB6A ldr r3, [r1, #44]
202 .loc 1 187 6 view .LVU63
203 0014 4BB1 cbz r3, .L15
188:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pConfDesc = (void *)pdev->pClass->GetFSConfigDescriptor(&len);
204 .loc 1 189 5 is_stmt 1 view .LVU64
205 .loc 1 189 31 is_stmt 0 view .LVU65
206 0016 0DF10600 add r0, sp, #6
207 .LVL11:
208 .loc 1 189 31 view .LVU66
209 001a 9847 blx r3
210 .LVL12:
211 .loc 1 189 21 view .LVU67
212 001c C4F8CC02 str r0, [r4, #716]
190:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
ARM GAS /tmp/ccXNKvGT.s page 8
191:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif /* USE_USB_FS */
192:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
213 .loc 1 193 10 view .LVU68
214 0020 0020 movs r0, #0
215 .LVL13:
216 .L13:
194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
217 .loc 1 194 1 view .LVU69
218 0022 02B0 add sp, sp, #8
219 .LCFI5:
220 .cfi_remember_state
221 .cfi_def_cfa_offset 8
222 @ sp needed
223 0024 10BD pop {r4, pc}
224 .LVL14:
225 .L14:
226 .LCFI6:
227 .cfi_restore_state
174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
228 .loc 1 174 12 view .LVU70
229 0026 0320 movs r0, #3
230 .LVL15:
174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
231 .loc 1 174 12 view .LVU71
232 0028 FBE7 b .L13
233 .LVL16:
234 .L15:
193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
235 .loc 1 193 10 view .LVU72
236 002a 0020 movs r0, #0
237 .LVL17:
193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
238 .loc 1 193 10 view .LVU73
239 002c F9E7 b .L13
240 .cfi_endproc
241 .LFE335:
243 .section .text.USBD_Start,"ax",%progbits
244 .align 1
245 .global USBD_Start
246 .syntax unified
247 .thumb
248 .thumb_func
250 USBD_Start:
251 .LVL18:
252 .LFB336:
195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
196:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
197:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Start
198:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Start the USB Device Core.
199:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: Device Handle
200:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval USBD Status
201:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
202:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_Start(USBD_HandleTypeDef *pdev)
203:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
253 .loc 1 203 1 is_stmt 1 view -0
254 .cfi_startproc
ARM GAS /tmp/ccXNKvGT.s page 9
255 @ args = 0, pretend = 0, frame = 0
256 @ frame_needed = 0, uses_anonymous_args = 0
257 .loc 1 203 1 is_stmt 0 view .LVU75
258 0000 08B5 push {r3, lr}
259 .LCFI7:
260 .cfi_def_cfa_offset 8
261 .cfi_offset 3, -8
262 .cfi_offset 14, -4
204:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Start the low level driver */
205:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_LL_Start(pdev);
263 .loc 1 205 3 is_stmt 1 view .LVU76
264 .loc 1 205 10 is_stmt 0 view .LVU77
265 0002 FFF7FEFF bl USBD_LL_Start
266 .LVL19:
206:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
267 .loc 1 206 1 view .LVU78
268 0006 08BD pop {r3, pc}
269 .cfi_endproc
270 .LFE336:
272 .section .text.USBD_Stop,"ax",%progbits
273 .align 1
274 .global USBD_Stop
275 .syntax unified
276 .thumb
277 .thumb_func
279 USBD_Stop:
280 .LVL20:
281 .LFB337:
207:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
208:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
209:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_Stop
210:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Stop the USB Device Core.
211:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: Device Handle
212:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval USBD Status
213:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
214:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_Stop(USBD_HandleTypeDef *pdev)
215:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
282 .loc 1 215 1 is_stmt 1 view -0
283 .cfi_startproc
284 @ args = 0, pretend = 0, frame = 0
285 @ frame_needed = 0, uses_anonymous_args = 0
286 .loc 1 215 1 is_stmt 0 view .LVU80
287 0000 10B5 push {r4, lr}
288 .LCFI8:
289 .cfi_def_cfa_offset 8
290 .cfi_offset 4, -8
291 .cfi_offset 14, -4
292 0002 0446 mov r4, r0
216:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Disconnect USB Device */
217:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_Stop(pdev);
293 .loc 1 217 3 is_stmt 1 view .LVU81
294 .loc 1 217 9 is_stmt 0 view .LVU82
295 0004 FFF7FEFF bl USBD_LL_Stop
296 .LVL21:
218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
219:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Class Resources */
220:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
ARM GAS /tmp/ccXNKvGT.s page 10
297 .loc 1 220 3 is_stmt 1 view .LVU83
298 .loc 1 220 11 is_stmt 0 view .LVU84
299 0008 D4F8B832 ldr r3, [r4, #696]
300 .loc 1 220 6 view .LVU85
301 000c 1BB1 cbz r3, .L20
221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
222:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
302 .loc 1 222 5 is_stmt 1 view .LVU86
303 .loc 1 222 23 is_stmt 0 view .LVU87
304 000e 5B68 ldr r3, [r3, #4]
305 .loc 1 222 11 view .LVU88
306 0010 2179 ldrb r1, [r4, #4] @ zero_extendqisi2
307 0012 2046 mov r0, r4
308 0014 9847 blx r3
309 .LVL22:
310 .L20:
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 **** return USBD_OK;
311 .loc 1 225 3 is_stmt 1 view .LVU89
226:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
312 .loc 1 226 1 is_stmt 0 view .LVU90
313 0016 0020 movs r0, #0
314 0018 10BD pop {r4, pc}
315 .loc 1 226 1 view .LVU91
316 .cfi_endproc
317 .LFE337:
319 .section .text.USBD_RunTestMode,"ax",%progbits
320 .align 1
321 .global USBD_RunTestMode
322 .syntax unified
323 .thumb
324 .thumb_func
326 USBD_RunTestMode:
327 .LVL23:
328 .LFB338:
227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
228:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
229:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_RunTestMode
230:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Launch test mode process
231:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
233:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
234:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_RunTestMode(USBD_HandleTypeDef *pdev)
235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
329 .loc 1 235 1 is_stmt 1 view -0
330 .cfi_startproc
331 @ args = 0, pretend = 0, frame = 0
332 @ frame_needed = 0, uses_anonymous_args = 0
333 @ link register save eliminated.
236:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prevent unused argument compilation warning */
237:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(pdev);
334 .loc 1 237 3 view .LVU93
238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
239:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
335 .loc 1 239 3 view .LVU94
240:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
ARM GAS /tmp/ccXNKvGT.s page 11
336 .loc 1 240 1 is_stmt 0 view .LVU95
337 0000 0020 movs r0, #0
338 .LVL24:
339 .loc 1 240 1 view .LVU96
340 0002 7047 bx lr
341 .cfi_endproc
342 .LFE338:
344 .section .text.USBD_SetClassConfig,"ax",%progbits
345 .align 1
346 .global USBD_SetClassConfig
347 .syntax unified
348 .thumb
349 .thumb_func
351 USBD_SetClassConfig:
352 .LVL25:
353 .LFB339:
241:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
243:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_SetClassConfig
244:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Configure device and start the interface
245:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
246:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param cfgidx: configuration index
247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
248:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
250:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_SetClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx)
251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
354 .loc 1 251 1 is_stmt 1 view -0
355 .cfi_startproc
356 @ args = 0, pretend = 0, frame = 0
357 @ frame_needed = 0, uses_anonymous_args = 0
358 .loc 1 251 1 is_stmt 0 view .LVU98
359 0000 08B5 push {r3, lr}
360 .LCFI9:
361 .cfi_def_cfa_offset 8
362 .cfi_offset 3, -8
363 .cfi_offset 14, -4
252:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret = USBD_FAIL;
364 .loc 1 252 3 is_stmt 1 view .LVU99
365 .LVL26:
253:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
254:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
366 .loc 1 254 3 view .LVU100
367 .loc 1 254 11 is_stmt 0 view .LVU101
368 0002 D0F8B832 ldr r3, [r0, #696]
369 .loc 1 254 6 view .LVU102
370 0006 13B1 cbz r3, .L25
255:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
256:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Set configuration and Start the Class */
257:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Init(pdev, cfgidx);
371 .loc 1 257 5 is_stmt 1 view .LVU103
372 .loc 1 257 43 is_stmt 0 view .LVU104
373 0008 1B68 ldr r3, [r3]
374 .loc 1 257 31 view .LVU105
375 000a 9847 blx r3
376 .LVL27:
377 .L24:
ARM GAS /tmp/ccXNKvGT.s page 12
258:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
259:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
260:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
378 .loc 1 260 3 is_stmt 1 view .LVU106
261:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
379 .loc 1 261 1 is_stmt 0 view .LVU107
380 000c 08BD pop {r3, pc}
381 .LVL28:
382 .L25:
252:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
383 .loc 1 252 22 view .LVU108
384 000e 0320 movs r0, #3
385 .LVL29:
252:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
386 .loc 1 252 22 view .LVU109
387 0010 FCE7 b .L24
388 .cfi_endproc
389 .LFE339:
391 .section .text.USBD_ClrClassConfig,"ax",%progbits
392 .align 1
393 .global USBD_ClrClassConfig
394 .syntax unified
395 .thumb
396 .thumb_func
398 USBD_ClrClassConfig:
399 .LVL30:
400 .LFB340:
262:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
263:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
264:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_ClrClassConfig
265:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Clear current configuration
266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
267:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param cfgidx: configuration index
268:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status: USBD_StatusTypeDef
269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
270:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_ClrClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx)
271:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
401 .loc 1 271 1 is_stmt 1 view -0
402 .cfi_startproc
403 @ args = 0, pretend = 0, frame = 0
404 @ frame_needed = 0, uses_anonymous_args = 0
405 .loc 1 271 1 is_stmt 0 view .LVU111
406 0000 08B5 push {r3, lr}
407 .LCFI10:
408 .cfi_def_cfa_offset 8
409 .cfi_offset 3, -8
410 .cfi_offset 14, -4
272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Clear configuration and De-initialize the Class process */
273:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
411 .loc 1 273 3 is_stmt 1 view .LVU112
412 .loc 1 273 11 is_stmt 0 view .LVU113
413 0002 D0F8B832 ldr r3, [r0, #696]
414 .loc 1 273 6 view .LVU114
415 0006 0BB1 cbz r3, .L28
274:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
275:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->DeInit(pdev, cfgidx);
416 .loc 1 275 5 is_stmt 1 view .LVU115
ARM GAS /tmp/ccXNKvGT.s page 13
417 .loc 1 275 17 is_stmt 0 view .LVU116
418 0008 5B68 ldr r3, [r3, #4]
419 .loc 1 275 5 view .LVU117
420 000a 9847 blx r3
421 .LVL31:
422 .L28:
276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
277:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
278:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
423 .loc 1 278 3 is_stmt 1 view .LVU118
279:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
424 .loc 1 279 1 is_stmt 0 view .LVU119
425 000c 0020 movs r0, #0
426 000e 08BD pop {r3, pc}
427 .cfi_endproc
428 .LFE340:
430 .section .text.USBD_LL_SetupStage,"ax",%progbits
431 .align 1
432 .global USBD_LL_SetupStage
433 .syntax unified
434 .thumb
435 .thumb_func
437 USBD_LL_SetupStage:
438 .LVL32:
439 .LFB341:
280:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
282:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_SetupStage
284:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle the setup stage
285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
286:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
287:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SetupStage(USBD_HandleTypeDef *pdev, uint8_t *psetup)
289:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
440 .loc 1 289 1 is_stmt 1 view -0
441 .cfi_startproc
442 @ args = 0, pretend = 0, frame = 0
443 @ frame_needed = 0, uses_anonymous_args = 0
444 .loc 1 289 1 is_stmt 0 view .LVU121
445 0000 38B5 push {r3, r4, r5, lr}
446 .LCFI11:
447 .cfi_def_cfa_offset 16
448 .cfi_offset 3, -16
449 .cfi_offset 4, -12
450 .cfi_offset 5, -8
451 .cfi_offset 14, -4
452 0002 0446 mov r4, r0
290:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret;
453 .loc 1 290 3 is_stmt 1 view .LVU122
291:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
292:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_ParseSetupRequest(&pdev->request, psetup);
454 .loc 1 292 3 view .LVU123
455 0004 00F2AA25 addw r5, r0, #682
456 0008 2846 mov r0, r5
457 .LVL33:
458 .loc 1 292 3 is_stmt 0 view .LVU124
ARM GAS /tmp/ccXNKvGT.s page 14
459 000a FFF7FEFF bl USBD_ParseSetupRequest
460 .LVL34:
293:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
294:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_state = USBD_EP0_SETUP;
461 .loc 1 294 3 is_stmt 1 view .LVU125
462 .loc 1 294 19 is_stmt 0 view .LVU126
463 000e 0123 movs r3, #1
464 0010 C4F89432 str r3, [r4, #660]
295:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
296:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = pdev->request.wLength;
465 .loc 1 296 3 is_stmt 1 view .LVU127
466 .loc 1 296 37 is_stmt 0 view .LVU128
467 0014 B4F8B032 ldrh r3, [r4, #688]
468 .loc 1 296 22 view .LVU129
469 0018 C4F89832 str r3, [r4, #664]
297:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
298:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** switch (pdev->request.bmRequest & 0x1FU)
470 .loc 1 298 3 is_stmt 1 view .LVU130
471 .loc 1 298 24 is_stmt 0 view .LVU131
472 001c 94F8AA12 ldrb r1, [r4, #682] @ zero_extendqisi2
473 0020 01F01F03 and r3, r1, #31
474 .loc 1 298 3 view .LVU132
475 0024 012B cmp r3, #1
476 0026 0DD0 beq .L31
477 0028 022B cmp r3, #2
478 002a 10D0 beq .L32
479 002c 2BB1 cbz r3, .L36
299:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
300:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** case USB_REQ_RECIPIENT_DEVICE:
301:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_StdDevReq(pdev, &pdev->request);
302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
303:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
304:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** case USB_REQ_RECIPIENT_INTERFACE:
305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_StdItfReq(pdev, &pdev->request);
306:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
308:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** case USB_REQ_RECIPIENT_ENDPOINT:
309:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_StdEPReq(pdev, &pdev->request);
310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** default:
313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = USBD_LL_StallEP(pdev, (pdev->request.bmRequest & 0x80U));
480 .loc 1 313 7 is_stmt 1 view .LVU133
481 .loc 1 313 13 is_stmt 0 view .LVU134
482 002e 01F08001 and r1, r1, #128
483 0032 2046 mov r0, r4
484 0034 FFF7FEFF bl USBD_LL_StallEP
485 .LVL35:
314:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
486 .loc 1 314 7 is_stmt 1 view .LVU135
487 0038 03E0 b .L34
488 .LVL36:
489 .L36:
301:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
490 .loc 1 301 7 view .LVU136
301:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
491 .loc 1 301 13 is_stmt 0 view .LVU137
ARM GAS /tmp/ccXNKvGT.s page 15
492 003a 2946 mov r1, r5
493 003c 2046 mov r0, r4
494 003e FFF7FEFF bl USBD_StdDevReq
495 .LVL37:
302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
496 .loc 1 302 7 is_stmt 1 view .LVU138
497 .L34:
315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
317:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
498 .loc 1 317 3 view .LVU139
318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
499 .loc 1 318 1 is_stmt 0 view .LVU140
500 0042 38BD pop {r3, r4, r5, pc}
501 .LVL38:
502 .L31:
305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
503 .loc 1 305 7 is_stmt 1 view .LVU141
305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
504 .loc 1 305 13 is_stmt 0 view .LVU142
505 0044 2946 mov r1, r5
506 0046 2046 mov r0, r4
507 0048 FFF7FEFF bl USBD_StdItfReq
508 .LVL39:
306:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
509 .loc 1 306 7 is_stmt 1 view .LVU143
510 004c F9E7 b .L34
511 .LVL40:
512 .L32:
309:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
513 .loc 1 309 7 view .LVU144
309:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** break;
514 .loc 1 309 13 is_stmt 0 view .LVU145
515 004e 2946 mov r1, r5
516 0050 2046 mov r0, r4
517 0052 FFF7FEFF bl USBD_StdEPReq
518 .LVL41:
310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
519 .loc 1 310 7 is_stmt 1 view .LVU146
520 0056 F4E7 b .L34
521 .cfi_endproc
522 .LFE341:
524 .section .text.USBD_LL_DataOutStage,"ax",%progbits
525 .align 1
526 .global USBD_LL_DataOutStage
527 .syntax unified
528 .thumb
529 .thumb_func
531 USBD_LL_DataOutStage:
532 .LVL42:
533 .LFB342:
319:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_DataOutStage
322:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle data OUT stage
323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
324:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param epnum: endpoint index
ARM GAS /tmp/ccXNKvGT.s page 16
325:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdata: data pointer
326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
327:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
328:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DataOutStage(USBD_HandleTypeDef *pdev,
329:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum, uint8_t *pdata)
330:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
534 .loc 1 330 1 view -0
535 .cfi_startproc
536 @ args = 0, pretend = 0, frame = 0
537 @ frame_needed = 0, uses_anonymous_args = 0
538 .loc 1 330 1 is_stmt 0 view .LVU148
539 0000 38B5 push {r3, r4, r5, lr}
540 .LCFI12:
541 .cfi_def_cfa_offset 16
542 .cfi_offset 3, -16
543 .cfi_offset 4, -12
544 .cfi_offset 5, -8
545 .cfi_offset 14, -4
546 0002 0446 mov r4, r0
331:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_EndpointTypeDef *pep;
547 .loc 1 331 3 is_stmt 1 view .LVU149
332:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret;
548 .loc 1 332 3 view .LVU150
333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
334:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (epnum == 0U)
549 .loc 1 334 3 view .LVU151
550 .loc 1 334 6 is_stmt 0 view .LVU152
551 0004 0D46 mov r5, r1
552 0006 41BB cbnz r1, .L38
553 0008 1346 mov r3, r2
335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep = &pdev->ep_out[0];
554 .loc 1 336 5 is_stmt 1 view .LVU153
555 .LVL43:
337:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
338:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->ep0_state == USBD_EP0_DATA_OUT)
556 .loc 1 338 5 view .LVU154
557 .loc 1 338 13 is_stmt 0 view .LVU155
558 000a D0F89422 ldr r2, [r0, #660]
559 .LVL44:
560 .loc 1 338 8 view .LVU156
561 000e 032A cmp r2, #3
562 0010 01D0 beq .L46
339:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pep->rem_length > pep->maxpacket)
341:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep->rem_length -= pep->maxpacket;
343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
344:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlContinueRx(pdev, pdata, MIN(pep->rem_length, pep->maxpacket));
345:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
346:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
347:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
349:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->EP0_RxReady != NULL)
351:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
352:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->EP0_RxReady(pdev);
ARM GAS /tmp/ccXNKvGT.s page 17
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 ****
356:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlSendStatus(pdev);
357:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
358:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
359:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
360:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
361:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if 0
362:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->ep0_state == USBD_EP0_STATUS_OUT)
363:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
364:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /*
365:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * STATUS PHASE completed, update ep0_state to idle
366:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
367:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_state = USBD_EP0_IDLE;
368:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_StallEP(pdev, 0U);
369:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
370:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
371:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
373:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
376:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->DataOut != NULL)
378:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = (USBD_StatusTypeDef)pdev->pClass->DataOut(pdev, epnum);
380:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (ret != USBD_OK)
382:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
383:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
385:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
387:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
388:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
563 .loc 1 389 10 view .LVU157
564 0012 0846 mov r0, r1
565 .LVL45:
566 .L39:
390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
567 .loc 1 390 1 view .LVU158
568 0014 38BD pop {r3, r4, r5, pc}
569 .LVL46:
570 .L46:
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
571 .loc 1 340 7 is_stmt 1 view .LVU159
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
572 .loc 1 340 14 is_stmt 0 view .LVU160
573 0016 D0F85C11 ldr r1, [r0, #348]
574 .LVL47:
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
575 .loc 1 340 32 view .LVU161
576 001a D0F86021 ldr r2, [r0, #352]
340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
577 .loc 1 340 10 view .LVU162
ARM GAS /tmp/ccXNKvGT.s page 18
578 001e 9142 cmp r1, r2
579 0020 09D8 bhi .L47
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
580 .loc 1 348 9 is_stmt 1 view .LVU163
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
581 .loc 1 348 17 is_stmt 0 view .LVU164
582 0022 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
583 .LVL48:
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
584 .loc 1 348 17 view .LVU165
585 0026 DBB2 uxtb r3, r3
348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
586 .loc 1 348 12 view .LVU166
587 0028 032B cmp r3, #3
588 002a 0FD0 beq .L48
589 .LVL49:
590 .L41:
356:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
591 .loc 1 356 9 is_stmt 1 view .LVU167
356:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
592 .loc 1 356 15 is_stmt 0 view .LVU168
593 002c 2046 mov r0, r4
594 002e FFF7FEFF bl USBD_CtlSendStatus
595 .LVL50:
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
596 .loc 1 389 10 view .LVU169
597 0032 2846 mov r0, r5
598 0034 EEE7 b .L39
599 .LVL51:
600 .L47:
342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
601 .loc 1 342 9 is_stmt 1 view .LVU170
342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
602 .loc 1 342 25 is_stmt 0 view .LVU171
603 0036 891A subs r1, r1, r2
604 0038 C0F85C11 str r1, [r0, #348]
344:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
605 .loc 1 344 9 is_stmt 1 view .LVU172
344:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
606 .loc 1 344 15 is_stmt 0 view .LVU173
607 003c 8A42 cmp r2, r1
608 003e 28BF it cs
609 0040 0A46 movcs r2, r1
610 0042 1946 mov r1, r3
611 0044 FFF7FEFF bl USBD_CtlContinueRx
612 .LVL52:
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
613 .loc 1 389 10 view .LVU174
614 0048 2846 mov r0, r5
615 004a E3E7 b .L39
616 .LVL53:
617 .L48:
350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
618 .loc 1 350 11 is_stmt 1 view .LVU175
350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
619 .loc 1 350 19 is_stmt 0 view .LVU176
620 004c D0F8B832 ldr r3, [r0, #696]
ARM GAS /tmp/ccXNKvGT.s page 19
350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
621 .loc 1 350 27 view .LVU177
622 0050 1B69 ldr r3, [r3, #16]
350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
623 .loc 1 350 14 view .LVU178
624 0052 002B cmp r3, #0
625 0054 EAD0 beq .L41
352:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
626 .loc 1 352 13 is_stmt 1 view .LVU179
627 0056 9847 blx r3
628 .LVL54:
352:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
629 .loc 1 352 13 is_stmt 0 view .LVU180
630 0058 E8E7 b .L41
631 .LVL55:
632 .L38:
375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
633 .loc 1 375 5 is_stmt 1 view .LVU181
375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
634 .loc 1 375 13 is_stmt 0 view .LVU182
635 005a 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
636 005e DBB2 uxtb r3, r3
375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
637 .loc 1 375 8 view .LVU183
638 0060 032B cmp r3, #3
639 0062 01D0 beq .L49
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
640 .loc 1 389 10 view .LVU184
641 0064 0020 movs r0, #0
642 .LVL56:
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
643 .loc 1 389 10 view .LVU185
644 0066 D5E7 b .L39
645 .LVL57:
646 .L49:
377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
647 .loc 1 377 7 is_stmt 1 view .LVU186
377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
648 .loc 1 377 15 is_stmt 0 view .LVU187
649 0068 D0F8B832 ldr r3, [r0, #696]
377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
650 .loc 1 377 23 view .LVU188
651 006c 9B69 ldr r3, [r3, #24]
377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
652 .loc 1 377 10 view .LVU189
653 006e 0BB1 cbz r3, .L44
379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
654 .loc 1 379 9 is_stmt 1 view .LVU190
379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
655 .loc 1 379 35 is_stmt 0 view .LVU191
656 0070 9847 blx r3
657 .LVL58:
381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
658 .loc 1 381 9 is_stmt 1 view .LVU192
659 0072 CFE7 b .L39
660 .LVL59:
661 .L44:
ARM GAS /tmp/ccXNKvGT.s page 20
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
662 .loc 1 389 10 is_stmt 0 view .LVU193
663 0074 0020 movs r0, #0
664 .LVL60:
389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
665 .loc 1 389 10 view .LVU194
666 0076 CDE7 b .L39
667 .cfi_endproc
668 .LFE342:
670 .section .text.USBD_LL_DataInStage,"ax",%progbits
671 .align 1
672 .global USBD_LL_DataInStage
673 .syntax unified
674 .thumb
675 .thumb_func
677 USBD_LL_DataInStage:
678 .LVL61:
679 .LFB343:
391:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
393:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_DataInStage
394:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle data in stage
395:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param epnum: endpoint index
397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
398:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DataInStage(USBD_HandleTypeDef *pdev,
400:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum, uint8_t *pdata)
401:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
680 .loc 1 401 1 is_stmt 1 view -0
681 .cfi_startproc
682 @ args = 0, pretend = 0, frame = 0
683 @ frame_needed = 0, uses_anonymous_args = 0
684 .loc 1 401 1 is_stmt 0 view .LVU196
685 0000 38B5 push {r3, r4, r5, lr}
686 .LCFI13:
687 .cfi_def_cfa_offset 16
688 .cfi_offset 3, -16
689 .cfi_offset 4, -12
690 .cfi_offset 5, -8
691 .cfi_offset 14, -4
692 0002 0446 mov r4, r0
402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_EndpointTypeDef *pep;
693 .loc 1 402 3 is_stmt 1 view .LVU197
403:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef ret;
694 .loc 1 403 3 view .LVU198
404:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
405:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (epnum == 0U)
695 .loc 1 405 3 view .LVU199
696 .loc 1 405 6 is_stmt 0 view .LVU200
697 0004 0D46 mov r5, r1
698 0006 0029 cmp r1, #0
699 0008 4AD1 bne .L51
700 000a 1346 mov r3, r2
406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
407:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep = &pdev->ep_in[0];
701 .loc 1 407 5 is_stmt 1 view .LVU201
ARM GAS /tmp/ccXNKvGT.s page 21
702 .LVL62:
408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
409:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->ep0_state == USBD_EP0_DATA_IN)
703 .loc 1 409 5 view .LVU202
704 .loc 1 409 13 is_stmt 0 view .LVU203
705 000c D0F89422 ldr r2, [r0, #660]
706 .LVL63:
707 .loc 1 409 8 view .LVU204
708 0010 022A cmp r2, #2
709 0012 05D0 beq .L61
710 .LVL64:
711 .L52:
410:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pep->rem_length > pep->maxpacket)
412:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pep->rem_length -= pep->maxpacket;
414:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
415:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlContinueSendData(pdev, pdata, pep->rem_length);
416:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
417:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prepare endpoint for premature end of transfer */
418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_PrepareReceive(pdev, 0U, NULL, 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 **** else
421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* last packet is MPS multiple, so send ZLP packet */
423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if ((pep->maxpacket == pep->rem_length) &&
424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
425:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length < pdev->ep0_data_len))
426:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
427:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlContinueSendData(pdev, NULL, 0U);
428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = 0U;
429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
430:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prepare endpoint for premature end of transfer */
431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_PrepareReceive(pdev, 0U, NULL, 0U);
432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
433:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->EP0_TxSent != NULL)
438:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
439:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->pClass->EP0_TxSent(pdev);
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 **** (void)USBD_LL_StallEP(pdev, 0x80U);
443:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlReceiveStatus(pdev);
444:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
445:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
447:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
449:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if 0
450:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if ((pdev->ep0_state == USBD_EP0_STATUS_IN) ||
451:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pdev->ep0_state == USBD_EP0_IDLE))
452:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
453:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_StallEP(pdev, 0x80U);
454:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
ARM GAS /tmp/ccXNKvGT.s page 22
455:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
456:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
712 .loc 1 456 5 is_stmt 1 view .LVU205
457:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_test_mode == 1U)
713 .loc 1 458 5 view .LVU206
714 .loc 1 458 13 is_stmt 0 view .LVU207
715 0014 94F8A032 ldrb r3, [r4, #672] @ zero_extendqisi2
716 .loc 1 458 8 view .LVU208
717 0018 012B cmp r3, #1
718 001a 3CD0 beq .L62
459:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_RunTestMode(pdev);
461:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_test_mode = 0U;
462:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
463:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
464:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** else
465:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
467:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->DataIn != NULL)
469:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** ret = (USBD_StatusTypeDef)pdev->pClass->DataIn(pdev, epnum);
471:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (ret != USBD_OK)
473:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
474:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return ret;
475:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
476:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
477:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
478:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
479:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
719 .loc 1 480 10 view .LVU209
720 001c 2846 mov r0, r5
721 .LVL65:
722 .L56:
481:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
723 .loc 1 481 1 view .LVU210
724 001e 38BD pop {r3, r4, r5, pc}
725 .LVL66:
726 .L61:
411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
727 .loc 1 411 7 is_stmt 1 view .LVU211
411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
728 .loc 1 411 14 is_stmt 0 view .LVU212
729 0020 C269 ldr r2, [r0, #28]
411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
730 .loc 1 411 32 view .LVU213
731 0022 016A ldr r1, [r0, #32]
732 .LVL67:
411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
733 .loc 1 411 10 view .LVU214
734 0024 8A42 cmp r2, r1
735 0026 0ED8 bhi .L63
423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
736 .loc 1 423 9 is_stmt 1 view .LVU215
ARM GAS /tmp/ccXNKvGT.s page 23
423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
737 .loc 1 423 12 is_stmt 0 view .LVU216
738 0028 8A42 cmp r2, r1
739 002a 18D0 beq .L64
740 .LVL68:
741 .L54:
435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
742 .loc 1 435 11 is_stmt 1 view .LVU217
435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
743 .loc 1 435 19 is_stmt 0 view .LVU218
744 002c 94F89C32 ldrb r3, [r4, #668] @ zero_extendqisi2
745 0030 DBB2 uxtb r3, r3
435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
746 .loc 1 435 14 view .LVU219
747 0032 032B cmp r3, #3
748 0034 27D0 beq .L65
749 .LVL69:
750 .L55:
442:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlReceiveStatus(pdev);
751 .loc 1 442 11 is_stmt 1 view .LVU220
442:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_CtlReceiveStatus(pdev);
752 .loc 1 442 17 is_stmt 0 view .LVU221
753 0036 8021 movs r1, #128
754 0038 2046 mov r0, r4
755 003a FFF7FEFF bl USBD_LL_StallEP
756 .LVL70:
443:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
757 .loc 1 443 11 is_stmt 1 view .LVU222
443:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
758 .loc 1 443 17 is_stmt 0 view .LVU223
759 003e 2046 mov r0, r4
760 0040 FFF7FEFF bl USBD_CtlReceiveStatus
761 .LVL71:
762 0044 E6E7 b .L52
763 .LVL72:
764 .L63:
413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
765 .loc 1 413 9 is_stmt 1 view .LVU224
413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
766 .loc 1 413 25 is_stmt 0 view .LVU225
767 0046 521A subs r2, r2, r1
768 0048 C261 str r2, [r0, #28]
415:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
769 .loc 1 415 9 is_stmt 1 view .LVU226
415:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
770 .loc 1 415 15 is_stmt 0 view .LVU227
771 004a 1946 mov r1, r3
772 004c FFF7FEFF bl USBD_CtlContinueSendData
773 .LVL73:
418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
774 .loc 1 418 9 is_stmt 1 view .LVU228
418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
775 .loc 1 418 15 is_stmt 0 view .LVU229
776 0050 0023 movs r3, #0
777 0052 1A46 mov r2, r3
778 0054 1946 mov r1, r3
779 0056 2046 mov r0, r4
ARM GAS /tmp/ccXNKvGT.s page 24
780 0058 FFF7FEFF bl USBD_LL_PrepareReceive
781 .LVL74:
782 005c DAE7 b .L52
783 .LVL75:
784 .L64:
424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length < pdev->ep0_data_len))
785 .loc 1 424 17 discriminator 1 view .LVU230
786 005e 8369 ldr r3, [r0, #24]
787 .LVL76:
423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length >= pep->maxpacket) &&
788 .loc 1 423 49 discriminator 1 view .LVU231
789 0060 9942 cmp r1, r3
790 0062 E3D8 bhi .L54
425:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
791 .loc 1 425 38 view .LVU232
792 0064 D0F89822 ldr r2, [r0, #664]
424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (pep->total_length < pdev->ep0_data_len))
793 .loc 1 424 51 view .LVU233
794 0068 9342 cmp r3, r2
795 006a DFD2 bcs .L54
427:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = 0U;
796 .loc 1 427 11 is_stmt 1 view .LVU234
427:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_data_len = 0U;
797 .loc 1 427 17 is_stmt 0 view .LVU235
798 006c 0022 movs r2, #0
799 006e 1146 mov r1, r2
800 0070 FFF7FEFF bl USBD_CtlContinueSendData
801 .LVL77:
428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
802 .loc 1 428 11 is_stmt 1 view .LVU236
428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
803 .loc 1 428 30 is_stmt 0 view .LVU237
804 0074 0021 movs r1, #0
805 0076 C4F89812 str r1, [r4, #664]
431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
806 .loc 1 431 11 is_stmt 1 view .LVU238
431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
807 .loc 1 431 17 is_stmt 0 view .LVU239
808 007a 0B46 mov r3, r1
809 007c 0A46 mov r2, r1
810 007e 2046 mov r0, r4
811 0080 FFF7FEFF bl USBD_LL_PrepareReceive
812 .LVL78:
431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
813 .loc 1 431 11 view .LVU240
814 0084 C6E7 b .L52
815 .LVL79:
816 .L65:
437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
817 .loc 1 437 13 is_stmt 1 view .LVU241
437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
818 .loc 1 437 21 is_stmt 0 view .LVU242
819 0086 D4F8B832 ldr r3, [r4, #696]
437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
820 .loc 1 437 29 view .LVU243
821 008a DB68 ldr r3, [r3, #12]
437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
ARM GAS /tmp/ccXNKvGT.s page 25
822 .loc 1 437 16 view .LVU244
823 008c 002B cmp r3, #0
824 008e D2D0 beq .L55
439:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
825 .loc 1 439 15 is_stmt 1 view .LVU245
826 0090 2046 mov r0, r4
827 .LVL80:
439:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
828 .loc 1 439 15 is_stmt 0 view .LVU246
829 0092 9847 blx r3
830 .LVL81:
831 0094 CFE7 b .L55
832 .L62:
460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_test_mode = 0U;
833 .loc 1 460 7 is_stmt 1 view .LVU247
461:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
834 .loc 1 461 7 view .LVU248
461:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
835 .loc 1 461 27 is_stmt 0 view .LVU249
836 0096 0023 movs r3, #0
837 0098 84F8A032 strb r3, [r4, #672]
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
838 .loc 1 480 10 view .LVU250
839 009c 2846 mov r0, r5
840 009e BEE7 b .L56
841 .LVL82:
842 .L51:
466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
843 .loc 1 466 5 is_stmt 1 view .LVU251
466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
844 .loc 1 466 13 is_stmt 0 view .LVU252
845 00a0 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
846 00a4 DBB2 uxtb r3, r3
466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
847 .loc 1 466 8 view .LVU253
848 00a6 032B cmp r3, #3
849 00a8 01D0 beq .L66
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
850 .loc 1 480 10 view .LVU254
851 00aa 0020 movs r0, #0
852 .LVL83:
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
853 .loc 1 480 10 view .LVU255
854 00ac B7E7 b .L56
855 .LVL84:
856 .L66:
468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
857 .loc 1 468 7 is_stmt 1 view .LVU256
468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
858 .loc 1 468 15 is_stmt 0 view .LVU257
859 00ae D0F8B832 ldr r3, [r0, #696]
468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
860 .loc 1 468 23 view .LVU258
861 00b2 5B69 ldr r3, [r3, #20]
468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
862 .loc 1 468 10 view .LVU259
863 00b4 0BB1 cbz r3, .L59
ARM GAS /tmp/ccXNKvGT.s page 26
470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
864 .loc 1 470 9 is_stmt 1 view .LVU260
470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
865 .loc 1 470 35 is_stmt 0 view .LVU261
866 00b6 9847 blx r3
867 .LVL85:
472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
868 .loc 1 472 9 is_stmt 1 view .LVU262
869 00b8 B1E7 b .L56
870 .LVL86:
871 .L59:
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
872 .loc 1 480 10 is_stmt 0 view .LVU263
873 00ba 0020 movs r0, #0
874 .LVL87:
480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
875 .loc 1 480 10 view .LVU264
876 00bc AFE7 b .L56
877 .cfi_endproc
878 .LFE343:
880 .section .text.USBD_LL_Reset,"ax",%progbits
881 .align 1
882 .global USBD_LL_Reset
883 .syntax unified
884 .thumb
885 .thumb_func
887 USBD_LL_Reset:
888 .LVL88:
889 .LFB344:
482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
483:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_Reset
485:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Reset event
486:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
487:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
488:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
489:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
490:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Reset(USBD_HandleTypeDef *pdev)
491:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
890 .loc 1 491 1 is_stmt 1 view -0
891 .cfi_startproc
892 @ args = 0, pretend = 0, frame = 0
893 @ frame_needed = 0, uses_anonymous_args = 0
492:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Upon Reset call user call back */
493:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
894 .loc 1 493 3 view .LVU266
895 .loc 1 493 19 is_stmt 0 view .LVU267
896 0000 0123 movs r3, #1
897 0002 80F89C32 strb r3, [r0, #668]
494:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep0_state = USBD_EP0_IDLE;
898 .loc 1 494 3 is_stmt 1 view .LVU268
899 .loc 1 494 19 is_stmt 0 view .LVU269
900 0006 0023 movs r3, #0
901 0008 C0F89432 str r3, [r0, #660]
495:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_config = 0U;
902 .loc 1 495 3 is_stmt 1 view .LVU270
903 .loc 1 495 20 is_stmt 0 view .LVU271
ARM GAS /tmp/ccXNKvGT.s page 27
904 000c 4360 str r3, [r0, #4]
496:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_remote_wakeup = 0U;
905 .loc 1 496 3 is_stmt 1 view .LVU272
906 .loc 1 496 27 is_stmt 0 view .LVU273
907 000e C0F8A432 str r3, [r0, #676]
497:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
498:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
908 .loc 1 498 3 is_stmt 1 view .LVU274
909 .loc 1 498 11 is_stmt 0 view .LVU275
910 0012 D0F8B832 ldr r3, [r0, #696]
911 .loc 1 498 6 view .LVU276
912 0016 F3B1 cbz r3, .L70
491:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Upon Reset call user call back */
913 .loc 1 491 1 view .LVU277
914 0018 70B5 push {r4, r5, r6, lr}
915 .LCFI14:
916 .cfi_def_cfa_offset 16
917 .cfi_offset 4, -16
918 .cfi_offset 5, -12
919 .cfi_offset 6, -8
920 .cfi_offset 14, -4
921 001a 0446 mov r4, r0
499:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
500:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
501:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
502:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
503:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClassData != NULL)
922 .loc 1 503 3 is_stmt 1 view .LVU278
923 .loc 1 503 11 is_stmt 0 view .LVU279
924 001c D0F8BC22 ldr r2, [r0, #700]
925 .loc 1 503 6 view .LVU280
926 0020 1AB1 cbz r2, .L69
504:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
505:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->DeInit != NULL)
927 .loc 1 505 5 is_stmt 1 view .LVU281
928 .loc 1 505 21 is_stmt 0 view .LVU282
929 0022 5B68 ldr r3, [r3, #4]
930 .loc 1 505 8 view .LVU283
931 0024 0BB1 cbz r3, .L69
506:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
507:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
932 .loc 1 507 7 is_stmt 1 view .LVU284
933 .loc 1 507 13 is_stmt 0 view .LVU285
934 0026 0021 movs r1, #0
935 0028 9847 blx r3
936 .LVL89:
937 .L69:
508:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
509:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
511:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Open EP0 OUT */
512:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_OpenEP(pdev, 0x00U, USBD_EP_TYPE_CTRL, USB_MAX_EP0_SIZE);
938 .loc 1 512 3 is_stmt 1 view .LVU286
939 .loc 1 512 9 is_stmt 0 view .LVU287
940 002a 4023 movs r3, #64
941 002c 0022 movs r2, #0
942 002e 1146 mov r1, r2
ARM GAS /tmp/ccXNKvGT.s page 28
943 0030 2046 mov r0, r4
944 0032 FFF7FEFF bl USBD_LL_OpenEP
945 .LVL90:
513:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_out[0x00U & 0xFU].is_used = 1U;
946 .loc 1 513 3 is_stmt 1 view .LVU288
947 .loc 1 513 38 is_stmt 0 view .LVU289
948 0036 0126 movs r6, #1
949 0038 A4F86461 strh r6, [r4, #356] @ movhi
514:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
515:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_out[0].maxpacket = USB_MAX_EP0_SIZE;
950 .loc 1 515 3 is_stmt 1 view .LVU290
951 .loc 1 515 29 is_stmt 0 view .LVU291
952 003c 4025 movs r5, #64
953 003e C4F86051 str r5, [r4, #352]
516:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
517:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Open EP0 IN */
518:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)USBD_LL_OpenEP(pdev, 0x80U, USBD_EP_TYPE_CTRL, USB_MAX_EP0_SIZE);
954 .loc 1 518 3 is_stmt 1 view .LVU292
955 .loc 1 518 9 is_stmt 0 view .LVU293
956 0042 2B46 mov r3, r5
957 0044 0022 movs r2, #0
958 0046 8021 movs r1, #128
959 0048 2046 mov r0, r4
960 004a FFF7FEFF bl USBD_LL_OpenEP
961 .LVL91:
519:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_in[0x80U & 0xFU].is_used = 1U;
962 .loc 1 519 3 is_stmt 1 view .LVU294
963 .loc 1 519 37 is_stmt 0 view .LVU295
964 004e A684 strh r6, [r4, #36] @ movhi
520:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
521:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->ep_in[0].maxpacket = USB_MAX_EP0_SIZE;
965 .loc 1 521 3 is_stmt 1 view .LVU296
966 .loc 1 521 28 is_stmt 0 view .LVU297
967 0050 2562 str r5, [r4, #32]
522:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
523:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
968 .loc 1 523 3 is_stmt 1 view .LVU298
969 .loc 1 523 10 is_stmt 0 view .LVU299
970 0052 0020 movs r0, #0
524:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
971 .loc 1 524 1 view .LVU300
972 0054 70BD pop {r4, r5, r6, pc}
973 .LVL92:
974 .L70:
975 .LCFI15:
976 .cfi_def_cfa_offset 0
977 .cfi_restore 4
978 .cfi_restore 5
979 .cfi_restore 6
980 .cfi_restore 14
500:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
981 .loc 1 500 12 view .LVU301
982 0056 0320 movs r0, #3
983 .LVL93:
984 .loc 1 524 1 view .LVU302
985 0058 7047 bx lr
986 .cfi_endproc
ARM GAS /tmp/ccXNKvGT.s page 29
987 .LFE344:
989 .section .text.USBD_LL_SetSpeed,"ax",%progbits
990 .align 1
991 .global USBD_LL_SetSpeed
992 .syntax unified
993 .thumb
994 .thumb_func
996 USBD_LL_SetSpeed:
997 .LVL94:
998 .LFB345:
525:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
526:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_SetSpeed
528:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Reset event
529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
530:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
531:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
532:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SetSpeed(USBD_HandleTypeDef *pdev,
533:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_SpeedTypeDef speed)
534:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
999 .loc 1 534 1 is_stmt 1 view -0
1000 .cfi_startproc
1001 @ args = 0, pretend = 0, frame = 0
1002 @ frame_needed = 0, uses_anonymous_args = 0
1003 @ link register save eliminated.
535:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_speed = speed;
1004 .loc 1 535 3 view .LVU304
1005 .loc 1 535 19 is_stmt 0 view .LVU305
1006 0000 0174 strb r1, [r0, #16]
536:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
537:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1007 .loc 1 537 3 is_stmt 1 view .LVU306
538:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1008 .loc 1 538 1 is_stmt 0 view .LVU307
1009 0002 0020 movs r0, #0
1010 .LVL95:
1011 .loc 1 538 1 view .LVU308
1012 0004 7047 bx lr
1013 .cfi_endproc
1014 .LFE345:
1016 .section .text.USBD_LL_Suspend,"ax",%progbits
1017 .align 1
1018 .global USBD_LL_Suspend
1019 .syntax unified
1020 .thumb
1021 .thumb_func
1023 USBD_LL_Suspend:
1024 .LVL96:
1025 .LFB346:
539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
540:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_Suspend
542:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Suspend event
543:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
544:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
545:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
546:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
ARM GAS /tmp/ccXNKvGT.s page 30
547:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Suspend(USBD_HandleTypeDef *pdev)
548:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1026 .loc 1 548 1 is_stmt 1 view -0
1027 .cfi_startproc
1028 @ args = 0, pretend = 0, frame = 0
1029 @ frame_needed = 0, uses_anonymous_args = 0
1030 @ link register save eliminated.
549:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_old_state = pdev->dev_state;
1031 .loc 1 549 3 view .LVU310
1032 .loc 1 549 29 is_stmt 0 view .LVU311
1033 0000 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1034 0004 DBB2 uxtb r3, r3
1035 .loc 1 549 23 view .LVU312
1036 0006 80F89D32 strb r3, [r0, #669]
550:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_SUSPENDED;
1037 .loc 1 550 3 is_stmt 1 view .LVU313
1038 .loc 1 550 19 is_stmt 0 view .LVU314
1039 000a 0423 movs r3, #4
1040 000c 80F89C32 strb r3, [r0, #668]
551:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
552:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1041 .loc 1 552 3 is_stmt 1 view .LVU315
553:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1042 .loc 1 553 1 is_stmt 0 view .LVU316
1043 0010 0020 movs r0, #0
1044 .LVL97:
1045 .loc 1 553 1 view .LVU317
1046 0012 7047 bx lr
1047 .cfi_endproc
1048 .LFE346:
1050 .section .text.USBD_LL_Resume,"ax",%progbits
1051 .align 1
1052 .global USBD_LL_Resume
1053 .syntax unified
1054 .thumb
1055 .thumb_func
1057 USBD_LL_Resume:
1058 .LVL98:
1059 .LFB347:
554:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
555:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
556:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_Resume
557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle Resume event
558:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
559:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
560:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
561:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Resume(USBD_HandleTypeDef *pdev)
563:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1060 .loc 1 563 1 is_stmt 1 view -0
1061 .cfi_startproc
1062 @ args = 0, pretend = 0, frame = 0
1063 @ frame_needed = 0, uses_anonymous_args = 0
1064 @ link register save eliminated.
564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_SUSPENDED)
1065 .loc 1 564 3 view .LVU319
1066 .loc 1 564 11 is_stmt 0 view .LVU320
ARM GAS /tmp/ccXNKvGT.s page 31
1067 0000 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1068 0004 DBB2 uxtb r3, r3
1069 .loc 1 564 6 view .LVU321
1070 0006 042B cmp r3, #4
1071 0008 01D0 beq .L79
1072 .L78:
565:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = pdev->dev_old_state;
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 **** return USBD_OK;
1073 .loc 1 569 3 is_stmt 1 view .LVU322
570:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1074 .loc 1 570 1 is_stmt 0 view .LVU323
1075 000a 0020 movs r0, #0
1076 .LVL99:
1077 .loc 1 570 1 view .LVU324
1078 000c 7047 bx lr
1079 .LVL100:
1080 .L79:
566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1081 .loc 1 566 5 is_stmt 1 view .LVU325
566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1082 .loc 1 566 27 is_stmt 0 view .LVU326
1083 000e 90F89D32 ldrb r3, [r0, #669] @ zero_extendqisi2
1084 0012 DBB2 uxtb r3, r3
566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1085 .loc 1 566 21 view .LVU327
1086 0014 80F89C32 strb r3, [r0, #668]
1087 0018 F7E7 b .L78
1088 .cfi_endproc
1089 .LFE347:
1091 .section .text.USBD_LL_SOF,"ax",%progbits
1092 .align 1
1093 .global USBD_LL_SOF
1094 .syntax unified
1095 .thumb
1096 .thumb_func
1098 USBD_LL_SOF:
1099 .LVL101:
1100 .LFB348:
571:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
572:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
573:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_SOF
574:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle SOF event
575:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
577:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
578:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
579:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SOF(USBD_HandleTypeDef *pdev)
580:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1101 .loc 1 580 1 is_stmt 1 view -0
1102 .cfi_startproc
1103 @ args = 0, pretend = 0, frame = 0
1104 @ frame_needed = 0, uses_anonymous_args = 0
581:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
1105 .loc 1 581 3 view .LVU329
ARM GAS /tmp/ccXNKvGT.s page 32
1106 .loc 1 581 11 is_stmt 0 view .LVU330
1107 0000 D0F8B822 ldr r2, [r0, #696]
1108 .loc 1 581 6 view .LVU331
1109 0004 62B1 cbz r2, .L82
580:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
1110 .loc 1 580 1 view .LVU332
1111 0006 08B5 push {r3, lr}
1112 .LCFI16:
1113 .cfi_def_cfa_offset 8
1114 .cfi_offset 3, -8
1115 .cfi_offset 14, -4
582:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
583:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
584:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
585:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
586:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
1116 .loc 1 586 3 is_stmt 1 view .LVU333
1117 .loc 1 586 11 is_stmt 0 view .LVU334
1118 0008 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1119 000c DBB2 uxtb r3, r3
1120 .loc 1 586 6 view .LVU335
1121 000e 032B cmp r3, #3
1122 0010 01D0 beq .L89
587:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->SOF != NULL)
589:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)pdev->pClass->SOF(pdev);
591:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
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;
1123 .loc 1 594 10 view .LVU336
1124 0012 0020 movs r0, #0
1125 .LVL102:
1126 .L81:
595:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1127 .loc 1 595 1 view .LVU337
1128 0014 08BD pop {r3, pc}
1129 .LVL103:
1130 .L89:
588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1131 .loc 1 588 5 is_stmt 1 view .LVU338
588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1132 .loc 1 588 21 is_stmt 0 view .LVU339
1133 0016 D369 ldr r3, [r2, #28]
588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1134 .loc 1 588 8 view .LVU340
1135 0018 23B1 cbz r3, .L84
590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1136 .loc 1 590 7 is_stmt 1 view .LVU341
590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1137 .loc 1 590 13 is_stmt 0 view .LVU342
1138 001a 9847 blx r3
1139 .LVL104:
594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1140 .loc 1 594 10 view .LVU343
1141 001c 0020 movs r0, #0
ARM GAS /tmp/ccXNKvGT.s page 33
1142 001e F9E7 b .L81
1143 .LVL105:
1144 .L82:
1145 .LCFI17:
1146 .cfi_def_cfa_offset 0
1147 .cfi_restore 3
1148 .cfi_restore 14
583:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1149 .loc 1 583 12 view .LVU344
1150 0020 0320 movs r0, #3
1151 .LVL106:
1152 .loc 1 595 1 view .LVU345
1153 0022 7047 bx lr
1154 .LVL107:
1155 .L84:
1156 .LCFI18:
1157 .cfi_def_cfa_offset 8
1158 .cfi_offset 3, -8
1159 .cfi_offset 14, -4
594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1160 .loc 1 594 10 view .LVU346
1161 0024 0020 movs r0, #0
1162 .LVL108:
594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1163 .loc 1 594 10 view .LVU347
1164 0026 F5E7 b .L81
1165 .cfi_endproc
1166 .LFE348:
1168 .section .text.USBD_LL_IsoINIncomplete,"ax",%progbits
1169 .align 1
1170 .global USBD_LL_IsoINIncomplete
1171 .syntax unified
1172 .thumb
1173 .thumb_func
1175 USBD_LL_IsoINIncomplete:
1176 .LVL109:
1177 .LFB349:
596:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
597:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
598:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_IsoINIncomplete
599:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle iso in incomplete event
600:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
601:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
602:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
603:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_IsoINIncomplete(USBD_HandleTypeDef *pdev,
604:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum)
605:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1178 .loc 1 605 1 is_stmt 1 view -0
1179 .cfi_startproc
1180 @ args = 0, pretend = 0, frame = 0
1181 @ frame_needed = 0, uses_anonymous_args = 0
606:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
1182 .loc 1 606 3 view .LVU349
1183 .loc 1 606 11 is_stmt 0 view .LVU350
1184 0000 D0F8B822 ldr r2, [r0, #696]
1185 .loc 1 606 6 view .LVU351
1186 0004 62B1 cbz r2, .L92
ARM GAS /tmp/ccXNKvGT.s page 34
605:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
1187 .loc 1 605 1 view .LVU352
1188 0006 08B5 push {r3, lr}
1189 .LCFI19:
1190 .cfi_def_cfa_offset 8
1191 .cfi_offset 3, -8
1192 .cfi_offset 14, -4
607:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
608:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
609:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
610:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
611:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
1193 .loc 1 611 3 is_stmt 1 view .LVU353
1194 .loc 1 611 11 is_stmt 0 view .LVU354
1195 0008 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1196 000c DBB2 uxtb r3, r3
1197 .loc 1 611 6 view .LVU355
1198 000e 032B cmp r3, #3
1199 0010 01D0 beq .L99
612:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
613:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->IsoINIncomplete != NULL)
614:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
615:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)pdev->pClass->IsoINIncomplete(pdev, epnum);
616:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
617:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
618:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
619:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1200 .loc 1 619 10 view .LVU356
1201 0012 0020 movs r0, #0
1202 .LVL110:
1203 .L91:
620:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1204 .loc 1 620 1 view .LVU357
1205 0014 08BD pop {r3, pc}
1206 .LVL111:
1207 .L99:
613:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1208 .loc 1 613 5 is_stmt 1 view .LVU358
613:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1209 .loc 1 613 21 is_stmt 0 view .LVU359
1210 0016 136A ldr r3, [r2, #32]
613:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1211 .loc 1 613 8 view .LVU360
1212 0018 23B1 cbz r3, .L94
615:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1213 .loc 1 615 7 is_stmt 1 view .LVU361
615:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1214 .loc 1 615 13 is_stmt 0 view .LVU362
1215 001a 9847 blx r3
1216 .LVL112:
619:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1217 .loc 1 619 10 view .LVU363
1218 001c 0020 movs r0, #0
1219 001e F9E7 b .L91
1220 .LVL113:
1221 .L92:
1222 .LCFI20:
ARM GAS /tmp/ccXNKvGT.s page 35
1223 .cfi_def_cfa_offset 0
1224 .cfi_restore 3
1225 .cfi_restore 14
608:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1226 .loc 1 608 12 view .LVU364
1227 0020 0320 movs r0, #3
1228 .LVL114:
1229 .loc 1 620 1 view .LVU365
1230 0022 7047 bx lr
1231 .LVL115:
1232 .L94:
1233 .LCFI21:
1234 .cfi_def_cfa_offset 8
1235 .cfi_offset 3, -8
1236 .cfi_offset 14, -4
619:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1237 .loc 1 619 10 view .LVU366
1238 0024 0020 movs r0, #0
1239 .LVL116:
619:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1240 .loc 1 619 10 view .LVU367
1241 0026 F5E7 b .L91
1242 .cfi_endproc
1243 .LFE349:
1245 .section .text.USBD_LL_IsoOUTIncomplete,"ax",%progbits
1246 .align 1
1247 .global USBD_LL_IsoOUTIncomplete
1248 .syntax unified
1249 .thumb
1250 .thumb_func
1252 USBD_LL_IsoOUTIncomplete:
1253 .LVL117:
1254 .LFB350:
621:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
622:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
623:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_IsoOUTIncomplete
624:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle iso out incomplete event
625:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
626:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
627:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
628:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_IsoOUTIncomplete(USBD_HandleTypeDef *pdev,
629:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** uint8_t epnum)
630:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1255 .loc 1 630 1 is_stmt 1 view -0
1256 .cfi_startproc
1257 @ args = 0, pretend = 0, frame = 0
1258 @ frame_needed = 0, uses_anonymous_args = 0
631:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
1259 .loc 1 631 3 view .LVU369
1260 .loc 1 631 11 is_stmt 0 view .LVU370
1261 0000 D0F8B822 ldr r2, [r0, #696]
1262 .loc 1 631 6 view .LVU371
1263 0004 62B1 cbz r2, .L102
630:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass == NULL)
1264 .loc 1 630 1 view .LVU372
1265 0006 08B5 push {r3, lr}
1266 .LCFI22:
ARM GAS /tmp/ccXNKvGT.s page 36
1267 .cfi_def_cfa_offset 8
1268 .cfi_offset 3, -8
1269 .cfi_offset 14, -4
632:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
633:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_FAIL;
634:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
635:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
636:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED)
1270 .loc 1 636 3 is_stmt 1 view .LVU373
1271 .loc 1 636 11 is_stmt 0 view .LVU374
1272 0008 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2
1273 000c DBB2 uxtb r3, r3
1274 .loc 1 636 6 view .LVU375
1275 000e 032B cmp r3, #3
1276 0010 01D0 beq .L109
637:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
638:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass->IsoOUTIncomplete != NULL)
639:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
640:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)pdev->pClass->IsoOUTIncomplete(pdev, epnum);
641:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
642:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
643:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
644:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1277 .loc 1 644 10 view .LVU376
1278 0012 0020 movs r0, #0
1279 .LVL118:
1280 .L101:
645:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1281 .loc 1 645 1 view .LVU377
1282 0014 08BD pop {r3, pc}
1283 .LVL119:
1284 .L109:
638:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1285 .loc 1 638 5 is_stmt 1 view .LVU378
638:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1286 .loc 1 638 21 is_stmt 0 view .LVU379
1287 0016 536A ldr r3, [r2, #36]
638:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1288 .loc 1 638 8 view .LVU380
1289 0018 23B1 cbz r3, .L104
640:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1290 .loc 1 640 7 is_stmt 1 view .LVU381
640:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1291 .loc 1 640 13 is_stmt 0 view .LVU382
1292 001a 9847 blx r3
1293 .LVL120:
644:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1294 .loc 1 644 10 view .LVU383
1295 001c 0020 movs r0, #0
1296 001e F9E7 b .L101
1297 .LVL121:
1298 .L102:
1299 .LCFI23:
1300 .cfi_def_cfa_offset 0
1301 .cfi_restore 3
1302 .cfi_restore 14
633:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
ARM GAS /tmp/ccXNKvGT.s page 37
1303 .loc 1 633 12 view .LVU384
1304 0020 0320 movs r0, #3
1305 .LVL122:
1306 .loc 1 645 1 view .LVU385
1307 0022 7047 bx lr
1308 .LVL123:
1309 .L104:
1310 .LCFI24:
1311 .cfi_def_cfa_offset 8
1312 .cfi_offset 3, -8
1313 .cfi_offset 14, -4
644:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1314 .loc 1 644 10 view .LVU386
1315 0024 0020 movs r0, #0
1316 .LVL124:
644:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1317 .loc 1 644 10 view .LVU387
1318 0026 F5E7 b .L101
1319 .cfi_endproc
1320 .LFE350:
1322 .section .text.USBD_LL_DevConnected,"ax",%progbits
1323 .align 1
1324 .global USBD_LL_DevConnected
1325 .syntax unified
1326 .thumb
1327 .thumb_func
1329 USBD_LL_DevConnected:
1330 .LVL125:
1331 .LFB351:
646:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
647:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
648:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_DevConnected
649:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle device connection event
650:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
651:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
652:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
653:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DevConnected(USBD_HandleTypeDef *pdev)
654:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1332 .loc 1 654 1 is_stmt 1 view -0
1333 .cfi_startproc
1334 @ args = 0, pretend = 0, frame = 0
1335 @ frame_needed = 0, uses_anonymous_args = 0
1336 @ link register save eliminated.
655:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Prevent unused argument compilation warning */
656:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** UNUSED(pdev);
1337 .loc 1 656 3 view .LVU389
657:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
658:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1338 .loc 1 658 3 view .LVU390
659:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1339 .loc 1 659 1 is_stmt 0 view .LVU391
1340 0000 0020 movs r0, #0
1341 .LVL126:
1342 .loc 1 659 1 view .LVU392
1343 0002 7047 bx lr
1344 .cfi_endproc
1345 .LFE351:
ARM GAS /tmp/ccXNKvGT.s page 38
1347 .section .text.USBD_LL_DevDisconnected,"ax",%progbits
1348 .align 1
1349 .global USBD_LL_DevDisconnected
1350 .syntax unified
1351 .thumb
1352 .thumb_func
1354 USBD_LL_DevDisconnected:
1355 .LVL127:
1356 .LFB352:
660:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
661:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
662:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief USBD_LL_DevDisconnected
663:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * Handle device disconnection event
664:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param pdev: device instance
665:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
666:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
667:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DevDisconnected(USBD_HandleTypeDef *pdev)
668:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
1357 .loc 1 668 1 is_stmt 1 view -0
1358 .cfi_startproc
1359 @ args = 0, pretend = 0, frame = 0
1360 @ frame_needed = 0, uses_anonymous_args = 0
1361 .loc 1 668 1 is_stmt 0 view .LVU394
1362 0000 08B5 push {r3, lr}
1363 .LCFI25:
1364 .cfi_def_cfa_offset 8
1365 .cfi_offset 3, -8
1366 .cfi_offset 14, -4
669:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Free Class Resources */
670:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** pdev->dev_state = USBD_STATE_DEFAULT;
1367 .loc 1 670 3 is_stmt 1 view .LVU395
1368 .loc 1 670 19 is_stmt 0 view .LVU396
1369 0002 0123 movs r3, #1
1370 0004 80F89C32 strb r3, [r0, #668]
671:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
672:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** if (pdev->pClass != NULL)
1371 .loc 1 672 3 is_stmt 1 view .LVU397
1372 .loc 1 672 11 is_stmt 0 view .LVU398
1373 0008 D0F8B832 ldr r3, [r0, #696]
1374 .loc 1 672 6 view .LVU399
1375 000c 13B1 cbz r3, .L112
673:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
674:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** (void)pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
1376 .loc 1 674 5 is_stmt 1 view .LVU400
1377 .loc 1 674 23 is_stmt 0 view .LVU401
1378 000e 5B68 ldr r3, [r3, #4]
1379 .loc 1 674 11 view .LVU402
1380 0010 0179 ldrb r1, [r0, #4] @ zero_extendqisi2
1381 0012 9847 blx r3
1382 .LVL128:
1383 .L112:
675:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
676:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****
677:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** return USBD_OK;
1384 .loc 1 677 3 is_stmt 1 view .LVU403
678:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
1385 .loc 1 678 1 is_stmt 0 view .LVU404
ARM GAS /tmp/ccXNKvGT.s page 39
1386 0014 0020 movs r0, #0
1387 0016 08BD pop {r3, pc}
1388 .cfi_endproc
1389 .LFE352:
1391 .text
1392 .Letext0:
1393 .file 2 "/usr/include/newlib/machine/_default_types.h"
1394 .file 3 "/usr/include/newlib/sys/_stdint.h"
1395 .file 4 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h"
1396 .file 5 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h"
1397 .file 6 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h"
1398 .file 7 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h"
ARM GAS /tmp/ccXNKvGT.s page 40
DEFINED SYMBOLS
*ABS*:00000000 usbd_core.c
/tmp/ccXNKvGT.s:21 .text.USBD_Init:00000000 $t
/tmp/ccXNKvGT.s:27 .text.USBD_Init:00000000 USBD_Init
/tmp/ccXNKvGT.s:96 .text.USBD_DeInit:00000000 $t
/tmp/ccXNKvGT.s:102 .text.USBD_DeInit:00000000 USBD_DeInit
/tmp/ccXNKvGT.s:166 .text.USBD_RegisterClass:00000000 $t
/tmp/ccXNKvGT.s:172 .text.USBD_RegisterClass:00000000 USBD_RegisterClass
/tmp/ccXNKvGT.s:244 .text.USBD_Start:00000000 $t
/tmp/ccXNKvGT.s:250 .text.USBD_Start:00000000 USBD_Start
/tmp/ccXNKvGT.s:273 .text.USBD_Stop:00000000 $t
/tmp/ccXNKvGT.s:279 .text.USBD_Stop:00000000 USBD_Stop
/tmp/ccXNKvGT.s:320 .text.USBD_RunTestMode:00000000 $t
/tmp/ccXNKvGT.s:326 .text.USBD_RunTestMode:00000000 USBD_RunTestMode
/tmp/ccXNKvGT.s:345 .text.USBD_SetClassConfig:00000000 $t
/tmp/ccXNKvGT.s:351 .text.USBD_SetClassConfig:00000000 USBD_SetClassConfig
/tmp/ccXNKvGT.s:392 .text.USBD_ClrClassConfig:00000000 $t
/tmp/ccXNKvGT.s:398 .text.USBD_ClrClassConfig:00000000 USBD_ClrClassConfig
/tmp/ccXNKvGT.s:431 .text.USBD_LL_SetupStage:00000000 $t
/tmp/ccXNKvGT.s:437 .text.USBD_LL_SetupStage:00000000 USBD_LL_SetupStage
/tmp/ccXNKvGT.s:525 .text.USBD_LL_DataOutStage:00000000 $t
/tmp/ccXNKvGT.s:531 .text.USBD_LL_DataOutStage:00000000 USBD_LL_DataOutStage
/tmp/ccXNKvGT.s:671 .text.USBD_LL_DataInStage:00000000 $t
/tmp/ccXNKvGT.s:677 .text.USBD_LL_DataInStage:00000000 USBD_LL_DataInStage
/tmp/ccXNKvGT.s:881 .text.USBD_LL_Reset:00000000 $t
/tmp/ccXNKvGT.s:887 .text.USBD_LL_Reset:00000000 USBD_LL_Reset
/tmp/ccXNKvGT.s:990 .text.USBD_LL_SetSpeed:00000000 $t
/tmp/ccXNKvGT.s:996 .text.USBD_LL_SetSpeed:00000000 USBD_LL_SetSpeed
/tmp/ccXNKvGT.s:1017 .text.USBD_LL_Suspend:00000000 $t
/tmp/ccXNKvGT.s:1023 .text.USBD_LL_Suspend:00000000 USBD_LL_Suspend
/tmp/ccXNKvGT.s:1051 .text.USBD_LL_Resume:00000000 $t
/tmp/ccXNKvGT.s:1057 .text.USBD_LL_Resume:00000000 USBD_LL_Resume
/tmp/ccXNKvGT.s:1092 .text.USBD_LL_SOF:00000000 $t
/tmp/ccXNKvGT.s:1098 .text.USBD_LL_SOF:00000000 USBD_LL_SOF
/tmp/ccXNKvGT.s:1169 .text.USBD_LL_IsoINIncomplete:00000000 $t
/tmp/ccXNKvGT.s:1175 .text.USBD_LL_IsoINIncomplete:00000000 USBD_LL_IsoINIncomplete
/tmp/ccXNKvGT.s:1246 .text.USBD_LL_IsoOUTIncomplete:00000000 $t
/tmp/ccXNKvGT.s:1252 .text.USBD_LL_IsoOUTIncomplete:00000000 USBD_LL_IsoOUTIncomplete
/tmp/ccXNKvGT.s:1323 .text.USBD_LL_DevConnected:00000000 $t
/tmp/ccXNKvGT.s:1329 .text.USBD_LL_DevConnected:00000000 USBD_LL_DevConnected
/tmp/ccXNKvGT.s:1348 .text.USBD_LL_DevDisconnected:00000000 $t
/tmp/ccXNKvGT.s:1354 .text.USBD_LL_DevDisconnected:00000000 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_CtlSendStatus
USBD_CtlContinueRx
USBD_CtlReceiveStatus
USBD_CtlContinueSendData
ARM GAS /tmp/ccXNKvGT.s page 41
USBD_LL_PrepareReceive
USBD_LL_OpenEP