summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2023-07-31 16:21:19 +0700
committerhathach <[email protected]>2023-07-31 16:21:19 +0700
commit0d9973ef87a55276d14c2aa45647f92a8358e9a2 (patch)
tree3b1ad41f22e2afef89edde8bed65e20d3184980d
parentfeb58ebd54e68bc3b7f21b0d168417053c525f0a (diff)
enable_irq since uno bootloader can disable it. systick triggered, however usb still not work with uno
-rw-r--r--hw/bsp/ra/family.c4
-rw-r--r--src/portable/renesas/rusb2/dcd_rusb2.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/hw/bsp/ra/family.c b/hw/bsp/ra/family.c
index b78fdedc7..096f0d0ff 100644
--- a/hw/bsp/ra/family.c
+++ b/hw/bsp/ra/family.c
@@ -92,6 +92,10 @@ const bsp_interrupt_event_t g_interrupt_event_link_select[BSP_ICU_VECTOR_MAX_ENT
//--------------------------------------------------------------------+
void board_init(void) {
+ // Enable global interrupts in CPSR register since board with bootloader such as Arduino Uno R4
+ // can transfer CPU control with CPSR.I bit set to 0 (disable IRQ)
+ __enable_irq();
+
/* Configure pins. */
R_IOPORT_Open(&port_ctrl, &family_pin_cfg);
diff --git a/src/portable/renesas/rusb2/dcd_rusb2.c b/src/portable/renesas/rusb2/dcd_rusb2.c
index 9383923bd..37fd93497 100644
--- a/src/portable/renesas/rusb2/dcd_rusb2.c
+++ b/src/portable/renesas/rusb2/dcd_rusb2.c
@@ -740,6 +740,7 @@ void dcd_init(uint8_t rhport)
rusb->BEMPENB = 1;
rusb->BRDYENB = 1;
+ // If VBUS (detect) pin is not used, application need to call tud_connect() manually after tud_init()
if (rusb->INTSTS0_b.VBSTS) {
dcd_connect(rhport);
}