From d7aea88727a856589c6a6ec0cf0b8cc1c8aa608b Mon Sep 17 00:00:00 2001 From: Brian Doherty Date: Sat, 12 Aug 2023 12:46:55 -0500 Subject: [PATCH] Changed NRF52 USB initialization to check for power via USBREGSTATUS instead of waiting for interrupt, in case we've been launched from a bootloader. --- arch/arm/src/nrf52/nrf52_usbd.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/arch/arm/src/nrf52/nrf52_usbd.c b/arch/arm/src/nrf52/nrf52_usbd.c index 70af830be15..658db1b24ae 100644 --- a/arch/arm/src/nrf52/nrf52_usbd.c +++ b/arch/arm/src/nrf52/nrf52_usbd.c @@ -3052,9 +3052,8 @@ static void nrf52_hwinitialize(struct nrf52_usbdev_s *priv) { /* Wait for VBUS */ - /* TODO: connect to POWER USB events */ - - while (getreg32(NRF52_POWER_EVENTS_USBDETECTED) == 0); + while ((getreg32(NRF52_POWER_USBREGSTATUS) & + NRF52_POWER_USBREGSTATUS_VBUSDETECT) == 0) ; /* Errata [187] USBD: USB cannot be enabled */