summaryrefslogtreecommitdiff
path: root/ports/nrf/supervisor
diff options
context:
space:
mode:
authorhathach <thach@tinyusb.org>2019-01-30 14:13:07 +0700
committerhathach <thach@tinyusb.org>2019-01-30 14:13:07 +0700
commit164e1e23419450ac8cd72af01051ec6fd299bd92 (patch)
tree5951e75739030b788be88ba277cabda42fe6e037 /ports/nrf/supervisor
parentd1fb384a4a4cda91f293aac7ae49c570a97daa7c (diff)
re-init usb hardware when enable/disable SD
Diffstat (limited to 'ports/nrf/supervisor')
-rw-r--r--ports/nrf/supervisor/usb.c21
1 files changed, 2 insertions, 19 deletions
diff --git a/ports/nrf/supervisor/usb.c b/ports/nrf/supervisor/usb.c
index 52eb07040..5a4d5f193 100644
--- a/ports/nrf/supervisor/usb.c
+++ b/ports/nrf/supervisor/usb.c
@@ -36,9 +36,8 @@
#include "nrf_soc.h"
#endif
-/* tinyusb function that handles power event (detected, ready, removed)
- * We must call it within SD's SOC event handler, or set it as power event handler if SD is not enabled.
- */
+// tinyusb function that handles power event (detected, ready, removed)
+// We must call it within SD's SOC event handler, or set it as power event handler if SD is not enabled.
extern void tusb_hal_nrf_power_event(uint32_t event);
void init_usb_hardware(void) {
@@ -46,10 +45,6 @@ void init_usb_hardware(void) {
// 2 is max priority (0, 1 are reserved for SD)
NVIC_SetPriority(USBD_IRQn, 2);
- // USB power may already be ready at this time -> no event generated
- // We need to invoke the handler based on the status initially
- uint32_t usb_reg;
-
#ifdef SOFTDEVICE_PRESENT
uint8_t sd_en = false;
(void) sd_softdevice_is_enabled(&sd_en);
@@ -58,8 +53,6 @@ void init_usb_hardware(void) {
sd_power_usbdetected_enable(true);
sd_power_usbpwrrdy_enable(true);
sd_power_usbremoved_enable(true);
-
- sd_power_usbregstatus_get(&usb_reg);
}else
#endif
{
@@ -72,15 +65,5 @@ void init_usb_hardware(void) {
nrfx_power_usbevt_init(&config);
nrfx_power_usbevt_enable();
-
- usb_reg = NRF_POWER->USBREGSTATUS;
- }
-
- if ( usb_reg & POWER_USBREGSTATUS_VBUSDETECT_Msk ) {
- tusb_hal_nrf_power_event(NRFX_POWER_USB_EVT_DETECTED);
- }
-
- if ( usb_reg & POWER_USBREGSTATUS_OUTPUTRDY_Msk ) {
- tusb_hal_nrf_power_event(NRFX_POWER_USB_EVT_READY);
}
}