From 2c8596edebaedd0ceae46a56385c71c83dda531c Mon Sep 17 00:00:00 2001 From: hathach Date: Mon, 4 Mar 2013 18:46:02 +0700 Subject: abstract call chains from hal usb isr --- tinyusb/hal/hal.h | 4 ++++ tinyusb/hal/hal_lpc43xx.c | 14 ++++++++++++++ tinyusb/hal/hal_lpc43xx.h | 3 --- 3 files changed, 18 insertions(+), 3 deletions(-) (limited to 'tinyusb/hal') diff --git a/tinyusb/hal/hal.h b/tinyusb/hal/hal.h index 9afad4726..ad77055eb 100644 --- a/tinyusb/hal/hal.h +++ b/tinyusb/hal/hal.h @@ -68,6 +68,10 @@ extern "C" { #endif +// callback from tusb.h +extern void tusb_isr(uint8_t controller_id); + + /** \brief USB hardware init * * \param[in] para1 diff --git a/tinyusb/hal/hal_lpc43xx.c b/tinyusb/hal/hal_lpc43xx.c index f7280041e..770ffd4ce 100644 --- a/tinyusb/hal/hal_lpc43xx.c +++ b/tinyusb/hal/hal_lpc43xx.c @@ -54,4 +54,18 @@ tusb_error_t hal_init() return TUSB_ERROR_NONE; } +void USB0_IRQHandler(void) +{ +#if TUSB_CFG_CONTROLLER0_MODE + tusb_isr(0); +#endif +} + +void USB1_IRQHandler(void) +{ +#if TUSB_CFG_CONTROLLER1_MODE + tusb_isr(1); +#endif +} + #endif diff --git a/tinyusb/hal/hal_lpc43xx.h b/tinyusb/hal/hal_lpc43xx.h index 0d9e4c8be..63da8a37c 100644 --- a/tinyusb/hal/hal_lpc43xx.h +++ b/tinyusb/hal/hal_lpc43xx.h @@ -61,9 +61,6 @@ #define DEVICE_ROM_REG_BASE LPC_USB0_BASE // TODO USB1 #define DEVICE_ROM_DRIVER_ADDR 0x1040011C -#define tusb_1st_isr USB0_IRQHandler -#define tusb_2nd_isr - static inline void hal_interrupt_enable() { NVIC_EnableIRQ(USB0_IRQn); // TODO USB1 -- cgit v1.3.1