ARM GAS /tmp/ccDAqcJz.s page 1 1 .cpu cortex-m0 2 .eabi_attribute 20, 1 3 .eabi_attribute 21, 1 4 .eabi_attribute 23, 3 5 .eabi_attribute 24, 1 6 .eabi_attribute 25, 1 7 .eabi_attribute 26, 1 8 .eabi_attribute 30, 1 9 .eabi_attribute 34, 0 10 .eabi_attribute 18, 4 11 .file "usbd_midi.c" 12 .text 13 .Ltext0: 14 .cfi_sections .debug_frame 15 .section .text.USBD_MIDI_DataIn,"ax",%progbits 16 .align 1 17 .syntax unified 18 .code 16 19 .thumb_func 20 .fpu softvfp 22 USBD_MIDI_DataIn: 23 .LFB45: 24 .file 1 "Middlewares/USBMIDI/Src/usbd_midi.c" 1:Middlewares/USBMIDI/Src/usbd_midi.c **** /** 2:Middlewares/USBMIDI/Src/usbd_midi.c **** ****************************************************************************** 3:Middlewares/USBMIDI/Src/usbd_midi.c **** * @file usbd_midi.c 4:Middlewares/USBMIDI/Src/usbd_midi.c **** ****************************************************************************** 5:Middlewares/USBMIDI/Src/usbd_midi.c **** 6:Middlewares/USBMIDI/Src/usbd_midi.c **** (CC at)2016 by D.F.Mac. @TripArts Music 7:Middlewares/USBMIDI/Src/usbd_midi.c **** 8:Middlewares/USBMIDI/Src/usbd_midi.c **** */ 9:Middlewares/USBMIDI/Src/usbd_midi.c **** 10:Middlewares/USBMIDI/Src/usbd_midi.c **** /* Includes ------------------------------------------------------------------*/ 11:Middlewares/USBMIDI/Src/usbd_midi.c **** #include "usbd_midi.h" 12:Middlewares/USBMIDI/Src/usbd_midi.c **** #include "usbd_desc.h" 13:Middlewares/USBMIDI/Src/usbd_midi.c **** #include "stm32f0xx_hal_conf.h" 14:Middlewares/USBMIDI/Src/usbd_midi.c **** #include "usbd_ctlreq.h" 15:Middlewares/USBMIDI/Src/usbd_midi.c **** #include "stm32f0xx_hal.h" 16:Middlewares/USBMIDI/Src/usbd_midi.c **** 17:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_Init (USBD_HandleTypeDef *pdev, uint8_t cfgidx); 18:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_DeInit (USBD_HandleTypeDef *pdev, uint8_t cfgidx); 19:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_DataIn (USBD_HandleTypeDef *pdev, uint8_t epnum); 20:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_DataOut (USBD_HandleTypeDef *pdev, uint8_t epnum); 21:Middlewares/USBMIDI/Src/usbd_midi.c **** 22:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t *USBD_MIDI_GetCfgDesc (uint16_t *length); 23:Middlewares/USBMIDI/Src/usbd_midi.c **** //uint8_t *USBD_MIDI_GetDeviceQualifierDescriptor (uint16_t *length); 24:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_HandleTypeDef *pInstance = NULL; 25:Middlewares/USBMIDI/Src/usbd_midi.c **** 26:Middlewares/USBMIDI/Src/usbd_midi.c **** uint32_t APP_Rx_ptr_in = 0; 27:Middlewares/USBMIDI/Src/usbd_midi.c **** uint32_t APP_Rx_ptr_out = 0; 28:Middlewares/USBMIDI/Src/usbd_midi.c **** uint32_t APP_Rx_length = 0; 29:Middlewares/USBMIDI/Src/usbd_midi.c **** uint8_t USB_Tx_State = 0; 30:Middlewares/USBMIDI/Src/usbd_midi.c **** 31:Middlewares/USBMIDI/Src/usbd_midi.c **** __ALIGN_BEGIN uint8_t USB_Rx_Buffer[MIDI_DATA_OUT_PACKET_SIZE] __ALIGN_END ; 32:Middlewares/USBMIDI/Src/usbd_midi.c **** __ALIGN_BEGIN uint8_t APP_Rx_Buffer[APP_RX_DATA_SIZE] __ALIGN_END ; 33:Middlewares/USBMIDI/Src/usbd_midi.c **** 34:Middlewares/USBMIDI/Src/usbd_midi.c **** /* USB Standard Device Descriptor */ ARM GAS /tmp/ccDAqcJz.s page 2 35:Middlewares/USBMIDI/Src/usbd_midi.c **** /* 36:Middlewares/USBMIDI/Src/usbd_midi.c **** __ALIGN_BEGIN static uint8_t USBD_MIDI_DeviceQualifierDesc[USB_LEN_DEV_QUALIFIER_DESC] __ALIGN_END 37:Middlewares/USBMIDI/Src/usbd_midi.c **** { 38:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_LEN_DEV_QUALIFIER_DESC, 39:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_DESC_TYPE_DEVICE_QUALIFIER, 40:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x00, 41:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x02, 42:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x00, 43:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x00, 44:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x00, 45:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x40, 46:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x01, 47:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x00, 48:Middlewares/USBMIDI/Src/usbd_midi.c **** }; 49:Middlewares/USBMIDI/Src/usbd_midi.c **** */ 50:Middlewares/USBMIDI/Src/usbd_midi.c **** 51:Middlewares/USBMIDI/Src/usbd_midi.c **** /* USB MIDI interface class callbacks structure */ 52:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_ClassTypeDef USBD_MIDI = 53:Middlewares/USBMIDI/Src/usbd_midi.c **** { 54:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_MIDI_Init, 55:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_MIDI_DeInit, 56:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL, 57:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL, 58:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL, 59:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_MIDI_DataIn, 60:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_MIDI_DataOut, 61:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL, 62:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL, 63:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL, 64:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL,// HS 65:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_MIDI_GetCfgDesc,// FS 66:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL,// OTHER SPEED 67:Middlewares/USBMIDI/Src/usbd_midi.c **** NULL,// DEVICE_QUALIFIER 68:Middlewares/USBMIDI/Src/usbd_midi.c **** }; 69:Middlewares/USBMIDI/Src/usbd_midi.c **** 70:Middlewares/USBMIDI/Src/usbd_midi.c **** /* USB MIDI device Configuration Descriptor */ 71:Middlewares/USBMIDI/Src/usbd_midi.c **** __ALIGN_BEGIN uint8_t USBD_MIDI_CfgDesc[USB_MIDI_CONFIG_DESC_SIZ] __ALIGN_END = 72:Middlewares/USBMIDI/Src/usbd_midi.c **** { 73:Middlewares/USBMIDI/Src/usbd_midi.c **** // configuration descriptor 74:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x02, 0x65 + 6+6+9+9+1+1, 0x00, 0x02, 0x01, 0x00, 0x80, 0x0A, 75:Middlewares/USBMIDI/Src/usbd_midi.c **** 76:Middlewares/USBMIDI/Src/usbd_midi.c **** // The Audio Interface Collection 77:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x04, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, // Standard AC Interface Descriptor 78:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x24, 0x01, 0x00, 0x01, 0x09, 0x00, 0x01, 0x01, // Class-specific AC Interface Descriptor 79:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x04, 0x01, 0x00, 0x02, 0x01, 0x03, 0x00, 0x00, // MIDIStreaming Interface Descriptors 80:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x07, 0x24, 0x01, 0x00, 0x01, 0x25 + 6+6+9+9, 0x00, // Class-Specific MS Interface Header Descr 81:Middlewares/USBMIDI/Src/usbd_midi.c **** 82:Middlewares/USBMIDI/Src/usbd_midi.c **** // MIDI IN JACKS 83:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x06, 0x24, 0x02, 0x01, 0x01, 0x00,//MIDI-IN 1 (embedded) 84:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x06, 0x24, 0x02, 0x02, 0x02, 0x00,//MIDI-IN 1 (external) 85:Middlewares/USBMIDI/Src/usbd_midi.c **** 86:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x06, 0x24, 0x02, 0x01, 0x11, 0x00,//MIDI-IN 2 (embedded) 87:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x06, 0x24, 0x02, 0x02, 0x12, 0x00,//MIDI-IN 2 (external) 88:Middlewares/USBMIDI/Src/usbd_midi.c **** 89:Middlewares/USBMIDI/Src/usbd_midi.c **** // MIDI OUT JACKS 90:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x24, 0x03, 0x01, 0x03, 0x01, 0x02, 0x01, 0x00,//MIDI-OUT 1 (embedded) 91:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x24, 0x03, 0x02, 0x04, 0x01, 0x01, 0x01, 0x00,//MIDI-OUT 1 (external) ARM GAS /tmp/ccDAqcJz.s page 3 92:Middlewares/USBMIDI/Src/usbd_midi.c **** 93:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x24, 0x03, 0x01, 0x13, 0x01, 0x12, 0x01, 0x00,//MIDI-OUT 2 (embedded) 94:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x24, 0x03, 0x02, 0x14, 0x01, 0x11, 0x01, 0x00,//MIDI-OUT 2 (external) 95:Middlewares/USBMIDI/Src/usbd_midi.c **** 96:Middlewares/USBMIDI/Src/usbd_midi.c **** // OUT endpoint descriptor 97:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x05, MIDI_OUT_EP, 0x02, 0x40, 0x00, 0x00, 0x00, 0x00, 98:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x06, 0x25, 0x01, 0x02, 0x01, 0x11, 99:Middlewares/USBMIDI/Src/usbd_midi.c **** 100:Middlewares/USBMIDI/Src/usbd_midi.c **** // IN endpoint descriptor 101:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x09, 0x05, MIDI_IN_EP, 0x02, 0x40, 0x00, 0x00, 0x00, 0x00, 102:Middlewares/USBMIDI/Src/usbd_midi.c **** 0x06, 0x25, 0x01, 0x02, 0x03, 0x13, 103:Middlewares/USBMIDI/Src/usbd_midi.c **** }; 104:Middlewares/USBMIDI/Src/usbd_midi.c **** 105:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_Init(USBD_HandleTypeDef *pdev, uint8_t cfgidx){ 106:Middlewares/USBMIDI/Src/usbd_midi.c **** pInstance = pdev; 107:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_OpenEP(pdev,MIDI_IN_EP,USBD_EP_TYPE_BULK,MIDI_DATA_IN_PACKET_SIZE); 108:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_OpenEP(pdev,MIDI_OUT_EP,USBD_EP_TYPE_BULK,MIDI_DATA_OUT_PACKET_SIZE); 109:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_PrepareReceive(pdev,MIDI_OUT_EP,(uint8_t*)(USB_Rx_Buffer),MIDI_DATA_OUT_PACKET_SIZE); 110:Middlewares/USBMIDI/Src/usbd_midi.c **** return 0; 111:Middlewares/USBMIDI/Src/usbd_midi.c **** } 112:Middlewares/USBMIDI/Src/usbd_midi.c **** 113:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_DeInit (USBD_HandleTypeDef *pdev, uint8_t cfgidx){ 114:Middlewares/USBMIDI/Src/usbd_midi.c **** pInstance = NULL; 115:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_CloseEP(pdev,MIDI_IN_EP); 116:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_CloseEP(pdev,MIDI_OUT_EP); 117:Middlewares/USBMIDI/Src/usbd_midi.c **** return 0; 118:Middlewares/USBMIDI/Src/usbd_midi.c **** } 119:Middlewares/USBMIDI/Src/usbd_midi.c **** 120:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_DataIn (USBD_HandleTypeDef *pdev, uint8_t epnum){ 25 .loc 1 120 0 26 .cfi_startproc 27 @ args = 0, pretend = 0, frame = 0 28 @ frame_needed = 0, uses_anonymous_args = 0 29 @ link register save eliminated. 30 .LVL0: 121:Middlewares/USBMIDI/Src/usbd_midi.c **** 122:Middlewares/USBMIDI/Src/usbd_midi.c **** if (USB_Tx_State == 1){ 31 .loc 1 122 0 32 0000 044B ldr r3, .L4 33 0002 1B78 ldrb r3, [r3] 34 0004 012B cmp r3, #1 35 0006 01D0 beq .L3 36 .L2: 123:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_State = 0; 124:Middlewares/USBMIDI/Src/usbd_midi.c **** } 125:Middlewares/USBMIDI/Src/usbd_midi.c **** return USBD_OK; 126:Middlewares/USBMIDI/Src/usbd_midi.c **** } 37 .loc 1 126 0 38 0008 0020 movs r0, #0 39 .LVL1: 40 @ sp needed 41 000a 7047 bx lr 42 .LVL2: 43 .L3: 123:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_State = 0; 44 .loc 1 123 0 45 000c 014B ldr r3, .L4 ARM GAS /tmp/ccDAqcJz.s page 4 46 000e 0022 movs r2, #0 47 0010 1A70 strb r2, [r3] 48 0012 F9E7 b .L2 49 .L5: 50 .align 2 51 .L4: 52 0014 00000000 .word .LANCHOR0 53 .cfi_endproc 54 .LFE45: 56 .section .text.USBD_MIDI_GetCfgDesc,"ax",%progbits 57 .align 1 58 .syntax unified 59 .code 16 60 .thumb_func 61 .fpu softvfp 63 USBD_MIDI_GetCfgDesc: 64 .LFB48: 127:Middlewares/USBMIDI/Src/usbd_midi.c **** 128:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t USBD_MIDI_DataOut (USBD_HandleTypeDef *pdev, uint8_t epnum) 129:Middlewares/USBMIDI/Src/usbd_midi.c **** { 130:Middlewares/USBMIDI/Src/usbd_midi.c **** uint16_t USB_Rx_Cnt; 131:Middlewares/USBMIDI/Src/usbd_midi.c **** 132:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_MIDI_ItfTypeDef *pmidi; 133:Middlewares/USBMIDI/Src/usbd_midi.c **** pmidi = (USBD_MIDI_ItfTypeDef *)(pdev->pUserData); 134:Middlewares/USBMIDI/Src/usbd_midi.c **** 135:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Rx_Cnt = ((PCD_HandleTypeDef*)pdev->pData)->OUT_ep[epnum].xfer_count; 136:Middlewares/USBMIDI/Src/usbd_midi.c **** 137:Middlewares/USBMIDI/Src/usbd_midi.c **** pmidi->pIf_MidiRx((uint8_t *)&USB_Rx_Buffer, USB_Rx_Cnt); 138:Middlewares/USBMIDI/Src/usbd_midi.c **** 139:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_PrepareReceive(pdev,MIDI_OUT_EP,(uint8_t*)(USB_Rx_Buffer),MIDI_DATA_OUT_PACKET_SIZE); 140:Middlewares/USBMIDI/Src/usbd_midi.c **** return USBD_OK; 141:Middlewares/USBMIDI/Src/usbd_midi.c **** } 142:Middlewares/USBMIDI/Src/usbd_midi.c **** 143:Middlewares/USBMIDI/Src/usbd_midi.c **** void USBD_MIDI_SendPacket (){ 144:Middlewares/USBMIDI/Src/usbd_midi.c **** uint16_t USB_Tx_ptr; 145:Middlewares/USBMIDI/Src/usbd_midi.c **** uint16_t USB_Tx_length; 146:Middlewares/USBMIDI/Src/usbd_midi.c **** 147:Middlewares/USBMIDI/Src/usbd_midi.c **** if(USB_Tx_State != 1){ 148:Middlewares/USBMIDI/Src/usbd_midi.c **** if (APP_Rx_ptr_out == APP_RX_DATA_SIZE){ 149:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_ptr_out = 0; 150:Middlewares/USBMIDI/Src/usbd_midi.c **** } 151:Middlewares/USBMIDI/Src/usbd_midi.c **** 152:Middlewares/USBMIDI/Src/usbd_midi.c **** if(APP_Rx_ptr_out == APP_Rx_ptr_in){ 153:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_State = 0; 154:Middlewares/USBMIDI/Src/usbd_midi.c **** return; 155:Middlewares/USBMIDI/Src/usbd_midi.c **** } 156:Middlewares/USBMIDI/Src/usbd_midi.c **** 157:Middlewares/USBMIDI/Src/usbd_midi.c **** if(APP_Rx_ptr_out > APP_Rx_ptr_in){ 158:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length = APP_RX_DATA_SIZE - APP_Rx_ptr_out; 159:Middlewares/USBMIDI/Src/usbd_midi.c **** }else{ 160:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length = APP_Rx_ptr_in - APP_Rx_ptr_out; 161:Middlewares/USBMIDI/Src/usbd_midi.c **** } 162:Middlewares/USBMIDI/Src/usbd_midi.c **** 163:Middlewares/USBMIDI/Src/usbd_midi.c **** if (APP_Rx_length > MIDI_DATA_IN_PACKET_SIZE){ 164:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_ptr = APP_Rx_ptr_out; 165:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_length = MIDI_DATA_IN_PACKET_SIZE; 166:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_ptr_out += MIDI_DATA_IN_PACKET_SIZE; ARM GAS /tmp/ccDAqcJz.s page 5 167:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length -= MIDI_DATA_IN_PACKET_SIZE; 168:Middlewares/USBMIDI/Src/usbd_midi.c **** }else{ 169:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_ptr = APP_Rx_ptr_out; 170:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_length = APP_Rx_length; 171:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_ptr_out += APP_Rx_length; 172:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length = 0; 173:Middlewares/USBMIDI/Src/usbd_midi.c **** } 174:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_State = 1; 175:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_Transmit (pInstance, MIDI_IN_EP,(uint8_t*)&APP_Rx_Buffer[USB_Tx_ptr],USB_Tx_length); 176:Middlewares/USBMIDI/Src/usbd_midi.c **** } 177:Middlewares/USBMIDI/Src/usbd_midi.c **** } 178:Middlewares/USBMIDI/Src/usbd_midi.c **** 179:Middlewares/USBMIDI/Src/usbd_midi.c **** static uint8_t *USBD_MIDI_GetCfgDesc (uint16_t *length){ 65 .loc 1 179 0 66 .cfi_startproc 67 @ args = 0, pretend = 0, frame = 0 68 @ frame_needed = 0, uses_anonymous_args = 0 69 @ link register save eliminated. 70 .LVL3: 180:Middlewares/USBMIDI/Src/usbd_midi.c **** *length = sizeof (USBD_MIDI_CfgDesc); 71 .loc 1 180 0 72 0000 8523 movs r3, #133 73 0002 0380 strh r3, [r0] 181:Middlewares/USBMIDI/Src/usbd_midi.c **** return USBD_MIDI_CfgDesc; 182:Middlewares/USBMIDI/Src/usbd_midi.c **** } 74 .loc 1 182 0 75 0004 0048 ldr r0, .L7 76 .LVL4: 77 @ sp needed 78 0006 7047 bx lr 79 .L8: 80 .align 2 81 .L7: 82 0008 00000000 .word USBD_MIDI_CfgDesc 83 .cfi_endproc 84 .LFE48: 86 .section .text.USBD_MIDI_DataOut,"ax",%progbits 87 .align 1 88 .syntax unified 89 .code 16 90 .thumb_func 91 .fpu softvfp 93 USBD_MIDI_DataOut: 94 .LFB46: 129:Middlewares/USBMIDI/Src/usbd_midi.c **** uint16_t USB_Rx_Cnt; 95 .loc 1 129 0 96 .cfi_startproc 97 @ args = 0, pretend = 0, frame = 0 98 @ frame_needed = 0, uses_anonymous_args = 0 99 .LVL5: 100 0000 70B5 push {r4, r5, r6, lr} 101 .LCFI0: 102 .cfi_def_cfa_offset 16 103 .cfi_offset 4, -16 104 .cfi_offset 5, -12 105 .cfi_offset 6, -8 106 .cfi_offset 14, -4 ARM GAS /tmp/ccDAqcJz.s page 6 107 0002 0400 movs r4, r0 133:Middlewares/USBMIDI/Src/usbd_midi.c **** 108 .loc 1 133 0 109 0004 8723 movs r3, #135 110 0006 9B00 lsls r3, r3, #2 111 0008 C258 ldr r2, [r0, r3] 112 .LVL6: 135:Middlewares/USBMIDI/Src/usbd_midi.c **** 113 .loc 1 135 0 114 000a 0433 adds r3, r3, #4 115 000c C358 ldr r3, [r0, r3] 116 000e 0A31 adds r1, r1, #10 117 .LVL7: 118 0010 4901 lsls r1, r1, #5 119 0012 5918 adds r1, r3, r1 120 0014 8988 ldrh r1, [r1, #4] 121 .LVL8: 137:Middlewares/USBMIDI/Src/usbd_midi.c **** 122 .loc 1 137 0 123 0016 1368 ldr r3, [r2] 124 0018 054D ldr r5, .L10 125 001a 2800 movs r0, r5 126 .LVL9: 127 001c 9847 blx r3 128 .LVL10: 139:Middlewares/USBMIDI/Src/usbd_midi.c **** return USBD_OK; 129 .loc 1 139 0 130 001e 4023 movs r3, #64 131 0020 2A00 movs r2, r5 132 0022 0121 movs r1, #1 133 0024 2000 movs r0, r4 134 0026 FFF7FEFF bl USBD_LL_PrepareReceive 135 .LVL11: 141:Middlewares/USBMIDI/Src/usbd_midi.c **** 136 .loc 1 141 0 137 002a 0020 movs r0, #0 138 @ sp needed 139 .LVL12: 140 002c 70BD pop {r4, r5, r6, pc} 141 .L11: 142 002e C046 .align 2 143 .L10: 144 0030 00000000 .word USB_Rx_Buffer 145 .cfi_endproc 146 .LFE46: 148 .section .text.USBD_MIDI_DeInit,"ax",%progbits 149 .align 1 150 .syntax unified 151 .code 16 152 .thumb_func 153 .fpu softvfp 155 USBD_MIDI_DeInit: 156 .LFB44: 113:Middlewares/USBMIDI/Src/usbd_midi.c **** pInstance = NULL; 157 .loc 1 113 0 158 .cfi_startproc 159 @ args = 0, pretend = 0, frame = 0 ARM GAS /tmp/ccDAqcJz.s page 7 160 @ frame_needed = 0, uses_anonymous_args = 0 161 .LVL13: 162 0000 10B5 push {r4, lr} 163 .LCFI1: 164 .cfi_def_cfa_offset 8 165 .cfi_offset 4, -8 166 .cfi_offset 14, -4 167 0002 0400 movs r4, r0 114:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_CloseEP(pdev,MIDI_IN_EP); 168 .loc 1 114 0 169 0004 054B ldr r3, .L13 170 0006 0022 movs r2, #0 171 0008 1A60 str r2, [r3] 115:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_CloseEP(pdev,MIDI_OUT_EP); 172 .loc 1 115 0 173 000a 8121 movs r1, #129 174 .LVL14: 175 000c FFF7FEFF bl USBD_LL_CloseEP 176 .LVL15: 116:Middlewares/USBMIDI/Src/usbd_midi.c **** return 0; 177 .loc 1 116 0 178 0010 0121 movs r1, #1 179 0012 2000 movs r0, r4 180 0014 FFF7FEFF bl USBD_LL_CloseEP 181 .LVL16: 118:Middlewares/USBMIDI/Src/usbd_midi.c **** 182 .loc 1 118 0 183 0018 0020 movs r0, #0 184 @ sp needed 185 .LVL17: 186 001a 10BD pop {r4, pc} 187 .L14: 188 .align 2 189 .L13: 190 001c 00000000 .word .LANCHOR1 191 .cfi_endproc 192 .LFE44: 194 .section .text.USBD_MIDI_Init,"ax",%progbits 195 .align 1 196 .syntax unified 197 .code 16 198 .thumb_func 199 .fpu softvfp 201 USBD_MIDI_Init: 202 .LFB43: 105:Middlewares/USBMIDI/Src/usbd_midi.c **** pInstance = pdev; 203 .loc 1 105 0 204 .cfi_startproc 205 @ args = 0, pretend = 0, frame = 0 206 @ frame_needed = 0, uses_anonymous_args = 0 207 .LVL18: 208 0000 10B5 push {r4, lr} 209 .LCFI2: 210 .cfi_def_cfa_offset 8 211 .cfi_offset 4, -8 212 .cfi_offset 14, -4 213 0002 0400 movs r4, r0 ARM GAS /tmp/ccDAqcJz.s page 8 106:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_OpenEP(pdev,MIDI_IN_EP,USBD_EP_TYPE_BULK,MIDI_DATA_IN_PACKET_SIZE); 214 .loc 1 106 0 215 0004 0A4B ldr r3, .L16 216 0006 1860 str r0, [r3] 107:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_OpenEP(pdev,MIDI_OUT_EP,USBD_EP_TYPE_BULK,MIDI_DATA_OUT_PACKET_SIZE); 217 .loc 1 107 0 218 0008 4023 movs r3, #64 219 000a 0222 movs r2, #2 220 000c 8121 movs r1, #129 221 .LVL19: 222 000e FFF7FEFF bl USBD_LL_OpenEP 223 .LVL20: 108:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_PrepareReceive(pdev,MIDI_OUT_EP,(uint8_t*)(USB_Rx_Buffer),MIDI_DATA_OUT_PACKET_SIZE); 224 .loc 1 108 0 225 0012 4023 movs r3, #64 226 0014 0222 movs r2, #2 227 0016 0121 movs r1, #1 228 0018 2000 movs r0, r4 229 001a FFF7FEFF bl USBD_LL_OpenEP 230 .LVL21: 109:Middlewares/USBMIDI/Src/usbd_midi.c **** return 0; 231 .loc 1 109 0 232 001e 4023 movs r3, #64 233 0020 044A ldr r2, .L16+4 234 0022 0121 movs r1, #1 235 0024 2000 movs r0, r4 236 0026 FFF7FEFF bl USBD_LL_PrepareReceive 237 .LVL22: 111:Middlewares/USBMIDI/Src/usbd_midi.c **** 238 .loc 1 111 0 239 002a 0020 movs r0, #0 240 @ sp needed 241 .LVL23: 242 002c 10BD pop {r4, pc} 243 .L17: 244 002e C046 .align 2 245 .L16: 246 0030 00000000 .word .LANCHOR1 247 0034 00000000 .word USB_Rx_Buffer 248 .cfi_endproc 249 .LFE43: 251 .section .text.USBD_MIDI_SendPacket,"ax",%progbits 252 .align 1 253 .global USBD_MIDI_SendPacket 254 .syntax unified 255 .code 16 256 .thumb_func 257 .fpu softvfp 259 USBD_MIDI_SendPacket: 260 .LFB47: 143:Middlewares/USBMIDI/Src/usbd_midi.c **** uint16_t USB_Tx_ptr; 261 .loc 1 143 0 262 .cfi_startproc 263 @ args = 0, pretend = 0, frame = 0 264 @ frame_needed = 0, uses_anonymous_args = 0 265 0000 10B5 push {r4, lr} 266 .LCFI3: ARM GAS /tmp/ccDAqcJz.s page 9 267 .cfi_def_cfa_offset 8 268 .cfi_offset 4, -8 269 .cfi_offset 14, -4 147:Middlewares/USBMIDI/Src/usbd_midi.c **** if (APP_Rx_ptr_out == APP_RX_DATA_SIZE){ 270 .loc 1 147 0 271 0002 214B ldr r3, .L28 272 0004 1B78 ldrb r3, [r3] 273 0006 012B cmp r3, #1 274 0008 28D0 beq .L18 148:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_ptr_out = 0; 275 .loc 1 148 0 276 000a 204B ldr r3, .L28+4 277 000c 1A68 ldr r2, [r3] 278 000e 8023 movs r3, #128 279 0010 5B00 lsls r3, r3, #1 280 0012 9A42 cmp r2, r3 281 0014 23D0 beq .L26 282 .L20: 152:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_State = 0; 283 .loc 1 152 0 284 0016 1D4B ldr r3, .L28+4 285 0018 1968 ldr r1, [r3] 286 001a 1D4B ldr r3, .L28+8 287 001c 1B68 ldr r3, [r3] 288 001e 9942 cmp r1, r3 289 0020 21D0 beq .L27 157:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length = APP_RX_DATA_SIZE - APP_Rx_ptr_out; 290 .loc 1 157 0 291 0022 24D9 bls .L22 158:Middlewares/USBMIDI/Src/usbd_midi.c **** }else{ 292 .loc 1 158 0 293 0024 8023 movs r3, #128 294 0026 5B00 lsls r3, r3, #1 295 0028 5B1A subs r3, r3, r1 296 002a 1A4A ldr r2, .L28+12 297 002c 1360 str r3, [r2] 298 .L23: 163:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_ptr = APP_Rx_ptr_out; 299 .loc 1 163 0 300 002e 194B ldr r3, .L28+12 301 0030 1868 ldr r0, [r3] 302 0032 4028 cmp r0, #64 303 0034 1FD9 bls .L24 164:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_length = MIDI_DATA_IN_PACKET_SIZE; 304 .loc 1 164 0 305 0036 8AB2 uxth r2, r1 306 .LVL24: 166:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length -= MIDI_DATA_IN_PACKET_SIZE; 307 .loc 1 166 0 308 0038 0B00 movs r3, r1 309 003a 4033 adds r3, r3, #64 310 003c 1349 ldr r1, .L28+4 311 003e 0B60 str r3, [r1] 167:Middlewares/USBMIDI/Src/usbd_midi.c **** }else{ 312 .loc 1 167 0 313 0040 4038 subs r0, r0, #64 314 0042 144B ldr r3, .L28+12 ARM GAS /tmp/ccDAqcJz.s page 10 315 0044 1860 str r0, [r3] 165:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_ptr_out += MIDI_DATA_IN_PACKET_SIZE; 316 .loc 1 165 0 317 0046 4023 movs r3, #64 318 .LVL25: 319 .L25: 174:Middlewares/USBMIDI/Src/usbd_midi.c **** USBD_LL_Transmit (pInstance, MIDI_IN_EP,(uint8_t*)&APP_Rx_Buffer[USB_Tx_ptr],USB_Tx_length); 320 .loc 1 174 0 321 0048 0F49 ldr r1, .L28 322 004a 0120 movs r0, #1 323 004c 0870 strb r0, [r1] 175:Middlewares/USBMIDI/Src/usbd_midi.c **** } 324 .loc 1 175 0 325 004e 1249 ldr r1, .L28+16 326 0050 5218 adds r2, r2, r1 327 .LVL26: 328 0052 1249 ldr r1, .L28+20 329 0054 0868 ldr r0, [r1] 330 0056 8121 movs r1, #129 331 0058 FFF7FEFF bl USBD_LL_Transmit 332 .LVL27: 333 .L18: 177:Middlewares/USBMIDI/Src/usbd_midi.c **** 334 .loc 1 177 0 335 @ sp needed 336 005c 10BD pop {r4, pc} 337 .L26: 149:Middlewares/USBMIDI/Src/usbd_midi.c **** } 338 .loc 1 149 0 339 005e 0B4B ldr r3, .L28+4 340 0060 0022 movs r2, #0 341 0062 1A60 str r2, [r3] 342 0064 D7E7 b .L20 343 .L27: 153:Middlewares/USBMIDI/Src/usbd_midi.c **** return; 344 .loc 1 153 0 345 0066 084B ldr r3, .L28 346 0068 0022 movs r2, #0 347 006a 1A70 strb r2, [r3] 154:Middlewares/USBMIDI/Src/usbd_midi.c **** } 348 .loc 1 154 0 349 006c F6E7 b .L18 350 .L22: 160:Middlewares/USBMIDI/Src/usbd_midi.c **** } 351 .loc 1 160 0 352 006e 5B1A subs r3, r3, r1 353 0070 084A ldr r2, .L28+12 354 0072 1360 str r3, [r2] 355 0074 DBE7 b .L23 356 .L24: 169:Middlewares/USBMIDI/Src/usbd_midi.c **** USB_Tx_length = APP_Rx_length; 357 .loc 1 169 0 358 0076 8AB2 uxth r2, r1 359 .LVL28: 170:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_ptr_out += APP_Rx_length; 360 .loc 1 170 0 361 0078 83B2 uxth r3, r0 ARM GAS /tmp/ccDAqcJz.s page 11 362 .LVL29: 171:Middlewares/USBMIDI/Src/usbd_midi.c **** APP_Rx_length = 0; 363 .loc 1 171 0 364 007a 0918 adds r1, r1, r0 365 007c 0348 ldr r0, .L28+4 366 007e 0160 str r1, [r0] 172:Middlewares/USBMIDI/Src/usbd_midi.c **** } 367 .loc 1 172 0 368 0080 0449 ldr r1, .L28+12 369 0082 0020 movs r0, #0 370 0084 0860 str r0, [r1] 371 0086 DFE7 b .L25 372 .L29: 373 .align 2 374 .L28: 375 0088 00000000 .word .LANCHOR0 376 008c 00000000 .word .LANCHOR2 377 0090 00000000 .word .LANCHOR3 378 0094 00000000 .word .LANCHOR4 379 0098 00000000 .word APP_Rx_Buffer 380 009c 00000000 .word .LANCHOR1 381 .cfi_endproc 382 .LFE47: 384 .section .text.USBD_MIDI_RegisterInterface,"ax",%progbits 385 .align 1 386 .global USBD_MIDI_RegisterInterface 387 .syntax unified 388 .code 16 389 .thumb_func 390 .fpu softvfp 392 USBD_MIDI_RegisterInterface: 393 .LFB49: 183:Middlewares/USBMIDI/Src/usbd_midi.c **** 184:Middlewares/USBMIDI/Src/usbd_midi.c **** //uint8_t *USBD_MIDI_GetDeviceQualifierDescriptor (uint16_t *length){ 185:Middlewares/USBMIDI/Src/usbd_midi.c **** // *length = sizeof (USBD_MIDI_DeviceQualifierDesc); 186:Middlewares/USBMIDI/Src/usbd_midi.c **** // return USBD_MIDI_DeviceQualifierDesc; 187:Middlewares/USBMIDI/Src/usbd_midi.c **** //} 188:Middlewares/USBMIDI/Src/usbd_midi.c **** 189:Middlewares/USBMIDI/Src/usbd_midi.c **** uint8_t USBD_MIDI_RegisterInterface(USBD_HandleTypeDef *pdev, USBD_MIDI_ItfTypeDef *fops) 190:Middlewares/USBMIDI/Src/usbd_midi.c **** { 394 .loc 1 190 0 395 .cfi_startproc 396 @ args = 0, pretend = 0, frame = 0 397 @ frame_needed = 0, uses_anonymous_args = 0 398 @ link register save eliminated. 399 .LVL30: 191:Middlewares/USBMIDI/Src/usbd_midi.c **** uint8_t ret = USBD_FAIL; 192:Middlewares/USBMIDI/Src/usbd_midi.c **** 193:Middlewares/USBMIDI/Src/usbd_midi.c **** if(fops != NULL){ 400 .loc 1 193 0 401 0000 0029 cmp r1, #0 402 0002 04D0 beq .L32 194:Middlewares/USBMIDI/Src/usbd_midi.c **** pdev->pUserData= fops; 403 .loc 1 194 0 404 0004 8723 movs r3, #135 405 0006 9B00 lsls r3, r3, #2 406 0008 C150 str r1, [r0, r3] ARM GAS /tmp/ccDAqcJz.s page 12 407 .LVL31: 195:Middlewares/USBMIDI/Src/usbd_midi.c **** ret = USBD_OK; 408 .loc 1 195 0 409 000a 0020 movs r0, #0 410 .LVL32: 411 .L31: 196:Middlewares/USBMIDI/Src/usbd_midi.c **** } 197:Middlewares/USBMIDI/Src/usbd_midi.c **** 198:Middlewares/USBMIDI/Src/usbd_midi.c **** return ret; 199:Middlewares/USBMIDI/Src/usbd_midi.c **** } 412 .loc 1 199 0 413 @ sp needed 414 000c 7047 bx lr 415 .LVL33: 416 .L32: 191:Middlewares/USBMIDI/Src/usbd_midi.c **** 417 .loc 1 191 0 418 000e 0220 movs r0, #2 419 .LVL34: 420 0010 FCE7 b .L31 421 .cfi_endproc 422 .LFE49: 424 .global USBD_MIDI_CfgDesc 425 .global USBD_MIDI 426 .comm APP_Rx_Buffer,256,4 427 .comm USB_Rx_Buffer,64,4 428 .global USB_Tx_State 429 .global APP_Rx_length 430 .global APP_Rx_ptr_out 431 .global APP_Rx_ptr_in 432 .global pInstance 433 .section .bss.APP_Rx_length,"aw",%nobits 434 .align 2 435 .set .LANCHOR4,. + 0 438 APP_Rx_length: 439 0000 00000000 .space 4 440 .section .bss.APP_Rx_ptr_in,"aw",%nobits 441 .align 2 442 .set .LANCHOR3,. + 0 445 APP_Rx_ptr_in: 446 0000 00000000 .space 4 447 .section .bss.APP_Rx_ptr_out,"aw",%nobits 448 .align 2 449 .set .LANCHOR2,. + 0 452 APP_Rx_ptr_out: 453 0000 00000000 .space 4 454 .section .bss.USB_Tx_State,"aw",%nobits 455 .set .LANCHOR0,. + 0 458 USB_Tx_State: 459 0000 00 .space 1 460 .section .bss.pInstance,"aw",%nobits 461 .align 2 462 .set .LANCHOR1,. + 0 465 pInstance: 466 0000 00000000 .space 4 467 .section .data.USBD_MIDI,"aw",%progbits 468 .align 2 ARM GAS /tmp/ccDAqcJz.s page 13 471 USBD_MIDI: 472 0000 00000000 .word USBD_MIDI_Init 473 0004 00000000 .word USBD_MIDI_DeInit 474 0008 00000000 .word 0 475 000c 00000000 .word 0 476 0010 00000000 .word 0 477 0014 00000000 .word USBD_MIDI_DataIn 478 0018 00000000 .word USBD_MIDI_DataOut 479 001c 00000000 .word 0 480 0020 00000000 .word 0 481 0024 00000000 .word 0 482 0028 00000000 .word 0 483 002c 00000000 .word USBD_MIDI_GetCfgDesc 484 0030 00000000 .word 0 485 0034 00000000 .word 0 486 .section .data.USBD_MIDI_CfgDesc,"aw",%progbits 487 .align 2 490 USBD_MIDI_CfgDesc: 491 0000 09 .byte 9 492 0001 02 .byte 2 493 0002 85 .byte -123 494 0003 00 .byte 0 495 0004 02 .byte 2 496 0005 01 .byte 1 497 0006 00 .byte 0 498 0007 80 .byte -128 499 0008 0A .byte 10 500 0009 09 .byte 9 501 000a 04 .byte 4 502 000b 00 .byte 0 503 000c 00 .byte 0 504 000d 00 .byte 0 505 000e 01 .byte 1 506 000f 01 .byte 1 507 0010 00 .byte 0 508 0011 00 .byte 0 509 0012 09 .byte 9 510 0013 24 .byte 36 511 0014 01 .byte 1 512 0015 00 .byte 0 513 0016 01 .byte 1 514 0017 09 .byte 9 515 0018 00 .byte 0 516 0019 01 .byte 1 517 001a 01 .byte 1 518 001b 09 .byte 9 519 001c 04 .byte 4 520 001d 01 .byte 1 521 001e 00 .byte 0 522 001f 02 .byte 2 523 0020 01 .byte 1 524 0021 03 .byte 3 525 0022 00 .byte 0 526 0023 00 .byte 0 527 0024 07 .byte 7 528 0025 24 .byte 36 529 0026 01 .byte 1 ARM GAS /tmp/ccDAqcJz.s page 14 530 0027 00 .byte 0 531 0028 01 .byte 1 532 0029 43 .byte 67 533 002a 00 .byte 0 534 002b 06 .byte 6 535 002c 24 .byte 36 536 002d 02 .byte 2 537 002e 01 .byte 1 538 002f 01 .byte 1 539 0030 00 .byte 0 540 0031 06 .byte 6 541 0032 24 .byte 36 542 0033 02 .byte 2 543 0034 02 .byte 2 544 0035 02 .byte 2 545 0036 00 .byte 0 546 0037 06 .byte 6 547 0038 24 .byte 36 548 0039 02 .byte 2 549 003a 01 .byte 1 550 003b 11 .byte 17 551 003c 00 .byte 0 552 003d 06 .byte 6 553 003e 24 .byte 36 554 003f 02 .byte 2 555 0040 02 .byte 2 556 0041 12 .byte 18 557 0042 00 .byte 0 558 0043 09 .byte 9 559 0044 24 .byte 36 560 0045 03 .byte 3 561 0046 01 .byte 1 562 0047 03 .byte 3 563 0048 01 .byte 1 564 0049 02 .byte 2 565 004a 01 .byte 1 566 004b 00 .byte 0 567 004c 09 .byte 9 568 004d 24 .byte 36 569 004e 03 .byte 3 570 004f 02 .byte 2 571 0050 04 .byte 4 572 0051 01 .byte 1 573 0052 01 .byte 1 574 0053 01 .byte 1 575 0054 00 .byte 0 576 0055 09 .byte 9 577 0056 24 .byte 36 578 0057 03 .byte 3 579 0058 01 .byte 1 580 0059 13 .byte 19 581 005a 01 .byte 1 582 005b 12 .byte 18 583 005c 01 .byte 1 584 005d 00 .byte 0 585 005e 09 .byte 9 586 005f 24 .byte 36 ARM GAS /tmp/ccDAqcJz.s page 15 587 0060 03 .byte 3 588 0061 02 .byte 2 589 0062 14 .byte 20 590 0063 01 .byte 1 591 0064 11 .byte 17 592 0065 01 .byte 1 593 0066 00 .byte 0 594 0067 09 .byte 9 595 0068 05 .byte 5 596 0069 01 .byte 1 597 006a 02 .byte 2 598 006b 40 .byte 64 599 006c 00 .byte 0 600 006d 00 .byte 0 601 006e 00 .byte 0 602 006f 00 .byte 0 603 0070 06 .byte 6 604 0071 25 .byte 37 605 0072 01 .byte 1 606 0073 02 .byte 2 607 0074 01 .byte 1 608 0075 11 .byte 17 609 0076 09 .byte 9 610 0077 05 .byte 5 611 0078 81 .byte -127 612 0079 02 .byte 2 613 007a 40 .byte 64 614 007b 00 .byte 0 615 007c 00 .byte 0 616 007d 00 .byte 0 617 007e 00 .byte 0 618 007f 06 .byte 6 619 0080 25 .byte 37 620 0081 01 .byte 1 621 0082 02 .byte 2 622 0083 03 .byte 3 623 0084 13 .byte 19 624 .text 625 .Letext0: 626 .file 2 "/usr/include/newlib/machine/_default_types.h" 627 .file 3 "/usr/include/newlib/sys/lock.h" 628 .file 4 "/usr/include/newlib/sys/_types.h" 629 .file 5 "/usr/lib/gcc/arm-none-eabi/7.3.1/include/stddef.h" 630 .file 6 "/usr/include/newlib/sys/reent.h" 631 .file 7 "/usr/include/newlib/sys/_stdint.h" 632 .file 8 "/usr/include/newlib/stdlib.h" 633 .file 9 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h" 634 .file 10 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f072xb.h" 635 .file 11 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h" 636 .file 12 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_usb.h" 637 .file 13 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_pcd.h" 638 .file 14 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h" 639 .file 15 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h" 640 .file 16 "Middlewares/USBMIDI/Inc/usbd_midi.h" 641 .file 17 "Inc/usbd_desc.h" 642 .file 18 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h" ARM GAS /tmp/ccDAqcJz.s page 16 DEFINED SYMBOLS *ABS*:0000000000000000 usbd_midi.c /tmp/ccDAqcJz.s:16 .text.USBD_MIDI_DataIn:0000000000000000 $t /tmp/ccDAqcJz.s:22 .text.USBD_MIDI_DataIn:0000000000000000 USBD_MIDI_DataIn /tmp/ccDAqcJz.s:52 .text.USBD_MIDI_DataIn:0000000000000014 $d /tmp/ccDAqcJz.s:57 .text.USBD_MIDI_GetCfgDesc:0000000000000000 $t /tmp/ccDAqcJz.s:63 .text.USBD_MIDI_GetCfgDesc:0000000000000000 USBD_MIDI_GetCfgDesc /tmp/ccDAqcJz.s:82 .text.USBD_MIDI_GetCfgDesc:0000000000000008 $d /tmp/ccDAqcJz.s:490 .data.USBD_MIDI_CfgDesc:0000000000000000 USBD_MIDI_CfgDesc /tmp/ccDAqcJz.s:87 .text.USBD_MIDI_DataOut:0000000000000000 $t /tmp/ccDAqcJz.s:93 .text.USBD_MIDI_DataOut:0000000000000000 USBD_MIDI_DataOut /tmp/ccDAqcJz.s:144 .text.USBD_MIDI_DataOut:0000000000000030 $d *COM*:0000000000000040 USB_Rx_Buffer /tmp/ccDAqcJz.s:149 .text.USBD_MIDI_DeInit:0000000000000000 $t /tmp/ccDAqcJz.s:155 .text.USBD_MIDI_DeInit:0000000000000000 USBD_MIDI_DeInit /tmp/ccDAqcJz.s:190 .text.USBD_MIDI_DeInit:000000000000001c $d /tmp/ccDAqcJz.s:195 .text.USBD_MIDI_Init:0000000000000000 $t /tmp/ccDAqcJz.s:201 .text.USBD_MIDI_Init:0000000000000000 USBD_MIDI_Init /tmp/ccDAqcJz.s:246 .text.USBD_MIDI_Init:0000000000000030 $d /tmp/ccDAqcJz.s:252 .text.USBD_MIDI_SendPacket:0000000000000000 $t /tmp/ccDAqcJz.s:259 .text.USBD_MIDI_SendPacket:0000000000000000 USBD_MIDI_SendPacket /tmp/ccDAqcJz.s:375 .text.USBD_MIDI_SendPacket:0000000000000088 $d *COM*:0000000000000100 APP_Rx_Buffer /tmp/ccDAqcJz.s:385 .text.USBD_MIDI_RegisterInterface:0000000000000000 $t /tmp/ccDAqcJz.s:392 .text.USBD_MIDI_RegisterInterface:0000000000000000 USBD_MIDI_RegisterInterface /tmp/ccDAqcJz.s:471 .data.USBD_MIDI:0000000000000000 USBD_MIDI /tmp/ccDAqcJz.s:458 .bss.USB_Tx_State:0000000000000000 USB_Tx_State /tmp/ccDAqcJz.s:438 .bss.APP_Rx_length:0000000000000000 APP_Rx_length /tmp/ccDAqcJz.s:452 .bss.APP_Rx_ptr_out:0000000000000000 APP_Rx_ptr_out /tmp/ccDAqcJz.s:445 .bss.APP_Rx_ptr_in:0000000000000000 APP_Rx_ptr_in /tmp/ccDAqcJz.s:465 .bss.pInstance:0000000000000000 pInstance /tmp/ccDAqcJz.s:434 .bss.APP_Rx_length:0000000000000000 $d /tmp/ccDAqcJz.s:441 .bss.APP_Rx_ptr_in:0000000000000000 $d /tmp/ccDAqcJz.s:448 .bss.APP_Rx_ptr_out:0000000000000000 $d /tmp/ccDAqcJz.s:459 .bss.USB_Tx_State:0000000000000000 $d /tmp/ccDAqcJz.s:461 .bss.pInstance:0000000000000000 $d /tmp/ccDAqcJz.s:468 .data.USBD_MIDI:0000000000000000 $d /tmp/ccDAqcJz.s:487 .data.USBD_MIDI_CfgDesc:0000000000000000 $d UNDEFINED SYMBOLS USBD_LL_PrepareReceive USBD_LL_CloseEP USBD_LL_OpenEP USBD_LL_Transmit