diff options
| author | hathach <[email protected]> | 2019-11-21 22:20:30 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2019-11-21 22:20:30 +0700 |
| commit | bbec47b647ab7b2e38644ffff60f45b54b791d42 (patch) | |
| tree | 28bdbae7b6b7874b3349358b67362fdee8dce55e | |
| parent | 9fe34c2e622ed8b1333839aae7b823d87e78f0ea (diff) | |
adding tud_isr/tuh_isr with lpc18/43
| -rw-r--r-- | hw/bsp/ea4357/board.mk | 3 | ||||
| -rw-r--r-- | hw/bsp/ea4357/ea4357.c | 25 | ||||
| -rw-r--r-- | hw/bsp/mcb1800/board.mk | 3 | ||||
| -rw-r--r-- | hw/bsp/mcb1800/mcb1800.c | 25 | ||||
| -rw-r--r-- | hw/bsp/ngx4330/board.mk | 3 | ||||
| -rw-r--r-- | hw/bsp/ngx4330/ngx4330.c | 25 | ||||
| -rw-r--r-- | src/device/usbd.h | 3 | ||||
| -rw-r--r-- | src/host/usbh.h | 3 |
8 files changed, 81 insertions, 9 deletions
diff --git a/hw/bsp/ea4357/board.mk b/hw/bsp/ea4357/board.mk index 8e7367fa4..8c3cfd822 100644 --- a/hw/bsp/ea4357/board.mk +++ b/hw/bsp/ea4357/board.mk @@ -16,9 +16,6 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc43xx/lpc_chip_43xx # All source paths should be relative to the top level. LD_FILE = hw/bsp/ea4357/lpc4357.ld -# TODO remove later -SRC_C += src/portable/$(VENDOR)/$(CHIP_FAMILY)/hal_$(CHIP_FAMILY).c - SRC_C += \ $(MCU_DIR)/../gcc/cr_startup_lpc43xx.c \ $(MCU_DIR)/src/chip_18xx_43xx.c \ diff --git a/hw/bsp/ea4357/ea4357.c b/hw/bsp/ea4357/ea4357.c index c276f10d3..e8252f210 100644 --- a/hw/bsp/ea4357/ea4357.c +++ b/hw/bsp/ea4357/ea4357.c @@ -231,6 +231,31 @@ void board_init(void) } //--------------------------------------------------------------------+ +// USB Interrupt Handler +//--------------------------------------------------------------------+ +void USB0_IRQHandler(void) +{ + #if TUSB_OPT_HOST_ENABLED + tuh_isr(0); + #endif + + #if TUSB_OPT_DEVICE_ENABLED + tud_isr(0); + #endif +} + +void USB1_IRQHandler(void) +{ + #if TUSB_OPT_HOST_ENABLED + tuh_isr(1); + #endif + + #if TUSB_OPT_DEVICE_ENABLED + tud_isr(1); + #endif +} + +//--------------------------------------------------------------------+ // Board porting API //--------------------------------------------------------------------+ diff --git a/hw/bsp/mcb1800/board.mk b/hw/bsp/mcb1800/board.mk index 2a0401305..953f5943a 100644 --- a/hw/bsp/mcb1800/board.mk +++ b/hw/bsp/mcb1800/board.mk @@ -16,9 +16,6 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc18xx/lpc_chip_18xx # All source paths should be relative to the top level. LD_FILE = hw/bsp/mcb1800/lpc1857.ld -# TODO remove later -SRC_C += src/portable/$(VENDOR)/$(CHIP_FAMILY)/hal_$(CHIP_FAMILY).c - SRC_C += \ $(MCU_DIR)/../gcc/cr_startup_lpc18xx.c \ $(MCU_DIR)/src/chip_18xx_43xx.c \ diff --git a/hw/bsp/mcb1800/mcb1800.c b/hw/bsp/mcb1800/mcb1800.c index deb17f113..4e75c10dd 100644 --- a/hw/bsp/mcb1800/mcb1800.c +++ b/hw/bsp/mcb1800/mcb1800.c @@ -173,6 +173,31 @@ void board_init(void) } //--------------------------------------------------------------------+ +// USB Interrupt Handler +//--------------------------------------------------------------------+ +void USB0_IRQHandler(void) +{ + #if TUSB_OPT_HOST_ENABLED + tuh_isr(0); + #endif + + #if TUSB_OPT_DEVICE_ENABLED + tud_isr(0); + #endif +} + +void USB1_IRQHandler(void) +{ + #if TUSB_OPT_HOST_ENABLED + tuh_isr(1); + #endif + + #if TUSB_OPT_DEVICE_ENABLED + tud_isr(1); + #endif +} + +//--------------------------------------------------------------------+ // Board porting API //--------------------------------------------------------------------+ diff --git a/hw/bsp/ngx4330/board.mk b/hw/bsp/ngx4330/board.mk index 4e6032fcc..863a4966d 100644 --- a/hw/bsp/ngx4330/board.mk +++ b/hw/bsp/ngx4330/board.mk @@ -16,9 +16,6 @@ MCU_DIR = hw/mcu/nxp/lpcopen/lpc43xx/lpc_chip_43xx # All source paths should be relative to the top level. LD_FILE = hw/bsp/$(BOARD)/ngx4330.ld -# TODO remove later -SRC_C += src/portable/$(VENDOR)/$(CHIP_FAMILY)/hal_$(CHIP_FAMILY).c - SRC_C += \ $(MCU_DIR)/../gcc/cr_startup_lpc43xx.c \ $(MCU_DIR)/src/chip_18xx_43xx.c \ diff --git a/hw/bsp/ngx4330/ngx4330.c b/hw/bsp/ngx4330/ngx4330.c index 669180026..e95f6b059 100644 --- a/hw/bsp/ngx4330/ngx4330.c +++ b/hw/bsp/ngx4330/ngx4330.c @@ -220,6 +220,31 @@ void board_init(void) } //--------------------------------------------------------------------+ +// USB Interrupt Handler +//--------------------------------------------------------------------+ +void USB0_IRQHandler(void) +{ + #if TUSB_OPT_HOST_ENABLED + tuh_isr(0); + #endif + + #if TUSB_OPT_DEVICE_ENABLED + tud_isr(0); + #endif +} + +void USB1_IRQHandler(void) +{ + #if TUSB_OPT_HOST_ENABLED + tuh_isr(1); + #endif + + #if TUSB_OPT_DEVICE_ENABLED + tud_isr(1); + #endif +} + +//--------------------------------------------------------------------+ // Board porting API //--------------------------------------------------------------------+ diff --git a/src/device/usbd.h b/src/device/usbd.h index b3665d7f2..9d39af13a 100644 --- a/src/device/usbd.h +++ b/src/device/usbd.h @@ -47,6 +47,9 @@ bool tud_init (void); // Task function should be called in main/rtos loop
void tud_task (void);
+// Interrupt handler, name alias to DCD
+#define tud_isr dcd_isr
+
// Check if device is connected and configured
bool tud_mounted(void);
diff --git a/src/host/usbh.h b/src/host/usbh.h index 311b2514d..42a2bd095 100644 --- a/src/host/usbh.h +++ b/src/host/usbh.h @@ -68,6 +68,9 @@ typedef struct { //--------------------------------------------------------------------+ void tuh_task(void); +// Interrupt handler, name alias to HCD +#define tuh_isr hcd_isr + tusb_device_state_t tuh_device_get_state (uint8_t dev_addr); static inline bool tuh_device_is_configured(uint8_t dev_addr) { |
