diff options
author | Damien George <damien.p.george@gmail.com> | 2016-04-17 12:00:34 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2016-04-17 12:02:26 +0100 |
commit | aed1da913b2112c9b1bee6cbe03f5dd9b35334c8 (patch) | |
tree | baa99ebe33624e8d73548537b81913a381d71ec5 | |
parent | 53521152a8999448e1ca6bb1b2a16685423bf373 (diff) | |
download | micropython-aed1da913b2112c9b1bee6cbe03f5dd9b35334c8.tar.gz micropython-aed1da913b2112c9b1bee6cbe03f5dd9b35334c8.zip |
stmhal: L4: Modify usbd_conf.c to support L4 MCU.
Original patch was authored by Tobias Badertscher / @tobbad, but it was
reworked to split UART edits from USB edits.
-rw-r--r-- | stmhal/usbd_conf.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/stmhal/usbd_conf.c b/stmhal/usbd_conf.c index ad449d9a1b..1da987d89a 100644 --- a/stmhal/usbd_conf.c +++ b/stmhal/usbd_conf.c @@ -94,6 +94,20 @@ void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd) /* Enable USB FS Clocks */
__USB_OTG_FS_CLK_ENABLE();
+#if defined (MCU_SERIES_L4)
+ /* Enable VDDUSB */
+ if(__HAL_RCC_PWR_IS_CLK_DISABLED())
+ {
+ __HAL_RCC_PWR_CLK_ENABLE();
+ HAL_PWREx_EnableVddUSB();
+ __HAL_RCC_PWR_CLK_DISABLE();
+ }
+ else
+ {
+ HAL_PWREx_EnableVddUSB();
+ }
+#endif
+
/* Set USBFS Interrupt priority */
HAL_NVIC_SetPriority(OTG_FS_IRQn, IRQ_PRI_OTG_FS, IRQ_SUBPRI_OTG_FS);
@@ -296,9 +310,11 @@ void HAL_PCD_ResetCallback(PCD_HandleTypeDef *hpcd) /* Set USB Current Speed */
switch(hpcd->Init.speed)
{
+#if defined(PCD_SPEED_HIGH)
case PCD_SPEED_HIGH:
speed = USBD_SPEED_HIGH;
break;
+#endif
case PCD_SPEED_FULL:
speed = USBD_SPEED_FULL;
@@ -399,6 +415,10 @@ if (pdev->id == USB_PHY_FS_ID) pcd_fs_handle.Init.phy_itface = PCD_PHY_EMBEDDED;
pcd_fs_handle.Init.Sof_enable = 1;
pcd_fs_handle.Init.speed = PCD_SPEED_FULL;
+#if defined(MCU_SERIES_L4)
+ pcd_fs_handle.Init.lpm_enable = DISABLE;
+ pcd_fs_handle.Init.battery_charging_enable = DISABLE;
+#endif
#if !defined(MICROPY_HW_USB_VBUS_DETECT_PIN)
pcd_fs_handle.Init.vbus_sensing_enable = 0; // No VBUS Sensing on USB0
#else
|