summaryrefslogtreecommitdiff
path: root/tinyusb
diff options
context:
space:
mode:
authorhathach <[email protected]>2013-11-06 14:53:18 +0700
committerhathach <[email protected]>2013-11-06 14:53:18 +0700
commit60d444b4521428511fdf7864c9c6e2193f5572b6 (patch)
tree58511da2052f8f2b7079dcfec8ecf915207e4015 /tinyusb
parent58b41a05db5bf564a4d93312d8fdee368604ed55 (diff)
fix a bug with USB1, but still cannot get interrupt occurred on USB1
Diffstat (limited to 'tinyusb')
-rw-r--r--tinyusb/device/dcd_lpc43xx.c3
-rw-r--r--tinyusb/hal/hal_lpc43xx.c2
2 files changed, 3 insertions, 2 deletions
diff --git a/tinyusb/device/dcd_lpc43xx.c b/tinyusb/device/dcd_lpc43xx.c
index 9d38a3d91..cbff0a67f 100644
--- a/tinyusb/device/dcd_lpc43xx.c
+++ b/tinyusb/device/dcd_lpc43xx.c
@@ -256,7 +256,8 @@ static void lpc43xx_controller_init(uint8_t coreid)
lpc_usb->USBCMD_D &= ~0x00FF0000; // Interrupt Threshold Interval = 0
lpc_usb->ENDPOINTLISTADDR = (uint32_t) p_dcd->qhd; // Endpoint List Address has to be 2K alignment
- lpc_usb->USBINTR_D = INT_MASK_USB | INT_MASK_ERROR | INT_MASK_PORT_CHANGE | INT_MASK_RESET | INT_MASK_SUSPEND; // | INT_MASK_SOF| INT_MASK_NAK;
+ lpc_usb->USBSTS_D = lpc_usb->USBSTS_D;
+ lpc_usb->USBINTR_D = INT_MASK_USB | INT_MASK_ERROR | INT_MASK_PORT_CHANGE | INT_MASK_RESET | INT_MASK_SUSPEND; // | INT_MASK_SOF| INT_MASK_NAK;
}
tusb_error_t dcd_init(void)
diff --git a/tinyusb/hal/hal_lpc43xx.c b/tinyusb/hal/hal_lpc43xx.c
index 1c5c221ef..b59b433b3 100644
--- a/tinyusb/hal/hal_lpc43xx.c
+++ b/tinyusb/hal/hal_lpc43xx.c
@@ -112,7 +112,7 @@ tusb_error_t hal_init(void)
#if TUSB_CFG_CONTROLLER_1_MODE & TUSB_MODE_HOST
LPC_USB1->USBMODE_H = LPC43XX_USBMODE_HOST | (LPC43XX_USBMODE_VBUS_HIGH << 5);
#else // TODO OTG
- LPC_USB0->USBMODE_D = LPC43XX_USBMODE_DEVICE;
+ LPC_USB1->USBMODE_D = LPC43XX_USBMODE_DEVICE;
dcd_controller_connect(1);
#endif