summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2018-11-21 17:03:39 +0700
committerhathach <[email protected]>2018-11-21 17:03:39 +0700
commit1d6fc49fa974903ca14af6454671ea816fb2d6dd (patch)
tree01215f73adf306790355968519e513b2cb33b4a6
parent3cad1d11341bb70612ce94559bd93c21bc43b498 (diff)
clean up
-rw-r--r--hw/bsp/metro_m0_express/board_metro_m0_express.c2
-rw-r--r--hw/bsp/metro_m4_express/board_metro_m4_express.c2
-rw-r--r--src/portable/microchip/samd21/dcd_samd21.c14
-rw-r--r--src/portable/microchip/samd51/dcd_samd51.c14
4 files changed, 10 insertions, 22 deletions
diff --git a/hw/bsp/metro_m0_express/board_metro_m0_express.c b/hw/bsp/metro_m0_express/board_metro_m0_express.c
index 6b4f185ac..471aa4b25 100644
--- a/hw/bsp/metro_m0_express/board_metro_m0_express.c
+++ b/hw/bsp/metro_m0_express/board_metro_m0_express.c
@@ -76,7 +76,7 @@ void board_init(void)
gpio_set_pin_level(BOARD_LED0, 1-LED_STATE_ON);
#if CFG_TUSB_OS == OPT_OS_NONE
- // Tick init
+ // Tick init, samd SystemCoreClock may not correct
SysTick_Config(SystemCoreClock/1000);
#endif
diff --git a/hw/bsp/metro_m4_express/board_metro_m4_express.c b/hw/bsp/metro_m4_express/board_metro_m4_express.c
index 4e55a9201..9d2bc2b78 100644
--- a/hw/bsp/metro_m4_express/board_metro_m4_express.c
+++ b/hw/bsp/metro_m4_express/board_metro_m4_express.c
@@ -75,7 +75,7 @@ void board_init(void)
// Systick init
#if CFG_TUSB_OS == OPT_OS_NONE
- // Tick init
+ // Tick init, samd SystemCoreClock may not correct
SysTick_Config(SystemCoreClock / 1000);
#endif
diff --git a/src/portable/microchip/samd21/dcd_samd21.c b/src/portable/microchip/samd21/dcd_samd21.c
index 0102685d2..b31db547d 100644
--- a/src/portable/microchip/samd21/dcd_samd21.c
+++ b/src/portable/microchip/samd21/dcd_samd21.c
@@ -41,21 +41,11 @@
#if TUSB_OPT_DEVICE_ENABLED && CFG_TUSB_MCU == OPT_MCU_SAMD21
#include "device/dcd.h"
-
-#include "device/usbd.h"
-#include "device/usbd_pvt.h" // to use defer function helper
-
#include "sam.h"
/*------------------------------------------------------------------*/
/* MACRO TYPEDEF CONSTANT ENUM
*------------------------------------------------------------------*/
-enum
-{
- // Max allowed by USB specs
- MAX_PACKET_SIZE = 64,
-};
-
static ATTR_ALIGNED(4) UsbDeviceDescBank sram_registers[8][2];
static ATTR_ALIGNED(4) uint8_t _setup_packet[8];
@@ -134,6 +124,10 @@ bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const * desc_edpt)
}
size_value++;
}
+
+ // unsupported endpoint size
+ if ( size_value == 7 && desc_edpt->wMaxPacketSize.size != 1023 ) return false;
+
bank->PCKSIZE.bit.SIZE = size_value;
UsbDeviceEndpoint* ep = &USB->DEVICE.DeviceEndpoint[epnum];
diff --git a/src/portable/microchip/samd51/dcd_samd51.c b/src/portable/microchip/samd51/dcd_samd51.c
index 023a706ea..6fff12ba7 100644
--- a/src/portable/microchip/samd51/dcd_samd51.c
+++ b/src/portable/microchip/samd51/dcd_samd51.c
@@ -41,21 +41,11 @@
#if TUSB_OPT_DEVICE_ENABLED && CFG_TUSB_MCU == OPT_MCU_SAMD51
#include "device/dcd.h"
-
-#include "device/usbd.h"
-#include "device/usbd_pvt.h" // to use defer function helper
-
#include "sam.h"
/*------------------------------------------------------------------*/
/* MACRO TYPEDEF CONSTANT ENUM
*------------------------------------------------------------------*/
-enum
-{
- // Max allowed by USB specs
- MAX_PACKET_SIZE = 64,
-};
-
static UsbDeviceDescBank sram_registers[8][2];
static ATTR_ALIGNED(4) uint8_t _setup_packet[8];
@@ -134,6 +124,10 @@ bool dcd_edpt_open (uint8_t rhport, tusb_desc_endpoint_t const * desc_edpt)
}
size_value++;
}
+
+ // unsupported endpoint size
+ if ( size_value == 7 && desc_edpt->wMaxPacketSize.size != 1023 ) return false;
+
bank->PCKSIZE.bit.SIZE = size_value;
UsbDeviceEndpoint* ep = &USB->DEVICE.DeviceEndpoint[epnum];