Subversion Repositories dashGPS

Rev

Rev 20 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                    page 1


   1                            .cpu cortex-m3
   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, 1
  10                            .eabi_attribute 18, 4
  11                            .file   "stm32f1xx_ll_usb.c"
  12                            .text
  13                    .Ltext0:
  14                            .cfi_sections   .debug_frame
  15                            .section        .text.USB_CoreInit,"ax",%progbits
  16                            .align  1
  17                            .global USB_CoreInit
  18                            .arch armv7-m
  19                            .syntax unified
  20                            .thumb
  21                            .thumb_func
  22                            .fpu softvfp
  24                    USB_CoreInit:
  25                    .LVL0:
  26                    .LFB65:
  27                            .file 1 "Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c"
   1:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
   2:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ******************************************************************************
   3:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @file    stm32f1xx_ll_usb.c
   4:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @author  MCD Application Team
   5:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief   USB Low Layer HAL module driver.
   6:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *
   7:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This file provides firmware functions to manage the following
   8:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          functionalities of the USB Peripheral Controller:
   9:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           + Initialization/de-initialization functions
  10:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           + I/O operation functions
  11:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           + Peripheral Control functions
  12:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           + Peripheral State functions
  13:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *
  14:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   @verbatim
  15:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ==============================================================================
  16:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                     ##### How to use this driver #####
  17:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ==============================================================================
  18:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     [..]
  19:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       (#) Fill parameters of Init structure in USB_OTG_CfgTypeDef structure.
  20:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  21:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       (#) Call USB_CoreInit() API to initialize the USB Core peripheral.
  22:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  23:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       (#) The upper HAL HCD/PCD driver will call the right routines for its internal processes.
  24:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  25:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   @endverbatim
  26:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ******************************************************************************
  27:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @attention
  28:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *
  29:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * <h2><center>&copy; Copyright (c) 2016 STMicroelectronics.
  30:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * All rights reserved.</center></h2>
  31:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 2


  32:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * This software component is licensed by ST under BSD 3-Clause license,
  33:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * the "License"; You may not use this file except in compliance with the
  34:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * License. You may obtain a copy of the License at:
  35:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *                        opensource.org/licenses/BSD-3-Clause
  36:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *
  37:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ******************************************************************************
  38:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
  39:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  40:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Includes ------------------------------------------------------------------*/
  41:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #include "stm32f1xx_hal.h"
  42:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  43:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /** @addtogroup STM32F1xx_LL_USB_DRIVER
  44:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @{
  45:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
  46:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  47:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #if defined (HAL_PCD_MODULE_ENABLED) || defined (HAL_HCD_MODULE_ENABLED)
  48:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #if defined (USB) || defined (USB_OTG_FS)
  49:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Private typedef -----------------------------------------------------------*/
  50:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Private define ------------------------------------------------------------*/
  51:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Private macro -------------------------------------------------------------*/
  52:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Private variables ---------------------------------------------------------*/
  53:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Private function prototypes -----------------------------------------------*/
  54:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Private functions ---------------------------------------------------------*/
  55:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #if defined (USB_OTG_FS)
  56:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** static HAL_StatusTypeDef USB_CoreReset(USB_OTG_GlobalTypeDef *USBx);
  57:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  58:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /* Exported functions --------------------------------------------------------*/
  59:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /** @defgroup USB_LL_Exported_Functions USB Low Layer Exported Functions
  60:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @{
  61:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
  62:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  63:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /** @defgroup USB_LL_Exported_Functions_Group1 Initialization/de-initialization functions
  64:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****  *  @brief    Initialization and Configuration functions
  65:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****  *
  66:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** @verbatim
  67:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****  ===============================================================================
  68:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                       ##### Initialization/de-initialization functions #####
  69:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****  ===============================================================================
  70:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  71:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** @endverbatim
  72:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @{
  73:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
  74:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  75:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
  76:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Initializes the USB Core
  77:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx USB Instance
  78:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  cfg pointer to a USB_OTG_CfgTypeDef structure that contains
  79:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         the configuration information for the specified USBx peripheral.
  80:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
  81:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
  82:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_CoreInit(USB_OTG_GlobalTypeDef *USBx, USB_OTG_CfgTypeDef cfg)
  83:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
  84:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_StatusTypeDef ret;
  85:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  86:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (cfg.phy_itface == USB_OTG_ULPI_PHY)
  87:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
  88:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GCCFG &= ~(USB_OTG_GCCFG_PWRDWN);
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 3


  89:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  90:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Init The ULPI Interface */
  91:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GUSBCFG &= ~(USB_OTG_GUSBCFG_TSDPS | USB_OTG_GUSBCFG_ULPIFSLS | USB_OTG_GUSBCFG_PHYSEL);
  92:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
  93:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Select vbus source */
  94:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GUSBCFG &= ~(USB_OTG_GUSBCFG_ULPIEVBUSD | USB_OTG_GUSBCFG_ULPIEVBUSI);
  95:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (cfg.use_external_vbus == 1U)
  96:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
  97:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx->GUSBCFG |= USB_OTG_GUSBCFG_ULPIEVBUSD;
  98:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
  99:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Reset after a PHY select  */
 100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     ret = USB_CoreReset(USBx);
 101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else /* FS interface (embedded Phy) */
 103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Select FS Embedded PHY */
 105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GUSBCFG |= USB_OTG_GUSBCFG_PHYSEL;
 106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Reset after a PHY select and set Host mode */
 108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     ret = USB_CoreReset(USBx);
 109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Activate the USB Transceiver */
 111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GCCFG |= USB_OTG_GCCFG_PWRDWN;
 112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 113:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 114:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ret;
 115:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 116:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Set the USB turnaround time
 120:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx USB Instance
 121:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  hclk: AHB clock frequency
 122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval USB turnaround time In PHY Clocks number
 123:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 124:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_SetTurnaroundTime(USB_OTG_GlobalTypeDef *USBx,
 125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                         uint32_t hclk, uint8_t speed)
 126:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t UsbTrd;
 128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 129:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* The USBTRD is configured according to the tables below, depending on AHB frequency
 130:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   used by application. In the low AHB frequency range it is used to stretch enough the USB response
 131:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   time to IN tokens, the USB turnaround time, so to compensate for the longer AHB read access
 132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   latency to the Data FIFO */
 133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (speed == USBD_FS_SPEED)
 134:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 135:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((hclk >= 14200000U) && (hclk < 15000000U))
 136:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 14.2-15 MHz */
 138:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0xFU;
 139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 15000000U) && (hclk < 16000000U))
 141:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 142:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 15-16 MHz */
 143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0xEU;
 144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 16000000U) && (hclk < 17200000U))
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 4


 146:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 147:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 16-17.2 MHz */
 148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0xDU;
 149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 17200000U) && (hclk < 18500000U))
 151:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 17.2-18.5 MHz */
 153:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0xCU;
 154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 18500000U) && (hclk < 20000000U))
 156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 18.5-20 MHz */
 158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0xBU;
 159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 20000000U) && (hclk < 21800000U))
 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 20-21.8 MHz */
 163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0xAU;
 164:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 21800000U) && (hclk < 24000000U))
 166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 21.8-24 MHz */
 168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0x9U;
 169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 24000000U) && (hclk < 27700000U))
 171:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 172:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 24-27.7 MHz */
 173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0x8U;
 174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 175:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else if ((hclk >= 27700000U) && (hclk < 32000000U))
 176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 177:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 27.7-32 MHz */
 178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0x7U;
 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else /* if(hclk >= 32000000) */
 181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* hclk Clock Range between 32-200 MHz */
 183:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       UsbTrd = 0x6U;
 184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 185:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 188:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     UsbTrd = USBD_DEFAULT_TRDT_VALUE;
 189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 191:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GUSBCFG &= ~USB_OTG_GUSBCFG_TRDT;
 192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GUSBCFG |= (uint32_t)((UsbTrd << 10) & USB_OTG_GUSBCFG_TRDT);
 193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EnableGlobalInt
 199:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         Enables the controller's Global Int in the AHB Config reg
 200:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 202:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 5


 203:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EnableGlobalInt(USB_OTG_GlobalTypeDef *USBx)
 204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 205:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GAHBCFG |= USB_OTG_GAHBCFG_GINT;
 206:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 208:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 210:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DisableGlobalInt
 211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         Disable the controller's Global Int in the AHB Config reg
 212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 213:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 214:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** */
 215:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DisableGlobalInt(USB_OTG_GlobalTypeDef *USBx)
 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 217:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GAHBCFG &= ~USB_OTG_GAHBCFG_GINT;
 218:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 220:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_SetCurrentMode : Set functional mode
 223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 224:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  mode   current core mode
 225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
 226:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_DEVICE_MODE: Peripheral mode
 227:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_HOST_MODE: Host mode
 228:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_DRD_MODE: Dual Role Device mode
 229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 230:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 231:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_SetCurrentMode(USB_OTG_GlobalTypeDef *USBx, USB_ModeTypeDef mode)
 232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GUSBCFG &= ~(USB_OTG_GUSBCFG_FHMOD | USB_OTG_GUSBCFG_FDMOD);
 234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (mode == USB_HOST_MODE)
 236:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 237:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GUSBCFG |= USB_OTG_GUSBCFG_FHMOD;
 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else if (mode == USB_DEVICE_MODE)
 240:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GUSBCFG |= USB_OTG_GUSBCFG_FDMOD;
 242:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 243:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     return HAL_ERROR;
 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 247:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_Delay(50U);
 248:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 249:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 250:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 251:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 252:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DevInit : Initializes the USB_OTG controller registers
 254:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         for device mode
 255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 256:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  cfg   pointer to a USB_OTG_CfgTypeDef structure that contains
 257:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         the configuration information for the specified USBx peripheral.
 258:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 259:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 6


 260:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DevInit(USB_OTG_GlobalTypeDef *USBx, USB_OTG_CfgTypeDef cfg)
 261:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_StatusTypeDef ret = HAL_OK;
 263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 264:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i;
 265:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 266:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < 15U; i++)
 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 268:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->DIEPTXF[i] = 0U;
 269:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable HW VBUS sensing */
 272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GCCFG |= USB_OTG_GCCFG_VBUSBSEN;
 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 274:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Restart the Phy Clock */
 275:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_PCGCCTL = 0U;
 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 277:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Device mode configuration */
 278:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCFG |= DCFG_FRAME_INTERVAL_80;
 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set Core speed to Full speed mode */
 281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_SetDevSpeed(USBx, USB_OTG_SPEED_FULL);
 282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Flush the FIFOs */
 284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (USB_FlushTxFifo(USBx, 0x10U) != HAL_OK) /* all Tx FIFOs */
 285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     ret = HAL_ERROR;
 287:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 288:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (USB_FlushRxFifo(USBx) != HAL_OK)
 290:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     ret = HAL_ERROR;
 292:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 293:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear all pending Device Interrupts */
 295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DIEPMSK = 0U;
 296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DOEPMSK = 0U;
 297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DAINTMSK = 0U;
 298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 299:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < cfg.dev_endpoints; i++)
 300:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 301:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((USBx_INEP(i)->DIEPCTL & USB_OTG_DIEPCTL_EPENA) == USB_OTG_DIEPCTL_EPENA)
 302:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (i == 0U)
 304:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_INEP(i)->DIEPCTL = USB_OTG_DIEPCTL_SNAK;
 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
 308:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 309:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_INEP(i)->DIEPCTL = USB_OTG_DIEPCTL_EPDIS | USB_OTG_DIEPCTL_SNAK;
 310:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 311:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 312:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
 313:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 314:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(i)->DIEPCTL = 0U;
 315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 7


 317:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(i)->DIEPTSIZ = 0U;
 318:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(i)->DIEPINT  = 0xFB7FU;
 319:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < cfg.dev_endpoints; i++)
 322:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 323:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((USBx_OUTEP(i)->DOEPCTL & USB_OTG_DOEPCTL_EPENA) == USB_OTG_DOEPCTL_EPENA)
 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (i == 0U)
 326:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_OUTEP(i)->DOEPCTL = USB_OTG_DOEPCTL_SNAK;
 328:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
 330:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 331:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_OUTEP(i)->DOEPCTL = USB_OTG_DOEPCTL_EPDIS | USB_OTG_DOEPCTL_SNAK;
 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 334:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(i)->DOEPCTL = 0U;
 337:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(i)->DOEPTSIZ = 0U;
 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(i)->DOEPINT  = 0xFB7FU;
 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DIEPMSK &= ~(USB_OTG_DIEPMSK_TXFURM);
 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 345:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Disable all interrupts. */
 346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK = 0U;
 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear any pending interrupts */
 349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTSTS = 0xBFFFFFFFU;
 350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable the common interrupts */
 352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK |= USB_OTG_GINTMSK_RXFLVLM;
 353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable interrupts matching to the Device mode ONLY */
 355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK |= USB_OTG_GINTMSK_USBSUSPM | USB_OTG_GINTMSK_USBRST |
 356:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_OTG_GINTMSK_ENUMDNEM | USB_OTG_GINTMSK_IEPINT |
 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_OTG_GINTMSK_OEPINT   | USB_OTG_GINTMSK_IISOIXFRM |
 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_OTG_GINTMSK_PXFRM_IISOOXFRM | USB_OTG_GINTMSK_WUIM;
 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 360:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (cfg.Sof_enable != 0U)
 361:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GINTMSK |= USB_OTG_GINTMSK_SOFM;
 363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (cfg.vbus_sensing_enable == 1U)
 366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->GINTMSK |= (USB_OTG_GINTMSK_SRQIM | USB_OTG_GINTMSK_OTGINT);
 368:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 369:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ret;
 371:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 8


 374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_OTG_FlushTxFifo : Flush a Tx FIFO
 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  num  FIFO number
 377:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         This parameter can be a value from 1 to 15
 378:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             15 means Flush all Tx FIFOs
 379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_FlushTxFifo(USB_OTG_GlobalTypeDef *USBx, uint32_t num)
 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 383:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count = 0U;
 384:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GRSTCTL = (USB_OTG_GRSTCTL_TXFFLSH | (num << 6));
 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 387:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   do
 388:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (++count > 200000U)
 390:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 391:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       return HAL_TIMEOUT;
 392:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   while ((USBx->GRSTCTL & USB_OTG_GRSTCTL_TXFFLSH) == USB_OTG_GRSTCTL_TXFFLSH);
 395:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 396:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_FlushRxFifo : Flush Rx FIFO
 401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 404:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_FlushRxFifo(USB_OTG_GlobalTypeDef *USBx)
 405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count = 0;
 407:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GRSTCTL = USB_OTG_GRSTCTL_RXFFLSH;
 409:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 410:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   do
 411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 412:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (++count > 200000U)
 413:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       return HAL_TIMEOUT;
 415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 416:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   while ((USBx->GRSTCTL & USB_OTG_GRSTCTL_RXFFLSH) == USB_OTG_GRSTCTL_RXFFLSH);
 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 419:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 422:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_SetDevSpeed  Initializes the DevSpd field of DCFG register
 424:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         depending the PHY type and the enumeration speed of the device.
 425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  speed  device speed
 427:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_OTG_SPEED_FULL: Full speed mode
 429:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval  Hal status
 430:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 9


 431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_SetDevSpeed(USB_OTG_GlobalTypeDef *USBx, uint8_t speed)
 432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 433:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 435:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCFG |= speed;
 436:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 438:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 439:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_GetDevSpeed  Return the Dev Speed
 441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval speed  device speed
 443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
 444:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg PCD_SPEED_FULL: Full speed mode
 445:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint8_t USB_GetDevSpeed(USB_OTG_GlobalTypeDef *USBx)
 447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint8_t speed;
 450:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t DevEnumSpeed = USBx_DEVICE->DSTS & USB_OTG_DSTS_ENUMSPD;
 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 452:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if ((DevEnumSpeed == DSTS_ENUMSPD_FS_PHY_30MHZ_OR_60MHZ) ||
 453:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       (DevEnumSpeed == DSTS_ENUMSPD_FS_PHY_48MHZ))
 454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 455:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     speed = USBD_FS_SPEED;
 456:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     speed = 0xFU;
 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 462:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return speed;
 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 465:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Activate and configure an endpoint
 467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 469:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_ActivateEndpoint(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 472:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 478:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DAINTMSK |= USB_OTG_DAINTMSK_IEPM & (uint32_t)(1UL << (ep->num & EP_ADDR_MSK));
 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((USBx_INEP(epnum)->DIEPCTL & USB_OTG_DIEPCTL_USBAEP) == 0U)
 481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPCTL |= (ep->maxpacket & USB_OTG_DIEPCTL_MPSIZ) |
 483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    ((uint32_t)ep->type << 18) | (epnum << 22) |
 484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_SD0PID_SEVNFRM |
 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_USBAEP;
 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 487:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 10


 488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 489:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 490:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DAINTMSK |= USB_OTG_DAINTMSK_OEPM & ((uint32_t)(1UL << (ep->num & EP_ADDR_MSK)) <<
 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (((USBx_OUTEP(epnum)->DOEPCTL) & USB_OTG_DOEPCTL_USBAEP) == 0U)
 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPCTL |= (ep->maxpacket & USB_OTG_DOEPCTL_MPSIZ) |
 495:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     ((uint32_t)ep->type << 18) |
 496:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     USB_OTG_DIEPCTL_SD0PID_SEVNFRM |
 497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     USB_OTG_DOEPCTL_USBAEP;
 498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 499:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 500:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 501:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 502:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Activate and configure a dedicated endpoint
 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 508:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_ActivateDedicatedEndpoint(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 513:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 514:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Read DEPCTLn register */
 515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (((USBx_INEP(epnum)->DIEPCTL) & USB_OTG_DIEPCTL_USBAEP) == 0U)
 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPCTL |= (ep->maxpacket & USB_OTG_DIEPCTL_MPSIZ) |
 520:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    ((uint32_t)ep->type << 18) | (epnum << 22) |
 521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_SD0PID_SEVNFRM |
 522:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_USBAEP;
 523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 524:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 525:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DEACHMSK |= USB_OTG_DAINTMSK_IEPM & (uint32_t)(1UL << (ep->num & EP_ADDR_MSK));
 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 527:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (((USBx_OUTEP(epnum)->DOEPCTL) & USB_OTG_DOEPCTL_USBAEP) == 0U)
 530:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPCTL |= (ep->maxpacket & USB_OTG_DOEPCTL_MPSIZ) |
 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     ((uint32_t)ep->type << 18) | (epnum << 22) |
 533:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     USB_OTG_DOEPCTL_USBAEP;
 534:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 536:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DEACHMSK |= USB_OTG_DAINTMSK_OEPM & ((uint32_t)(1UL << (ep->num & EP_ADDR_MSK)) <<
 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 541:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 542:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 543:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  De-activate and de-initialize an endpoint
 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 11


 545:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 546:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 548:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DeactivateEndpoint(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 549:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 552:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Read DEPCTLn register */
 554:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DEACHMSK &= ~(USB_OTG_DAINTMSK_IEPM & (uint32_t)(1UL << (ep->num & EP_ADDR_MSK)));
 557:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DAINTMSK &= ~(USB_OTG_DAINTMSK_IEPM & (uint32_t)(1UL << (ep->num & EP_ADDR_MSK)));
 558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(epnum)->DIEPCTL &= ~(USB_OTG_DIEPCTL_USBAEP |
 559:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_MPSIZ |
 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_TXFNUM |
 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_SD0PID_SEVNFRM |
 562:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                    USB_OTG_DIEPCTL_EPTYP);
 563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DEACHMSK &= ~(USB_OTG_DAINTMSK_OEPM & ((uint32_t)(1UL << (ep->num & EP_ADDR_MSK)) 
 567:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DAINTMSK &= ~(USB_OTG_DAINTMSK_OEPM & ((uint32_t)(1UL << (ep->num & EP_ADDR_MSK)) 
 568:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPCTL &= ~(USB_OTG_DOEPCTL_USBAEP |
 569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     USB_OTG_DOEPCTL_MPSIZ |
 570:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     USB_OTG_DOEPCTL_SD0PID_SEVNFRM |
 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                     USB_OTG_DOEPCTL_EPTYP);
 572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 573:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 574:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 575:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 577:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 578:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  De-activate and de-initialize a dedicated endpoint
 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 580:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 581:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 582:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DeactivateDedicatedEndpoint(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *e
 584:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 585:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 586:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 587:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Read DEPCTLn register */
 589:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 590:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 591:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(epnum)->DIEPCTL &= ~ USB_OTG_DIEPCTL_USBAEP;
 592:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DAINTMSK &= ~(USB_OTG_DAINTMSK_IEPM & (uint32_t)(1UL << (ep->num & EP_ADDR_MSK)));
 593:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 594:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 595:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 596:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPCTL &= ~USB_OTG_DOEPCTL_USBAEP;
 597:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DAINTMSK &= ~(USB_OTG_DAINTMSK_OEPM & ((uint32_t)(1UL << (ep->num & EP_ADDR_MSK)) 
 598:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 599:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 600:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 601:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 12


 602:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 603:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 604:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EPStartXfer : setup and starts a transfer over an EP
 605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 607:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 608:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EPStartXfer(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 610:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 611:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 613:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t pktcnt;
 614:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 615:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* IN endpoint */
 616:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 617:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Zero Length Packet? */
 619:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len == 0U)
 620:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 621:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_PKTCNT);
 622:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_PKTCNT & (1U << 19));
 623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_XFRSIZ);
 624:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 625:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
 626:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 627:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Program the transfer size and packet count
 628:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       * as follows: xfersize = N * maxpacket +
 629:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       * short_packet pktcnt = N + (short_packet
 630:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       * exist ? 1 : 0)
 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       */
 632:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_XFRSIZ);
 633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_PKTCNT);
 634:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_PKTCNT & (((ep->xfer_len + ep->maxpacket - 1U
 635:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_XFRSIZ & ep->xfer_len);
 636:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 637:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (ep->type == EP_TYPE_ISOC)
 638:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 639:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_MULCNT);
 640:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_MULCNT & (1U << 29));
 641:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 643:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* EP enable, IN data in FIFO */
 644:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(epnum)->DIEPCTL |= (USB_OTG_DIEPCTL_CNAK | USB_OTG_DIEPCTL_EPENA);
 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 646:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->type != EP_TYPE_ISOC)
 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 648:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Enable the Tx FIFO Empty Interrupt for this EP */
 649:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (ep->xfer_len > 0U)
 650:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 651:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_DEVICE->DIEPEMPMSK |= 1UL << (ep->num & EP_ADDR_MSK);
 652:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 653:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 654:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 656:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if ((USBx_DEVICE->DSTS & (1U << 8)) == 0U)
 657:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 658:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_INEP(epnum)->DIEPCTL |= USB_OTG_DIEPCTL_SODDFRM;
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 13


 659:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 660:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
 661:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_INEP(epnum)->DIEPCTL |= USB_OTG_DIEPCTL_SD0PID_SEVNFRM;
 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 664:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 665:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       (void)USB_WritePacket(USBx, ep->xfer_buff, ep->num, (uint16_t)ep->xfer_len);
 666:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 667:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 668:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else /* OUT endpoint */
 669:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 670:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Program the transfer size and packet count as follows:
 671:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     * pktcnt = N
 672:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     * xfersize = N * maxpacket
 673:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     */
 674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPTSIZ &= ~(USB_OTG_DOEPTSIZ_XFRSIZ);
 675:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPTSIZ &= ~(USB_OTG_DOEPTSIZ_PKTCNT);
 676:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len == 0U)
 678:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 679:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPTSIZ |= (USB_OTG_DOEPTSIZ_XFRSIZ & ep->maxpacket);
 680:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPTSIZ |= (USB_OTG_DOEPTSIZ_PKTCNT & (1U << 19));
 681:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 682:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
 683:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 684:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       pktcnt = (uint16_t)((ep->xfer_len + ep->maxpacket - 1U) / ep->maxpacket);
 685:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPTSIZ |= USB_OTG_DOEPTSIZ_PKTCNT & ((uint32_t)pktcnt << 19);
 686:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPTSIZ |= USB_OTG_DOEPTSIZ_XFRSIZ & (ep->maxpacket * pktcnt);
 687:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 688:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 689:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->type == EP_TYPE_ISOC)
 690:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 691:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if ((USBx_DEVICE->DSTS & (1U << 8)) == 0U)
 692:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 693:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_OUTEP(epnum)->DOEPCTL |= USB_OTG_DOEPCTL_SODDFRM;
 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
 696:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 697:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_OUTEP(epnum)->DOEPCTL |= USB_OTG_DOEPCTL_SD0PID_SEVNFRM;
 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 699:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* EP enable */
 701:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPCTL |= (USB_OTG_DOEPCTL_CNAK | USB_OTG_DOEPCTL_EPENA);
 702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 703:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 704:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 705:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 707:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 708:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EP0StartXfer : setup and starts a transfer over the EP  0
 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 710:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 712:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 713:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EP0StartXfer(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 715:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 14


 716:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 717:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 718:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* IN endpoint */
 719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 720:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Zero Length Packet? */
 722:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len == 0U)
 723:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_PKTCNT);
 725:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_PKTCNT & (1U << 19));
 726:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_XFRSIZ);
 727:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 728:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
 729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 730:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Program the transfer size and packet count
 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       * as follows: xfersize = N * maxpacket +
 732:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       * short_packet pktcnt = N + (short_packet
 733:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       * exist ? 1 : 0)
 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       */
 735:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_XFRSIZ);
 736:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ &= ~(USB_OTG_DIEPTSIZ_PKTCNT);
 737:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 738:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (ep->xfer_len > ep->maxpacket)
 739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 740:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         ep->xfer_len = ep->maxpacket;
 741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 742:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_PKTCNT & (1U << 19));
 743:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPTSIZ |= (USB_OTG_DIEPTSIZ_XFRSIZ & ep->xfer_len);
 744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 745:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 746:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* EP enable, IN data in FIFO */
 747:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(epnum)->DIEPCTL |= (USB_OTG_DIEPCTL_CNAK | USB_OTG_DIEPCTL_EPENA);
 748:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Enable the Tx FIFO Empty Interrupt for this EP */
 750:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len > 0U)
 751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 752:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_DEVICE->DIEPEMPMSK |= 1UL << (ep->num & EP_ADDR_MSK);
 753:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 754:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 755:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else /* OUT endpoint */
 756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 757:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Program the transfer size and packet count as follows:
 758:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     * pktcnt = N
 759:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     * xfersize = N * maxpacket
 760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     */
 761:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPTSIZ &= ~(USB_OTG_DOEPTSIZ_XFRSIZ);
 762:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPTSIZ &= ~(USB_OTG_DOEPTSIZ_PKTCNT);
 763:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len > 0U)
 765:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 766:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = ep->maxpacket;
 767:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 769:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPTSIZ |= (USB_OTG_DOEPTSIZ_PKTCNT & (1U << 19));
 770:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPTSIZ |= (USB_OTG_DOEPTSIZ_XFRSIZ & (ep->maxpacket));
 771:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* EP enable */
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 15


 773:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPCTL |= (USB_OTG_DOEPCTL_CNAK | USB_OTG_DOEPCTL_EPENA);
 774:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 776:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 777:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 778:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 779:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 780:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_WritePacket : Writes a packet into the Tx FIFO associated
 781:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         with the EP/channel
 782:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 783:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  src   pointer to source buffer
 784:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ch_ep_num  endpoint or host channel number
 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  len  Number of bytes to write
 786:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 787:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 788:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_WritePacket(USB_OTG_GlobalTypeDef *USBx, uint8_t *src, uint8_t ch_ep_num, uin
 789:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 790:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 791:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t *pSrc = (uint32_t *)src;
 792:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count32b, i;
 793:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 794:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   count32b = ((uint32_t)len + 3U) / 4U;
 795:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < count32b; i++)
 796:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 797:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DFIFO((uint32_t)ch_ep_num) = __UNALIGNED_UINT32_READ(pSrc);
 798:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pSrc++;
 799:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 800:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 801:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 802:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 803:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 804:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 805:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadPacket : read a packet from the RX FIFO
 806:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 807:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  dest  source pointer
 808:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  len  Number of bytes to read
 809:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval pointer to destination buffer
 810:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 811:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** void *USB_ReadPacket(USB_OTG_GlobalTypeDef *USBx, uint8_t *dest, uint16_t len)
 812:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 813:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 814:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t *pDest = (uint32_t *)dest;
 815:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i;
 816:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count32b = ((uint32_t)len + 3U) / 4U;
 817:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 818:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < count32b; i++)
 819:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 820:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     __UNALIGNED_UINT32_WRITE(pDest, USBx_DFIFO(0U));
 821:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pDest++;
 822:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 824:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((void *)pDest);
 825:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 826:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 827:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 828:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EPSetStall : set a stall condition over an EP
 829:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 16


 830:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 831:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 832:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 833:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EPSetStall(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 835:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 836:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 838:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 839:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 840:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (((USBx_INEP(epnum)->DIEPCTL & USB_OTG_DIEPCTL_EPENA) == 0U) && (epnum != 0U))
 841:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPCTL &= ~(USB_OTG_DIEPCTL_EPDIS);
 843:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(epnum)->DIEPCTL |= USB_OTG_DIEPCTL_STALL;
 845:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 846:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 848:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (((USBx_OUTEP(epnum)->DOEPCTL & USB_OTG_DOEPCTL_EPENA) == 0U) && (epnum != 0U))
 849:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 850:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPCTL &= ~(USB_OTG_DOEPCTL_EPDIS);
 851:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPCTL |= USB_OTG_DOEPCTL_STALL;
 853:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 855:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 856:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 858:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 859:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EPClearStall : Clear a stall condition over an EP
 860:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 861:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep pointer to endpoint structure
 862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 863:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EPClearStall(USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 865:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 866:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t epnum = (uint32_t)ep->num;
 868:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 869:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
 870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 871:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(epnum)->DIEPCTL &= ~USB_OTG_DIEPCTL_STALL;
 872:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((ep->type == EP_TYPE_INTR) || (ep->type == EP_TYPE_BULK))
 873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 874:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_INEP(epnum)->DIEPCTL |= USB_OTG_DIEPCTL_SD0PID_SEVNFRM; /* DATA0 */
 875:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 876:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 877:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
 878:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 879:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(epnum)->DOEPCTL &= ~USB_OTG_DOEPCTL_STALL;
 880:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((ep->type == EP_TYPE_INTR) || (ep->type == EP_TYPE_BULK))
 881:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 882:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_OUTEP(epnum)->DOEPCTL |= USB_OTG_DOEPCTL_SD0PID_SEVNFRM; /* DATA0 */
 883:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 884:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 885:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 886:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 17


 887:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 888:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 889:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_StopDevice : Stop the usb device mode
 890:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 891:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 892:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 893:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_StopDevice(USB_OTG_GlobalTypeDef *USBx)
 894:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 895:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_StatusTypeDef ret;
 896:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 897:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i;
 898:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 899:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear Pending interrupt */
 900:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < 15U; i++)
 901:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 902:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_INEP(i)->DIEPINT = 0xFB7FU;
 903:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_OUTEP(i)->DOEPINT = 0xFB7FU;
 904:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 905:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 906:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear interrupt masks */
 907:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DIEPMSK  = 0U;
 908:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DOEPMSK  = 0U;
 909:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DAINTMSK = 0U;
 910:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 911:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Flush the FIFO */
 912:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ret = USB_FlushRxFifo(USBx);
 913:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ret != HAL_OK)
 914:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 915:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     return ret;
 916:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 917:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 918:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   ret = USB_FlushTxFifo(USBx,  0x10U);
 919:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ret != HAL_OK)
 920:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 921:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     return ret;
 922:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 923:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 924:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ret;
 925:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 926:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 927:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 928:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_SetDevAddress : Stop the usb device mode
 929:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 930:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  address  new device address to be assigned
 931:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 255
 932:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 933:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 934:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_SetDevAddress(USB_OTG_GlobalTypeDef *USBx, uint8_t address)
 935:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 936:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 937:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 938:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCFG &= ~(USB_OTG_DCFG_DAD);
 939:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCFG |= ((uint32_t)address << 4) & USB_OTG_DCFG_DAD;
 940:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 941:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 942:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 943:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 18


 944:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 945:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DevConnect : Connect the USB device by enabling the pull-up/pull-down
 946:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 947:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 948:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_DevConnect(USB_OTG_GlobalTypeDef *USBx)
 950:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 951:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 952:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 953:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCTL &= ~USB_OTG_DCTL_SDIS;
 954:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_Delay(3U);
 955:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 956:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 957:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 958:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 959:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 960:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DevDisconnect : Disconnect the USB device by disabling the pull-up/pull-down
 961:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 962:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 963:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 964:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_DevDisconnect(USB_OTG_GlobalTypeDef *USBx)
 965:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 966:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 968:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCTL |= USB_OTG_DCTL_SDIS;
 969:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_Delay(3U);
 970:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 971:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 972:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 973:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 974:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 975:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadInterrupts: return the global USB interrupt status
 976:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 977:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 978:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 979:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t  USB_ReadInterrupts(USB_OTG_GlobalTypeDef *USBx)
 980:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 981:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg;
 982:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 983:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg = USBx->GINTSTS;
 984:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg &= USBx->GINTMSK;
 985:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 986:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return tmpreg;
 987:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 988:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 989:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
 990:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadDevAllOutEpInterrupt: return the USB device OUT endpoints interrupt status
 991:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
 992:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
 993:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
 994:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevAllOutEpInterrupt(USB_OTG_GlobalTypeDef *USBx)
 995:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 996:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
 997:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg;
 998:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 999:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg  = USBx_DEVICE->DAINT;
1000:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg &= USBx_DEVICE->DAINTMSK;
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 19


1001:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1002:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((tmpreg & 0xffff0000U) >> 16);
1003:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1004:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1005:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadDevAllInEpInterrupt: return the USB device IN endpoints interrupt status
1007:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1008:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1009:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1010:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevAllInEpInterrupt(USB_OTG_GlobalTypeDef *USBx)
1011:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1012:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1013:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg;
1014:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1015:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg  = USBx_DEVICE->DAINT;
1016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg &= USBx_DEVICE->DAINTMSK;
1017:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((tmpreg & 0xFFFFU));
1019:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1020:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1021:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1022:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Returns Device OUT EP Interrupt register
1023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  epnum  endpoint number
1025:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 15
1026:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval Device OUT EP Interrupt register
1027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1028:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevOutEPInterrupt(USB_OTG_GlobalTypeDef *USBx, uint8_t epnum)
1029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1031:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg;
1032:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1033:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg  = USBx_OUTEP((uint32_t)epnum)->DOEPINT;
1034:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg &= USBx_DEVICE->DOEPMSK;
1035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return tmpreg;
1037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1038:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1039:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1040:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Returns Device IN EP Interrupt register
1041:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  epnum  endpoint number
1043:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 15
1044:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval Device IN EP Interrupt register
1045:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1046:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevInEPInterrupt(USB_OTG_GlobalTypeDef *USBx, uint8_t epnum)
1047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1048:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1049:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg, msk, emp;
1050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1051:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   msk = USBx_DEVICE->DIEPMSK;
1052:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   emp = USBx_DEVICE->DIEPEMPMSK;
1053:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   msk |= ((emp >> (epnum & EP_ADDR_MSK)) & 0x1U) << 7;
1054:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg = USBx_INEP((uint32_t)epnum)->DIEPINT & msk;
1055:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1056:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return tmpreg;
1057:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 20


1058:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1059:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1060:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ClearInterrupts: clear a USB interrupt
1061:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1062:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  interrupt  interrupt flag
1063:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval None
1064:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1065:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** void  USB_ClearInterrupts(USB_OTG_GlobalTypeDef *USBx, uint32_t interrupt)
1066:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1067:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTSTS |= interrupt;
1068:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1069:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1070:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1071:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Returns USB core mode
1072:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1073:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval return core mode : Host or Device
1074:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
1075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           0 : Host
1076:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           1 : Device
1077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1078:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_GetMode(USB_OTG_GlobalTypeDef *USBx)
1079:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1080:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((USBx->GINTSTS) & 0x1U);
1081:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1082:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1083:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1084:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Activate EP0 for Setup transactions
1085:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1088:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_ActivateSetup(USB_OTG_GlobalTypeDef *USBx)
1089:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1091:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set the MPS of the IN EP0 to 64 bytes */
1093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_INEP(0U)->DIEPCTL &= ~USB_OTG_DIEPCTL_MPSIZ;
1094:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1095:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCTL |= USB_OTG_DCTL_CGINAK;
1096:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1097:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Prepare the EP0 to start the first control setup
1102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  psetup  pointer to setup packet
1104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EP0_OutStart(USB_OTG_GlobalTypeDef *USBx, uint8_t *psetup)
1107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(psetup);
1109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t gSNPSiD = *(__IO uint32_t *)(&USBx->CID + 0x1U);
1111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (gSNPSiD > USB_OTG_CORE_ID_300A)
1113:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1114:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((USBx_OUTEP(0U)->DOEPCTL & USB_OTG_DOEPCTL_EPENA) == USB_OTG_DOEPCTL_EPENA)
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 21


1115:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1116:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       return HAL_OK;
1117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1120:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_OUTEP(0U)->DOEPTSIZ = 0U;
1121:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_OUTEP(0U)->DOEPTSIZ |= (USB_OTG_DOEPTSIZ_PKTCNT & (1U << 19));
1122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_OUTEP(0U)->DOEPTSIZ |= (3U * 8U);
1123:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_OUTEP(0U)->DOEPTSIZ |=  USB_OTG_DOEPTSIZ_STUPCNT;
1124:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1126:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1129:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Reset the USB Core (needed after USB clock settings change)
1130:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1131:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** static HAL_StatusTypeDef USB_CoreReset(USB_OTG_GlobalTypeDef *USBx)
1134:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1135:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count = 0U;
1136:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Wait for AHB master IDLE state. */
1138:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   do
1139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (++count > 200000U)
1141:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1142:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       return HAL_TIMEOUT;
1143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   while ((USBx->GRSTCTL & USB_OTG_GRSTCTL_AHBIDL) == 0U);
1146:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1147:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Core Soft Reset */
1148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   count = 0U;
1149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GRSTCTL |= USB_OTG_GRSTCTL_CSRST;
1150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1151:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   do
1152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1153:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (++count > 200000U)
1154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       return HAL_TIMEOUT;
1156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   while ((USBx->GRSTCTL & USB_OTG_GRSTCTL_CSRST) == USB_OTG_GRSTCTL_CSRST);
1159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1164:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_HostInit : Initializes the USB OTG controller registers
1165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         for Host mode
1166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  cfg   pointer to a USB_OTG_CfgTypeDef structure that contains
1168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         the configuration information for the specified USBx peripheral.
1169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1171:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_HostInit(USB_OTG_GlobalTypeDef *USBx, USB_OTG_CfgTypeDef cfg)
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 22


1172:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i;
1175:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Restart the Phy Clock */
1177:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_PCGCCTL = 0U;
1178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Disable VBUS sensing */
1180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GCCFG &= ~(USB_OTG_GCCFG_VBUSASEN);
1181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GCCFG &= ~(USB_OTG_GCCFG_VBUSBSEN);
1182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set default Max speed support */
1183:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HOST->HCFG &= ~(USB_OTG_HCFG_FSLSS);
1184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1185:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Make sure the FIFOs are flushed. */
1186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_FlushTxFifo(USBx, 0x10U); /* all Tx FIFOs */
1187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_FlushRxFifo(USBx);
1188:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear all pending HC Interrupts */
1190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i < cfg.Host_channels; i++)
1191:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC(i)->HCINT = 0xFFFFFFFFU;
1193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC(i)->HCINTMSK = 0U;
1194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable VBUS driving */
1197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_DriveVbus(USBx, 1U);
1198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1199:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_Delay(200U);
1200:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Disable all interrupts. */
1202:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK = 0U;
1203:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear any pending interrupts */
1205:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTSTS = 0xFFFFFFFFU;
1206:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* set Rx FIFO size */
1208:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GRXFSIZ  = 0x80U;
1209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->DIEPTXF0_HNPTXFSIZ = (uint32_t)(((0x60U << 16) & USB_OTG_NPTXFD) | 0x80U);
1210:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->HPTXFSIZ = (uint32_t)(((0x40U << 16)& USB_OTG_HPTXFSIZ_PTXFD) | 0xE0U);
1211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable the common interrupts */
1212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK |= USB_OTG_GINTMSK_RXFLVLM;
1213:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1214:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable interrupts matching to the Host mode ONLY */
1215:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK |= (USB_OTG_GINTMSK_PRTIM            | USB_OTG_GINTMSK_HCIM | \
1216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                     USB_OTG_GINTMSK_SOFM             | USB_OTG_GINTSTS_DISCINT | \
1217:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                     USB_OTG_GINTMSK_PXFRM_IISOOXFRM  | USB_OTG_GINTMSK_WUIM);
1218:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1220:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_InitFSLSPClkSel : Initializes the FSLSPClkSel field of the
1224:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         HCFG register on the PHY type and set the right frame interval
1225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1226:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  freq  clock frequency
1227:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
1228:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           HCFG_48_MHZ : Full Speed 48 MHz Clock
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 23


1229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           HCFG_6_MHZ : Low Speed 6 MHz Clock
1230:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1231:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_InitFSLSPClkSel(USB_OTG_GlobalTypeDef *USBx, uint8_t freq)
1233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1236:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HOST->HCFG &= ~(USB_OTG_HCFG_FSLSPCS);
1237:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HOST->HCFG |= (uint32_t)freq & USB_OTG_HCFG_FSLSPCS;
1238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (freq == HCFG_48_MHZ)
1240:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HOST->HFIR = 48000U;
1242:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1243:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else if (freq == HCFG_6_MHZ)
1244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HOST->HFIR = 6000U;
1246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1247:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
1248:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1249:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* ... */
1250:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1251:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1252:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1254:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1256:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** * @brief  USB_OTG_ResetPort : Reset Host Port
1257:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1258:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1259:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @note (1)The application must wait at least 10 ms
1260:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *   before clearing the reset bit.
1261:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_ResetPort(USB_OTG_GlobalTypeDef *USBx)
1263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1264:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1265:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1266:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   __IO uint32_t hprt0 = 0U;
1267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1268:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   hprt0 = USBx_HPRT0;
1269:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   hprt0 &= ~(USB_OTG_HPRT_PENA | USB_OTG_HPRT_PCDET |
1271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****              USB_OTG_HPRT_PENCHNG | USB_OTG_HPRT_POCCHNG);
1272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HPRT0 = (USB_OTG_HPRT_PRST | hprt0);
1274:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_Delay(100U);                                 /* See Note #1 */
1275:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HPRT0 = ((~USB_OTG_HPRT_PRST) & hprt0);
1276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_Delay(10U);
1277:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1278:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DriveVbus : activate or de-activate vbus
1283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  state  VBUS state
1284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
1285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           0 : VBUS Active
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 24


1286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *           1 : VBUS Inactive
1287:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1288:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** */
1289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DriveVbus(USB_OTG_GlobalTypeDef *USBx, uint8_t state)
1290:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1292:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   __IO uint32_t hprt0 = 0U;
1293:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   hprt0 = USBx_HPRT0;
1295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   hprt0 &= ~(USB_OTG_HPRT_PENA | USB_OTG_HPRT_PCDET |
1297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****              USB_OTG_HPRT_PENCHNG | USB_OTG_HPRT_POCCHNG);
1298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1299:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (((hprt0 & USB_OTG_HPRT_PPWR) == 0U) && (state == 1U))
1300:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1301:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HPRT0 = (USB_OTG_HPRT_PPWR | hprt0);
1302:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (((hprt0 & USB_OTG_HPRT_PPWR) == USB_OTG_HPRT_PPWR) && (state == 0U))
1304:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HPRT0 = ((~USB_OTG_HPRT_PPWR) & hprt0);
1306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1308:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1309:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1310:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1311:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Return Host Core speed
1312:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1313:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval speed : Host speed
1314:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
1315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg HCD_SPEED_FULL: Full speed mode
1316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg HCD_SPEED_LOW: Low speed mode
1317:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1318:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_GetHostSpeed(USB_OTG_GlobalTypeDef *USBx)
1319:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   __IO uint32_t hprt0 = 0U;
1322:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1323:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   hprt0 = USBx_HPRT0;
1324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((hprt0 & USB_OTG_HPRT_PSPD) >> 17);
1325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1326:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1328:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Return Host Current Frame number
1329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1330:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval current frame number
1331:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** */
1332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_GetCurrentFrame(USB_OTG_GlobalTypeDef *USBx)
1333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1334:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return (USBx_HOST->HFNUM & USB_OTG_HFNUM_FRNUM);
1337:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Initialize a host channel
1341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ch_num  Channel number
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 25


1343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         This parameter can be a value from 1 to 15
1344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  epnum  Endpoint number
1345:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 1 to 15
1346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  dev_address  Current device address
1347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 255
1348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  speed  Current device speed
1349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
1350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_OTG_SPEED_FULL: Full speed mode
1351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_OTG_SPEED_LOW: Low speed mode
1352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep_type  Endpoint Type
1353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of these values:
1354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg EP_TYPE_CTRL: Control type
1355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg EP_TYPE_ISOC: Isochronous type
1356:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg EP_TYPE_BULK: Bulk type
1357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg EP_TYPE_INTR: Interrupt type
1358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  mps  Max Packet Size
1359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to32K
1360:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL state
1361:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_HC_Init(USB_OTG_GlobalTypeDef *USBx,
1363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                               uint8_t ch_num,
1364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                               uint8_t epnum,
1365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                               uint8_t dev_address,
1366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                               uint8_t speed,
1367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                               uint8_t ep_type,
1368:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                               uint16_t mps)
1369:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_StatusTypeDef ret = HAL_OK;
1371:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t HCcharEpDir, HCcharLowSpeed;
1373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear old interrupt conditions for this host channel. */
1375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC((uint32_t)ch_num)->HCINT = 0xFFFFFFFFU;
1376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1377:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable channel interrupts required for this transfer. */
1378:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   switch (ep_type)
1379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_CTRL:
1381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_BULK:
1382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC((uint32_t)ch_num)->HCINTMSK = USB_OTG_HCINTMSK_XFRCM  |
1383:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_STALLM |
1384:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_TXERRM |
1385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_DTERRM |
1386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_AHBERR |
1387:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_NAKM;
1388:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if ((epnum & 0x80U) == 0x80U)
1390:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1391:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_HC((uint32_t)ch_num)->HCINTMSK |= USB_OTG_HCINTMSK_BBERRM;
1392:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1395:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_INTR:
1396:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC((uint32_t)ch_num)->HCINTMSK = USB_OTG_HCINTMSK_XFRCM  |
1397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_STALLM |
1398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_TXERRM |
1399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_DTERRM |
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 26


1400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_NAKM   |
1401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_AHBERR |
1402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_FRMORM;
1403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1404:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if ((epnum & 0x80U) == 0x80U)
1405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_HC((uint32_t)ch_num)->HCINTMSK |= USB_OTG_HCINTMSK_BBERRM;
1407:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1409:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1410:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_ISOC:
1412:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC((uint32_t)ch_num)->HCINTMSK = USB_OTG_HCINTMSK_XFRCM  |
1413:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_ACKM   |
1414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_AHBERR |
1415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                             USB_OTG_HCINTMSK_FRMORM;
1416:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if ((epnum & 0x80U) == 0x80U)
1418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1419:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         USBx_HC((uint32_t)ch_num)->HCINTMSK |= (USB_OTG_HCINTMSK_TXERRM | USB_OTG_HCINTMSK_BBERRM);
1420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1422:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     default:
1424:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ret = HAL_ERROR;
1425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1427:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable the top level host channel interrupt. */
1429:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HOST->HAINTMSK |= 1UL << (ch_num & 0xFU);
1430:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Make sure host channel interrupts are enabled. */
1432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTMSK |= USB_OTG_GINTMSK_HCIM;
1433:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Program the HCCHAR register */
1435:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if ((epnum & 0x80U) == 0x80U)
1436:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     HCcharEpDir = (0x1U << 15) & USB_OTG_HCCHAR_EPDIR;
1438:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1439:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
1440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     HCcharEpDir = 0U;
1442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1444:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (speed == HPRT0_PRTSPD_LOW_SPEED)
1445:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     HCcharLowSpeed = (0x1U << 17) & USB_OTG_HCCHAR_LSDEV;
1447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
1449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1450:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     HCcharLowSpeed = 0U;
1451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1452:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1453:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC((uint32_t)ch_num)->HCCHAR = (((uint32_t)dev_address << 22) & USB_OTG_HCCHAR_DAD) |
1454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                       ((((uint32_t)epnum & 0x7FU) << 11) & USB_OTG_HCCHAR_EPNUM) |
1455:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                       (((uint32_t)ep_type << 18) & USB_OTG_HCCHAR_EPTYP) |
1456:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                                       ((uint32_t)mps & USB_OTG_HCCHAR_MPSIZ) | HCcharEpDir | HCchar
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 27


1457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep_type == EP_TYPE_INTR)
1459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC((uint32_t)ch_num)->HCCHAR |= USB_OTG_HCCHAR_ODDFRM ;
1461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1462:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ret;
1464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1465:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Start a transfer over a host channel
1468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1469:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  hc  pointer to host channel structure
1470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL state
1471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1472:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_HC_StartXfer(USB_OTG_GlobalTypeDef *USBx, USB_OTG_HCTypeDef *hc)
1473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t ch_num = (uint32_t)hc->ch_num;
1476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   static __IO uint32_t tmpreg = 0U;
1477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint8_t  is_oddframe;
1478:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t len_words;
1479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t num_packets;
1480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t max_hc_pkt_count = 256U;
1481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Compute the expected number of packets associated to the transfer */
1483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (hc->xfer_len > 0U)
1484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     num_packets = (uint16_t)((hc->xfer_len + hc->max_packet - 1U) / hc->max_packet);
1486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1487:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (num_packets > max_hc_pkt_count)
1488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1489:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       num_packets = max_hc_pkt_count;
1490:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       hc->xfer_len = (uint32_t)num_packets * hc->max_packet;
1491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
1494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1495:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     num_packets = 1U;
1496:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (hc->ep_is_in != 0U)
1498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1499:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     hc->xfer_len = (uint32_t)num_packets * hc->max_packet;
1500:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1501:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1502:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Initialize the HCTSIZn register */
1503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC(ch_num)->HCTSIZ = (hc->xfer_len & USB_OTG_HCTSIZ_XFRSIZ) |
1504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                             (((uint32_t)num_packets << 19) & USB_OTG_HCTSIZ_PKTCNT) |
1505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                             (((uint32_t)hc->data_pid << 29) & USB_OTG_HCTSIZ_DPID);
1506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   is_oddframe = (((uint32_t)USBx_HOST->HFNUM & 0x01U) != 0U) ? 0U : 1U;
1508:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC(ch_num)->HCCHAR &= ~USB_OTG_HCCHAR_ODDFRM;
1509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC(ch_num)->HCCHAR |= (uint32_t)is_oddframe << 29;
1510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set host channel enable */
1512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg = USBx_HC(ch_num)->HCCHAR;
1513:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg &= ~USB_OTG_HCCHAR_CHDIS;
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 28


1514:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* make sure to set the correct ep direction */
1516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (hc->ep_is_in != 0U)
1517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     tmpreg |= USB_OTG_HCCHAR_EPDIR;
1519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1520:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
1521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1522:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     tmpreg &= ~USB_OTG_HCCHAR_EPDIR;
1523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1524:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg |= USB_OTG_HCCHAR_CHENA;
1525:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC(ch_num)->HCCHAR = tmpreg;
1526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1527:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((hc->ep_is_in == 0U) && (hc->xfer_len > 0U))
1528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       switch (hc->ep_type)
1530:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Non periodic transfer */
1532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         case EP_TYPE_CTRL:
1533:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         case EP_TYPE_BULK:
1534:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           len_words = (uint16_t)((hc->xfer_len + 3U) / 4U);
1536:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           /* check if there is enough space in FIFO space */
1538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           if (len_words > (USBx->HNPTXSTS & 0xFFFFU))
1539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           {
1540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             /* need to process data in nptxfempty interrupt */
1541:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             USBx->GINTMSK |= USB_OTG_GINTMSK_NPTXFEM;
1542:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           }
1543:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           break;
1544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1545:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Periodic transfer */
1546:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         case EP_TYPE_INTR:
1547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         case EP_TYPE_ISOC:
1548:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           len_words = (uint16_t)((hc->xfer_len + 3U) / 4U);
1549:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           /* check if there is enough space in FIFO space */
1550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           if (len_words > (USBx_HOST->HPTXSTS & 0xFFFFU)) /* split the transfer */
1551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           {
1552:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             /* need to process data in ptxfempty interrupt */
1553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             USBx->GINTMSK |= USB_OTG_GINTMSK_PTXFEM;
1554:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           }
1555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           break;
1556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1557:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         default:
1558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           break;
1559:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Write packet into the Tx FIFO. */
1562:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       (void)USB_WritePacket(USBx, hc->xfer_buff, hc->ch_num, (uint16_t)hc->xfer_len);
1563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1567:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1568:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief Read all host channel interrupts status
1570:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 29


1571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL state
1572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1573:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_HC_ReadInterrupt(USB_OTG_GlobalTypeDef *USBx)
1574:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1575:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1577:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((USBx_HOST->HAINT) & 0xFFFFU);
1578:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1580:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1581:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Halt a host channel
1582:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  hc_num  Host Channel number
1584:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         This parameter can be a value from 1 to 15
1585:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL state
1586:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1587:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_HC_Halt(USB_OTG_GlobalTypeDef *USBx, uint8_t hc_num)
1588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1589:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1590:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t hcnum = (uint32_t)hc_num;
1591:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count = 0U;
1592:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t HcEpType = (USBx_HC(hcnum)->HCCHAR & USB_OTG_HCCHAR_EPTYP) >> 18;
1593:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1594:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Check for space in the request queue to issue the halt. */
1595:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if ((HcEpType == HCCHAR_CTRL) || (HcEpType == HCCHAR_BULK))
1596:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1597:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC(hcnum)->HCCHAR |= USB_OTG_HCCHAR_CHDIS;
1598:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1599:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((USBx->HNPTXSTS & (0xFFU << 16)) == 0U)
1600:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1601:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR &= ~USB_OTG_HCCHAR_CHENA;
1602:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR |= USB_OTG_HCCHAR_CHENA;
1603:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR &= ~USB_OTG_HCCHAR_EPDIR;
1604:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       do
1605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         if (++count > 1000U)
1607:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         {
1608:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           break;
1609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         }
1610:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1611:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       while ((USBx_HC(hcnum)->HCCHAR & USB_OTG_HCCHAR_CHENA) == USB_OTG_HCCHAR_CHENA);
1612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1613:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
1614:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1615:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR |= USB_OTG_HCCHAR_CHENA;
1616:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1617:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
1619:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1620:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC(hcnum)->HCCHAR |= USB_OTG_HCCHAR_CHDIS;
1621:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1622:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if ((USBx_HOST->HPTXSTS & (0xFFU << 16)) == 0U)
1623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1624:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR &= ~USB_OTG_HCCHAR_CHENA;
1625:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR |= USB_OTG_HCCHAR_CHENA;
1626:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR &= ~USB_OTG_HCCHAR_EPDIR;
1627:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       do
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 30


1628:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1629:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         if (++count > 1000U)
1630:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         {
1631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****           break;
1632:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         }
1633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1634:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       while ((USBx_HC(hcnum)->HCCHAR & USB_OTG_HCCHAR_CHENA) == USB_OTG_HCCHAR_CHENA);
1635:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1636:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
1637:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1638:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USBx_HC(hcnum)->HCCHAR |= USB_OTG_HCCHAR_CHENA;
1639:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1640:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1641:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1643:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1644:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1646:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Initiate Do Ping protocol
1647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1648:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  hc_num  Host Channel number
1649:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         This parameter can be a value from 1 to 15
1650:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL state
1651:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1652:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DoPing(USB_OTG_GlobalTypeDef *USBx, uint8_t ch_num)
1653:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1654:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t chnum = (uint32_t)ch_num;
1656:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t num_packets = 1U;
1657:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg;
1658:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1659:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC(chnum)->HCTSIZ = ((num_packets << 19) & USB_OTG_HCTSIZ_PKTCNT) |
1660:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                            USB_OTG_HCTSIZ_DOPING;
1661:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set host channel enable */
1663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg = USBx_HC(chnum)->HCCHAR;
1664:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg &= ~USB_OTG_HCCHAR_CHDIS;
1665:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg |= USB_OTG_HCCHAR_CHENA;
1666:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HC(chnum)->HCCHAR = tmpreg;
1667:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1668:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1669:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1670:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1671:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1672:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Stop Host Core
1673:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL state
1675:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1676:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_StopHost(USB_OTG_GlobalTypeDef *USBx)
1677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1678:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1679:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t count = 0U;
1680:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t value;
1681:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i;
1682:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1683:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_DisableGlobalInt(USBx);
1684:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 31


1685:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Flush FIFO */
1686:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_FlushTxFifo(USBx, 0x10U);
1687:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_FlushRxFifo(USBx);
1688:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1689:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Flush out any leftover queued requests. */
1690:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i <= 15U; i++)
1691:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1692:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value = USBx_HC(i)->HCCHAR;
1693:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value |=  USB_OTG_HCCHAR_CHDIS;
1694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value &= ~USB_OTG_HCCHAR_CHENA;
1695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value &= ~USB_OTG_HCCHAR_EPDIR;
1696:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC(i)->HCCHAR = value;
1697:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1699:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Halt all channels to put them into a known state. */
1700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = 0U; i <= 15U; i++)
1701:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value = USBx_HC(i)->HCCHAR;
1703:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value |= USB_OTG_HCCHAR_CHDIS;
1704:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value |= USB_OTG_HCCHAR_CHENA;
1705:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     value &= ~USB_OTG_HCCHAR_EPDIR;
1706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_HC(i)->HCCHAR = value;
1707:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1708:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     do
1709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1710:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (++count > 1000U)
1711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1712:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         break;
1713:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
1715:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     while ((USBx_HC(i)->HCCHAR & USB_OTG_HCCHAR_CHENA) == USB_OTG_HCCHAR_CHENA);
1716:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1717:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1718:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear any pending Host interrupts */
1719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_HOST->HAINT = 0xFFFFFFFFU;
1720:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->GINTSTS = 0xFFFFFFFFU;
1721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1722:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_EnableGlobalInt(USBx);
1723:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1725:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1726:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1727:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1728:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ActivateRemoteWakeup active remote wakeup signalling
1729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx Selected device
1730:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1732:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_ActivateRemoteWakeup(USB_OTG_GlobalTypeDef *USBx)
1733:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1735:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1736:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if ((USBx_DEVICE->DSTS & USB_OTG_DSTS_SUSPSTS) == USB_OTG_DSTS_SUSPSTS)
1737:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1738:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* active Remote wakeup signalling */
1739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx_DEVICE->DCTL |= USB_OTG_DCTL_RWUSIG;
1740:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 32


1742:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1743:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1745:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1746:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DeActivateRemoteWakeup de-active remote wakeup signalling
1747:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx Selected device
1748:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1750:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DeActivateRemoteWakeup(USB_OTG_GlobalTypeDef *USBx)
1751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
1752:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t USBx_BASE = (uint32_t)USBx;
1753:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1754:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* active Remote wakeup signalling */
1755:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx_DEVICE->DCTL &= ~(USB_OTG_DCTL_RWUSIG);
1756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1757:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
1758:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
1759:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #endif /* defined (USB_OTG_FS) */
1760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1761:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #if defined (USB)
1762:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1763:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Initializes the USB Core
1764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx: USB Instance
1765:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  cfg : pointer to a USB_CfgTypeDef structure that contains
1766:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         the configuration information for the specified USBx peripheral.
1767:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1769:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_CoreInit(USB_TypeDef *USBx, USB_CfgTypeDef cfg)
1770:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
  28                            .loc 1 1770 1 view -0
  29                            .cfi_startproc
  30                            @ args = 36, pretend = 16, frame = 0
  31                            @ frame_needed = 0, uses_anonymous_args = 0
  32                            @ link register save eliminated.
  33                            .loc 1 1770 1 is_stmt 0 view .LVU1
  34 0000 84B0                  sub     sp, sp, #16
  35                    .LCFI0:
  36                            .cfi_def_cfa_offset 16
  37 0002 01A8                  add     r0, sp, #4
  38                    .LVL1:
  39                            .loc 1 1770 1 view .LVU2
  40 0004 80E80E00              stm     r0, {r1, r2, r3}
1771:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
1772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
  41                            .loc 1 1772 3 is_stmt 1 view .LVU3
1773:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(cfg);
  42                            .loc 1 1773 3 view .LVU4
1774:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
1776:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
1777:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
1778:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
1779:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1780:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
  43                            .loc 1 1780 3 view .LVU5
1781:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
  44                            .loc 1 1781 1 is_stmt 0 view .LVU6
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 33


  45 0008 0020                  movs    r0, #0
  46 000a 04B0                  add     sp, sp, #16
  47                    .LCFI1:
  48                            .cfi_def_cfa_offset 0
  49 000c 7047                  bx      lr
  50                            .cfi_endproc
  51                    .LFE65:
  53                            .section        .text.USB_EnableGlobalInt,"ax",%progbits
  54                            .align  1
  55                            .global USB_EnableGlobalInt
  56                            .syntax unified
  57                            .thumb
  58                            .thumb_func
  59                            .fpu softvfp
  61                    USB_EnableGlobalInt:
  62                    .LVL2:
  63                    .LFB66:
1782:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1783:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1784:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EnableGlobalInt
1785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         Enables the controller's Global Int in the AHB Config reg
1786:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1787:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1788:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1789:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EnableGlobalInt(USB_TypeDef *USBx)
1790:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
  64                            .loc 1 1790 1 is_stmt 1 view -0
  65                            .cfi_startproc
  66                            @ args = 0, pretend = 0, frame = 0
  67                            @ frame_needed = 0, uses_anonymous_args = 0
  68                            @ link register save eliminated.
1791:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t winterruptmask;
  69                            .loc 1 1791 3 view .LVU8
1792:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1793:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set winterruptmask variable */
1794:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   winterruptmask = USB_CNTR_CTRM  | USB_CNTR_WKUPM |
  70                            .loc 1 1794 3 view .LVU9
1795:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_CNTR_SUSPM | USB_CNTR_ERRM |
1796:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_CNTR_SOFM | USB_CNTR_ESOFM |
1797:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_CNTR_RESETM;
1798:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1799:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set interrupt mask */
1800:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR |= winterruptmask;
  71                            .loc 1 1800 3 view .LVU10
  72                            .loc 1 1800 14 is_stmt 0 view .LVU11
  73 0000 B0F84030              ldrh    r3, [r0, #64]
  74 0004 43F43F43              orr     r3, r3, #48896
  75 0008 A0F84030              strh    r3, [r0, #64]   @ movhi
1801:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1802:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
  76                            .loc 1 1802 3 is_stmt 1 view .LVU12
1803:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
  77                            .loc 1 1803 1 is_stmt 0 view .LVU13
  78 000c 0020                  movs    r0, #0
  79                    .LVL3:
  80                            .loc 1 1803 1 view .LVU14
  81 000e 7047                  bx      lr
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 34


  82                            .cfi_endproc
  83                    .LFE66:
  85                            .section        .text.USB_DisableGlobalInt,"ax",%progbits
  86                            .align  1
  87                            .global USB_DisableGlobalInt
  88                            .syntax unified
  89                            .thumb
  90                            .thumb_func
  91                            .fpu softvfp
  93                    USB_DisableGlobalInt:
  94                    .LVL4:
  95                    .LFB67:
1804:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1805:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1806:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DisableGlobalInt
1807:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         Disable the controller's Global Int in the AHB Config reg
1808:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1809:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1810:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** */
1811:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DisableGlobalInt(USB_TypeDef *USBx)
1812:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
  96                            .loc 1 1812 1 is_stmt 1 view -0
  97                            .cfi_startproc
  98                            @ args = 0, pretend = 0, frame = 0
  99                            @ frame_needed = 0, uses_anonymous_args = 0
 100                            @ link register save eliminated.
1813:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t winterruptmask;
 101                            .loc 1 1813 3 view .LVU16
1814:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1815:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Set winterruptmask variable */
1816:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   winterruptmask = USB_CNTR_CTRM  | USB_CNTR_WKUPM |
 102                            .loc 1 1816 3 view .LVU17
1817:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_CNTR_SUSPM | USB_CNTR_ERRM |
1818:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_CNTR_SOFM | USB_CNTR_ESOFM |
1819:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****                    USB_CNTR_RESETM;
1820:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1821:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Clear interrupt mask */
1822:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR &= ~winterruptmask;
 103                            .loc 1 1822 3 view .LVU18
 104                            .loc 1 1822 14 is_stmt 0 view .LVU19
 105 0000 B0F84030              ldrh    r3, [r0, #64]
 106 0004 23F47C53              bic     r3, r3, #16128
 107 0008 5B04                  lsls    r3, r3, #17
 108 000a 5B0C                  lsrs    r3, r3, #17
 109 000c A0F84030              strh    r3, [r0, #64]   @ movhi
1823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1824:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 110                            .loc 1 1824 3 is_stmt 1 view .LVU20
1825:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 111                            .loc 1 1825 1 is_stmt 0 view .LVU21
 112 0010 0020                  movs    r0, #0
 113                    .LVL5:
 114                            .loc 1 1825 1 view .LVU22
 115 0012 7047                  bx      lr
 116                            .cfi_endproc
 117                    .LFE67:
 119                            .section        .text.USB_SetCurrentMode,"ax",%progbits
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 35


 120                            .align  1
 121                            .global USB_SetCurrentMode
 122                            .syntax unified
 123                            .thumb
 124                            .thumb_func
 125                            .fpu softvfp
 127                    USB_SetCurrentMode:
 128                    .LVL6:
 129                    .LFB68:
1826:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1827:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1828:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_SetCurrentMode : Set functional mode
1829:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1830:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  mode :  current core mode
1831:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be one of the these values:
1832:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *            @arg USB_DEVICE_MODE: Peripheral mode mode
1833:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1835:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_SetCurrentMode(USB_TypeDef *USBx, USB_ModeTypeDef mode)
1836:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 130                            .loc 1 1836 1 is_stmt 1 view -0
 131                            .cfi_startproc
 132                            @ args = 0, pretend = 0, frame = 0
 133                            @ frame_needed = 0, uses_anonymous_args = 0
 134                            @ link register save eliminated.
1837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
1838:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 135                            .loc 1 1838 3 view .LVU24
1839:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(mode);
 136                            .loc 1 1839 3 view .LVU25
1840:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1841:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
1842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
1843:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
1844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
1845:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 137                            .loc 1 1845 3 view .LVU26
1846:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 138                            .loc 1 1846 1 is_stmt 0 view .LVU27
 139 0000 0020                  movs    r0, #0
 140                    .LVL7:
 141                            .loc 1 1846 1 view .LVU28
 142 0002 7047                  bx      lr
 143                            .cfi_endproc
 144                    .LFE68:
 146                            .section        .text.USB_DevInit,"ax",%progbits
 147                            .align  1
 148                            .global USB_DevInit
 149                            .syntax unified
 150                            .thumb
 151                            .thumb_func
 152                            .fpu softvfp
 154                    USB_DevInit:
 155                    .LVL8:
 156                    .LFB69:
1847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1848:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 36


1849:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DevInit : Initializes the USB controller registers
1850:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         for device mode
1851:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  cfg  : pointer to a USB_CfgTypeDef structure that contains
1853:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         the configuration information for the specified USBx peripheral.
1854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1855:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1856:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DevInit(USB_TypeDef *USBx, USB_CfgTypeDef cfg)
1857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 157                            .loc 1 1857 1 is_stmt 1 view -0
 158                            .cfi_startproc
 159                            @ args = 36, pretend = 16, frame = 0
 160                            @ frame_needed = 0, uses_anonymous_args = 0
 161                            .loc 1 1857 1 is_stmt 0 view .LVU30
 162 0000 84B0                  sub     sp, sp, #16
 163                    .LCFI2:
 164                            .cfi_def_cfa_offset 16
 165 0002 38B5                  push    {r3, r4, r5, lr}
 166                    .LCFI3:
 167                            .cfi_def_cfa_offset 32
 168                            .cfi_offset 3, -32
 169                            .cfi_offset 4, -28
 170                            .cfi_offset 5, -24
 171                            .cfi_offset 14, -20
 172 0004 05AC                  add     r4, sp, #20
 173 0006 84E80E00              stm     r4, {r1, r2, r3}
1858:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
1859:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(cfg);
 174                            .loc 1 1859 3 is_stmt 1 view .LVU31
1860:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1861:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Init Device */
1862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /*CNTR_FRES = 1*/
1863:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR = USB_CNTR_FRES;
 175                            .loc 1 1863 3 view .LVU32
 176                            .loc 1 1863 14 is_stmt 0 view .LVU33
 177 000a 0123                  movs    r3, #1
 178 000c A0F84030              strh    r3, [r0, #64]   @ movhi
1864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1865:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /*CNTR_FRES = 0*/
1866:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR = 0;
 179                            .loc 1 1866 3 is_stmt 1 view .LVU34
 180                            .loc 1 1866 14 is_stmt 0 view .LVU35
 181 0010 0024                  movs    r4, #0
 182 0012 A0F84040              strh    r4, [r0, #64]   @ movhi
1867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1868:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /*Clear pending interrupts*/
1869:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->ISTR = 0;
 183                            .loc 1 1869 3 is_stmt 1 view .LVU36
 184                            .loc 1 1869 14 is_stmt 0 view .LVU37
 185 0016 A0F84440              strh    r4, [r0, #68]   @ movhi
1870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1871:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /*Set Btable Address*/
1872:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->BTABLE = BTABLE_ADDRESS;
 186                            .loc 1 1872 3 is_stmt 1 view .LVU38
 187                            .loc 1 1872 16 is_stmt 0 view .LVU39
 188 001a A0F85040              strh    r4, [r0, #80]   @ movhi
1873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 37


1874:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Enable USB Device Interrupt mask */
1875:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   (void)USB_EnableGlobalInt(USBx);
 189                            .loc 1 1875 3 is_stmt 1 view .LVU40
 190                            .loc 1 1875 9 is_stmt 0 view .LVU41
 191 001e FFF7FEFF              bl      USB_EnableGlobalInt
 192                    .LVL9:
1876:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1877:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 193                            .loc 1 1877 3 is_stmt 1 view .LVU42
1878:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 194                            .loc 1 1878 1 is_stmt 0 view .LVU43
 195 0022 2046                  mov     r0, r4
 196 0024 BDE83840              pop     {r3, r4, r5, lr}
 197                    .LCFI4:
 198                            .cfi_restore 14
 199                            .cfi_restore 5
 200                            .cfi_restore 4
 201                            .cfi_restore 3
 202                            .cfi_def_cfa_offset 16
 203 0028 04B0                  add     sp, sp, #16
 204                    .LCFI5:
 205                            .cfi_def_cfa_offset 0
 206 002a 7047                  bx      lr
 207                            .cfi_endproc
 208                    .LFE69:
 210                            .section        .text.USB_SetDevSpeed,"ax",%progbits
 211                            .align  1
 212                            .global USB_SetDevSpeed
 213                            .syntax unified
 214                            .thumb
 215                            .thumb_func
 216                            .fpu softvfp
 218                    USB_SetDevSpeed:
 219                    .LVL10:
 220                    .LFB70:
1879:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1880:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1881:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_SetDevSpeed :Initializes the device speed
1882:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         depending on the PHY type and the enumeration speed of the device.
1883:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
1884:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  speed  device speed
1885:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval  Hal status
1886:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1887:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_SetDevSpeed(USB_TypeDef *USBx, uint8_t speed)
1888:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 221                            .loc 1 1888 1 is_stmt 1 view -0
 222                            .cfi_startproc
 223                            @ args = 0, pretend = 0, frame = 0
 224                            @ frame_needed = 0, uses_anonymous_args = 0
 225                            @ link register save eliminated.
1889:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
1890:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 226                            .loc 1 1890 3 view .LVU45
1891:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(speed);
 227                            .loc 1 1891 3 view .LVU46
1892:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1893:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 38


1894:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
1895:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
1896:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
1897:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1898:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 228                            .loc 1 1898 3 view .LVU47
1899:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 229                            .loc 1 1899 1 is_stmt 0 view .LVU48
 230 0000 0020                  movs    r0, #0
 231                    .LVL11:
 232                            .loc 1 1899 1 view .LVU49
 233 0002 7047                  bx      lr
 234                            .cfi_endproc
 235                    .LFE70:
 237                            .section        .text.USB_FlushTxFifo,"ax",%progbits
 238                            .align  1
 239                            .global USB_FlushTxFifo
 240                            .syntax unified
 241                            .thumb
 242                            .thumb_func
 243                            .fpu softvfp
 245                    USB_FlushTxFifo:
 246                    .LVL12:
 247                    .LFB71:
1900:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1901:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1902:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_FlushTxFifo : Flush a Tx FIFO
1903:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1904:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  num : FIFO number
1905:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         This parameter can be a value from 1 to 15
1906:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             15 means Flush all Tx FIFOs
1907:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1908:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1909:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_FlushTxFifo(USB_TypeDef *USBx, uint32_t num)
1910:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 248                            .loc 1 1910 1 is_stmt 1 view -0
 249                            .cfi_startproc
 250                            @ args = 0, pretend = 0, frame = 0
 251                            @ frame_needed = 0, uses_anonymous_args = 0
 252                            @ link register save eliminated.
1911:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
1912:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 253                            .loc 1 1912 3 view .LVU51
1913:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(num);
 254                            .loc 1 1913 3 view .LVU52
1914:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1915:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
1916:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
1917:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
1918:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
1919:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1920:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 255                            .loc 1 1920 3 view .LVU53
1921:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 256                            .loc 1 1921 1 is_stmt 0 view .LVU54
 257 0000 0020                  movs    r0, #0
 258                    .LVL13:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 39


 259                            .loc 1 1921 1 view .LVU55
 260 0002 7047                  bx      lr
 261                            .cfi_endproc
 262                    .LFE71:
 264                            .section        .text.USB_FlushRxFifo,"ax",%progbits
 265                            .align  1
 266                            .global USB_FlushRxFifo
 267                            .syntax unified
 268                            .thumb
 269                            .thumb_func
 270                            .fpu softvfp
 272                    USB_FlushRxFifo:
 273                    .LVL14:
 274                    .LFB72:
1922:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1923:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1924:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_FlushRxFifo : Flush Rx FIFO
1925:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1926:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1927:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1928:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_FlushRxFifo(USB_TypeDef *USBx)
1929:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 275                            .loc 1 1929 1 is_stmt 1 view -0
 276                            .cfi_startproc
 277                            @ args = 0, pretend = 0, frame = 0
 278                            @ frame_needed = 0, uses_anonymous_args = 0
 279                            @ link register save eliminated.
1930:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
1931:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 280                            .loc 1 1931 3 view .LVU57
1932:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1933:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
1934:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
1935:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
1936:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
1937:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1938:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 281                            .loc 1 1938 3 view .LVU58
1939:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 282                            .loc 1 1939 1 is_stmt 0 view .LVU59
 283 0000 0020                  movs    r0, #0
 284                    .LVL15:
 285                            .loc 1 1939 1 view .LVU60
 286 0002 7047                  bx      lr
 287                            .cfi_endproc
 288                    .LFE72:
 290                            .section        .text.USB_ActivateEndpoint,"ax",%progbits
 291                            .align  1
 292                            .global USB_ActivateEndpoint
 293                            .syntax unified
 294                            .thumb
 295                            .thumb_func
 296                            .fpu softvfp
 298                    USB_ActivateEndpoint:
 299                    .LVL16:
 300                    .LFB73:
1940:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 40


1941:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
1942:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Activate and configure an endpoint
1943:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
1944:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep: pointer to endpoint structure
1945:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
1946:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
1947:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_ActivateEndpoint(USB_TypeDef *USBx, USB_EPTypeDef *ep)
1948:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 301                            .loc 1 1948 1 is_stmt 1 view -0
 302                            .cfi_startproc
 303                            @ args = 0, pretend = 0, frame = 0
 304                            @ frame_needed = 0, uses_anonymous_args = 0
 305                            @ link register save eliminated.
 306                            .loc 1 1948 1 is_stmt 0 view .LVU62
 307 0000 30B4                  push    {r4, r5}
 308                    .LCFI6:
 309                            .cfi_def_cfa_offset 8
 310                            .cfi_offset 4, -8
 311                            .cfi_offset 5, -4
 312 0002 0346                  mov     r3, r0
1949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   HAL_StatusTypeDef ret = HAL_OK;
 313                            .loc 1 1949 3 is_stmt 1 view .LVU63
 314                    .LVL17:
1950:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t wEpRegVal;
 315                            .loc 1 1950 3 view .LVU64
1951:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1952:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   wEpRegVal = PCD_GET_ENDPOINT(USBx, ep->num) & USB_EP_T_MASK;
 316                            .loc 1 1952 3 view .LVU65
 317                            .loc 1 1952 15 is_stmt 0 view .LVU66
 318 0004 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 319 0006 30F82420              ldrh    r2, [r0, r4, lsl #2]
 320 000a 92B2                  uxth    r2, r2
 321                            .loc 1 1952 13 view .LVU67
 322 000c 22F4EC42              bic     r2, r2, #30208
 323 0010 22F07002              bic     r2, r2, #112
 324 0014 92B2                  uxth    r2, r2
 325                    .LVL18:
1953:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1954:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* initialize Endpoint */
1955:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   switch (ep->type)
 326                            .loc 1 1955 3 is_stmt 1 view .LVU68
 327                            .loc 1 1955 13 is_stmt 0 view .LVU69
 328 0016 C878                  ldrb    r0, [r1, #3]    @ zero_extendqisi2
 329                    .LVL19:
 330                            .loc 1 1955 3 view .LVU70
 331 0018 0328                  cmp     r0, #3
 332 001a 5AD8                  bhi     .L36
 333 001c DFE800F0              tbb     [pc, r0]
 334                    .L14:
 335 0020 4D                    .byte   (.L17-.L14)/2
 336 0021 55                    .byte   (.L16-.L14)/2
 337 0022 02                    .byte   (.L15-.L14)/2
 338 0023 51                    .byte   (.L13-.L14)/2
 339                            .p2align 1
 340                    .L15:
1949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t wEpRegVal;
 341                            .loc 1 1949 21 view .LVU71
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 41


 342 0024 0020                  movs    r0, #0
 343                    .L12:
 344                    .LVL20:
1956:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1957:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_CTRL:
1958:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       wEpRegVal |= USB_EP_CONTROL;
1959:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1960:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1961:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_BULK:
1962:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       wEpRegVal |= USB_EP_BULK;
1963:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1964:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1965:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_INTR:
1966:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       wEpRegVal |= USB_EP_INTERRUPT;
1967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1968:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1969:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     case EP_TYPE_ISOC:
1970:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       wEpRegVal |= USB_EP_ISOCHRONOUS;
1971:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1972:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1973:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     default:
1974:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ret = HAL_ERROR;
1975:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
1976:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
1977:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1978:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   PCD_SET_ENDPOINT(USBx, ep->num, wEpRegVal | USB_EP_CTR_RX | USB_EP_CTR_TX);
 345                            .loc 1 1978 3 is_stmt 1 view .LVU72
 346 0026 48F28005              movw    r5, #32896
 347 002a 2A43                  orrs    r2, r2, r5
 348                    .LVL21:
 349                            .loc 1 1978 3 is_stmt 0 view .LVU73
 350 002c 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
1979:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1980:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   PCD_SET_EP_ADDRESS(USBx, ep->num, ep->num);
 351                            .loc 1 1980 3 is_stmt 1 view .LVU74
 352                    .LBB2:
 353                            .loc 1 1980 3 view .LVU75
 354                            .loc 1 1980 3 view .LVU76
 355 0030 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 356 0032 33F82420              ldrh    r2, [r3, r4, lsl #2]
 357 0036 92B2                  uxth    r2, r2
 358 0038 22F4E042              bic     r2, r2, #28672
 359 003c 22F07002              bic     r2, r2, #112
 360 0040 2243                  orrs    r2, r2, r4
 361                    .LVL22:
 362                            .loc 1 1980 3 view .LVU77
 363 0042 2A43                  orrs    r2, r2, r5
 364                    .LVL23:
 365                            .loc 1 1980 3 is_stmt 0 view .LVU78
 366 0044 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 367                    .LBE2:
1981:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1982:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->doublebuffer == 0U)
 368                            .loc 1 1982 3 is_stmt 1 view .LVU79
 369                            .loc 1 1982 9 is_stmt 0 view .LVU80
 370 0048 0A7B                  ldrb    r2, [r1, #12]   @ zero_extendqisi2
 371                            .loc 1 1982 6 view .LVU81
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 42


 372 004a 002A                  cmp     r2, #0
 373 004c 40F0B180              bne     .L18
1983:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
1984:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->is_in != 0U)
 374                            .loc 1 1984 5 is_stmt 1 view .LVU82
 375                            .loc 1 1984 11 is_stmt 0 view .LVU83
 376 0050 4A78                  ldrb    r2, [r1, #1]    @ zero_extendqisi2
 377                            .loc 1 1984 8 view .LVU84
 378 0052 002A                  cmp     r2, #0
 379 0054 4ED0                  beq     .L19
1985:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
1986:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /*Set the endpoint Transmit buffer address */
1987:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_ADDRESS(USBx, ep->num, ep->pmaadress);
 380                            .loc 1 1987 7 is_stmt 1 view .LVU85
 381                    .LBB3:
 382                            .loc 1 1987 7 view .LVU86
 383                            .loc 1 1987 7 view .LVU87
 384                    .LVL24:
 385                            .loc 1 1987 7 view .LVU88
 386 0056 B3F85020              ldrh    r2, [r3, #80]
 387 005a 1A44                  add     r2, r2, r3
 388                    .LVL25:
 389                            .loc 1 1987 7 view .LVU89
 390 005c 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 391 005e 02EB0412              add     r2, r2, r4, lsl #4
 392                    .LVL26:
 393                            .loc 1 1987 7 view .LVU90
 394 0062 CC88                  ldrh    r4, [r1, #6]
 395 0064 6408                  lsrs    r4, r4, #1
 396 0066 6400                  lsls    r4, r4, #1
 397 0068 A2F80044              strh    r4, [r2, #1024] @ movhi
 398                    .LBE3:
1988:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 399                            .loc 1 1988 7 view .LVU91
 400                    .LBB4:
 401                            .loc 1 1988 7 view .LVU92
 402                            .loc 1 1988 7 view .LVU93
 403 006c 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 404 006e 33F82420              ldrh    r2, [r3, r4, lsl #2]
 405                    .LVL27:
 406                            .loc 1 1988 7 view .LVU94
 407 0072 12F0400F              tst     r2, #64
 408 0076 0CD0                  beq     .L20
 409                            .loc 1 1988 7 discriminator 1 view .LVU95
 410                    .LBB5:
 411                            .loc 1 1988 7 discriminator 1 view .LVU96
 412                            .loc 1 1988 7 discriminator 1 view .LVU97
 413 0078 33F82420              ldrh    r2, [r3, r4, lsl #2]
 414                    .LVL28:
 415                            .loc 1 1988 7 is_stmt 0 discriminator 1 view .LVU98
 416 007c 92B2                  uxth    r2, r2
 417 007e 22F4E042              bic     r2, r2, #28672
 418 0082 22F07002              bic     r2, r2, #112
 419                    .LVL29:
 420                            .loc 1 1988 7 is_stmt 1 discriminator 1 view .LVU99
 421 0086 42F40042              orr     r2, r2, #32768
 422                    .LVL30:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 43


 423                            .loc 1 1988 7 is_stmt 0 discriminator 1 view .LVU100
 424 008a 42F0C002              orr     r2, r2, #192
 425 008e 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 426                    .L20:
 427                            .loc 1 1988 7 discriminator 1 view .LVU101
 428                    .LBE5:
 429                    .LBE4:
1989:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
1990:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (ep->type != EP_TYPE_ISOC)
 430                            .loc 1 1990 7 is_stmt 1 view .LVU102
 431                            .loc 1 1990 13 is_stmt 0 view .LVU103
 432 0092 CA78                  ldrb    r2, [r1, #3]    @ zero_extendqisi2
 433                            .loc 1 1990 10 view .LVU104
 434 0094 012A                  cmp     r2, #1
 435 0096 1ED0                  beq     .L21
1991:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1992:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Configure NAK status for the Endpoint */
1993:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK);
 436                            .loc 1 1993 9 is_stmt 1 view .LVU105
 437                    .LBB6:
 438                            .loc 1 1993 9 view .LVU106
 439                            .loc 1 1993 9 view .LVU107
 440 0098 0978                  ldrb    r1, [r1]        @ zero_extendqisi2
 441                    .LVL31:
 442                            .loc 1 1993 9 is_stmt 0 view .LVU108
 443 009a 33F82120              ldrh    r2, [r3, r1, lsl #2]
 444 009e 92B2                  uxth    r2, r2
 445 00a0 22F4E042              bic     r2, r2, #28672
 446 00a4 22F04002              bic     r2, r2, #64
 447                    .LVL32:
 448                            .loc 1 1993 9 is_stmt 1 view .LVU109
 449                            .loc 1 1993 9 view .LVU110
 450                            .loc 1 1993 9 view .LVU111
 451 00a8 82F02002              eor     r2, r2, #32
 452                    .LVL33:
 453                            .loc 1 1993 9 view .LVU112
 454 00ac 42F40042              orr     r2, r2, #32768
 455                    .LVL34:
 456                            .loc 1 1993 9 is_stmt 0 view .LVU113
 457 00b0 42F08002              orr     r2, r2, #128
 458 00b4 23F82120              strh    r2, [r3, r1, lsl #2]    @ movhi
 459                    .LBE6:
 460 00b8 60E0                  b       .L22
 461                    .LVL35:
 462                    .L17:
1958:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 463                            .loc 1 1958 7 is_stmt 1 view .LVU114
1958:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 464                            .loc 1 1958 17 is_stmt 0 view .LVU115
 465 00ba 42F40072              orr     r2, r2, #512
 466                    .LVL36:
1959:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 467                            .loc 1 1959 7 is_stmt 1 view .LVU116
1949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t wEpRegVal;
 468                            .loc 1 1949 21 is_stmt 0 view .LVU117
 469 00be 0020                  movs    r0, #0
1959:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 44


 470                            .loc 1 1959 7 view .LVU118
 471 00c0 B1E7                  b       .L12
 472                    .L13:
1966:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 473                            .loc 1 1966 7 is_stmt 1 view .LVU119
1966:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 474                            .loc 1 1966 17 is_stmt 0 view .LVU120
 475 00c2 42F4C062              orr     r2, r2, #1536
 476                    .LVL37:
1967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 477                            .loc 1 1967 7 is_stmt 1 view .LVU121
1949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t wEpRegVal;
 478                            .loc 1 1949 21 is_stmt 0 view .LVU122
 479 00c6 0020                  movs    r0, #0
1967:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 480                            .loc 1 1967 7 view .LVU123
 481 00c8 ADE7                  b       .L12
 482                    .L16:
1970:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 483                            .loc 1 1970 7 is_stmt 1 view .LVU124
1970:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 484                            .loc 1 1970 17 is_stmt 0 view .LVU125
 485 00ca 42F48062              orr     r2, r2, #1024
 486                    .LVL38:
1971:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 487                            .loc 1 1971 7 is_stmt 1 view .LVU126
1949:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t wEpRegVal;
 488                            .loc 1 1949 21 is_stmt 0 view .LVU127
 489 00ce 0020                  movs    r0, #0
1971:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 490                            .loc 1 1971 7 view .LVU128
 491 00d0 A9E7                  b       .L12
 492                    .L36:
1974:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       break;
 493                            .loc 1 1974 11 view .LVU129
 494 00d2 0120                  movs    r0, #1
 495 00d4 A7E7                  b       .L12
 496                    .LVL39:
 497                    .L21:
1994:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
1995:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
1996:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
1997:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Configure TX Endpoint to disabled state */
1998:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 498                            .loc 1 1998 9 is_stmt 1 view .LVU130
 499                    .LBB7:
 500                            .loc 1 1998 9 view .LVU131
 501                            .loc 1 1998 9 view .LVU132
 502 00d6 0978                  ldrb    r1, [r1]        @ zero_extendqisi2
 503                    .LVL40:
 504                            .loc 1 1998 9 is_stmt 0 view .LVU133
 505 00d8 33F82120              ldrh    r2, [r3, r1, lsl #2]
 506 00dc 92B2                  uxth    r2, r2
 507 00de 22F4E042              bic     r2, r2, #28672
 508 00e2 22F04002              bic     r2, r2, #64
 509                    .LVL41:
 510                            .loc 1 1998 9 is_stmt 1 view .LVU134
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 45


 511                            .loc 1 1998 9 view .LVU135
 512                            .loc 1 1998 9 view .LVU136
 513 00e6 42F40042              orr     r2, r2, #32768
 514                    .LVL42:
 515                            .loc 1 1998 9 is_stmt 0 view .LVU137
 516 00ea 42F08002              orr     r2, r2, #128
 517 00ee 23F82120              strh    r2, [r3, r1, lsl #2]    @ movhi
 518 00f2 43E0                  b       .L22
 519                    .LVL43:
 520                    .L19:
 521                            .loc 1 1998 9 view .LVU138
 522                    .LBE7:
1999:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
2000:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2001:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2002:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2003:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /*Set the endpoint Receive buffer address */
2004:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_ADDRESS(USBx, ep->num, ep->pmaadress);
 523                            .loc 1 2004 7 is_stmt 1 view .LVU139
 524                    .LBB8:
 525                            .loc 1 2004 7 view .LVU140
 526                            .loc 1 2004 7 view .LVU141
 527                            .loc 1 2004 7 view .LVU142
 528 00f4 B3F85020              ldrh    r2, [r3, #80]
 529 00f8 1A44                  add     r2, r2, r3
 530                    .LVL44:
 531                            .loc 1 2004 7 view .LVU143
 532 00fa 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 533 00fc 02EB0412              add     r2, r2, r4, lsl #4
 534                    .LVL45:
 535                            .loc 1 2004 7 view .LVU144
 536 0100 CC88                  ldrh    r4, [r1, #6]
 537 0102 6408                  lsrs    r4, r4, #1
 538 0104 6400                  lsls    r4, r4, #1
 539 0106 A2F80844              strh    r4, [r2, #1032] @ movhi
 540                    .LBE8:
2005:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /*Set the endpoint Receive buffer counter*/
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_CNT(USBx, ep->num, ep->maxpacket);
 541                            .loc 1 2006 7 view .LVU145
 542                    .LBB9:
 543                            .loc 1 2006 7 view .LVU146
 544                    .LVL46:
 545                            .loc 1 2006 7 view .LVU147
 546                            .loc 1 2006 7 view .LVU148
 547 010a B3F85020              ldrh    r2, [r3, #80]
 548                    .LVL47:
 549                            .loc 1 2006 7 is_stmt 0 view .LVU149
 550 010e 1A44                  add     r2, r2, r3
 551                    .LVL48:
 552                            .loc 1 2006 7 is_stmt 1 view .LVU150
 553 0110 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 554 0112 02EB0412              add     r2, r2, r4, lsl #4
 555                    .LVL49:
 556                            .loc 1 2006 7 view .LVU151
 557                    .LBB10:
 558                            .loc 1 2006 7 view .LVU152
 559                            .loc 1 2006 7 view .LVU153
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 46


 560 0116 0C69                  ldr     r4, [r1, #16]
 561 0118 94BB                  cbnz    r4, .L23
 562                            .loc 1 2006 7 discriminator 1 view .LVU154
 563 011a B2F80C44              ldrh    r4, [r2, #1036]
 564 011e A4B2                  uxth    r4, r4
 565 0120 24F4F844              bic     r4, r4, #31744
 566 0124 A4B2                  uxth    r4, r4
 567 0126 A2F80C44              strh    r4, [r2, #1036] @ movhi
 568                            .loc 1 2006 7 discriminator 1 view .LVU155
 569 012a B2F80C44              ldrh    r4, [r2, #1036]
 570 012e 44F40044              orr     r4, r4, #32768
 571 0132 A2F80C44              strh    r4, [r2, #1036] @ movhi
 572                    .L24:
 573                    .LBE10:
 574                    .LBE9:
2007:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 575                            .loc 1 2007 7 view .LVU156
 576                    .LBB12:
 577                            .loc 1 2007 7 view .LVU157
 578                            .loc 1 2007 7 view .LVU158
 579 0136 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 580 0138 33F82420              ldrh    r2, [r3, r4, lsl #2]
 581                    .LVL50:
 582                            .loc 1 2007 7 view .LVU159
 583 013c 12F4804F              tst     r2, #16384
 584 0140 0CD0                  beq     .L28
 585                            .loc 1 2007 7 discriminator 1 view .LVU160
 586                    .LBB13:
 587                            .loc 1 2007 7 discriminator 1 view .LVU161
 588                            .loc 1 2007 7 discriminator 1 view .LVU162
 589 0142 33F82420              ldrh    r2, [r3, r4, lsl #2]
 590                    .LVL51:
 591                            .loc 1 2007 7 is_stmt 0 discriminator 1 view .LVU163
 592 0146 92B2                  uxth    r2, r2
 593 0148 22F4E042              bic     r2, r2, #28672
 594 014c 22F07002              bic     r2, r2, #112
 595                    .LVL52:
 596                            .loc 1 2007 7 is_stmt 1 discriminator 1 view .LVU164
 597 0150 42F44042              orr     r2, r2, #49152
 598                    .LVL53:
 599                            .loc 1 2007 7 is_stmt 0 discriminator 1 view .LVU165
 600 0154 42F08002              orr     r2, r2, #128
 601 0158 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 602                    .L28:
 603                            .loc 1 2007 7 discriminator 1 view .LVU166
 604                    .LBE13:
 605                    .LBE12:
2008:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure VALID status for the Endpoint*/
2009:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID);
 606                            .loc 1 2009 7 is_stmt 1 view .LVU167
 607                    .LBB14:
 608                            .loc 1 2009 7 view .LVU168
 609                            .loc 1 2009 7 view .LVU169
 610 015c 0978                  ldrb    r1, [r1]        @ zero_extendqisi2
 611                    .LVL54:
 612                            .loc 1 2009 7 is_stmt 0 view .LVU170
 613 015e 33F82120              ldrh    r2, [r3, r1, lsl #2]
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 47


 614 0162 92B2                  uxth    r2, r2
 615 0164 22F48042              bic     r2, r2, #16384
 616 0168 22F07002              bic     r2, r2, #112
 617                    .LVL55:
 618                            .loc 1 2009 7 is_stmt 1 view .LVU171
 619                            .loc 1 2009 7 view .LVU172
 620                            .loc 1 2009 7 view .LVU173
 621                            .loc 1 2009 7 view .LVU174
 622 016c 82F44052              eor     r2, r2, #12288
 623                    .LVL56:
 624                            .loc 1 2009 7 view .LVU175
 625 0170 42F40042              orr     r2, r2, #32768
 626                    .LVL57:
 627                            .loc 1 2009 7 is_stmt 0 view .LVU176
 628 0174 42F08002              orr     r2, r2, #128
 629 0178 23F82120              strh    r2, [r3, r1, lsl #2]    @ movhi
 630                    .L22:
 631                            .loc 1 2009 7 view .LVU177
 632                    .LBE14:
2010:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2011:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2012:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /*Double Buffer*/
2013:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
2014:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2015:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set the endpoint as double buffered */
2016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     PCD_SET_EP_DBUF(USBx, ep->num);
2017:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set buffer address for double buffered mode */
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     PCD_SET_EP_DBUF_ADDR(USBx, ep->num, ep->pmaaddr0, ep->pmaaddr1);
2019:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2020:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->is_in == 0U)
2021:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2022:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Clear the data toggle bits for the endpoint IN/OUT */
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
2025:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2026:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Reset value of the data toggle bits for the endpoint out */
2027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_TX_DTOG(USBx, ep->num);
2028:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID);
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
2031:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2032:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2033:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2034:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Clear the data toggle bits for the endpoint IN/OUT */
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
2037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
2038:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2039:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (ep->type != EP_TYPE_ISOC)
2040:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
2041:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Configure NAK status for the Endpoint */
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK);
2043:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
2044:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
2045:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
2046:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Configure TX Endpoint to disabled state */
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 48


2048:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
2049:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
2051:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2052:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2053:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2054:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ret;
 633                            .loc 1 2054 3 is_stmt 1 view .LVU178
2055:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 634                            .loc 1 2055 1 is_stmt 0 view .LVU179
 635 017c 30BC                  pop     {r4, r5}
 636                    .LCFI7:
 637                            .cfi_remember_state
 638                            .cfi_restore 5
 639                            .cfi_restore 4
 640                            .cfi_def_cfa_offset 0
 641 017e 7047                  bx      lr
 642                    .LVL58:
 643                    .L23:
 644                    .LCFI8:
 645                            .cfi_restore_state
 646                    .LBB15:
 647                    .LBB11:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 648                            .loc 1 2006 7 is_stmt 1 discriminator 2 view .LVU180
 649 0180 3E2C                  cmp     r4, #62
 650 0182 09D8                  bhi     .L25
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 651                            .loc 1 2006 7 discriminator 3 view .LVU181
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 652                            .loc 1 2006 7 discriminator 3 view .LVU182
 653 0184 6508                  lsrs    r5, r4, #1
 654                    .LVL59:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 655                            .loc 1 2006 7 discriminator 3 view .LVU183
 656 0186 14F0010F              tst     r4, #1
 657 018a 00D0                  beq     .L26
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 658                            .loc 1 2006 7 discriminator 5 view .LVU184
 659 018c 0135                  adds    r5, r5, #1
 660                    .LVL60:
 661                    .L26:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 662                            .loc 1 2006 7 discriminator 7 view .LVU185
 663 018e AD02                  lsls    r5, r5, #10
 664                    .LVL61:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 665                            .loc 1 2006 7 is_stmt 0 discriminator 7 view .LVU186
 666 0190 ADB2                  uxth    r5, r5
 667 0192 A2F80C54              strh    r5, [r2, #1036] @ movhi
 668 0196 CEE7                  b       .L24
 669                    .L25:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 670                            .loc 1 2006 7 is_stmt 1 discriminator 4 view .LVU187
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 671                            .loc 1 2006 7 discriminator 4 view .LVU188
 672 0198 6509                  lsrs    r5, r4, #5
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 49


 673                    .LVL62:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 674                            .loc 1 2006 7 discriminator 4 view .LVU189
 675 019a 14F01F0F              tst     r4, #31
 676 019e 00D1                  bne     .L27
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 677                            .loc 1 2006 7 discriminator 8 view .LVU190
 678 01a0 013D                  subs    r5, r5, #1
 679                    .LVL63:
 680                    .L27:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 681                            .loc 1 2006 7 discriminator 10 view .LVU191
 682 01a2 6FEAC564              mvn     r4, r5, lsl #27
 683 01a6 6FEA5444              mvn     r4, r4, lsr #17
 684 01aa A4B2                  uxth    r4, r4
 685 01ac A2F80C44              strh    r4, [r2, #1036] @ movhi
 686 01b0 C1E7                  b       .L24
 687                    .LVL64:
 688                    .L18:
2006:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 689                            .loc 1 2006 7 is_stmt 0 discriminator 10 view .LVU192
 690                    .LBE11:
 691                    .LBE15:
2016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set buffer address for double buffered mode */
 692                            .loc 1 2016 5 is_stmt 1 view .LVU193
 693                    .LBB16:
2016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set buffer address for double buffered mode */
 694                            .loc 1 2016 5 view .LVU194
2016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set buffer address for double buffered mode */
 695                            .loc 1 2016 5 view .LVU195
 696 01b2 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 697 01b4 33F82420              ldrh    r2, [r3, r4, lsl #2]
 698 01b8 92B2                  uxth    r2, r2
 699 01ba 22F4E042              bic     r2, r2, #28672
 700 01be 22F07002              bic     r2, r2, #112
 701                    .LVL65:
2016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set buffer address for double buffered mode */
 702                            .loc 1 2016 5 view .LVU196
 703 01c2 42F40142              orr     r2, r2, #33024
 704                    .LVL66:
2016:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Set buffer address for double buffered mode */
 705                            .loc 1 2016 5 is_stmt 0 view .LVU197
 706 01c6 42F08002              orr     r2, r2, #128
 707 01ca 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 708                    .LBE16:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 709                            .loc 1 2018 5 is_stmt 1 view .LVU198
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 710                            .loc 1 2018 5 view .LVU199
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 711                            .loc 1 2018 5 view .LVU200
 712                    .LBB17:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 713                            .loc 1 2018 5 view .LVU201
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 714                            .loc 1 2018 5 view .LVU202
 715                    .LVL67:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 50


2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 716                            .loc 1 2018 5 view .LVU203
 717 01ce B3F85020              ldrh    r2, [r3, #80]
 718 01d2 1A44                  add     r2, r2, r3
 719                    .LVL68:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 720                            .loc 1 2018 5 view .LVU204
 721 01d4 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 722 01d6 02EB0412              add     r2, r2, r4, lsl #4
 723                    .LVL69:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 724                            .loc 1 2018 5 view .LVU205
 725 01da 0C89                  ldrh    r4, [r1, #8]
 726 01dc 6408                  lsrs    r4, r4, #1
 727 01de 6400                  lsls    r4, r4, #1
 728 01e0 A2F80044              strh    r4, [r2, #1024] @ movhi
 729                    .LBE17:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 730                            .loc 1 2018 5 view .LVU206
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 731                            .loc 1 2018 5 view .LVU207
 732                    .LBB18:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 733                            .loc 1 2018 5 view .LVU208
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 734                            .loc 1 2018 5 view .LVU209
 735                    .LVL70:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 736                            .loc 1 2018 5 view .LVU210
 737 01e4 B3F85020              ldrh    r2, [r3, #80]
 738                    .LVL71:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 739                            .loc 1 2018 5 is_stmt 0 view .LVU211
 740 01e8 1A44                  add     r2, r2, r3
 741                    .LVL72:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 742                            .loc 1 2018 5 is_stmt 1 view .LVU212
 743 01ea 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 744 01ec 02EB0412              add     r2, r2, r4, lsl #4
 745                    .LVL73:
2018:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 746                            .loc 1 2018 5 view .LVU213
 747 01f0 4C89                  ldrh    r4, [r1, #10]
 748 01f2 6408                  lsrs    r4, r4, #1
 749 01f4 6400                  lsls    r4, r4, #1
 750 01f6 A2F80844              strh    r4, [r2, #1032] @ movhi
 751                    .LBE18:
2020:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 752                            .loc 1 2020 5 view .LVU214
2020:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 753                            .loc 1 2020 11 is_stmt 0 view .LVU215
 754 01fa 4A78                  ldrb    r2, [r1, #1]    @ zero_extendqisi2
 755                    .LVL74:
2020:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 756                            .loc 1 2020 8 view .LVU216
 757 01fc 002A                  cmp     r2, #0
 758 01fe 4ED1                  bne     .L29
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 51


2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 759                            .loc 1 2023 7 is_stmt 1 view .LVU217
 760                    .LBB19:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 761                            .loc 1 2023 7 view .LVU218
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 762                            .loc 1 2023 7 view .LVU219
 763 0200 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 764 0202 33F82420              ldrh    r2, [r3, r4, lsl #2]
 765                    .LVL75:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 766                            .loc 1 2023 7 view .LVU220
 767 0206 12F4804F              tst     r2, #16384
 768 020a 0CD0                  beq     .L30
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 769                            .loc 1 2023 7 discriminator 1 view .LVU221
 770                    .LBB20:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 771                            .loc 1 2023 7 discriminator 1 view .LVU222
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 772                            .loc 1 2023 7 discriminator 1 view .LVU223
 773 020c 33F82420              ldrh    r2, [r3, r4, lsl #2]
 774                    .LVL76:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 775                            .loc 1 2023 7 is_stmt 0 discriminator 1 view .LVU224
 776 0210 92B2                  uxth    r2, r2
 777 0212 22F4E042              bic     r2, r2, #28672
 778 0216 22F07002              bic     r2, r2, #112
 779                    .LVL77:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 780                            .loc 1 2023 7 is_stmt 1 discriminator 1 view .LVU225
 781 021a 42F44042              orr     r2, r2, #49152
 782                    .LVL78:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 783                            .loc 1 2023 7 is_stmt 0 discriminator 1 view .LVU226
 784 021e 42F08002              orr     r2, r2, #128
 785 0222 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 786                    .L30:
2023:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 787                            .loc 1 2023 7 discriminator 1 view .LVU227
 788                    .LBE20:
 789                    .LBE19:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 790                            .loc 1 2024 7 is_stmt 1 view .LVU228
 791                    .LBB21:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 792                            .loc 1 2024 7 view .LVU229
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 793                            .loc 1 2024 7 view .LVU230
 794 0226 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 795 0228 33F82420              ldrh    r2, [r3, r4, lsl #2]
 796                    .LVL79:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 797                            .loc 1 2024 7 view .LVU231
 798 022c 12F0400F              tst     r2, #64
 799 0230 0CD0                  beq     .L31
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 52


 800                            .loc 1 2024 7 discriminator 1 view .LVU232
 801                    .LBB22:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 802                            .loc 1 2024 7 discriminator 1 view .LVU233
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 803                            .loc 1 2024 7 discriminator 1 view .LVU234
 804 0232 33F82420              ldrh    r2, [r3, r4, lsl #2]
 805                    .LVL80:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 806                            .loc 1 2024 7 is_stmt 0 discriminator 1 view .LVU235
 807 0236 92B2                  uxth    r2, r2
 808 0238 22F4E042              bic     r2, r2, #28672
 809 023c 22F07002              bic     r2, r2, #112
 810                    .LVL81:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 811                            .loc 1 2024 7 is_stmt 1 discriminator 1 view .LVU236
 812 0240 42F40042              orr     r2, r2, #32768
 813                    .LVL82:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 814                            .loc 1 2024 7 is_stmt 0 discriminator 1 view .LVU237
 815 0244 42F0C002              orr     r2, r2, #192
 816 0248 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 817                    .L31:
2024:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 818                            .loc 1 2024 7 discriminator 1 view .LVU238
 819                    .LBE22:
 820                    .LBE21:
2027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 821                            .loc 1 2027 7 is_stmt 1 view .LVU239
 822                    .LBB23:
2027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 823                            .loc 1 2027 7 view .LVU240
2027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 824                            .loc 1 2027 7 view .LVU241
 825 024c 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 826 024e 33F82420              ldrh    r2, [r3, r4, lsl #2]
 827 0252 92B2                  uxth    r2, r2
 828 0254 22F4E042              bic     r2, r2, #28672
 829 0258 22F07002              bic     r2, r2, #112
 830                    .LVL83:
2027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 831                            .loc 1 2027 7 view .LVU242
 832 025c 42F40042              orr     r2, r2, #32768
 833                    .LVL84:
2027:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 834                            .loc 1 2027 7 is_stmt 0 view .LVU243
 835 0260 42F0C002              orr     r2, r2, #192
 836 0264 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 837                    .LBE23:
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 838                            .loc 1 2029 7 is_stmt 1 view .LVU244
 839                    .LBB24:
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 840                            .loc 1 2029 7 view .LVU245
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 841                            .loc 1 2029 7 view .LVU246
 842 0268 0D78                  ldrb    r5, [r1]        @ zero_extendqisi2
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 53


 843 026a 33F82520              ldrh    r2, [r3, r5, lsl #2]
 844 026e 92B2                  uxth    r2, r2
 845 0270 22F48042              bic     r2, r2, #16384
 846 0274 22F07002              bic     r2, r2, #112
 847                    .LVL85:
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 848                            .loc 1 2029 7 view .LVU247
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 849                            .loc 1 2029 7 view .LVU248
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 850                            .loc 1 2029 7 view .LVU249
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 851                            .loc 1 2029 7 view .LVU250
 852 0278 82F44052              eor     r2, r2, #12288
 853                    .LVL86:
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 854                            .loc 1 2029 7 view .LVU251
 855 027c 48F28004              movw    r4, #32896
 856 0280 2243                  orrs    r2, r2, r4
 857                    .LVL87:
2029:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 858                            .loc 1 2029 7 is_stmt 0 view .LVU252
 859 0282 23F82520              strh    r2, [r3, r5, lsl #2]    @ movhi
 860                    .LBE24:
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 861                            .loc 1 2030 7 is_stmt 1 view .LVU253
 862                    .LBB25:
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 863                            .loc 1 2030 7 view .LVU254
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 864                            .loc 1 2030 7 view .LVU255
 865 0286 0978                  ldrb    r1, [r1]        @ zero_extendqisi2
 866                    .LVL88:
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 867                            .loc 1 2030 7 is_stmt 0 view .LVU256
 868 0288 33F82120              ldrh    r2, [r3, r1, lsl #2]
 869 028c 92B2                  uxth    r2, r2
 870 028e 22F4E042              bic     r2, r2, #28672
 871 0292 22F04002              bic     r2, r2, #64
 872                    .LVL89:
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 873                            .loc 1 2030 7 is_stmt 1 view .LVU257
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 874                            .loc 1 2030 7 view .LVU258
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 875                            .loc 1 2030 7 view .LVU259
 876 0296 2243                  orrs    r2, r2, r4
 877                    .LVL90:
2030:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 878                            .loc 1 2030 7 is_stmt 0 view .LVU260
 879 0298 23F82120              strh    r2, [r3, r1, lsl #2]    @ movhi
 880                    .LBE25:
 881 029c 6EE7                  b       .L22
 882                    .LVL91:
 883                    .L29:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 884                            .loc 1 2035 7 is_stmt 1 view .LVU261
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 54


 885                    .LBB26:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 886                            .loc 1 2035 7 view .LVU262
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 887                            .loc 1 2035 7 view .LVU263
 888 029e 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 889 02a0 33F82420              ldrh    r2, [r3, r4, lsl #2]
 890                    .LVL92:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 891                            .loc 1 2035 7 view .LVU264
 892 02a4 12F4804F              tst     r2, #16384
 893 02a8 0CD0                  beq     .L32
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 894                            .loc 1 2035 7 discriminator 1 view .LVU265
 895                    .LBB27:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 896                            .loc 1 2035 7 discriminator 1 view .LVU266
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 897                            .loc 1 2035 7 discriminator 1 view .LVU267
 898 02aa 33F82420              ldrh    r2, [r3, r4, lsl #2]
 899                    .LVL93:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 900                            .loc 1 2035 7 is_stmt 0 discriminator 1 view .LVU268
 901 02ae 92B2                  uxth    r2, r2
 902 02b0 22F4E042              bic     r2, r2, #28672
 903 02b4 22F07002              bic     r2, r2, #112
 904                    .LVL94:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 905                            .loc 1 2035 7 is_stmt 1 discriminator 1 view .LVU269
 906 02b8 42F44042              orr     r2, r2, #49152
 907                    .LVL95:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 908                            .loc 1 2035 7 is_stmt 0 discriminator 1 view .LVU270
 909 02bc 42F08002              orr     r2, r2, #128
 910 02c0 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 911                    .L32:
2035:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 912                            .loc 1 2035 7 discriminator 1 view .LVU271
 913                    .LBE27:
 914                    .LBE26:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 915                            .loc 1 2036 7 is_stmt 1 view .LVU272
 916                    .LBB28:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 917                            .loc 1 2036 7 view .LVU273
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 918                            .loc 1 2036 7 view .LVU274
 919 02c4 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 920 02c6 33F82420              ldrh    r2, [r3, r4, lsl #2]
 921                    .LVL96:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 922                            .loc 1 2036 7 view .LVU275
 923 02ca 12F0400F              tst     r2, #64
 924 02ce 0CD0                  beq     .L33
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 925                            .loc 1 2036 7 discriminator 1 view .LVU276
 926                    .LBB29:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 55


2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 927                            .loc 1 2036 7 discriminator 1 view .LVU277
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 928                            .loc 1 2036 7 discriminator 1 view .LVU278
 929 02d0 33F82420              ldrh    r2, [r3, r4, lsl #2]
 930                    .LVL97:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 931                            .loc 1 2036 7 is_stmt 0 discriminator 1 view .LVU279
 932 02d4 92B2                  uxth    r2, r2
 933 02d6 22F4E042              bic     r2, r2, #28672
 934 02da 22F07002              bic     r2, r2, #112
 935                    .LVL98:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 936                            .loc 1 2036 7 is_stmt 1 discriminator 1 view .LVU280
 937 02de 42F40042              orr     r2, r2, #32768
 938                    .LVL99:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 939                            .loc 1 2036 7 is_stmt 0 discriminator 1 view .LVU281
 940 02e2 42F0C002              orr     r2, r2, #192
 941 02e6 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 942                    .L33:
2036:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 943                            .loc 1 2036 7 discriminator 1 view .LVU282
 944                    .LBE29:
 945                    .LBE28:
2037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 946                            .loc 1 2037 7 is_stmt 1 view .LVU283
 947                    .LBB30:
2037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 948                            .loc 1 2037 7 view .LVU284
2037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 949                            .loc 1 2037 7 view .LVU285
 950 02ea 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 951 02ec 33F82420              ldrh    r2, [r3, r4, lsl #2]
 952 02f0 92B2                  uxth    r2, r2
 953 02f2 22F4E042              bic     r2, r2, #28672
 954 02f6 22F07002              bic     r2, r2, #112
 955                    .LVL100:
2037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 956                            .loc 1 2037 7 view .LVU286
 957 02fa 42F44042              orr     r2, r2, #49152
 958                    .LVL101:
2037:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 959                            .loc 1 2037 7 is_stmt 0 view .LVU287
 960 02fe 42F08002              orr     r2, r2, #128
 961 0302 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 962                    .LBE30:
2039:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 963                            .loc 1 2039 7 is_stmt 1 view .LVU288
2039:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 964                            .loc 1 2039 13 is_stmt 0 view .LVU289
 965 0306 CA78                  ldrb    r2, [r1, #3]    @ zero_extendqisi2
2039:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 966                            .loc 1 2039 10 view .LVU290
 967 0308 012A                  cmp     r2, #1
 968 030a 1ED0                  beq     .L34
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 56


 969                            .loc 1 2042 9 is_stmt 1 view .LVU291
 970                    .LBB31:
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 971                            .loc 1 2042 9 view .LVU292
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 972                            .loc 1 2042 9 view .LVU293
 973 030c 0C78                  ldrb    r4, [r1]        @ zero_extendqisi2
 974 030e 33F82420              ldrh    r2, [r3, r4, lsl #2]
 975 0312 92B2                  uxth    r2, r2
 976 0314 22F4E042              bic     r2, r2, #28672
 977 0318 22F04002              bic     r2, r2, #64
 978                    .LVL102:
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 979                            .loc 1 2042 9 view .LVU294
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 980                            .loc 1 2042 9 view .LVU295
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 981                            .loc 1 2042 9 view .LVU296
 982 031c 82F02002              eor     r2, r2, #32
 983                    .LVL103:
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 984                            .loc 1 2042 9 view .LVU297
 985 0320 42F40042              orr     r2, r2, #32768
 986                    .LVL104:
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 987                            .loc 1 2042 9 is_stmt 0 view .LVU298
 988 0324 42F08002              orr     r2, r2, #128
 989 0328 23F82420              strh    r2, [r3, r4, lsl #2]    @ movhi
 990                    .L35:
2042:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 991                            .loc 1 2042 9 view .LVU299
 992                    .LBE31:
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 993                            .loc 1 2050 7 is_stmt 1 view .LVU300
 994                    .LBB32:
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 995                            .loc 1 2050 7 view .LVU301
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 996                            .loc 1 2050 7 view .LVU302
 997 032c 0978                  ldrb    r1, [r1]        @ zero_extendqisi2
 998                    .LVL105:
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 999                            .loc 1 2050 7 is_stmt 0 view .LVU303
 1000 032e 33F82120             ldrh    r2, [r3, r1, lsl #2]
 1001 0332 92B2                 uxth    r2, r2
 1002 0334 22F48042             bic     r2, r2, #16384
 1003 0338 22F07002             bic     r2, r2, #112
 1004                   .LVL106:
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1005                           .loc 1 2050 7 is_stmt 1 view .LVU304
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1006                           .loc 1 2050 7 view .LVU305
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1007                           .loc 1 2050 7 view .LVU306
 1008 033c 42F40042             orr     r2, r2, #32768
 1009                   .LVL107:
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 57


 1010                           .loc 1 2050 7 is_stmt 0 view .LVU307
 1011 0340 42F08002             orr     r2, r2, #128
 1012 0344 23F82120             strh    r2, [r3, r1, lsl #2]    @ movhi
 1013 0348 18E7                 b       .L22
 1014                   .LVL108:
 1015                   .L34:
2050:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1016                           .loc 1 2050 7 view .LVU308
 1017                   .LBE32:
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1018                           .loc 1 2047 9 is_stmt 1 view .LVU309
 1019                   .LBB33:
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1020                           .loc 1 2047 9 view .LVU310
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1021                           .loc 1 2047 9 view .LVU311
 1022 034a 0C78                 ldrb    r4, [r1]        @ zero_extendqisi2
 1023 034c 33F82420             ldrh    r2, [r3, r4, lsl #2]
 1024 0350 92B2                 uxth    r2, r2
 1025 0352 22F4E042             bic     r2, r2, #28672
 1026 0356 22F04002             bic     r2, r2, #64
 1027                   .LVL109:
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1028                           .loc 1 2047 9 view .LVU312
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1029                           .loc 1 2047 9 view .LVU313
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1030                           .loc 1 2047 9 view .LVU314
 1031 035a 42F40042             orr     r2, r2, #32768
 1032                   .LVL110:
2047:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 1033                           .loc 1 2047 9 is_stmt 0 view .LVU315
 1034 035e 42F08002             orr     r2, r2, #128
 1035 0362 23F82420             strh    r2, [r3, r4, lsl #2]    @ movhi
 1036 0366 E1E7                 b       .L35
 1037                   .LBE33:
 1038                           .cfi_endproc
 1039                   .LFE73:
 1041                           .section        .text.USB_DeactivateEndpoint,"ax",%progbits
 1042                           .align  1
 1043                           .global USB_DeactivateEndpoint
 1044                           .syntax unified
 1045                           .thumb
 1046                           .thumb_func
 1047                           .fpu softvfp
 1049                   USB_DeactivateEndpoint:
 1050                   .LVL111:
 1051                   .LFB74:
2056:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2057:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2058:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  De-activate and de-initialize an endpoint
2059:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2060:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep: pointer to endpoint structure
2061:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2062:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2063:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DeactivateEndpoint(USB_TypeDef *USBx, USB_EPTypeDef *ep)
2064:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 58


 1052                           .loc 1 2064 1 is_stmt 1 view -0
 1053                           .cfi_startproc
 1054                           @ args = 0, pretend = 0, frame = 0
 1055                           @ frame_needed = 0, uses_anonymous_args = 0
 1056                           @ link register save eliminated.
2065:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->doublebuffer == 0U)
 1057                           .loc 1 2065 3 view .LVU317
 1058                           .loc 1 2065 9 is_stmt 0 view .LVU318
 1059 0000 0B7B                 ldrb    r3, [r1, #12]   @ zero_extendqisi2
 1060                           .loc 1 2065 6 view .LVU319
 1061 0002 002B                 cmp     r3, #0
 1062 0004 46D1                 bne     .L39
2066:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2067:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->is_in != 0U)
 1063                           .loc 1 2067 5 is_stmt 1 view .LVU320
 1064                           .loc 1 2067 11 is_stmt 0 view .LVU321
 1065 0006 4B78                 ldrb    r3, [r1, #1]    @ zero_extendqisi2
 1066                           .loc 1 2067 8 view .LVU322
 1067 0008 13B3                 cbz     r3, .L40
2068:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2069:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1068                           .loc 1 2069 7 is_stmt 1 view .LVU323
 1069                   .LBB34:
 1070                           .loc 1 2069 7 view .LVU324
 1071                           .loc 1 2069 7 view .LVU325
 1072 000a 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1073 000c 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1074                   .LVL112:
 1075                           .loc 1 2069 7 view .LVU326
 1076 0010 13F0400F             tst     r3, #64
 1077 0014 0CD0                 beq     .L41
 1078                           .loc 1 2069 7 discriminator 1 view .LVU327
 1079                   .LBB35:
 1080                           .loc 1 2069 7 discriminator 1 view .LVU328
 1081                           .loc 1 2069 7 discriminator 1 view .LVU329
 1082 0016 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1083                   .LVL113:
 1084                           .loc 1 2069 7 is_stmt 0 discriminator 1 view .LVU330
 1085 001a 9BB2                 uxth    r3, r3
 1086 001c 23F4E043             bic     r3, r3, #28672
 1087 0020 23F07003             bic     r3, r3, #112
 1088                   .LVL114:
 1089                           .loc 1 2069 7 is_stmt 1 discriminator 1 view .LVU331
 1090 0024 43F40043             orr     r3, r3, #32768
 1091                   .LVL115:
 1092                           .loc 1 2069 7 is_stmt 0 discriminator 1 view .LVU332
 1093 0028 43F0C003             orr     r3, r3, #192
 1094 002c 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1095                   .L41:
 1096                           .loc 1 2069 7 discriminator 1 view .LVU333
 1097                   .LBE35:
 1098                   .LBE34:
2070:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
2071:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1099                           .loc 1 2071 7 is_stmt 1 view .LVU334
 1100                   .LBB36:
 1101                           .loc 1 2071 7 view .LVU335
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 59


 1102                           .loc 1 2071 7 view .LVU336
 1103 0030 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1104 0032 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1105 0036 9BB2                 uxth    r3, r3
 1106 0038 23F4E043             bic     r3, r3, #28672
 1107 003c 23F04003             bic     r3, r3, #64
 1108                   .LVL116:
 1109                           .loc 1 2071 7 view .LVU337
 1110                           .loc 1 2071 7 view .LVU338
 1111                           .loc 1 2071 7 view .LVU339
 1112 0040 43F40043             orr     r3, r3, #32768
 1113                   .LVL117:
 1114                           .loc 1 2071 7 is_stmt 0 view .LVU340
 1115 0044 43F08003             orr     r3, r3, #128
 1116 0048 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1117                   .L50:
 1118                           .loc 1 2071 7 view .LVU341
 1119                   .LBE36:
2072:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2073:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2074:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
2076:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
2078:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2079:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2080:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /*Double Buffer*/
2081:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
2082:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2083:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->is_in == 0U)
2084:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2085:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Clear the data toggle bits for the endpoint IN/OUT*/
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
2088:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2089:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Reset value of the data toggle bits for the endpoint out*/
2090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_TX_DTOG(USBx, ep->num);
2091:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
2094:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2095:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2096:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2097:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Clear the data toggle bits for the endpoint IN/OUT*/
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
2100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
2101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
2104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1120                           .loc 1 2107 3 is_stmt 1 view .LVU342
2108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1121                           .loc 1 2108 1 is_stmt 0 view .LVU343
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 60


 1122 004c 0020                 movs    r0, #0
 1123                   .LVL118:
 1124                           .loc 1 2108 1 view .LVU344
 1125 004e 7047                 bx      lr
 1126                   .LVL119:
 1127                   .L40:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1128                           .loc 1 2075 7 is_stmt 1 view .LVU345
 1129                   .LBB37:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1130                           .loc 1 2075 7 view .LVU346
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1131                           .loc 1 2075 7 view .LVU347
 1132 0050 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1133 0052 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1134                   .LVL120:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1135                           .loc 1 2075 7 view .LVU348
 1136 0056 13F4804F             tst     r3, #16384
 1137 005a 0CD0                 beq     .L43
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1138                           .loc 1 2075 7 discriminator 1 view .LVU349
 1139                   .LBB38:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1140                           .loc 1 2075 7 discriminator 1 view .LVU350
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1141                           .loc 1 2075 7 discriminator 1 view .LVU351
 1142 005c 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1143                   .LVL121:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1144                           .loc 1 2075 7 is_stmt 0 discriminator 1 view .LVU352
 1145 0060 9BB2                 uxth    r3, r3
 1146 0062 23F4E043             bic     r3, r3, #28672
 1147 0066 23F07003             bic     r3, r3, #112
 1148                   .LVL122:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1149                           .loc 1 2075 7 is_stmt 1 discriminator 1 view .LVU353
 1150 006a 43F44043             orr     r3, r3, #49152
 1151                   .LVL123:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1152                           .loc 1 2075 7 is_stmt 0 discriminator 1 view .LVU354
 1153 006e 43F08003             orr     r3, r3, #128
 1154 0072 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1155                   .L43:
2075:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1156                           .loc 1 2075 7 discriminator 1 view .LVU355
 1157                   .LBE38:
 1158                   .LBE37:
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1159                           .loc 1 2077 7 is_stmt 1 view .LVU356
 1160                   .LBB39:
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1161                           .loc 1 2077 7 view .LVU357
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1162                           .loc 1 2077 7 view .LVU358
 1163 0076 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1164 0078 30F82230             ldrh    r3, [r0, r2, lsl #2]
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 61


 1165 007c 9BB2                 uxth    r3, r3
 1166 007e 23F48043             bic     r3, r3, #16384
 1167 0082 23F07003             bic     r3, r3, #112
 1168                   .LVL124:
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1169                           .loc 1 2077 7 view .LVU359
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1170                           .loc 1 2077 7 view .LVU360
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1171                           .loc 1 2077 7 view .LVU361
 1172 0086 43F40043             orr     r3, r3, #32768
 1173                   .LVL125:
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1174                           .loc 1 2077 7 is_stmt 0 view .LVU362
 1175 008a 43F08003             orr     r3, r3, #128
 1176 008e 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1177 0092 DBE7                 b       .L50
 1178                   .L39:
2077:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1179                           .loc 1 2077 7 view .LVU363
 1180                   .LBE39:
2064:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->doublebuffer == 0U)
 1181                           .loc 1 2064 1 view .LVU364
 1182 0094 10B4                 push    {r4}
 1183                   .LCFI9:
 1184                           .cfi_def_cfa_offset 4
 1185                           .cfi_offset 4, -4
2083:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 1186                           .loc 1 2083 5 is_stmt 1 view .LVU365
2083:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 1187                           .loc 1 2083 11 is_stmt 0 view .LVU366
 1188 0096 4B78                 ldrb    r3, [r1, #1]    @ zero_extendqisi2
2083:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 1189                           .loc 1 2083 8 view .LVU367
 1190 0098 002B                 cmp     r3, #0
 1191 009a 4ED1                 bne     .L44
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1192                           .loc 1 2086 7 is_stmt 1 view .LVU368
 1193                   .LBB40:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1194                           .loc 1 2086 7 view .LVU369
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1195                           .loc 1 2086 7 view .LVU370
 1196 009c 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1197 009e 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1198                   .LVL126:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1199                           .loc 1 2086 7 view .LVU371
 1200 00a2 13F4804F             tst     r3, #16384
 1201 00a6 0CD0                 beq     .L45
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1202                           .loc 1 2086 7 discriminator 1 view .LVU372
 1203                   .LBB41:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1204                           .loc 1 2086 7 discriminator 1 view .LVU373
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1205                           .loc 1 2086 7 discriminator 1 view .LVU374
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 62


 1206 00a8 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1207                   .LVL127:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1208                           .loc 1 2086 7 is_stmt 0 discriminator 1 view .LVU375
 1209 00ac 9BB2                 uxth    r3, r3
 1210 00ae 23F4E043             bic     r3, r3, #28672
 1211 00b2 23F07003             bic     r3, r3, #112
 1212                   .LVL128:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1213                           .loc 1 2086 7 is_stmt 1 discriminator 1 view .LVU376
 1214 00b6 43F44043             orr     r3, r3, #49152
 1215                   .LVL129:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1216                           .loc 1 2086 7 is_stmt 0 discriminator 1 view .LVU377
 1217 00ba 43F08003             orr     r3, r3, #128
 1218 00be 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1219                   .L45:
2086:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1220                           .loc 1 2086 7 discriminator 1 view .LVU378
 1221                   .LBE41:
 1222                   .LBE40:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1223                           .loc 1 2087 7 is_stmt 1 view .LVU379
 1224                   .LBB42:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1225                           .loc 1 2087 7 view .LVU380
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1226                           .loc 1 2087 7 view .LVU381
 1227 00c2 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1228 00c4 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1229                   .LVL130:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1230                           .loc 1 2087 7 view .LVU382
 1231 00c8 13F0400F             tst     r3, #64
 1232 00cc 0CD0                 beq     .L46
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1233                           .loc 1 2087 7 discriminator 1 view .LVU383
 1234                   .LBB43:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1235                           .loc 1 2087 7 discriminator 1 view .LVU384
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1236                           .loc 1 2087 7 discriminator 1 view .LVU385
 1237 00ce 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1238                   .LVL131:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1239                           .loc 1 2087 7 is_stmt 0 discriminator 1 view .LVU386
 1240 00d2 9BB2                 uxth    r3, r3
 1241 00d4 23F4E043             bic     r3, r3, #28672
 1242 00d8 23F07003             bic     r3, r3, #112
 1243                   .LVL132:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1244                           .loc 1 2087 7 is_stmt 1 discriminator 1 view .LVU387
 1245 00dc 43F40043             orr     r3, r3, #32768
 1246                   .LVL133:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1247                           .loc 1 2087 7 is_stmt 0 discriminator 1 view .LVU388
 1248 00e0 43F0C003             orr     r3, r3, #192
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 63


 1249 00e4 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1250                   .L46:
2087:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1251                           .loc 1 2087 7 discriminator 1 view .LVU389
 1252                   .LBE43:
 1253                   .LBE42:
2090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1254                           .loc 1 2090 7 is_stmt 1 view .LVU390
 1255                   .LBB44:
2090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1256                           .loc 1 2090 7 view .LVU391
2090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1257                           .loc 1 2090 7 view .LVU392
 1258 00e8 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1259 00ea 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1260 00ee 9BB2                 uxth    r3, r3
 1261 00f0 23F4E043             bic     r3, r3, #28672
 1262 00f4 23F07003             bic     r3, r3, #112
 1263                   .LVL134:
2090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1264                           .loc 1 2090 7 view .LVU393
 1265 00f8 43F40043             orr     r3, r3, #32768
 1266                   .LVL135:
2090:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 1267                           .loc 1 2090 7 is_stmt 0 view .LVU394
 1268 00fc 43F0C003             orr     r3, r3, #192
 1269 0100 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1270                   .LBE44:
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1271                           .loc 1 2092 7 is_stmt 1 view .LVU395
 1272                   .LBB45:
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1273                           .loc 1 2092 7 view .LVU396
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1274                           .loc 1 2092 7 view .LVU397
 1275 0104 0B78                 ldrb    r3, [r1]        @ zero_extendqisi2
 1276 0106 30F82320             ldrh    r2, [r0, r3, lsl #2]
 1277 010a 92B2                 uxth    r2, r2
 1278 010c 22F48042             bic     r2, r2, #16384
 1279 0110 22F07002             bic     r2, r2, #112
 1280                   .LVL136:
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1281                           .loc 1 2092 7 view .LVU398
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1282                           .loc 1 2092 7 view .LVU399
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1283                           .loc 1 2092 7 view .LVU400
 1284 0114 48F28004             movw    r4, #32896
 1285 0118 2243                 orrs    r2, r2, r4
 1286                   .LVL137:
2092:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_DIS);
 1287                           .loc 1 2092 7 is_stmt 0 view .LVU401
 1288 011a 20F82320             strh    r2, [r0, r3, lsl #2]    @ movhi
 1289                   .LBE45:
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1290                           .loc 1 2093 7 is_stmt 1 view .LVU402
 1291                   .LBB46:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 64


2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1292                           .loc 1 2093 7 view .LVU403
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1293                           .loc 1 2093 7 view .LVU404
 1294 011e 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1295 0120 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1296 0124 9BB2                 uxth    r3, r3
 1297 0126 23F4E043             bic     r3, r3, #28672
 1298 012a 23F04003             bic     r3, r3, #64
 1299                   .LVL138:
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1300                           .loc 1 2093 7 view .LVU405
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1301                           .loc 1 2093 7 view .LVU406
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1302                           .loc 1 2093 7 view .LVU407
 1303 012e 2343                 orrs    r3, r3, r4
 1304                   .LVL139:
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1305                           .loc 1 2093 7 is_stmt 0 view .LVU408
 1306 0130 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1307                   .L42:
2093:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1308                           .loc 1 2093 7 view .LVU409
 1309                   .LBE46:
2107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1310                           .loc 1 2107 3 is_stmt 1 view .LVU410
 1311                           .loc 1 2108 1 is_stmt 0 view .LVU411
 1312 0134 0020                 movs    r0, #0
 1313                   .LVL140:
 1314                           .loc 1 2108 1 view .LVU412
 1315 0136 10BC                 pop     {r4}
 1316                   .LCFI10:
 1317                           .cfi_remember_state
 1318                           .cfi_restore 4
 1319                           .cfi_def_cfa_offset 0
 1320 0138 7047                 bx      lr
 1321                   .LVL141:
 1322                   .L44:
 1323                   .LCFI11:
 1324                           .cfi_restore_state
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1325                           .loc 1 2098 7 is_stmt 1 view .LVU413
 1326                   .LBB47:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1327                           .loc 1 2098 7 view .LVU414
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1328                           .loc 1 2098 7 view .LVU415
 1329 013a 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1330 013c 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1331                   .LVL142:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1332                           .loc 1 2098 7 view .LVU416
 1333 0140 13F4804F             tst     r3, #16384
 1334 0144 0CD0                 beq     .L47
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1335                           .loc 1 2098 7 discriminator 1 view .LVU417
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 65


 1336                   .LBB48:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1337                           .loc 1 2098 7 discriminator 1 view .LVU418
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1338                           .loc 1 2098 7 discriminator 1 view .LVU419
 1339 0146 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1340                   .LVL143:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1341                           .loc 1 2098 7 is_stmt 0 discriminator 1 view .LVU420
 1342 014a 9BB2                 uxth    r3, r3
 1343 014c 23F4E043             bic     r3, r3, #28672
 1344 0150 23F07003             bic     r3, r3, #112
 1345                   .LVL144:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1346                           .loc 1 2098 7 is_stmt 1 discriminator 1 view .LVU421
 1347 0154 43F44043             orr     r3, r3, #49152
 1348                   .LVL145:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1349                           .loc 1 2098 7 is_stmt 0 discriminator 1 view .LVU422
 1350 0158 43F08003             orr     r3, r3, #128
 1351 015c 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1352                   .L47:
2098:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1353                           .loc 1 2098 7 discriminator 1 view .LVU423
 1354                   .LBE48:
 1355                   .LBE47:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1356                           .loc 1 2099 7 is_stmt 1 view .LVU424
 1357                   .LBB49:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1358                           .loc 1 2099 7 view .LVU425
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1359                           .loc 1 2099 7 view .LVU426
 1360 0160 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1361 0162 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1362                   .LVL146:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1363                           .loc 1 2099 7 view .LVU427
 1364 0166 13F0400F             tst     r3, #64
 1365 016a 0CD0                 beq     .L48
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1366                           .loc 1 2099 7 discriminator 1 view .LVU428
 1367                   .LBB50:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1368                           .loc 1 2099 7 discriminator 1 view .LVU429
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1369                           .loc 1 2099 7 discriminator 1 view .LVU430
 1370 016c 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1371                   .LVL147:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1372                           .loc 1 2099 7 is_stmt 0 discriminator 1 view .LVU431
 1373 0170 9BB2                 uxth    r3, r3
 1374 0172 23F4E043             bic     r3, r3, #28672
 1375 0176 23F07003             bic     r3, r3, #112
 1376                   .LVL148:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1377                           .loc 1 2099 7 is_stmt 1 discriminator 1 view .LVU432
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 66


 1378 017a 43F40043             orr     r3, r3, #32768
 1379                   .LVL149:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1380                           .loc 1 2099 7 is_stmt 0 discriminator 1 view .LVU433
 1381 017e 43F0C003             orr     r3, r3, #192
 1382 0182 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1383                   .L48:
2099:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_RX_DTOG(USBx, ep->num);
 1384                           .loc 1 2099 7 discriminator 1 view .LVU434
 1385                   .LBE50:
 1386                   .LBE49:
2100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1387                           .loc 1 2100 7 is_stmt 1 view .LVU435
 1388                   .LBB51:
2100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1389                           .loc 1 2100 7 view .LVU436
2100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1390                           .loc 1 2100 7 view .LVU437
 1391 0186 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1392 0188 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1393 018c 9BB2                 uxth    r3, r3
 1394 018e 23F4E043             bic     r3, r3, #28672
 1395 0192 23F07003             bic     r3, r3, #112
 1396                   .LVL150:
2100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1397                           .loc 1 2100 7 view .LVU438
 1398 0196 43F44043             orr     r3, r3, #49152
 1399                   .LVL151:
2100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure DISABLE status for the Endpoint*/
 1400                           .loc 1 2100 7 is_stmt 0 view .LVU439
 1401 019a 43F08003             orr     r3, r3, #128
 1402 019e 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1403                   .LBE51:
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1404                           .loc 1 2102 7 is_stmt 1 view .LVU440
 1405                   .LBB52:
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1406                           .loc 1 2102 7 view .LVU441
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1407                           .loc 1 2102 7 view .LVU442
 1408 01a2 0B78                 ldrb    r3, [r1]        @ zero_extendqisi2
 1409 01a4 30F82320             ldrh    r2, [r0, r3, lsl #2]
 1410 01a8 92B2                 uxth    r2, r2
 1411 01aa 22F4E042             bic     r2, r2, #28672
 1412 01ae 22F04002             bic     r2, r2, #64
 1413                   .LVL152:
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1414                           .loc 1 2102 7 view .LVU443
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1415                           .loc 1 2102 7 view .LVU444
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1416                           .loc 1 2102 7 view .LVU445
 1417 01b2 48F28004             movw    r4, #32896
 1418 01b6 2243                 orrs    r2, r2, r4
 1419                   .LVL153:
2102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_DIS);
 1420                           .loc 1 2102 7 is_stmt 0 view .LVU446
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 67


 1421 01b8 20F82320             strh    r2, [r0, r3, lsl #2]    @ movhi
 1422                   .LBE52:
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1423                           .loc 1 2103 7 is_stmt 1 view .LVU447
 1424                   .LBB53:
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1425                           .loc 1 2103 7 view .LVU448
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1426                           .loc 1 2103 7 view .LVU449
 1427 01bc 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1428 01be 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1429 01c2 9BB2                 uxth    r3, r3
 1430 01c4 23F48043             bic     r3, r3, #16384
 1431 01c8 23F07003             bic     r3, r3, #112
 1432                   .LVL154:
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1433                           .loc 1 2103 7 view .LVU450
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1434                           .loc 1 2103 7 view .LVU451
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1435                           .loc 1 2103 7 view .LVU452
 1436 01cc 2343                 orrs    r3, r3, r4
 1437                   .LVL155:
2103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 1438                           .loc 1 2103 7 is_stmt 0 view .LVU453
 1439 01ce 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1440 01d2 AFE7                 b       .L42
 1441                   .LBE53:
 1442                           .cfi_endproc
 1443                   .LFE74:
 1445                           .section        .text.USB_WritePacket,"ax",%progbits
 1446                           .align  1
 1447                           .global USB_WritePacket
 1448                           .syntax unified
 1449                           .thumb
 1450                           .thumb_func
 1451                           .fpu softvfp
 1453                   USB_WritePacket:
 1454                   .LVL156:
 1455                   .LFB76:
2109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EPStartXfer : setup and starts a transfer over an EP
2112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2113:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep: pointer to endpoint structure
2114:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2115:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2116:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EPStartXfer(USB_TypeDef *USBx, USB_EPTypeDef *ep)
2117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
2118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t pmabuffer;
2119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t len;
2120:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2121:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* IN endpoint */
2122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in == 1U)
2123:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2124:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /*Multi packet transfer*/
2125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len > ep->maxpacket)
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 68


2126:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       len = ep->maxpacket;
2128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len -= len;
2129:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2130:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2131:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       len = ep->xfer_len;
2133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = 0U;
2134:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2135:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2136:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* configure and validate Tx endpoint */
2137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->doublebuffer == 0U)
2138:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USB_WritePMA(USBx, ep->xfer_buff, ep->pmaadress, (uint16_t)len);
2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_CNT(USBx, ep->num, len);
2141:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2142:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Write the data to the USB endpoint */
2145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if ((PCD_GET_ENDPOINT(USBx, ep->num) & USB_EP_DTOG_TX) != 0U)
2146:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
2147:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Set the Double buffer counter for pmabuffer1 */
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_DBUF1_CNT(USBx, ep->num, ep->is_in, len);
2149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
2150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
2151:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       else
2152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
2153:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Set the Double buffer counter for pmabuffer0 */
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_DBUF0_CNT(USBx, ep->num, ep->is_in, len);
2155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
2156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
2157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       USB_WritePMA(USBx, ep->xfer_buff, pmabuffer, (uint16_t)len);
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_FreeUserBuffer(USBx, ep->num, ep->is_in);
2159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_VALID);
2162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else /* OUT endpoint */
2164:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* Multi packet transfer*/
2166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->xfer_len > ep->maxpacket)
2167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       len = ep->maxpacket;
2169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len -= len;
2170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2171:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2172:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       len = ep->xfer_len;
2174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = 0U;
2175:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2177:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* configure and validate Rx endpoint */
2178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->doublebuffer == 0U)
2179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /*Set RX buffer count*/
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_CNT(USBx, ep->num, len);
2182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 69


2183:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2185:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /*Set the Double buffer counter*/
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_DBUF_CNT(USBx, ep->num, ep->is_in, len);
2187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2188:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID);
2190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2191:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
2193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
2194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_WritePacket : Writes a packet into the Tx FIFO associated
2197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         with the EP/channel
2198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2199:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  src :  pointer to source buffer
2200:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ch_ep_num : endpoint or host channel number
2201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  len : Number of bytes to write
2202:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2203:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_WritePacket(USB_TypeDef *USBx, uint8_t *src, uint8_t ch_ep_num, uint16_t len)
2205:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1456                           .loc 1 2205 1 is_stmt 1 view -0
 1457                           .cfi_startproc
 1458                           @ args = 0, pretend = 0, frame = 0
 1459                           @ frame_needed = 0, uses_anonymous_args = 0
 1460                           @ link register save eliminated.
2206:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1461                           .loc 1 2207 3 view .LVU455
2208:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(src);
 1462                           .loc 1 2208 3 view .LVU456
2209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(ch_ep_num);
 1463                           .loc 1 2209 3 view .LVU457
2210:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(len);
 1464                           .loc 1 2210 3 view .LVU458
2211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2213:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2214:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2215:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1465                           .loc 1 2215 3 view .LVU459
2216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1466                           .loc 1 2216 1 is_stmt 0 view .LVU460
 1467 0000 0020                 movs    r0, #0
 1468                   .LVL157:
 1469                           .loc 1 2216 1 view .LVU461
 1470 0002 7047                 bx      lr
 1471                           .cfi_endproc
 1472                   .LFE76:
 1474                           .section        .text.USB_ReadPacket,"ax",%progbits
 1475                           .align  1
 1476                           .global USB_ReadPacket
 1477                           .syntax unified
 1478                           .thumb
 1479                           .thumb_func
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 70


 1480                           .fpu softvfp
 1482                   USB_ReadPacket:
 1483                   .LVL158:
 1484                   .LFB77:
2217:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2218:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadPacket : read a packet from the Tx FIFO associated
2220:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *         with the EP/channel
2221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  dest : destination pointer
2223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  len : Number of bytes to read
2224:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval pointer to destination buffer
2225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2226:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** void *USB_ReadPacket(USB_TypeDef *USBx, uint8_t *dest, uint16_t len)
2227:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1485                           .loc 1 2227 1 is_stmt 1 view -0
 1486                           .cfi_startproc
 1487                           @ args = 0, pretend = 0, frame = 0
 1488                           @ frame_needed = 0, uses_anonymous_args = 0
 1489                           @ link register save eliminated.
2228:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1490                           .loc 1 2229 3 view .LVU463
2230:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(dest);
 1491                           .loc 1 2230 3 view .LVU464
2231:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(len);
 1492                           .loc 1 2231 3 view .LVU465
2232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2236:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return ((void *)NULL);
 1493                           .loc 1 2236 3 view .LVU466
2237:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1494                           .loc 1 2237 1 is_stmt 0 view .LVU467
 1495 0000 0020                 movs    r0, #0
 1496                   .LVL159:
 1497                           .loc 1 2237 1 view .LVU468
 1498 0002 7047                 bx      lr
 1499                           .cfi_endproc
 1500                   .LFE77:
 1502                           .section        .text.USB_EPSetStall,"ax",%progbits
 1503                           .align  1
 1504                           .global USB_EPSetStall
 1505                           .syntax unified
 1506                           .thumb
 1507                           .thumb_func
 1508                           .fpu softvfp
 1510                   USB_EPSetStall:
 1511                   .LVL160:
 1512                   .LFB78:
2238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2240:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EPSetStall : set a stall condition over an EP
2241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2242:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep: pointer to endpoint structure
2243:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 71


2244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EPSetStall(USB_TypeDef *USBx, USB_EPTypeDef *ep)
2246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1513                           .loc 1 2246 1 is_stmt 1 view -0
 1514                           .cfi_startproc
 1515                           @ args = 0, pretend = 0, frame = 0
 1516                           @ frame_needed = 0, uses_anonymous_args = 0
 1517                           @ link register save eliminated.
2247:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->is_in != 0U)
 1518                           .loc 1 2247 3 view .LVU470
 1519                           .loc 1 2247 9 is_stmt 0 view .LVU471
 1520 0000 4B78                 ldrb    r3, [r1, #1]    @ zero_extendqisi2
 1521                           .loc 1 2247 6 view .LVU472
 1522 0002 8BB1                 cbz     r3, .L55
2248:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2249:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_STALL);
 1523                           .loc 1 2249 5 is_stmt 1 view .LVU473
 1524                   .LBB54:
 1525                           .loc 1 2249 5 view .LVU474
 1526                           .loc 1 2249 5 view .LVU475
 1527 0004 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1528 0006 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1529 000a 9BB2                 uxth    r3, r3
 1530 000c 23F4E043             bic     r3, r3, #28672
 1531 0010 23F04003             bic     r3, r3, #64
 1532                   .LVL161:
 1533                           .loc 1 2249 5 view .LVU476
 1534                           .loc 1 2249 5 view .LVU477
 1535 0014 83F01003             eor     r3, r3, #16
 1536                   .LVL162:
 1537                           .loc 1 2249 5 view .LVU478
 1538                           .loc 1 2249 5 view .LVU479
 1539 0018 43F40043             orr     r3, r3, #32768
 1540                   .LVL163:
 1541                           .loc 1 2249 5 is_stmt 0 view .LVU480
 1542 001c 43F08003             orr     r3, r3, #128
 1543 0020 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1544                   .L56:
 1545                           .loc 1 2249 5 view .LVU481
 1546                   .LBE54:
2250:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2251:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   else
2252:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_STALL);
2254:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2256:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1547                           .loc 1 2256 3 is_stmt 1 view .LVU482
2257:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1548                           .loc 1 2257 1 is_stmt 0 view .LVU483
 1549 0024 0020                 movs    r0, #0
 1550                   .LVL164:
 1551                           .loc 1 2257 1 view .LVU484
 1552 0026 7047                 bx      lr
 1553                   .LVL165:
 1554                   .L55:
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 72


 1555                           .loc 1 2253 5 is_stmt 1 view .LVU485
 1556                   .LBB55:
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1557                           .loc 1 2253 5 view .LVU486
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1558                           .loc 1 2253 5 view .LVU487
 1559 0028 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1560 002a 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1561 002e 9BB2                 uxth    r3, r3
 1562 0030 23F48043             bic     r3, r3, #16384
 1563 0034 23F07003             bic     r3, r3, #112
 1564                   .LVL166:
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1565                           .loc 1 2253 5 view .LVU488
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1566                           .loc 1 2253 5 view .LVU489
 1567 0038 83F48053             eor     r3, r3, #4096
 1568                   .LVL167:
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1569                           .loc 1 2253 5 view .LVU490
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1570                           .loc 1 2253 5 view .LVU491
 1571 003c 43F40043             orr     r3, r3, #32768
 1572                   .LVL168:
2253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 1573                           .loc 1 2253 5 is_stmt 0 view .LVU492
 1574 0040 43F08003             orr     r3, r3, #128
 1575 0044 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1576 0048 ECE7                 b       .L56
 1577                   .LBE55:
 1578                           .cfi_endproc
 1579                   .LFE78:
 1581                           .section        .text.USB_EPClearStall,"ax",%progbits
 1582                           .align  1
 1583                           .global USB_EPClearStall
 1584                           .syntax unified
 1585                           .thumb
 1586                           .thumb_func
 1587                           .fpu softvfp
 1589                   USB_EPClearStall:
 1590                   .LVL169:
 1591                   .LFB79:
2258:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2259:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2260:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_EPClearStall : Clear a stall condition over an EP
2261:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  ep: pointer to endpoint structure
2263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2264:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2265:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EPClearStall(USB_TypeDef *USBx, USB_EPTypeDef *ep)
2266:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1592                           .loc 1 2266 1 is_stmt 1 view -0
 1593                           .cfi_startproc
 1594                           @ args = 0, pretend = 0, frame = 0
 1595                           @ frame_needed = 0, uses_anonymous_args = 0
 1596                           @ link register save eliminated.
2267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (ep->doublebuffer == 0U)
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 73


 1597                           .loc 1 2267 3 view .LVU494
 1598                           .loc 1 2267 9 is_stmt 0 view .LVU495
 1599 0000 0B7B                 ldrb    r3, [r1, #12]   @ zero_extendqisi2
 1600                           .loc 1 2267 6 view .LVU496
 1601 0002 002B                 cmp     r3, #0
 1602 0004 4BD1                 bne     .L58
2268:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2269:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     if (ep->is_in != 0U)
 1603                           .loc 1 2269 5 is_stmt 1 view .LVU497
 1604                           .loc 1 2269 11 is_stmt 0 view .LVU498
 1605 0006 4B78                 ldrb    r3, [r1, #1]    @ zero_extendqisi2
 1606                           .loc 1 2269 8 view .LVU499
 1607 0008 33B3                 cbz     r3, .L59
2270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_TX_DTOG(USBx, ep->num);
 1608                           .loc 1 2271 7 is_stmt 1 view .LVU500
 1609                   .LBB56:
 1610                           .loc 1 2271 7 view .LVU501
 1611                           .loc 1 2271 7 view .LVU502
 1612 000a 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1613 000c 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1614                   .LVL170:
 1615                           .loc 1 2271 7 view .LVU503
 1616 0010 13F0400F             tst     r3, #64
 1617 0014 0CD0                 beq     .L60
 1618                           .loc 1 2271 7 discriminator 1 view .LVU504
 1619                   .LBB57:
 1620                           .loc 1 2271 7 discriminator 1 view .LVU505
 1621                           .loc 1 2271 7 discriminator 1 view .LVU506
 1622 0016 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1623                   .LVL171:
 1624                           .loc 1 2271 7 is_stmt 0 discriminator 1 view .LVU507
 1625 001a 9BB2                 uxth    r3, r3
 1626 001c 23F4E043             bic     r3, r3, #28672
 1627 0020 23F07003             bic     r3, r3, #112
 1628                   .LVL172:
 1629                           .loc 1 2271 7 is_stmt 1 discriminator 1 view .LVU508
 1630 0024 43F40043             orr     r3, r3, #32768
 1631                   .LVL173:
 1632                           .loc 1 2271 7 is_stmt 0 discriminator 1 view .LVU509
 1633 0028 43F0C003             orr     r3, r3, #192
 1634 002c 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1635                   .L60:
 1636                           .loc 1 2271 7 discriminator 1 view .LVU510
 1637                   .LBE57:
 1638                   .LBE56:
2272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       if (ep->type != EP_TYPE_ISOC)
 1639                           .loc 1 2273 7 is_stmt 1 view .LVU511
 1640                           .loc 1 2273 13 is_stmt 0 view .LVU512
 1641 0030 CB78                 ldrb    r3, [r1, #3]    @ zero_extendqisi2
 1642                           .loc 1 2273 10 view .LVU513
 1643 0032 012B                 cmp     r3, #1
 1644 0034 33D0                 beq     .L58
2274:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
2275:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         /* Configure NAK status for the Endpoint */
2276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         PCD_SET_EP_TX_STATUS(USBx, ep->num, USB_EP_TX_NAK);
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 74


 1645                           .loc 1 2276 9 is_stmt 1 view .LVU514
 1646                   .LBB58:
 1647                           .loc 1 2276 9 view .LVU515
 1648                           .loc 1 2276 9 view .LVU516
 1649 0036 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1650 0038 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1651 003c 9BB2                 uxth    r3, r3
 1652 003e 23F4E043             bic     r3, r3, #28672
 1653 0042 23F04003             bic     r3, r3, #64
 1654                   .LVL174:
 1655                           .loc 1 2276 9 view .LVU517
 1656                           .loc 1 2276 9 view .LVU518
 1657                           .loc 1 2276 9 view .LVU519
 1658 0046 83F02003             eor     r3, r3, #32
 1659                   .LVL175:
 1660                           .loc 1 2276 9 view .LVU520
 1661 004a 43F40043             orr     r3, r3, #32768
 1662                   .LVL176:
 1663                           .loc 1 2276 9 is_stmt 0 view .LVU521
 1664 004e 43F08003             orr     r3, r3, #128
 1665 0052 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1666 0056 22E0                 b       .L58
 1667                   .L59:
 1668                           .loc 1 2276 9 view .LVU522
 1669                   .LBE58:
2277:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
2278:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     else
2280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
2281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_CLEAR_RX_DTOG(USBx, ep->num);
 1670                           .loc 1 2281 7 is_stmt 1 view .LVU523
 1671                   .LBB59:
 1672                           .loc 1 2281 7 view .LVU524
 1673                           .loc 1 2281 7 view .LVU525
 1674 0058 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1675 005a 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1676                   .LVL177:
 1677                           .loc 1 2281 7 view .LVU526
 1678 005e 13F4804F             tst     r3, #16384
 1679 0062 0CD0                 beq     .L61
 1680                           .loc 1 2281 7 discriminator 1 view .LVU527
 1681                   .LBB60:
 1682                           .loc 1 2281 7 discriminator 1 view .LVU528
 1683                           .loc 1 2281 7 discriminator 1 view .LVU529
 1684 0064 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1685                   .LVL178:
 1686                           .loc 1 2281 7 is_stmt 0 discriminator 1 view .LVU530
 1687 0068 9BB2                 uxth    r3, r3
 1688 006a 23F4E043             bic     r3, r3, #28672
 1689 006e 23F07003             bic     r3, r3, #112
 1690                   .LVL179:
 1691                           .loc 1 2281 7 is_stmt 1 discriminator 1 view .LVU531
 1692 0072 43F44043             orr     r3, r3, #49152
 1693                   .LVL180:
 1694                           .loc 1 2281 7 is_stmt 0 discriminator 1 view .LVU532
 1695 0076 43F08003             orr     r3, r3, #128
 1696 007a 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 75


 1697                   .L61:
 1698                           .loc 1 2281 7 discriminator 1 view .LVU533
 1699                   .LBE60:
 1700                   .LBE59:
2282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       /* Configure VALID status for the Endpoint*/
2284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_RX_STATUS(USBx, ep->num, USB_EP_RX_VALID);
 1701                           .loc 1 2284 7 is_stmt 1 view .LVU534
 1702                   .LBB61:
 1703                           .loc 1 2284 7 view .LVU535
 1704                           .loc 1 2284 7 view .LVU536
 1705 007e 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 1706 0080 30F82230             ldrh    r3, [r0, r2, lsl #2]
 1707 0084 9BB2                 uxth    r3, r3
 1708 0086 23F48043             bic     r3, r3, #16384
 1709 008a 23F07003             bic     r3, r3, #112
 1710                   .LVL181:
 1711                           .loc 1 2284 7 view .LVU537
 1712                           .loc 1 2284 7 view .LVU538
 1713                           .loc 1 2284 7 view .LVU539
 1714                           .loc 1 2284 7 view .LVU540
 1715 008e 83F44053             eor     r3, r3, #12288
 1716                   .LVL182:
 1717                           .loc 1 2284 7 view .LVU541
 1718 0092 43F40043             orr     r3, r3, #32768
 1719                   .LVL183:
 1720                           .loc 1 2284 7 is_stmt 0 view .LVU542
 1721 0096 43F08003             orr     r3, r3, #128
 1722 009a 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 1723                   .L58:
 1724                           .loc 1 2284 7 view .LVU543
 1725                   .LBE61:
2285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
2286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2287:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2288:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1726                           .loc 1 2288 3 is_stmt 1 view .LVU544
2289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1727                           .loc 1 2289 1 is_stmt 0 view .LVU545
 1728 009e 0020                 movs    r0, #0
 1729                   .LVL184:
 1730                           .loc 1 2289 1 view .LVU546
 1731 00a0 7047                 bx      lr
 1732                           .cfi_endproc
 1733                   .LFE79:
 1735                           .section        .text.USB_StopDevice,"ax",%progbits
 1736                           .align  1
 1737                           .global USB_StopDevice
 1738                           .syntax unified
 1739                           .thumb
 1740                           .thumb_func
 1741                           .fpu softvfp
 1743                   USB_StopDevice:
 1744                   .LVL185:
 1745                   .LFB80:
2290:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 76


2292:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_StopDevice : Stop the usb device mode
2293:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_StopDevice(USB_TypeDef *USBx)
2297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1746                           .loc 1 2297 1 is_stmt 1 view -0
 1747                           .cfi_startproc
 1748                           @ args = 0, pretend = 0, frame = 0
 1749                           @ frame_needed = 0, uses_anonymous_args = 0
 1750                           @ link register save eliminated.
 1751                           .loc 1 2297 1 is_stmt 0 view .LVU548
 1752 0000 0346                 mov     r3, r0
2298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* disable all interrupts and force USB reset */
2299:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR = USB_CNTR_FRES;
 1753                           .loc 1 2299 3 is_stmt 1 view .LVU549
 1754                           .loc 1 2299 14 is_stmt 0 view .LVU550
 1755 0002 0122                 movs    r2, #1
 1756 0004 A0F84020             strh    r2, [r0, #64]   @ movhi
2300:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2301:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* clear interrupt status register */
2302:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->ISTR = 0;
 1757                           .loc 1 2302 3 is_stmt 1 view .LVU551
 1758                           .loc 1 2302 14 is_stmt 0 view .LVU552
 1759 0008 0020                 movs    r0, #0
 1760                   .LVL186:
 1761                           .loc 1 2302 14 view .LVU553
 1762 000a A3F84400             strh    r0, [r3, #68]   @ movhi
2303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2304:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* switch-off device */
2305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR = (USB_CNTR_FRES | USB_CNTR_PDWN);
 1763                           .loc 1 2305 3 is_stmt 1 view .LVU554
 1764                           .loc 1 2305 14 is_stmt 0 view .LVU555
 1765 000e 0322                 movs    r2, #3
 1766 0010 A3F84020             strh    r2, [r3, #64]   @ movhi
2306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1767                           .loc 1 2307 3 is_stmt 1 view .LVU556
2308:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1768                           .loc 1 2308 1 is_stmt 0 view .LVU557
 1769 0014 7047                 bx      lr
 1770                           .cfi_endproc
 1771                   .LFE80:
 1773                           .section        .text.USB_SetDevAddress,"ax",%progbits
 1774                           .align  1
 1775                           .global USB_SetDevAddress
 1776                           .syntax unified
 1777                           .thumb
 1778                           .thumb_func
 1779                           .fpu softvfp
 1781                   USB_SetDevAddress:
 1782                   .LVL187:
 1783                   .LFB81:
2309:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2310:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2311:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_SetDevAddress : Stop the usb device mode
2312:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 77


2313:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  address : new device address to be assigned
2314:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 255
2315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2317:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_SetDevAddress(USB_TypeDef *USBx, uint8_t address)
2318:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1784                           .loc 1 2318 1 is_stmt 1 view -0
 1785                           .cfi_startproc
 1786                           @ args = 0, pretend = 0, frame = 0
 1787                           @ frame_needed = 0, uses_anonymous_args = 0
 1788                           @ link register save eliminated.
2319:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if (address == 0U)
 1789                           .loc 1 2319 3 view .LVU559
 1790                           .loc 1 2319 6 is_stmt 0 view .LVU560
 1791 0000 11B9                 cbnz    r1, .L64
2320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     /* set device address and enable function */
2322:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     USBx->DADDR = USB_DADDR_EF;
 1792                           .loc 1 2322 5 is_stmt 1 view .LVU561
 1793                           .loc 1 2322 17 is_stmt 0 view .LVU562
 1794 0002 8023                 movs    r3, #128
 1795 0004 A0F84C30             strh    r3, [r0, #76]   @ movhi
 1796                   .L64:
2323:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1797                           .loc 1 2325 3 is_stmt 1 view .LVU563
2326:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1798                           .loc 1 2326 1 is_stmt 0 view .LVU564
 1799 0008 0020                 movs    r0, #0
 1800                   .LVL188:
 1801                           .loc 1 2326 1 view .LVU565
 1802 000a 7047                 bx      lr
 1803                           .cfi_endproc
 1804                   .LFE81:
 1806                           .section        .text.USB_DevConnect,"ax",%progbits
 1807                           .align  1
 1808                           .global USB_DevConnect
 1809                           .syntax unified
 1810                           .thumb
 1811                           .thumb_func
 1812                           .fpu softvfp
 1814                   USB_DevConnect:
 1815                   .LVL189:
 1816                   .LFB82:
2327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2328:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DevConnect : Connect the USB device by enabling the pull-up/pull-down
2330:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2331:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_DevConnect(USB_TypeDef *USBx)
2334:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1817                           .loc 1 2334 1 is_stmt 1 view -0
 1818                           .cfi_startproc
 1819                           @ args = 0, pretend = 0, frame = 0
 1820                           @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 78


 1821                           @ link register save eliminated.
2335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1822                           .loc 1 2336 3 view .LVU567
2337:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1823                           .loc 1 2342 3 view .LVU568
2343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1824                           .loc 1 2343 1 is_stmt 0 view .LVU569
 1825 0000 0020                 movs    r0, #0
 1826                   .LVL190:
 1827                           .loc 1 2343 1 view .LVU570
 1828 0002 7047                 bx      lr
 1829                           .cfi_endproc
 1830                   .LFE82:
 1832                           .section        .text.USB_DevDisconnect,"ax",%progbits
 1833                           .align  1
 1834                           .global USB_DevDisconnect
 1835                           .syntax unified
 1836                           .thumb
 1837                           .thumb_func
 1838                           .fpu softvfp
 1840                   USB_DevDisconnect:
 1841                   .LVL191:
 1842                   .LFB83:
2344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2345:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DevDisconnect : Disconnect the USB device by disabling the pull-up/pull-down
2347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef  USB_DevDisconnect(USB_TypeDef *USBx)
2351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1843                           .loc 1 2351 1 is_stmt 1 view -0
 1844                           .cfi_startproc
 1845                           @ args = 0, pretend = 0, frame = 0
 1846                           @ frame_needed = 0, uses_anonymous_args = 0
 1847                           @ link register save eliminated.
2352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1848                           .loc 1 2353 3 view .LVU572
2354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2356:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 1849                           .loc 1 2359 3 view .LVU573
2360:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1850                           .loc 1 2360 1 is_stmt 0 view .LVU574
 1851 0000 0020                 movs    r0, #0
 1852                   .LVL192:
 1853                           .loc 1 2360 1 view .LVU575
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 79


 1854 0002 7047                 bx      lr
 1855                           .cfi_endproc
 1856                   .LFE83:
 1858                           .section        .text.USB_ReadInterrupts,"ax",%progbits
 1859                           .align  1
 1860                           .global USB_ReadInterrupts
 1861                           .syntax unified
 1862                           .thumb
 1863                           .thumb_func
 1864                           .fpu softvfp
 1866                   USB_ReadInterrupts:
 1867                   .LVL193:
 1868                   .LFB84:
2361:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadInterrupts: return the global USB interrupt status
2364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t  USB_ReadInterrupts(USB_TypeDef *USBx)
2368:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1869                           .loc 1 2368 1 is_stmt 1 view -0
 1870                           .cfi_startproc
 1871                           @ args = 0, pretend = 0, frame = 0
 1872                           @ frame_needed = 0, uses_anonymous_args = 0
 1873                           @ link register save eliminated.
2369:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t tmpreg;
 1874                           .loc 1 2369 3 view .LVU577
2370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2371:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   tmpreg = USBx->ISTR;
 1875                           .loc 1 2371 3 view .LVU578
 1876                           .loc 1 2371 16 is_stmt 0 view .LVU579
 1877 0000 B0F84400             ldrh    r0, [r0, #68]
 1878                   .LVL194:
2372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return tmpreg;
 1879                           .loc 1 2372 3 is_stmt 1 view .LVU580
2373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1880                           .loc 1 2373 1 is_stmt 0 view .LVU581
 1881 0004 7047                 bx      lr
 1882                           .cfi_endproc
 1883                   .LFE84:
 1885                           .section        .text.USB_ReadDevAllOutEpInterrupt,"ax",%progbits
 1886                           .align  1
 1887                           .global USB_ReadDevAllOutEpInterrupt
 1888                           .syntax unified
 1889                           .thumb
 1890                           .thumb_func
 1891                           .fpu softvfp
 1893                   USB_ReadDevAllOutEpInterrupt:
 1894                   .LVL195:
 1895                   .LFB85:
2374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadDevAllOutEpInterrupt: return the USB device OUT endpoints interrupt status
2377:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2378:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 80


2380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevAllOutEpInterrupt(USB_TypeDef *USBx)
2381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1896                           .loc 1 2381 1 is_stmt 1 view -0
 1897                           .cfi_startproc
 1898                           @ args = 0, pretend = 0, frame = 0
 1899                           @ frame_needed = 0, uses_anonymous_args = 0
 1900                           @ link register save eliminated.
2382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2383:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1901                           .loc 1 2383 3 view .LVU583
2384:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2387:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2388:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return (0);
 1902                           .loc 1 2388 3 view .LVU584
2389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1903                           .loc 1 2389 1 is_stmt 0 view .LVU585
 1904 0000 0020                 movs    r0, #0
 1905                   .LVL196:
 1906                           .loc 1 2389 1 view .LVU586
 1907 0002 7047                 bx      lr
 1908                           .cfi_endproc
 1909                   .LFE85:
 1911                           .section        .text.USB_ReadDevAllInEpInterrupt,"ax",%progbits
 1912                           .align  1
 1913                           .global USB_ReadDevAllInEpInterrupt
 1914                           .syntax unified
 1915                           .thumb
 1916                           .thumb_func
 1917                           .fpu softvfp
 1919                   USB_ReadDevAllInEpInterrupt:
 1920                   .LVL197:
 1921                   .LFB86:
2390:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2391:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2392:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ReadDevAllInEpInterrupt: return the USB device IN endpoints interrupt status
2393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2395:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2396:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevAllInEpInterrupt(USB_TypeDef *USBx)
2397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1922                           .loc 1 2397 1 is_stmt 1 view -0
 1923                           .cfi_startproc
 1924                           @ args = 0, pretend = 0, frame = 0
 1925                           @ frame_needed = 0, uses_anonymous_args = 0
 1926                           @ link register save eliminated.
2398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1927                           .loc 1 2399 3 view .LVU588
2400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2404:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return (0);
 1928                           .loc 1 2404 3 view .LVU589
2405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 81


 1929                           .loc 1 2405 1 is_stmt 0 view .LVU590
 1930 0000 0020                 movs    r0, #0
 1931                   .LVL198:
 1932                           .loc 1 2405 1 view .LVU591
 1933 0002 7047                 bx      lr
 1934                           .cfi_endproc
 1935                   .LFE86:
 1937                           .section        .text.USB_ReadDevOutEPInterrupt,"ax",%progbits
 1938                           .align  1
 1939                           .global USB_ReadDevOutEPInterrupt
 1940                           .syntax unified
 1941                           .thumb
 1942                           .thumb_func
 1943                           .fpu softvfp
 1945                   USB_ReadDevOutEPInterrupt:
 1946                   .LVL199:
 1947                   .LFB87:
2406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2407:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Returns Device OUT EP Interrupt register
2409:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2410:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  epnum : endpoint number
2411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 15
2412:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval Device OUT EP Interrupt register
2413:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevOutEPInterrupt(USB_TypeDef *USBx, uint8_t epnum)
2415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1948                           .loc 1 2415 1 is_stmt 1 view -0
 1949                           .cfi_startproc
 1950                           @ args = 0, pretend = 0, frame = 0
 1951                           @ frame_needed = 0, uses_anonymous_args = 0
 1952                           @ link register save eliminated.
2416:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1953                           .loc 1 2417 3 view .LVU593
2418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(epnum);
 1954                           .loc 1 2418 3 view .LVU594
2419:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2422:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return (0);
 1955                           .loc 1 2423 3 view .LVU595
2424:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1956                           .loc 1 2424 1 is_stmt 0 view .LVU596
 1957 0000 0020                 movs    r0, #0
 1958                   .LVL200:
 1959                           .loc 1 2424 1 view .LVU597
 1960 0002 7047                 bx      lr
 1961                           .cfi_endproc
 1962                   .LFE87:
 1964                           .section        .text.USB_ReadDevInEPInterrupt,"ax",%progbits
 1965                           .align  1
 1966                           .global USB_ReadDevInEPInterrupt
 1967                           .syntax unified
 1968                           .thumb
 1969                           .thumb_func
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 82


 1970                           .fpu softvfp
 1972                   USB_ReadDevInEPInterrupt:
 1973                   .LVL201:
 1974                   .LFB88:
2425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2427:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Returns Device IN EP Interrupt register
2428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx : Selected device
2429:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  epnum : endpoint number
2430:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   *          This parameter can be a value from 0 to 15
2431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval Device IN EP Interrupt register
2432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2433:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** uint32_t USB_ReadDevInEPInterrupt(USB_TypeDef *USBx, uint8_t epnum)
2434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 1975                           .loc 1 2434 1 is_stmt 1 view -0
 1976                           .cfi_startproc
 1977                           @ args = 0, pretend = 0, frame = 0
 1978                           @ frame_needed = 0, uses_anonymous_args = 0
 1979                           @ link register save eliminated.
2435:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2436:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 1980                           .loc 1 2436 3 view .LVU599
2437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(epnum);
 1981                           .loc 1 2437 3 view .LVU600
2438:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2439:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return (0);
 1982                           .loc 1 2442 3 view .LVU601
2443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 1983                           .loc 1 2443 1 is_stmt 0 view .LVU602
 1984 0000 0020                 movs    r0, #0
 1985                   .LVL202:
 1986                           .loc 1 2443 1 view .LVU603
 1987 0002 7047                 bx      lr
 1988                           .cfi_endproc
 1989                   .LFE88:
 1991                           .section        .text.USB_ClearInterrupts,"ax",%progbits
 1992                           .align  1
 1993                           .global USB_ClearInterrupts
 1994                           .syntax unified
 1995                           .thumb
 1996                           .thumb_func
 1997                           .fpu softvfp
 1999                   USB_ClearInterrupts:
 2000                   .LVL203:
 2001                   .LFB89:
2444:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2445:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ClearInterrupts: clear a USB interrupt
2447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
2448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  interrupt  interrupt flag
2449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval None
2450:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** void  USB_ClearInterrupts(USB_TypeDef *USBx, uint32_t interrupt)
2452:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 83


 2002                           .loc 1 2452 1 is_stmt 1 view -0
 2003                           .cfi_startproc
 2004                           @ args = 0, pretend = 0, frame = 0
 2005                           @ frame_needed = 0, uses_anonymous_args = 0
 2006                           @ link register save eliminated.
2453:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 2007                           .loc 1 2454 3 view .LVU605
2455:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(interrupt);
 2008                           .loc 1 2455 3 view .LVU606
2456:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 2009                           .loc 1 2460 1 is_stmt 0 view .LVU607
 2010 0000 7047                 bx      lr
 2011                           .cfi_endproc
 2012                   .LFE89:
 2014                           .section        .text.USB_EP0_OutStart,"ax",%progbits
 2015                           .align  1
 2016                           .global USB_EP0_OutStart
 2017                           .syntax unified
 2018                           .thumb
 2019                           .thumb_func
 2020                           .fpu softvfp
 2022                   USB_EP0_OutStart:
 2023                   .LVL204:
 2024                   .LFB90:
2461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2462:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  Prepare the EP0 to start the first control setup
2464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
2465:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  psetup  pointer to setup packet
2466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_EP0_OutStart(USB_TypeDef *USBx, uint8_t *psetup)
2469:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 2025                           .loc 1 2469 1 is_stmt 1 view -0
 2026                           .cfi_startproc
 2027                           @ args = 0, pretend = 0, frame = 0
 2028                           @ frame_needed = 0, uses_anonymous_args = 0
 2029                           @ link register save eliminated.
2470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* Prevent unused argument(s) compilation warning */
2471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(USBx);
 2030                           .loc 1 2471 3 view .LVU609
2472:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   UNUSED(psetup);
 2031                           .loc 1 2472 3 view .LVU610
2473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   /* NOTE : - This function is not required by USB Device FS peripheral, it is used
2474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****               only by USB OTG FS peripheral.
2475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****             - This function is added to ensure compatibility across platforms.
2476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****    */
2477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 2032                           .loc 1 2477 3 view .LVU611
2478:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 2033                           .loc 1 2478 1 is_stmt 0 view .LVU612
 2034 0000 0020                 movs    r0, #0
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 84


 2035                   .LVL205:
 2036                           .loc 1 2478 1 view .LVU613
 2037 0002 7047                 bx      lr
 2038                           .cfi_endproc
 2039                   .LFE90:
 2041                           .section        .text.USB_ActivateRemoteWakeup,"ax",%progbits
 2042                           .align  1
 2043                           .global USB_ActivateRemoteWakeup
 2044                           .syntax unified
 2045                           .thumb
 2046                           .thumb_func
 2047                           .fpu softvfp
 2049                   USB_ActivateRemoteWakeup:
 2050                   .LVL206:
 2051                   .LFB91:
2479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_ActivateRemoteWakeup : active remote wakeup signalling
2482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
2483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_ActivateRemoteWakeup(USB_TypeDef *USBx)
2486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 2052                           .loc 1 2486 1 is_stmt 1 view -0
 2053                           .cfi_startproc
 2054                           @ args = 0, pretend = 0, frame = 0
 2055                           @ frame_needed = 0, uses_anonymous_args = 0
 2056                           @ link register save eliminated.
2487:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR |= USB_CNTR_RESUME;
 2057                           .loc 1 2487 3 view .LVU615
 2058                           .loc 1 2487 14 is_stmt 0 view .LVU616
 2059 0000 B0F84030             ldrh    r3, [r0, #64]
 2060 0004 43F01003             orr     r3, r3, #16
 2061 0008 A0F84030             strh    r3, [r0, #64]   @ movhi
2488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2489:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 2062                           .loc 1 2489 3 is_stmt 1 view .LVU617
2490:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 2063                           .loc 1 2490 1 is_stmt 0 view .LVU618
 2064 000c 0020                 movs    r0, #0
 2065                   .LVL207:
 2066                           .loc 1 2490 1 view .LVU619
 2067 000e 7047                 bx      lr
 2068                           .cfi_endproc
 2069                   .LFE91:
 2071                           .section        .text.USB_DeActivateRemoteWakeup,"ax",%progbits
 2072                           .align  1
 2073                           .global USB_DeActivateRemoteWakeup
 2074                           .syntax unified
 2075                           .thumb
 2076                           .thumb_func
 2077                           .fpu softvfp
 2079                   USB_DeActivateRemoteWakeup:
 2080                   .LVL208:
 2081                   .LFB92:
2491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 85


2493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief  USB_DeActivateRemoteWakeup : de-active remote wakeup signalling
2494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param  USBx  Selected device
2495:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval HAL status
2496:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** HAL_StatusTypeDef USB_DeActivateRemoteWakeup(USB_TypeDef *USBx)
2498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 2082                           .loc 1 2498 1 is_stmt 1 view -0
 2083                           .cfi_startproc
 2084                           @ args = 0, pretend = 0, frame = 0
 2085                           @ frame_needed = 0, uses_anonymous_args = 0
 2086                           @ link register save eliminated.
2499:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   USBx->CNTR &= ~(USB_CNTR_RESUME);
 2087                           .loc 1 2499 3 view .LVU621
 2088                           .loc 1 2499 14 is_stmt 0 view .LVU622
 2089 0000 B0F84030             ldrh    r3, [r0, #64]
 2090 0004 9BB2                 uxth    r3, r3
 2091 0006 23F01003             bic     r3, r3, #16
 2092 000a 9BB2                 uxth    r3, r3
 2093 000c A0F84030             strh    r3, [r0, #64]   @ movhi
2500:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   return HAL_OK;
 2094                           .loc 1 2500 3 is_stmt 1 view .LVU623
2501:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 2095                           .loc 1 2501 1 is_stmt 0 view .LVU624
 2096 0010 0020                 movs    r0, #0
 2097                   .LVL209:
 2098                           .loc 1 2501 1 view .LVU625
 2099 0012 7047                 bx      lr
 2100                           .cfi_endproc
 2101                   .LFE92:
 2103                           .section        .text.USB_WritePMA,"ax",%progbits
 2104                           .align  1
 2105                           .global USB_WritePMA
 2106                           .syntax unified
 2107                           .thumb
 2108                           .thumb_func
 2109                           .fpu softvfp
 2111                   USB_WritePMA:
 2112                   .LVL210:
 2113                   .LFB93:
2502:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief Copy a buffer from user memory area to packet memory area (PMA)
2505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   USBx USB peripheral instance register address.
2506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   pbUsrBuf pointer to user memory area.
2507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   wPMABufAddr address into PMA.
2508:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   wNBytes: no. of bytes to be copied.
2509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval None
2510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** void USB_WritePMA(USB_TypeDef *USBx, uint8_t *pbUsrBuf, uint16_t wPMABufAddr, uint16_t wNBytes)
2512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 2114                           .loc 1 2512 1 is_stmt 1 view -0
 2115                           .cfi_startproc
 2116                           @ args = 0, pretend = 0, frame = 0
 2117                           @ frame_needed = 0, uses_anonymous_args = 0
 2118                           @ link register save eliminated.
2513:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t n = ((uint32_t)wNBytes + 1U) >> 1;
 2119                           .loc 1 2513 3 view .LVU627
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 86


 2120                           .loc 1 2513 35 is_stmt 0 view .LVU628
 2121 0000 0133                 adds    r3, r3, #1
 2122                   .LVL211:
 2123                           .loc 1 2513 12 view .LVU629
 2124 0002 5B08                 lsrs    r3, r3, #1
 2125                   .LVL212:
2514:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t BaseAddr = (uint32_t)USBx;
 2126                           .loc 1 2514 3 is_stmt 1 view .LVU630
2515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i, temp1, temp2;
 2127                           .loc 1 2515 3 view .LVU631
2516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   __IO uint16_t *pdwVal;
 2128                           .loc 1 2516 3 view .LVU632
2517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint8_t *pBuf = pbUsrBuf;
 2129                           .loc 1 2517 3 view .LVU633
2518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   pdwVal = (__IO uint16_t *)(BaseAddr + 0x400U + ((uint32_t)wPMABufAddr * PMA_ACCESS));
 2130                           .loc 1 2519 3 view .LVU634
 2131                           .loc 1 2519 48 is_stmt 0 view .LVU635
 2132 0004 00EB4202             add     r2, r0, r2, lsl #1
 2133                   .LVL213:
 2134                           .loc 1 2519 48 view .LVU636
 2135 0008 02F58062             add     r2, r2, #1024
 2136                   .LVL214:
2520:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = n; i != 0U; i--)
 2137                           .loc 1 2521 3 is_stmt 1 view .LVU637
 2138                           .loc 1 2521 3 is_stmt 0 view .LVU638
 2139 000c 63B1                 cbz     r3, .L82
2512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t n = ((uint32_t)wNBytes + 1U) >> 1;
 2140                           .loc 1 2512 1 view .LVU639
 2141 000e 10B4                 push    {r4}
 2142                   .LCFI12:
 2143                           .cfi_def_cfa_offset 4
 2144                           .cfi_offset 4, -4
 2145                   .LVL215:
 2146                   .L78:
2522:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     temp1 = *pBuf;
 2147                           .loc 1 2523 5 is_stmt 1 discriminator 3 view .LVU640
 2148                           .loc 1 2523 13 is_stmt 0 discriminator 3 view .LVU641
 2149 0010 0C78                 ldrb    r4, [r1]        @ zero_extendqisi2
 2150                   .LVL216:
2524:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pBuf++;
 2151                           .loc 1 2524 5 is_stmt 1 discriminator 3 view .LVU642
2525:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     temp2 = temp1 | ((uint16_t)((uint16_t) *pBuf << 8));
 2152                           .loc 1 2525 5 discriminator 3 view .LVU643
 2153                           .loc 1 2525 44 is_stmt 0 discriminator 3 view .LVU644
 2154 0012 4878                 ldrb    r0, [r1, #1]    @ zero_extendqisi2
 2155                   .LVL217:
2526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     *pdwVal = (uint16_t)temp2;
 2156                           .loc 1 2526 5 is_stmt 1 discriminator 3 view .LVU645
 2157                           .loc 1 2526 15 is_stmt 0 discriminator 3 view .LVU646
 2158 0014 44EA0024             orr     r4, r4, r0, lsl #8
 2159                   .LVL218:
 2160                           .loc 1 2526 13 discriminator 3 view .LVU647
 2161 0018 22F8044B             strh    r4, [r2], #4    @ movhi
 2162                   .LVL219:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 87


2527:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pdwVal++;
 2163                           .loc 1 2527 5 is_stmt 1 discriminator 3 view .LVU648
2528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #if PMA_ACCESS > 1U
2530:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pdwVal++;
 2164                           .loc 1 2530 5 discriminator 3 view .LVU649
2531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #endif
2532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2533:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pBuf++;
 2165                           .loc 1 2533 5 discriminator 3 view .LVU650
 2166                           .loc 1 2533 9 is_stmt 0 discriminator 3 view .LVU651
 2167 001c 0231                 adds    r1, r1, #2
 2168                   .LVL220:
2521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 2169                           .loc 1 2521 25 discriminator 3 view .LVU652
 2170 001e 013B                 subs    r3, r3, #1
 2171                   .LVL221:
2521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 2172                           .loc 1 2521 3 discriminator 3 view .LVU653
 2173 0020 002B                 cmp     r3, #0
 2174 0022 F5D1                 bne     .L78
2534:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 2175                           .loc 1 2535 1 view .LVU654
 2176 0024 10BC                 pop     {r4}
 2177                   .LCFI13:
 2178                           .cfi_restore 4
 2179                           .cfi_def_cfa_offset 0
 2180                   .LVL222:
 2181                           .loc 1 2535 1 view .LVU655
 2182 0026 7047                 bx      lr
 2183                   .LVL223:
 2184                   .L82:
 2185                           .loc 1 2535 1 view .LVU656
 2186 0028 7047                 bx      lr
 2187                           .cfi_endproc
 2188                   .LFE93:
 2190                           .section        .text.USB_EPStartXfer,"ax",%progbits
 2191                           .align  1
 2192                           .global USB_EPStartXfer
 2193                           .syntax unified
 2194                           .thumb
 2195                           .thumb_func
 2196                           .fpu softvfp
 2198                   USB_EPStartXfer:
 2199                   .LVL224:
 2200                   .LFB75:
2117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t pmabuffer;
 2201                           .loc 1 2117 1 is_stmt 1 view -0
 2202                           .cfi_startproc
 2203                           @ args = 0, pretend = 0, frame = 0
 2204                           @ frame_needed = 0, uses_anonymous_args = 0
2117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint16_t pmabuffer;
 2205                           .loc 1 2117 1 is_stmt 0 view .LVU658
 2206 0000 70B5                 push    {r4, r5, r6, lr}
 2207                   .LCFI14:
 2208                           .cfi_def_cfa_offset 16
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 88


 2209                           .cfi_offset 4, -16
 2210                           .cfi_offset 5, -12
 2211                           .cfi_offset 6, -8
 2212                           .cfi_offset 14, -4
2118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t len;
 2213                           .loc 1 2118 3 is_stmt 1 view .LVU659
2119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 2214                           .loc 1 2119 3 view .LVU660
2122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 2215                           .loc 1 2122 3 view .LVU661
2122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 2216                           .loc 1 2122 9 is_stmt 0 view .LVU662
 2217 0002 4E78                 ldrb    r6, [r1, #1]    @ zero_extendqisi2
2122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 2218                           .loc 1 2122 6 view .LVU663
 2219 0004 012E                 cmp     r6, #1
 2220 0006 33D0                 beq     .L124
2166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2221                           .loc 1 2166 5 is_stmt 1 view .LVU664
2166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2222                           .loc 1 2166 11 is_stmt 0 view .LVU665
 2223 0008 8A69                 ldr     r2, [r1, #24]
2166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2224                           .loc 1 2166 26 view .LVU666
 2225 000a 0B69                 ldr     r3, [r1, #16]
2166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2226                           .loc 1 2166 8 view .LVU667
 2227 000c 9A42                 cmp     r2, r3
 2228 000e 40F2FC80             bls     .L105
2168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len -= len;
 2229                           .loc 1 2168 7 is_stmt 1 view .LVU668
 2230                   .LVL225:
2169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2231                           .loc 1 2169 7 view .LVU669
2169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2232                           .loc 1 2169 20 is_stmt 0 view .LVU670
 2233 0012 D21A                 subs    r2, r2, r3
 2234 0014 8A61                 str     r2, [r1, #24]
 2235                   .L106:
2178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2236                           .loc 1 2178 5 is_stmt 1 view .LVU671
2178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2237                           .loc 1 2178 11 is_stmt 0 view .LVU672
 2238 0016 0A7B                 ldrb    r2, [r1, #12]   @ zero_extendqisi2
2178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2239                           .loc 1 2178 8 view .LVU673
 2240 0018 002A                 cmp     r2, #0
 2241 001a 40F01381             bne     .L107
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2242                           .loc 1 2181 7 is_stmt 1 view .LVU674
 2243                   .LBB62:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2244                           .loc 1 2181 7 view .LVU675
 2245                   .LVL226:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2246                           .loc 1 2181 7 view .LVU676
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 89


 2247                           .loc 1 2181 7 view .LVU677
 2248 001e B0F85020             ldrh    r2, [r0, #80]
 2249 0022 0244                 add     r2, r2, r0
 2250                   .LVL227:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2251                           .loc 1 2181 7 view .LVU678
 2252 0024 0C78                 ldrb    r4, [r1]        @ zero_extendqisi2
 2253 0026 02EB0412             add     r2, r2, r4, lsl #4
 2254                   .LVL228:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2255                           .loc 1 2181 7 view .LVU679
 2256                   .LBB63:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2257                           .loc 1 2181 7 view .LVU680
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2258                           .loc 1 2181 7 view .LVU681
 2259 002a 002B                 cmp     r3, #0
 2260 002c 40F0F180             bne     .L108
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2261                           .loc 1 2181 7 discriminator 1 view .LVU682
 2262 0030 B2F80C34             ldrh    r3, [r2, #1036]
 2263                   .LVL229:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2264                           .loc 1 2181 7 is_stmt 0 discriminator 1 view .LVU683
 2265 0034 9BB2                 uxth    r3, r3
 2266 0036 23F4F843             bic     r3, r3, #31744
 2267 003a 9BB2                 uxth    r3, r3
 2268 003c A2F80C34             strh    r3, [r2, #1036] @ movhi
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2269                           .loc 1 2181 7 is_stmt 1 discriminator 1 view .LVU684
 2270 0040 B2F80C34             ldrh    r3, [r2, #1036]
 2271 0044 43F40043             orr     r3, r3, #32768
 2272 0048 A2F80C34             strh    r3, [r2, #1036] @ movhi
 2273                   .LVL230:
 2274                   .L109:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2275                           .loc 1 2181 7 is_stmt 0 discriminator 1 view .LVU685
 2276                   .LBE63:
 2277                   .LBE62:
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2278                           .loc 1 2189 5 is_stmt 1 view .LVU686
 2279                   .LBB65:
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2280                           .loc 1 2189 5 view .LVU687
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2281                           .loc 1 2189 5 view .LVU688
 2282 004c 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 2283 004e 30F82230             ldrh    r3, [r0, r2, lsl #2]
 2284 0052 9BB2                 uxth    r3, r3
 2285 0054 23F48043             bic     r3, r3, #16384
 2286 0058 23F07003             bic     r3, r3, #112
 2287                   .LVL231:
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2288                           .loc 1 2189 5 view .LVU689
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2289                           .loc 1 2189 5 view .LVU690
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 90


 2290                           .loc 1 2189 5 view .LVU691
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2291                           .loc 1 2189 5 view .LVU692
 2292 005c 83F44053             eor     r3, r3, #12288
 2293                   .LVL232:
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2294                           .loc 1 2189 5 view .LVU693
 2295 0060 43F40043             orr     r3, r3, #32768
 2296                   .LVL233:
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2297                           .loc 1 2189 5 is_stmt 0 view .LVU694
 2298 0064 43F08003             orr     r3, r3, #128
 2299 0068 20F82230             strh    r3, [r0, r2, lsl #2]    @ movhi
 2300                   .LVL234:
 2301                   .L104:
2189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2302                           .loc 1 2189 5 view .LVU695
 2303                   .LBE65:
2192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 2304                           .loc 1 2192 3 is_stmt 1 view .LVU696
2193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
 2305                           .loc 1 2193 1 is_stmt 0 view .LVU697
 2306 006c 0020                 movs    r0, #0
 2307 006e 70BD                 pop     {r4, r5, r6, pc}
 2308                   .LVL235:
 2309                   .L124:
2125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2310                           .loc 1 2125 5 is_stmt 1 view .LVU698
2125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2311                           .loc 1 2125 11 is_stmt 0 view .LVU699
 2312 0070 8A69                 ldr     r2, [r1, #24]
2125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2313                           .loc 1 2125 26 view .LVU700
 2314 0072 0B69                 ldr     r3, [r1, #16]
2125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2315                           .loc 1 2125 8 view .LVU701
 2316 0074 9A42                 cmp     r2, r3
 2317 0076 22D9                 bls     .L85
2127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len -= len;
 2318                           .loc 1 2127 7 is_stmt 1 view .LVU702
 2319                   .LVL236:
2128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2320                           .loc 1 2128 7 view .LVU703
2128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2321                           .loc 1 2128 20 is_stmt 0 view .LVU704
 2322 0078 D21A                 subs    r2, r2, r3
 2323 007a 8A61                 str     r2, [r1, #24]
 2324                   .L86:
2128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2325                           .loc 1 2128 20 view .LVU705
 2326 007c 0C46                 mov     r4, r1
 2327 007e 0546                 mov     r5, r0
2137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2328                           .loc 1 2137 5 is_stmt 1 view .LVU706
2137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2329                           .loc 1 2137 11 is_stmt 0 view .LVU707
 2330 0080 0A7B                 ldrb    r2, [r1, #12]   @ zero_extendqisi2
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 91


2137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     {
 2331                           .loc 1 2137 8 view .LVU708
 2332 0082 02B3                 cbz     r2, .L125
2145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 2333                           .loc 1 2145 7 is_stmt 1 view .LVU709
2145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 2334                           .loc 1 2145 12 is_stmt 0 view .LVU710
 2335 0084 0A78                 ldrb    r2, [r1]        @ zero_extendqisi2
 2336 0086 30F82210             ldrh    r1, [r0, r2, lsl #2]
 2337                   .LVL237:
2145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       {
 2338                           .loc 1 2145 10 view .LVU711
 2339 008a 11F0400F             tst     r1, #64
 2340 008e 72D0                 beq     .L89
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2341                           .loc 1 2148 9 is_stmt 1 view .LVU712
 2342                   .LBB66:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2343                           .loc 1 2148 9 view .LVU713
 2344                   .LVL238:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2345                           .loc 1 2148 9 view .LVU714
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2346                           .loc 1 2148 9 view .LVU715
 2347 0090 002E                 cmp     r6, #0
 2348 0092 40D1                 bne     .L90
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2349                           .loc 1 2148 9 discriminator 1 view .LVU716
 2350                   .LBB67:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2351                           .loc 1 2148 9 discriminator 1 view .LVU717
 2352                   .LVL239:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2353                           .loc 1 2148 9 discriminator 1 view .LVU718
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2354                           .loc 1 2148 9 discriminator 1 view .LVU719
 2355 0094 B0F85010             ldrh    r1, [r0, #80]
 2356 0098 0144                 add     r1, r1, r0
 2357                   .LVL240:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2358                           .loc 1 2148 9 discriminator 1 view .LVU720
 2359 009a 01EB0212             add     r2, r1, r2, lsl #4
 2360                   .LVL241:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2361                           .loc 1 2148 9 discriminator 1 view .LVU721
 2362                   .LBB68:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2363                           .loc 1 2148 9 discriminator 1 view .LVU722
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2364                           .loc 1 2148 9 discriminator 1 view .LVU723
 2365 009e 0BBB                 cbnz    r3, .L91
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2366                           .loc 1 2148 9 discriminator 3 view .LVU724
 2367 00a0 B2F80C14             ldrh    r1, [r2, #1036]
 2368                   .LVL242:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2369                           .loc 1 2148 9 is_stmt 0 discriminator 3 view .LVU725
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 92


 2370 00a4 89B2                 uxth    r1, r1
 2371 00a6 21F4F841             bic     r1, r1, #31744
 2372 00aa 89B2                 uxth    r1, r1
 2373 00ac A2F80C14             strh    r1, [r2, #1036] @ movhi
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2374                           .loc 1 2148 9 is_stmt 1 discriminator 3 view .LVU726
 2375 00b0 B2F80C14             ldrh    r1, [r2, #1036]
 2376 00b4 41F40041             orr     r1, r1, #32768
 2377 00b8 A2F80C14             strh    r1, [r2, #1036] @ movhi
 2378 00bc 33E0                 b       .L92
 2379                   .LVL243:
 2380                   .L85:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2381                           .loc 1 2148 9 is_stmt 0 discriminator 3 view .LVU727
 2382                   .LBE68:
 2383                   .LBE67:
 2384                   .LBE66:
2132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = 0U;
 2385                           .loc 1 2132 7 is_stmt 1 view .LVU728
2133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2386                           .loc 1 2133 7 view .LVU729
2133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2387                           .loc 1 2133 20 is_stmt 0 view .LVU730
 2388 00be 0023                 movs    r3, #0
 2389 00c0 8B61                 str     r3, [r1, #24]
2132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = 0U;
 2390                           .loc 1 2132 11 view .LVU731
 2391 00c2 1346                 mov     r3, r2
 2392 00c4 DAE7                 b       .L86
 2393                   .LVL244:
 2394                   .L125:
2139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_CNT(USBx, ep->num, len);
 2395                           .loc 1 2139 7 is_stmt 1 view .LVU732
 2396 00c6 9EB2                 uxth    r6, r3
 2397 00c8 3346                 mov     r3, r6
 2398                   .LVL245:
2139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_CNT(USBx, ep->num, len);
 2399                           .loc 1 2139 7 is_stmt 0 view .LVU733
 2400 00ca CA88                 ldrh    r2, [r1, #6]
 2401 00cc 4969                 ldr     r1, [r1, #20]
 2402                   .LVL246:
2139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_SET_EP_TX_CNT(USBx, ep->num, len);
 2403                           .loc 1 2139 7 view .LVU734
 2404 00ce FFF7FEFF             bl      USB_WritePMA
 2405                   .LVL247:
2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2406                           .loc 1 2140 7 is_stmt 1 view .LVU735
 2407                   .LBB71:
2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2408                           .loc 1 2140 7 view .LVU736
2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2409                           .loc 1 2140 7 view .LVU737
2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2410                           .loc 1 2140 7 view .LVU738
 2411 00d2 B5F85030             ldrh    r3, [r5, #80]
 2412 00d6 2B44                 add     r3, r3, r5
 2413                   .LVL248:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 93


2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2414                           .loc 1 2140 7 view .LVU739
 2415 00d8 2278                 ldrb    r2, [r4]        @ zero_extendqisi2
 2416 00da 03EB0213             add     r3, r3, r2, lsl #4
 2417                   .LVL249:
2140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2418                           .loc 1 2140 7 view .LVU740
 2419 00de A3F80464             strh    r6, [r3, #1028] @ movhi
 2420                   .LBE71:
 2421 00e2 37E0                 b       .L88
 2422                   .LVL250:
 2423                   .L91:
 2424                   .LBB72:
 2425                   .LBB70:
 2426                   .LBB69:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2427                           .loc 1 2148 9 discriminator 4 view .LVU741
 2428 00e4 3E2B                 cmp     r3, #62
 2429 00e6 09D8                 bhi     .L93
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2430                           .loc 1 2148 9 discriminator 5 view .LVU742
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2431                           .loc 1 2148 9 discriminator 5 view .LVU743
 2432 00e8 5908                 lsrs    r1, r3, #1
 2433                   .LVL251:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2434                           .loc 1 2148 9 discriminator 5 view .LVU744
 2435 00ea 13F0010F             tst     r3, #1
 2436 00ee 00D0                 beq     .L94
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2437                           .loc 1 2148 9 discriminator 7 view .LVU745
 2438 00f0 0131                 adds    r1, r1, #1
 2439                   .LVL252:
 2440                   .L94:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2441                           .loc 1 2148 9 discriminator 9 view .LVU746
 2442 00f2 8902                 lsls    r1, r1, #10
 2443                   .LVL253:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2444                           .loc 1 2148 9 is_stmt 0 discriminator 9 view .LVU747
 2445 00f4 89B2                 uxth    r1, r1
 2446 00f6 A2F80C14             strh    r1, [r2, #1036] @ movhi
 2447 00fa 14E0                 b       .L92
 2448                   .LVL254:
 2449                   .L93:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2450                           .loc 1 2148 9 is_stmt 1 discriminator 6 view .LVU748
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2451                           .loc 1 2148 9 discriminator 6 view .LVU749
 2452 00fc 5909                 lsrs    r1, r3, #5
 2453                   .LVL255:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2454                           .loc 1 2148 9 discriminator 6 view .LVU750
 2455 00fe 13F01F0F             tst     r3, #31
 2456 0102 00D1                 bne     .L95
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2457                           .loc 1 2148 9 discriminator 10 view .LVU751
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 94


 2458 0104 0139                 subs    r1, r1, #1
 2459                   .LVL256:
 2460                   .L95:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2461                           .loc 1 2148 9 discriminator 12 view .LVU752
 2462 0106 6FEAC161             mvn     r1, r1, lsl #27
 2463                   .LVL257:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2464                           .loc 1 2148 9 is_stmt 0 discriminator 12 view .LVU753
 2465 010a 6FEA5141             mvn     r1, r1, lsr #17
 2466 010e 89B2                 uxth    r1, r1
 2467 0110 A2F80C14             strh    r1, [r2, #1036] @ movhi
 2468 0114 07E0                 b       .L92
 2469                   .LVL258:
 2470                   .L90:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2471                           .loc 1 2148 9 discriminator 12 view .LVU754
 2472                   .LBE69:
 2473                   .LBE70:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2474                           .loc 1 2148 9 is_stmt 1 discriminator 13 view .LVU755
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2475                           .loc 1 2148 9 discriminator 13 view .LVU756
 2476 0116 B0F85010             ldrh    r1, [r0, #80]
 2477 011a 0144                 add     r1, r1, r0
 2478                   .LVL259:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2479                           .loc 1 2148 9 discriminator 13 view .LVU757
 2480 011c 01EB0212             add     r2, r1, r2, lsl #4
 2481                   .LVL260:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2482                           .loc 1 2148 9 discriminator 13 view .LVU758
 2483 0120 99B2                 uxth    r1, r3
 2484                   .LVL261:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2485                           .loc 1 2148 9 is_stmt 0 discriminator 13 view .LVU759
 2486 0122 A2F80C14             strh    r1, [r2, #1036] @ movhi
 2487                   .LVL262:
 2488                   .L92:
2148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr1;
 2489                           .loc 1 2148 9 discriminator 13 view .LVU760
 2490                   .LBE72:
2149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 2491                           .loc 1 2149 9 is_stmt 1 view .LVU761
2149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 2492                           .loc 1 2149 19 is_stmt 0 view .LVU762
 2493 0126 6289                 ldrh    r2, [r4, #10]
 2494                   .LVL263:
 2495                   .L96:
2157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_FreeUserBuffer(USBx, ep->num, ep->is_in);
 2496                           .loc 1 2157 7 is_stmt 1 view .LVU763
 2497 0128 9BB2                 uxth    r3, r3
 2498                   .LVL264:
2157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_FreeUserBuffer(USBx, ep->num, ep->is_in);
 2499                           .loc 1 2157 7 is_stmt 0 view .LVU764
 2500 012a 6169                 ldr     r1, [r4, #20]
 2501 012c 2846                 mov     r0, r5
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 95


 2502                   .LVL265:
2157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       PCD_FreeUserBuffer(USBx, ep->num, ep->is_in);
 2503                           .loc 1 2157 7 view .LVU765
 2504 012e FFF7FEFF             bl      USB_WritePMA
 2505                   .LVL266:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2506                           .loc 1 2158 7 is_stmt 1 view .LVU766
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2507                           .loc 1 2158 7 view .LVU767
 2508 0132 6378                 ldrb    r3, [r4, #1]    @ zero_extendqisi2
 2509 0134 002B                 cmp     r3, #0
 2510 0136 57D1                 bne     .L103
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2511                           .loc 1 2158 7 discriminator 1 view .LVU768
 2512                   .LBB73:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2513                           .loc 1 2158 7 discriminator 1 view .LVU769
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2514                           .loc 1 2158 7 discriminator 1 view .LVU770
 2515 0138 2278                 ldrb    r2, [r4]        @ zero_extendqisi2
 2516 013a 35F82230             ldrh    r3, [r5, r2, lsl #2]
 2517 013e 9BB2                 uxth    r3, r3
 2518 0140 23F4E043             bic     r3, r3, #28672
 2519 0144 23F07003             bic     r3, r3, #112
 2520                   .LVL267:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2521                           .loc 1 2158 7 discriminator 1 view .LVU771
 2522 0148 43F40043             orr     r3, r3, #32768
 2523                   .LVL268:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2524                           .loc 1 2158 7 is_stmt 0 discriminator 1 view .LVU772
 2525 014c 43F0C003             orr     r3, r3, #192
 2526 0150 25F82230             strh    r3, [r5, r2, lsl #2]    @ movhi
 2527                   .L88:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2528                           .loc 1 2158 7 discriminator 1 view .LVU773
 2529                   .LBE73:
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2530                           .loc 1 2161 5 is_stmt 1 view .LVU774
 2531                   .LBB74:
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2532                           .loc 1 2161 5 view .LVU775
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2533                           .loc 1 2161 5 view .LVU776
 2534 0154 2278                 ldrb    r2, [r4]        @ zero_extendqisi2
 2535 0156 35F82230             ldrh    r3, [r5, r2, lsl #2]
 2536 015a 9BB2                 uxth    r3, r3
 2537 015c 23F4E043             bic     r3, r3, #28672
 2538 0160 23F04003             bic     r3, r3, #64
 2539                   .LVL269:
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2540                           .loc 1 2161 5 view .LVU777
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2541                           .loc 1 2161 5 view .LVU778
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2542                           .loc 1 2161 5 view .LVU779
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 96


 2543                           .loc 1 2161 5 view .LVU780
 2544 0164 83F03003             eor     r3, r3, #48
 2545                   .LVL270:
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2546                           .loc 1 2161 5 view .LVU781
 2547 0168 43F40043             orr     r3, r3, #32768
 2548                   .LVL271:
2161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
 2549                           .loc 1 2161 5 is_stmt 0 view .LVU782
 2550 016c 43F08003             orr     r3, r3, #128
 2551 0170 25F82230             strh    r3, [r5, r2, lsl #2]    @ movhi
 2552                   .LBE74:
 2553 0174 7AE7                 b       .L104
 2554                   .LVL272:
 2555                   .L89:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2556                           .loc 1 2154 9 is_stmt 1 view .LVU783
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2557                           .loc 1 2154 9 view .LVU784
 2558 0176 6EBB                 cbnz    r6, .L97
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2559                           .loc 1 2154 9 discriminator 1 view .LVU785
 2560                   .LBB75:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2561                           .loc 1 2154 9 discriminator 1 view .LVU786
 2562                   .LVL273:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2563                           .loc 1 2154 9 discriminator 1 view .LVU787
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2564                           .loc 1 2154 9 discriminator 1 view .LVU788
 2565 0178 B0F85010             ldrh    r1, [r0, #80]
 2566 017c 0144                 add     r1, r1, r0
 2567                   .LVL274:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2568                           .loc 1 2154 9 discriminator 1 view .LVU789
 2569 017e 01EB0212             add     r2, r1, r2, lsl #4
 2570                   .LVL275:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2571                           .loc 1 2154 9 discriminator 1 view .LVU790
 2572                   .LBB76:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2573                           .loc 1 2154 9 discriminator 1 view .LVU791
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2574                           .loc 1 2154 9 discriminator 1 view .LVU792
 2575 0182 73B9                 cbnz    r3, .L98
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2576                           .loc 1 2154 9 discriminator 3 view .LVU793
 2577 0184 B2F80414             ldrh    r1, [r2, #1028]
 2578                   .LVL276:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2579                           .loc 1 2154 9 is_stmt 0 discriminator 3 view .LVU794
 2580 0188 89B2                 uxth    r1, r1
 2581 018a 21F4F841             bic     r1, r1, #31744
 2582 018e 89B2                 uxth    r1, r1
 2583 0190 A2F80414             strh    r1, [r2, #1028] @ movhi
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2584                           .loc 1 2154 9 is_stmt 1 discriminator 3 view .LVU795
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 97


 2585 0194 B2F80414             ldrh    r1, [r2, #1028]
 2586 0198 41F40041             orr     r1, r1, #32768
 2587 019c A2F80414             strh    r1, [r2, #1028] @ movhi
 2588 01a0 20E0                 b       .L99
 2589                   .LVL277:
 2590                   .L98:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2591                           .loc 1 2154 9 discriminator 4 view .LVU796
 2592 01a2 3E2B                 cmp     r3, #62
 2593 01a4 09D8                 bhi     .L100
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2594                           .loc 1 2154 9 discriminator 5 view .LVU797
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2595                           .loc 1 2154 9 discriminator 5 view .LVU798
 2596 01a6 5908                 lsrs    r1, r3, #1
 2597                   .LVL278:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2598                           .loc 1 2154 9 discriminator 5 view .LVU799
 2599 01a8 13F0010F             tst     r3, #1
 2600 01ac 00D0                 beq     .L101
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2601                           .loc 1 2154 9 discriminator 7 view .LVU800
 2602 01ae 0131                 adds    r1, r1, #1
 2603                   .LVL279:
 2604                   .L101:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2605                           .loc 1 2154 9 discriminator 9 view .LVU801
 2606 01b0 8902                 lsls    r1, r1, #10
 2607                   .LVL280:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2608                           .loc 1 2154 9 is_stmt 0 discriminator 9 view .LVU802
 2609 01b2 89B2                 uxth    r1, r1
 2610 01b4 A2F80414             strh    r1, [r2, #1028] @ movhi
 2611 01b8 14E0                 b       .L99
 2612                   .LVL281:
 2613                   .L100:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2614                           .loc 1 2154 9 is_stmt 1 discriminator 6 view .LVU803
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2615                           .loc 1 2154 9 discriminator 6 view .LVU804
 2616 01ba 5909                 lsrs    r1, r3, #5
 2617                   .LVL282:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2618                           .loc 1 2154 9 discriminator 6 view .LVU805
 2619 01bc 13F01F0F             tst     r3, #31
 2620 01c0 00D1                 bne     .L102
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2621                           .loc 1 2154 9 discriminator 10 view .LVU806
 2622 01c2 0139                 subs    r1, r1, #1
 2623                   .LVL283:
 2624                   .L102:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2625                           .loc 1 2154 9 discriminator 12 view .LVU807
 2626 01c4 6FEAC161             mvn     r1, r1, lsl #27
 2627                   .LVL284:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2628                           .loc 1 2154 9 is_stmt 0 discriminator 12 view .LVU808
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 98


 2629 01c8 6FEA5141             mvn     r1, r1, lsr #17
 2630 01cc 89B2                 uxth    r1, r1
 2631 01ce A2F80414             strh    r1, [r2, #1028] @ movhi
 2632 01d2 07E0                 b       .L99
 2633                   .LVL285:
 2634                   .L97:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2635                           .loc 1 2154 9 discriminator 12 view .LVU809
 2636                   .LBE76:
 2637                   .LBE75:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2638                           .loc 1 2154 9 is_stmt 1 discriminator 13 view .LVU810
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2639                           .loc 1 2154 9 discriminator 13 view .LVU811
 2640                   .LBB77:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2641                           .loc 1 2154 9 discriminator 13 view .LVU812
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2642                           .loc 1 2154 9 discriminator 13 view .LVU813
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2643                           .loc 1 2154 9 discriminator 13 view .LVU814
 2644 01d4 B0F85010             ldrh    r1, [r0, #80]
 2645 01d8 0144                 add     r1, r1, r0
 2646                   .LVL286:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2647                           .loc 1 2154 9 discriminator 13 view .LVU815
 2648 01da 01EB0212             add     r2, r1, r2, lsl #4
 2649                   .LVL287:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2650                           .loc 1 2154 9 discriminator 13 view .LVU816
 2651 01de 99B2                 uxth    r1, r3
 2652                   .LVL288:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2653                           .loc 1 2154 9 is_stmt 0 discriminator 13 view .LVU817
 2654 01e0 A2F80414             strh    r1, [r2, #1028] @ movhi
 2655                   .LVL289:
 2656                   .L99:
2154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****         pmabuffer = ep->pmaaddr0;
 2657                           .loc 1 2154 9 discriminator 13 view .LVU818
 2658                   .LBE77:
2155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 2659                           .loc 1 2155 9 is_stmt 1 view .LVU819
2155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 2660                           .loc 1 2155 19 is_stmt 0 view .LVU820
 2661 01e4 2289                 ldrh    r2, [r4, #8]
 2662                   .LVL290:
2155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       }
 2663                           .loc 1 2155 19 view .LVU821
 2664 01e6 9FE7                 b       .L96
 2665                   .LVL291:
 2666                   .L103:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2667                           .loc 1 2158 7 is_stmt 1 discriminator 2 view .LVU822
 2668 01e8 012B                 cmp     r3, #1
 2669 01ea B3D1                 bne     .L88
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2670                           .loc 1 2158 7 discriminator 3 view .LVU823
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 99


 2671                   .LBB78:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2672                           .loc 1 2158 7 discriminator 3 view .LVU824
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2673                           .loc 1 2158 7 discriminator 3 view .LVU825
 2674 01ec 2278                 ldrb    r2, [r4]        @ zero_extendqisi2
 2675 01ee 35F82230             ldrh    r3, [r5, r2, lsl #2]
 2676 01f2 9BB2                 uxth    r3, r3
 2677 01f4 23F4E043             bic     r3, r3, #28672
 2678 01f8 23F07003             bic     r3, r3, #112
 2679                   .LVL292:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2680                           .loc 1 2158 7 discriminator 3 view .LVU826
 2681 01fc 43F44043             orr     r3, r3, #49152
 2682                   .LVL293:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2683                           .loc 1 2158 7 is_stmt 0 discriminator 3 view .LVU827
 2684 0200 43F08003             orr     r3, r3, #128
 2685 0204 25F82230             strh    r3, [r5, r2, lsl #2]    @ movhi
 2686 0208 A4E7                 b       .L88
 2687                   .LVL294:
 2688                   .L105:
2158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2689                           .loc 1 2158 7 discriminator 3 view .LVU828
 2690                   .LBE78:
2173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = 0U;
 2691                           .loc 1 2173 7 is_stmt 1 view .LVU829
2174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2692                           .loc 1 2174 7 view .LVU830
2174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2693                           .loc 1 2174 20 is_stmt 0 view .LVU831
 2694 020a 0023                 movs    r3, #0
 2695 020c 8B61                 str     r3, [r1, #24]
2173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****       ep->xfer_len = 0U;
 2696                           .loc 1 2173 11 view .LVU832
 2697 020e 1346                 mov     r3, r2
 2698 0210 01E7                 b       .L106
 2699                   .LVL295:
 2700                   .L108:
 2701                   .LBB79:
 2702                   .LBB64:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2703                           .loc 1 2181 7 is_stmt 1 discriminator 2 view .LVU833
 2704 0212 3E2B                 cmp     r3, #62
 2705 0214 09D8                 bhi     .L110
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2706                           .loc 1 2181 7 discriminator 3 view .LVU834
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2707                           .loc 1 2181 7 discriminator 3 view .LVU835
 2708 0216 5C08                 lsrs    r4, r3, #1
 2709                   .LVL296:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2710                           .loc 1 2181 7 discriminator 3 view .LVU836
 2711 0218 13F0010F             tst     r3, #1
 2712 021c 00D0                 beq     .L111
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2713                           .loc 1 2181 7 discriminator 5 view .LVU837
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 100


 2714 021e 0134                 adds    r4, r4, #1
 2715                   .LVL297:
 2716                   .L111:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2717                           .loc 1 2181 7 discriminator 7 view .LVU838
 2718 0220 A402                 lsls    r4, r4, #10
 2719                   .LVL298:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2720                           .loc 1 2181 7 is_stmt 0 discriminator 7 view .LVU839
 2721 0222 A4B2                 uxth    r4, r4
 2722 0224 A2F80C44             strh    r4, [r2, #1036] @ movhi
 2723 0228 10E7                 b       .L109
 2724                   .L110:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2725                           .loc 1 2181 7 is_stmt 1 discriminator 4 view .LVU840
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2726                           .loc 1 2181 7 discriminator 4 view .LVU841
 2727 022a 5C09                 lsrs    r4, r3, #5
 2728                   .LVL299:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2729                           .loc 1 2181 7 discriminator 4 view .LVU842
 2730 022c 13F01F0F             tst     r3, #31
 2731 0230 00D1                 bne     .L112
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2732                           .loc 1 2181 7 discriminator 8 view .LVU843
 2733 0232 013C                 subs    r4, r4, #1
 2734                   .LVL300:
 2735                   .L112:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2736                           .loc 1 2181 7 discriminator 10 view .LVU844
 2737 0234 6FEAC464             mvn     r4, r4, lsl #27
 2738                   .LVL301:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2739                           .loc 1 2181 7 is_stmt 0 discriminator 10 view .LVU845
 2740 0238 6FEA5444             mvn     r4, r4, lsr #17
 2741 023c A4B2                 uxth    r4, r4
 2742 023e A2F80C44             strh    r4, [r2, #1036] @ movhi
 2743 0242 03E7                 b       .L109
 2744                   .LVL302:
 2745                   .L107:
2181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2746                           .loc 1 2181 7 discriminator 10 view .LVU846
 2747                   .LBE64:
 2748                   .LBE79:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2749                           .loc 1 2186 7 is_stmt 1 view .LVU847
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2750                           .loc 1 2186 7 view .LVU848
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2751                           .loc 1 2186 7 view .LVU849
 2752 0244 A6B9                 cbnz    r6, .L113
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2753                           .loc 1 2186 7 discriminator 1 view .LVU850
 2754                   .LBB80:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2755                           .loc 1 2186 7 discriminator 1 view .LVU851
 2756                   .LVL303:
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 101


2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2757                           .loc 1 2186 7 discriminator 1 view .LVU852
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2758                           .loc 1 2186 7 discriminator 1 view .LVU853
 2759 0246 B0F85020             ldrh    r2, [r0, #80]
 2760 024a 0244                 add     r2, r2, r0
 2761                   .LVL304:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2762                           .loc 1 2186 7 discriminator 1 view .LVU854
 2763 024c 0C78                 ldrb    r4, [r1]        @ zero_extendqisi2
 2764 024e 02EB0412             add     r2, r2, r4, lsl #4
 2765                   .LVL305:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2766                           .loc 1 2186 7 discriminator 1 view .LVU855
 2767                   .LBB81:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2768                           .loc 1 2186 7 discriminator 1 view .LVU856
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2769                           .loc 1 2186 7 discriminator 1 view .LVU857
 2770 0252 33BB                 cbnz    r3, .L114
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2771                           .loc 1 2186 7 discriminator 3 view .LVU858
 2772 0254 B2F80444             ldrh    r4, [r2, #1028]
 2773 0258 A4B2                 uxth    r4, r4
 2774 025a 24F4F844             bic     r4, r4, #31744
 2775 025e A4B2                 uxth    r4, r4
 2776 0260 A2F80444             strh    r4, [r2, #1028] @ movhi
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2777                           .loc 1 2186 7 discriminator 3 view .LVU859
 2778 0264 B2F80444             ldrh    r4, [r2, #1028]
 2779 0268 44F40044             orr     r4, r4, #32768
 2780 026c A2F80444             strh    r4, [r2, #1028] @ movhi
 2781                   .LVL306:
 2782                   .L113:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2783                           .loc 1 2186 7 is_stmt 0 discriminator 3 view .LVU860
 2784                   .LBE81:
 2785                   .LBE80:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2786                           .loc 1 2186 7 is_stmt 1 discriminator 15 view .LVU861
 2787                   .LBB83:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2788                           .loc 1 2186 7 discriminator 15 view .LVU862
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2789                           .loc 1 2186 7 discriminator 15 view .LVU863
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2790                           .loc 1 2186 7 discriminator 15 view .LVU864
 2791 0270 4A78                 ldrb    r2, [r1, #1]    @ zero_extendqisi2
 2792 0272 002A                 cmp     r2, #0
 2793 0274 47D1                 bne     .L118
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2794                           .loc 1 2186 7 discriminator 16 view .LVU865
 2795                   .LBB84:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2796                           .loc 1 2186 7 discriminator 16 view .LVU866
 2797                   .LVL307:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 102


 2798                           .loc 1 2186 7 discriminator 16 view .LVU867
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2799                           .loc 1 2186 7 discriminator 16 view .LVU868
 2800 0276 B0F85020             ldrh    r2, [r0, #80]
 2801 027a 0244                 add     r2, r2, r0
 2802                   .LVL308:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2803                           .loc 1 2186 7 discriminator 16 view .LVU869
 2804 027c 0C78                 ldrb    r4, [r1]        @ zero_extendqisi2
 2805 027e 02EB0412             add     r2, r2, r4, lsl #4
 2806                   .LVL309:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2807                           .loc 1 2186 7 discriminator 16 view .LVU870
 2808                   .LBB85:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2809                           .loc 1 2186 7 discriminator 16 view .LVU871
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2810                           .loc 1 2186 7 discriminator 16 view .LVU872
 2811 0282 3BBB                 cbnz    r3, .L119
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2812                           .loc 1 2186 7 discriminator 18 view .LVU873
 2813 0284 B2F80C34             ldrh    r3, [r2, #1036]
 2814                   .LVL310:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2815                           .loc 1 2186 7 is_stmt 0 discriminator 18 view .LVU874
 2816 0288 9BB2                 uxth    r3, r3
 2817 028a 23F4F843             bic     r3, r3, #31744
 2818 028e 9BB2                 uxth    r3, r3
 2819 0290 A2F80C34             strh    r3, [r2, #1036] @ movhi
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2820                           .loc 1 2186 7 is_stmt 1 discriminator 18 view .LVU875
 2821 0294 B2F80C34             ldrh    r3, [r2, #1036]
 2822 0298 43F40043             orr     r3, r3, #32768
 2823 029c A2F80C34             strh    r3, [r2, #1036] @ movhi
 2824 02a0 D4E6                 b       .L109
 2825                   .LVL311:
 2826                   .L114:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2827                           .loc 1 2186 7 is_stmt 0 discriminator 18 view .LVU876
 2828                   .LBE85:
 2829                   .LBE84:
 2830                   .LBE83:
 2831                   .LBB88:
 2832                   .LBB82:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2833                           .loc 1 2186 7 is_stmt 1 discriminator 4 view .LVU877
 2834 02a2 3E2B                 cmp     r3, #62
 2835 02a4 09D8                 bhi     .L115
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2836                           .loc 1 2186 7 discriminator 5 view .LVU878
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2837                           .loc 1 2186 7 discriminator 5 view .LVU879
 2838 02a6 5C08                 lsrs    r4, r3, #1
 2839                   .LVL312:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2840                           .loc 1 2186 7 discriminator 5 view .LVU880
 2841 02a8 13F0010F             tst     r3, #1
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 103


 2842 02ac 00D0                 beq     .L116
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2843                           .loc 1 2186 7 discriminator 7 view .LVU881
 2844 02ae 0134                 adds    r4, r4, #1
 2845                   .LVL313:
 2846                   .L116:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2847                           .loc 1 2186 7 discriminator 9 view .LVU882
 2848 02b0 A402                 lsls    r4, r4, #10
 2849                   .LVL314:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2850                           .loc 1 2186 7 is_stmt 0 discriminator 9 view .LVU883
 2851 02b2 A4B2                 uxth    r4, r4
 2852 02b4 A2F80444             strh    r4, [r2, #1028] @ movhi
 2853 02b8 DAE7                 b       .L113
 2854                   .L115:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2855                           .loc 1 2186 7 is_stmt 1 discriminator 6 view .LVU884
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2856                           .loc 1 2186 7 discriminator 6 view .LVU885
 2857 02ba 5C09                 lsrs    r4, r3, #5
 2858                   .LVL315:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2859                           .loc 1 2186 7 discriminator 6 view .LVU886
 2860 02bc 13F01F0F             tst     r3, #31
 2861 02c0 00D1                 bne     .L117
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2862                           .loc 1 2186 7 discriminator 10 view .LVU887
 2863 02c2 013C                 subs    r4, r4, #1
 2864                   .LVL316:
 2865                   .L117:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2866                           .loc 1 2186 7 discriminator 12 view .LVU888
 2867 02c4 6FEAC464             mvn     r4, r4, lsl #27
 2868                   .LVL317:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2869                           .loc 1 2186 7 is_stmt 0 discriminator 12 view .LVU889
 2870 02c8 6FEA5444             mvn     r4, r4, lsr #17
 2871 02cc A4B2                 uxth    r4, r4
 2872 02ce A2F80444             strh    r4, [r2, #1028] @ movhi
 2873 02d2 CDE7                 b       .L113
 2874                   .LVL318:
 2875                   .L119:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2876                           .loc 1 2186 7 discriminator 12 view .LVU890
 2877                   .LBE82:
 2878                   .LBE88:
 2879                   .LBB89:
 2880                   .LBB87:
 2881                   .LBB86:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2882                           .loc 1 2186 7 is_stmt 1 discriminator 19 view .LVU891
 2883 02d4 3E2B                 cmp     r3, #62
 2884 02d6 09D8                 bhi     .L120
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2885                           .loc 1 2186 7 discriminator 20 view .LVU892
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 104


 2886                           .loc 1 2186 7 discriminator 20 view .LVU893
 2887 02d8 5C08                 lsrs    r4, r3, #1
 2888                   .LVL319:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2889                           .loc 1 2186 7 discriminator 20 view .LVU894
 2890 02da 13F0010F             tst     r3, #1
 2891 02de 00D0                 beq     .L121
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2892                           .loc 1 2186 7 discriminator 22 view .LVU895
 2893 02e0 0134                 adds    r4, r4, #1
 2894                   .LVL320:
 2895                   .L121:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2896                           .loc 1 2186 7 discriminator 24 view .LVU896
 2897 02e2 A402                 lsls    r4, r4, #10
 2898                   .LVL321:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2899                           .loc 1 2186 7 is_stmt 0 discriminator 24 view .LVU897
 2900 02e4 A4B2                 uxth    r4, r4
 2901 02e6 A2F80C44             strh    r4, [r2, #1036] @ movhi
 2902 02ea AFE6                 b       .L109
 2903                   .L120:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2904                           .loc 1 2186 7 is_stmt 1 discriminator 21 view .LVU898
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2905                           .loc 1 2186 7 discriminator 21 view .LVU899
 2906 02ec 5C09                 lsrs    r4, r3, #5
 2907                   .LVL322:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2908                           .loc 1 2186 7 discriminator 21 view .LVU900
 2909 02ee 13F01F0F             tst     r3, #31
 2910 02f2 00D1                 bne     .L122
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2911                           .loc 1 2186 7 discriminator 25 view .LVU901
 2912 02f4 013C                 subs    r4, r4, #1
 2913                   .LVL323:
 2914                   .L122:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2915                           .loc 1 2186 7 discriminator 27 view .LVU902
 2916 02f6 6FEAC463             mvn     r3, r4, lsl #27
 2917                   .LVL324:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2918                           .loc 1 2186 7 is_stmt 0 discriminator 27 view .LVU903
 2919 02fa 6FEA5343             mvn     r3, r3, lsr #17
 2920 02fe 9BB2                 uxth    r3, r3
 2921 0300 A2F80C34             strh    r3, [r2, #1036] @ movhi
 2922 0304 A2E6                 b       .L109
 2923                   .LVL325:
 2924                   .L118:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2925                           .loc 1 2186 7 discriminator 27 view .LVU904
 2926                   .LBE86:
 2927                   .LBE87:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2928                           .loc 1 2186 7 is_stmt 1 discriminator 17 view .LVU905
 2929 0306 012A                 cmp     r2, #1
 2930 0308 7FF4A0AE             bne     .L109
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 105


2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2931                           .loc 1 2186 7 discriminator 28 view .LVU906
 2932 030c B0F85020             ldrh    r2, [r0, #80]
 2933 0310 0244                 add     r2, r2, r0
 2934                   .LVL326:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2935                           .loc 1 2186 7 discriminator 28 view .LVU907
 2936 0312 0C78                 ldrb    r4, [r1]        @ zero_extendqisi2
 2937 0314 02EB0412             add     r2, r2, r4, lsl #4
 2938                   .LVL327:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2939                           .loc 1 2186 7 discriminator 28 view .LVU908
 2940 0318 9BB2                 uxth    r3, r3
 2941                   .LVL328:
2186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     }
 2942                           .loc 1 2186 7 is_stmt 0 discriminator 28 view .LVU909
 2943 031a A2F80C34             strh    r3, [r2, #1036] @ movhi
 2944 031e 95E6                 b       .L109
 2945                   .LBE89:
 2946                           .cfi_endproc
 2947                   .LFE75:
 2949                           .section        .text.USB_ReadPMA,"ax",%progbits
 2950                           .align  1
 2951                           .global USB_ReadPMA
 2952                           .syntax unified
 2953                           .thumb
 2954                           .thumb_func
 2955                           .fpu softvfp
 2957                   USB_ReadPMA:
 2958                   .LVL329:
 2959                   .LFB94:
2536:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** /**
2538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @brief Copy a buffer from user memory area to packet memory area (PMA)
2539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   USBx: USB peripheral instance register address.
2540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   pbUsrBuf pointer to user memory area.
2541:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   wPMABufAddr address into PMA.
2542:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @param   wNBytes: no. of bytes to be copied.
2543:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   * @retval None
2544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   */
2545:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** void USB_ReadPMA(USB_TypeDef *USBx, uint8_t *pbUsrBuf, uint16_t wPMABufAddr, uint16_t wNBytes)
2546:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** {
 2960                           .loc 1 2546 1 is_stmt 1 view -0
 2961                           .cfi_startproc
 2962                           @ args = 0, pretend = 0, frame = 0
 2963                           @ frame_needed = 0, uses_anonymous_args = 0
 2964                           @ link register save eliminated.
 2965                           .loc 1 2546 1 is_stmt 0 view .LVU911
 2966 0000 30B4                 push    {r4, r5}
 2967                   .LCFI15:
 2968                           .cfi_def_cfa_offset 8
 2969                           .cfi_offset 4, -8
 2970                           .cfi_offset 5, -4
2547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t n = (uint32_t)wNBytes >> 1;
 2971                           .loc 1 2547 3 is_stmt 1 view .LVU912
 2972                           .loc 1 2547 34 is_stmt 0 view .LVU913
 2973 0002 5D08                 lsrs    r5, r3, #1
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 106


 2974                   .LVL330:
2548:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t BaseAddr = (uint32_t)USBx;
 2975                           .loc 1 2548 3 is_stmt 1 view .LVU914
2549:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint32_t i, temp;
 2976                           .loc 1 2549 3 view .LVU915
2550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   __IO uint16_t *pdwVal;
 2977                           .loc 1 2550 3 view .LVU916
2551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   uint8_t *pBuf = pbUsrBuf;
 2978                           .loc 1 2551 3 view .LVU917
2552:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   pdwVal = (__IO uint16_t *)(BaseAddr + 0x400U + ((uint32_t)wPMABufAddr * PMA_ACCESS));
 2979                           .loc 1 2553 3 view .LVU918
 2980                           .loc 1 2553 48 is_stmt 0 view .LVU919
 2981 0004 00EB4202             add     r2, r0, r2, lsl #1
 2982                   .LVL331:
 2983                           .loc 1 2553 48 view .LVU920
 2984 0008 02F58062             add     r2, r2, #1024
 2985                   .LVL332:
2554:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   for (i = n; i != 0U; i--)
 2986                           .loc 1 2555 3 is_stmt 1 view .LVU921
 2987                   .L127:
 2988                           .loc 1 2555 3 is_stmt 0 discriminator 1 view .LVU922
 2989 000c 45B1                 cbz     r5, .L131
2556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2557:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     temp = *(__IO uint16_t *)pdwVal;
 2990                           .loc 1 2557 5 is_stmt 1 discriminator 3 view .LVU923
 2991                           .loc 1 2557 12 is_stmt 0 discriminator 3 view .LVU924
 2992 000e 32F8044B             ldrh    r4, [r2], #4
 2993                   .LVL333:
 2994                           .loc 1 2557 12 discriminator 3 view .LVU925
 2995 0012 A4B2                 uxth    r4, r4
 2996                   .LVL334:
2558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pdwVal++;
 2997                           .loc 1 2558 5 is_stmt 1 discriminator 3 view .LVU926
2559:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     *pBuf = (uint8_t)((temp >> 0) & 0xFFU);
 2998                           .loc 1 2559 5 discriminator 3 view .LVU927
 2999                           .loc 1 2559 11 is_stmt 0 discriminator 3 view .LVU928
 3000 0014 0C70                 strb    r4, [r1]
2560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pBuf++;
 3001                           .loc 1 2560 5 is_stmt 1 discriminator 3 view .LVU929
 3002                   .LVL335:
2561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     *pBuf = (uint8_t)((temp >> 8) & 0xFFU);
 3003                           .loc 1 2561 5 discriminator 3 view .LVU930
 3004                           .loc 1 2561 13 is_stmt 0 discriminator 3 view .LVU931
 3005 0016 240A                 lsrs    r4, r4, #8
 3006                   .LVL336:
 3007                           .loc 1 2561 11 discriminator 3 view .LVU932
 3008 0018 4C70                 strb    r4, [r1, #1]
2562:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pBuf++;
 3009                           .loc 1 2562 5 is_stmt 1 discriminator 3 view .LVU933
 3010                           .loc 1 2562 9 is_stmt 0 discriminator 3 view .LVU934
 3011 001a 0231                 adds    r1, r1, #2
 3012                   .LVL337:
2563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #if PMA_ACCESS > 1U
2565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     pdwVal++;
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 107


 3013                           .loc 1 2565 5 is_stmt 1 discriminator 3 view .LVU935
2555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 3014                           .loc 1 2555 25 is_stmt 0 discriminator 3 view .LVU936
 3015 001c 013D                 subs    r5, r5, #1
 3016                   .LVL338:
2555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
 3017                           .loc 1 2555 25 discriminator 3 view .LVU937
 3018 001e F5E7                 b       .L127
 3019                   .L131:
2566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** #endif
2567:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2568:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** 
2569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   if ((wNBytes % 2U) != 0U)
 3020                           .loc 1 2569 3 is_stmt 1 view .LVU938
 3021                           .loc 1 2569 6 is_stmt 0 view .LVU939
 3022 0020 13F0010F             tst     r3, #1
 3023 0024 01D0                 beq     .L126
2570:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   {
2571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     temp = *pdwVal;
 3024                           .loc 1 2571 5 is_stmt 1 view .LVU940
 3025                           .loc 1 2571 12 is_stmt 0 view .LVU941
 3026 0026 1388                 ldrh    r3, [r2]
 3027                   .LVL339:
2572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****     *pBuf = (uint8_t)((temp >> 0) & 0xFFU);
 3028                           .loc 1 2572 5 is_stmt 1 view .LVU942
 3029                           .loc 1 2572 11 is_stmt 0 view .LVU943
 3030 0028 0B70                 strb    r3, [r1]
 3031                   .LVL340:
 3032                   .L126:
2573:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c ****   }
2574:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c **** }
 3033                           .loc 1 2574 1 view .LVU944
 3034 002a 30BC                 pop     {r4, r5}
 3035                   .LCFI16:
 3036                           .cfi_restore 5
 3037                           .cfi_restore 4
 3038                           .cfi_def_cfa_offset 0
 3039                   .LVL341:
 3040                           .loc 1 2574 1 view .LVU945
 3041 002c 7047                 bx      lr
 3042                           .cfi_endproc
 3043                   .LFE94:
 3045                           .text
 3046                   .Letext0:
 3047                           .file 2 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 3048                           .file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 3049                           .file 4 "Drivers/CMSIS/Include/core_cm3.h"
 3050                           .file 5 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h"
 3051                           .file 6 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h"
 3052                           .file 7 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h"
 3053                           .file 8 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h"
 3054                           .file 9 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h"
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 108


DEFINED SYMBOLS
                            *ABS*:0000000000000000 stm32f1xx_ll_usb.c
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:16     .text.USB_CoreInit:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:24     .text.USB_CoreInit:0000000000000000 USB_CoreInit
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:54     .text.USB_EnableGlobalInt:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:61     .text.USB_EnableGlobalInt:0000000000000000 USB_EnableGlobalInt
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:86     .text.USB_DisableGlobalInt:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:93     .text.USB_DisableGlobalInt:0000000000000000 USB_DisableGlobalInt
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:120    .text.USB_SetCurrentMode:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:127    .text.USB_SetCurrentMode:0000000000000000 USB_SetCurrentMode
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:147    .text.USB_DevInit:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:154    .text.USB_DevInit:0000000000000000 USB_DevInit
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:211    .text.USB_SetDevSpeed:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:218    .text.USB_SetDevSpeed:0000000000000000 USB_SetDevSpeed
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:238    .text.USB_FlushTxFifo:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:245    .text.USB_FlushTxFifo:0000000000000000 USB_FlushTxFifo
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:265    .text.USB_FlushRxFifo:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:272    .text.USB_FlushRxFifo:0000000000000000 USB_FlushRxFifo
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:291    .text.USB_ActivateEndpoint:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:298    .text.USB_ActivateEndpoint:0000000000000000 USB_ActivateEndpoint
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:335    .text.USB_ActivateEndpoint:0000000000000020 $d
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:339    .text.USB_ActivateEndpoint:0000000000000024 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1042   .text.USB_DeactivateEndpoint:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1049   .text.USB_DeactivateEndpoint:0000000000000000 USB_DeactivateEndpoint
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1446   .text.USB_WritePacket:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1453   .text.USB_WritePacket:0000000000000000 USB_WritePacket
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1475   .text.USB_ReadPacket:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1482   .text.USB_ReadPacket:0000000000000000 USB_ReadPacket
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1503   .text.USB_EPSetStall:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1510   .text.USB_EPSetStall:0000000000000000 USB_EPSetStall
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1582   .text.USB_EPClearStall:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1589   .text.USB_EPClearStall:0000000000000000 USB_EPClearStall
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1736   .text.USB_StopDevice:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1743   .text.USB_StopDevice:0000000000000000 USB_StopDevice
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1774   .text.USB_SetDevAddress:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1781   .text.USB_SetDevAddress:0000000000000000 USB_SetDevAddress
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1807   .text.USB_DevConnect:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1814   .text.USB_DevConnect:0000000000000000 USB_DevConnect
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1833   .text.USB_DevDisconnect:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1840   .text.USB_DevDisconnect:0000000000000000 USB_DevDisconnect
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1859   .text.USB_ReadInterrupts:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1866   .text.USB_ReadInterrupts:0000000000000000 USB_ReadInterrupts
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1886   .text.USB_ReadDevAllOutEpInterrupt:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1893   .text.USB_ReadDevAllOutEpInterrupt:0000000000000000 USB_ReadDevAllOutEpInterrupt
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1912   .text.USB_ReadDevAllInEpInterrupt:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1919   .text.USB_ReadDevAllInEpInterrupt:0000000000000000 USB_ReadDevAllInEpInterrupt
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1938   .text.USB_ReadDevOutEPInterrupt:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1945   .text.USB_ReadDevOutEPInterrupt:0000000000000000 USB_ReadDevOutEPInterrupt
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1965   .text.USB_ReadDevInEPInterrupt:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1972   .text.USB_ReadDevInEPInterrupt:0000000000000000 USB_ReadDevInEPInterrupt
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1992   .text.USB_ClearInterrupts:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:1999   .text.USB_ClearInterrupts:0000000000000000 USB_ClearInterrupts
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2015   .text.USB_EP0_OutStart:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2022   .text.USB_EP0_OutStart:0000000000000000 USB_EP0_OutStart
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2042   .text.USB_ActivateRemoteWakeup:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2049   .text.USB_ActivateRemoteWakeup:0000000000000000 USB_ActivateRemoteWakeup
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2072   .text.USB_DeActivateRemoteWakeup:0000000000000000 $t
ARM GAS  C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s                   page 109


C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2079   .text.USB_DeActivateRemoteWakeup:0000000000000000 USB_DeActivateRemoteWakeup
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2104   .text.USB_WritePMA:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2111   .text.USB_WritePMA:0000000000000000 USB_WritePMA
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2191   .text.USB_EPStartXfer:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2198   .text.USB_EPStartXfer:0000000000000000 USB_EPStartXfer
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2950   .text.USB_ReadPMA:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\ccf5XQ0a.s:2957   .text.USB_ReadPMA:0000000000000000 USB_ReadPMA

NO UNDEFINED SYMBOLS