diff --git a/cpu/stm32/include/tinyusb_hw_defaults.h b/cpu/stm32/include/tinyusb_hw_defaults.h index 4128227552..a7a0a51eeb 100644 --- a/cpu/stm32/include/tinyusb_hw_defaults.h +++ b/cpu/stm32/include/tinyusb_hw_defaults.h @@ -83,12 +83,24 @@ extern "C" { #define TINYUSB_TUH_RHPORT 1 #endif +/* + * Only if the module `periph_usbdev_hs_utmi` or `periph_usbdev_hs_ulpi` is + * enabled for the HS port, a HS PHY is used and OPT_MODE_HIGH_SPEED must be + * set. Otherwise, the built-in on-chip FS PHY is used and + * OPT_MODE_DEFAULT_SPEED should be set so tinyUSB can select the correct speed. + */ +#if (MODULE_PERIPH_USBDEV_HS_UTMI || MODULE_PERIPH_USBDEV_HS_ULPI) +#define TINYUSB_OPT_SPEED OPT_MODE_HIGH_SPEED +#else +#define TINYUSB_OPT_SPEED OPT_MODE_DEFAULT_SPEED +#endif + /* * Since tinyUSB does not support host mode for STM32 MCUs yet, only * OPT_MODE_DEVICE is enabled for the port. Once tinyUSB supports the host mode, * OPT_MODE_HOST could be added to CFG_TUSB_RHPORT1_MODE */ -#define CFG_TUSB_RHPORT1_MODE (OPT_MODE_DEVICE | OPT_MODE_HIGH_SPEED) +#define CFG_TUSB_RHPORT1_MODE (OPT_MODE_DEVICE | TINYUSB_OPT_SPEED) #else diff --git a/pkg/tinyusb/contrib/include/tusb_config.h b/pkg/tinyusb/contrib/include/tusb_config.h index 06181ab416..f090b43113 100644 --- a/pkg/tinyusb/contrib/include/tusb_config.h +++ b/pkg/tinyusb/contrib/include/tusb_config.h @@ -251,10 +251,6 @@ */ #define CFG_TUD_ENABLED MODULE_TINYUSB_DEVICE -#ifndef CFG_TUD_MAX_SPEED -#define CFG_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED -#endif - #ifndef CFG_TUD_ENDPOINT0_SIZE #define CFG_TUD_ENDPOINT0_SIZE CONFIG_TUSBD_EP0_SIZE #endif diff --git a/pkg/tinyusb/hw/hw_stm32_otg.c b/pkg/tinyusb/hw/hw_stm32_otg.c index e6bccb2636..2346f38d68 100644 --- a/pkg/tinyusb/hw/hw_stm32_otg.c +++ b/pkg/tinyusb/hw/hw_stm32_otg.c @@ -148,7 +148,7 @@ static int tinyusb_hw_init_dev(const dwc2_usb_otg_fshs_config_t *conf) global_regs->GCCFG |= USB_OTG_GCCFG_PHYHSEN; /* determine the PLL input clock of the USB HS PHY from HSE clock */ - switch (CLOCK_HSE) { + switch (CONFIG_CLOCK_HSE) { case 12000000: USB_HS_PHYC->USB_HS_PHYC_PLL |= USB_HS_PHYC_PLL1_PLLSEL_12MHZ; break; diff --git a/tests/pkg_tflite-micro/Makefile.ci b/tests/pkg_tflite-micro/Makefile.ci index 3651d0e58e..dbcca31b9e 100644 --- a/tests/pkg_tflite-micro/Makefile.ci +++ b/tests/pkg_tflite-micro/Makefile.ci @@ -93,6 +93,7 @@ BOARD_INSUFFICIENT_MEMORY := \ stk3600 \ stm32f030f4-demo \ stm32f0discovery \ + stm32f3discovery \ stm32f7508-dk \ stm32g0316-disco \ stm32l0538-disco \