/** * @brief USBH_LL_Init * Initialize the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init(USBH_HandleTypeDef *phost) { if(phost->id == 0) { /* Set the LL Driver parameters */ hhcd_FS.Instance = USB_OTG_FS; hhcd_FS.Init.Host_channels = 11; hhcd_FS.Init.dma_enable = 0; hhcd_FS.Init.low_power_enable = 0; hhcd_FS.Init.phy_itface = HCD_PHY_EMBEDDED; hhcd_FS.Init.Sof_enable = 0; hhcd_FS.Init.speed = HCD_SPEED_FULL; hhcd_FS.Init.vbus_sensing_enable = 0; hhcd_FS.Init.lpm_enable = 0; /* Link the driver to the stack */ hhcd_FS.pData = phost; phost->pData = &hhcd_FS; /* Initialize the LL Driver */ HAL_HCD_Init(&hhcd_FS); } else /*phost->id == 1*/ { /* Set the LL driver parameters */ hhcd_HS.Instance = USB_OTG_HS; hhcd_HS.Init.Host_channels = 11; hhcd_HS.Init.dma_enable = 1; hhcd_HS.Init.low_power_enable = 0; #ifdef USE_USB_HS_IN_FS hhcd_HS.Init.phy_itface = HCD_PHY_EMBEDDED; #else hhcd_HS.Init.phy_itface = HCD_PHY_ULPI; #endif hhcd_HS.Init.Sof_enable = 0; hhcd_HS.Init.speed = HCD_SPEED_HIGH; hhcd_HS.Init.vbus_sensing_enable = 0; hhcd_HS.Init.use_external_vbus = 1; hhcd_HS.Init.lpm_enable = 0; /* Link the driver to the stack */ hhcd_HS.pData = phost; phost->pData = &hhcd_HS; /* Initialize the LL driver */ HAL_HCD_Init(&hhcd_HS); } USBH_LL_SetTimer (phost, HAL_HCD_GetCurrentFrame(&hhcd_HS)); USBH_LL_SetTimer (phost, HAL_HCD_GetCurrentFrame(&hhcd_FS)); return USBH_OK; }
/** * @brief Initializes the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init(USBH_HandleTypeDef *phost) { #ifdef USE_USB_FS /* Set the LL Driver parameters */ hhcd.Instance = USB_OTG_FS; hhcd.Init.Host_channels = 11; hhcd.Init.dma_enable = 0; hhcd.Init.low_power_enable = 0; hhcd.Init.phy_itface = HCD_PHY_EMBEDDED; hhcd.Init.Sof_enable = 0; hhcd.Init.speed = HCD_SPEED_FULL; hhcd.Init.vbus_sensing_enable = 0; hhcd.Init.lpm_enable = 0; /* Link the driver to the stack */ hhcd.pData = phost; phost->pData = &hhcd; /* Initialize the LL Driver */ HAL_HCD_Init(&hhcd); #endif USBH_LL_SetTimer (phost, HAL_HCD_GetCurrentFrame(&hhcd)); return USBH_OK; }
/** * @brief Initializes the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init(USBH_HandleTypeDef *phost) { /*Set LL Driver parameters */ hhcd.Instance = USB_OTG_HS; hhcd.Init.Host_channels = 11; hhcd.Init.dma_enable = 1; hhcd.Init.low_power_enable = 0; hhcd.Init.phy_itface = HCD_PHY_EMBEDDED; hhcd.Init.Sof_enable = 0; hhcd.Init.speed = HCD_SPEED_HIGH; hhcd.Init.vbus_sensing_enable = 0; hhcd.Init.use_external_vbus = 1; /* Link The driver to the stack */ hhcd.pData = phost; phost->pData = &hhcd; /*Initialize LL Driver */ if (HAL_HCD_Init(&hhcd) != HAL_OK) { return USBH_FAIL; } USBH_LL_SetTimer (phost, HAL_HCD_GetCurrentFrame(&hhcd)); return USBH_OK; }
/** * @brief USBH_LL_Init * Initialize the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init(USBH_HandleTypeDef *phost) { /* Change Systick prioity */ //HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0); RCC->AHB1ENR |= RCC_AHB1ENR_OTGHSEN; RCC->AHB1LPENR |= RCC_AHB1LPENR_OTGHSLPEN; /*Set LL Driver parameters */ hHCD.Instance = USB_OTG_HS; hHCD.Init.Host_channels = 11; hHCD.Init.dma_enable = 0; hHCD.Init.low_power_enable = 0; hHCD.Init.phy_itface = HCD_PHY_EMBEDDED; hHCD.Init.Sof_enable = 0; hHCD.Init.speed = HCD_SPEED_FULL; hHCD.Init.vbus_sensing_enable = 0; /* Link The driver to the stack */ hHCD.pData = phost; phost->pData = &hHCD; /*Initialize LL Driver */ HAL_HCD_Init(&hHCD); // USB_OTG_HS->GUSBCFG |= USB_OTG_GUSBCFG_FHMOD; USBH_LL_SetTimer(phost, HAL_HCD_GetCurrentFrame(&hHCD)); return USBH_OK; }
/** * @brief USBH_LL_Init * Initialize the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init (USBH_HandleTypeDef *phost) { /* Init USB_IP */ if (phost->id == HOST_HS) { /* Link The driver to the stack */ hhcd_USB_OTG_HS.pData = phost; phost->pData = &hhcd_USB_OTG_HS; hhcd_USB_OTG_HS.Instance = USB_OTG_HS; hhcd_USB_OTG_HS.Init.dev_endpoints = 6; hhcd_USB_OTG_HS.Init.Host_channels = 12; hhcd_USB_OTG_HS.Init.speed = HCD_SPEED_FULL; hhcd_USB_OTG_HS.Init.dma_enable = DISABLE; hhcd_USB_OTG_HS.Init.phy_itface = USB_OTG_EMBEDDED_PHY; hhcd_USB_OTG_HS.Init.Sof_enable = DISABLE; hhcd_USB_OTG_HS.Init.low_power_enable = DISABLE; hhcd_USB_OTG_HS.Init.vbus_sensing_enable = DISABLE; hhcd_USB_OTG_HS.Init.use_external_vbus = DISABLE; if (HAL_HCD_Init(&hhcd_USB_OTG_HS) != HAL_OK) { Error_Handler(); } USBH_LL_SetTimer (phost, HAL_HCD_GetCurrentFrame(&hhcd_USB_OTG_HS)); } return USBH_OK; }
/** * @brief Initializes the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init(USBH_HandleTypeDef *phost) { #ifdef USE_USB_FS /* Set the LL driver parameters */ hhcd.Instance = USB_OTG_FS; hhcd.Init.Host_channels = 11; hhcd.Init.dma_enable = 0; hhcd.Init.low_power_enable = 0; hhcd.Init.phy_itface = HCD_PHY_EMBEDDED; hhcd.Init.Sof_enable = 0; /* Link the driver to the stack */ hhcd.pData = phost; phost->pData = &hhcd; /* Initialize the LL Driver */ HAL_HCD_Init(&hhcd); #endif #ifdef USE_USB_HS /* Set the LL driver parameters */ hhcd.Instance = USB_OTG_HS; hhcd.Init.Host_channels = 11; hhcd.Init.dma_enable = 0; hhcd.Init.low_power_enable = 0; #ifdef USE_USB_HS_IN_FS hhcd.Init.phy_itface = HCD_PHY_EMBEDDED; #else hhcd.Init.phy_itface = HCD_PHY_ULPI; #endif hhcd.Init.Sof_enable = 0; hhcd.Init.speed = HCD_SPEED_HIGH; hhcd.Init.use_external_vbus = 1; /* Link the driver to the stack */ hhcd.pData = phost; phost->pData = &hhcd; /* Initialize the LL driver */ HAL_HCD_Init(&hhcd); #endif /*USE_USB_HS*/ USBH_LL_SetTimer(phost, HAL_HCD_GetCurrentFrame(&hhcd)); return USBH_OK; }
/** * @brief Initializes the Low Level portion of the Host driver. * @param phost: Host handle * @retval USBH Status */ USBH_StatusTypeDef USBH_LL_Init(USBH_HandleTypeDef *phost) { /* Set the LL driver parameters */ handleHCD.Instance = USB_OTG_FS; handleHCD.Init.speed = HCD_SPEED_FULL; handleHCD.Init.Host_channels = 11; handleHCD.Init.dma_enable = 0; handleHCD.Init.low_power_enable = 0; handleHCD.Init.phy_itface = HCD_PHY_EMBEDDED; handleHCD.Init.Sof_enable = 0; handleHCD.Init.vbus_sensing_enable = 0; handleHCD.Init.use_external_vbus = 0; /* Link the driver to the stack */ handleHCD.pData = phost; phost->pData = &handleHCD; /* Initialize the LL driver */ HAL_HCD_Init(&handleHCD); USBH_LL_SetTimer(phost, HAL_HCD_GetCurrentFrame(&handleHCD)); return USBH_OK; }