diff options
| author | Hierophect <hierophect@gmail.com> | 2019-12-12 12:47:40 -0500 |
|---|---|---|
| committer | Hierophect <hierophect@gmail.com> | 2019-12-12 12:47:40 -0500 |
| commit | 885a1415d0b9b223ce8f77ea4e4d773c2eb28a5c (patch) | |
| tree | 245e239a17b80fe7e67a6eda42739c34a61aad83 | |
| parent | 1244125bdcf6500a01b24773cf798fe01eee4c63 (diff) | |
Update stm32 usb.c
| -rw-r--r-- | ports/stm32f4/supervisor/usb.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/ports/stm32f4/supervisor/usb.c b/ports/stm32f4/supervisor/usb.c index f327050f5..6e9b233a4 100644 --- a/ports/stm32f4/supervisor/usb.c +++ b/ports/stm32f4/supervisor/usb.c @@ -32,6 +32,8 @@ #include "lib/mp-readline/readline.h" #include "stm32f4xx_hal.h" +#include "py/mpconfig.h" + #include "common-hal/microcontroller/Pin.h" void init_usb_hardware(void) { @@ -79,7 +81,21 @@ void init_usb_hardware(void) { HAL_GPIO_Init(GPIOG, &GPIO_InitStruct); never_reset_pin_number(0, 8); #endif + +#ifdef BOARD_NO_VBUS + disable_usb_vbus(); +#endif /* Peripheral clock enable */ __HAL_RCC_USB_OTG_FS_CLK_ENABLE(); } + +STATIC void disable_usb_vbus(void) { +#ifdef USB_OTG_GCCFG_VBDEN + USB_OTG_FS->GCCFG &= ~USB_OTG_GCCFG_VBDEN; +#else + USB_OTG_FS->GCCFG |= USB_OTG_GCCFG_NOVBUSSENS; + USB_OTG_FS->GCCFG &= ~USB_OTG_GCCFG_VBUSBSEN; + USB_OTG_FS->GCCFG &= ~USB_OTG_GCCFG_VBUSASEN; +#endif +} |
