summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2024-08-01 14:24:23 +0700
committerhathach <[email protected]>2024-08-01 14:24:23 +0700
commit46fd82299040ff8c572f2b991f5226bf18405ffe (patch)
tree64127ae4ba89e020f61bbca4dbb5b36ef1a6e483
parent8407252fa351e80a0abb3cfe4952213f96b486cd (diff)
increase freerto min task stack for some stm32
-rw-r--r--hw/bsp/family_support.cmake19
-rw-r--r--hw/bsp/stm32f0/FreeRTOSConfig/FreeRTOSConfig.h2
-rw-r--r--hw/bsp/stm32g0/FreeRTOSConfig/FreeRTOSConfig.h2
-rw-r--r--hw/bsp/stm32g0/family.cmake5
-rw-r--r--hw/bsp/stm32h5/FreeRTOSConfig/FreeRTOSConfig.h2
-rw-r--r--src/device/usbd.c2
6 files changed, 26 insertions, 6 deletions
diff --git a/hw/bsp/family_support.cmake b/hw/bsp/family_support.cmake
index 6a1e96624..9a7eaeb92 100644
--- a/hw/bsp/family_support.cmake
+++ b/hw/bsp/family_support.cmake
@@ -428,6 +428,19 @@ function(family_flash_stlink TARGET)
endfunction()
+# Add flash st-flash target
+function(family_flash_stflash TARGET)
+ if (NOT DEFINED ST_FLASH)
+ set(ST_FLASH st-flash)
+ endif ()
+
+ add_custom_target(${TARGET}-stflash
+ DEPENDS ${TARGET}
+ COMMAND ${ST_FLASH} write $<TARGET_FILE_DIR:${TARGET}>/${TARGET}.bin 0x8000000
+ )
+endfunction()
+
+
# Add flash openocd target
function(family_flash_openocd TARGET)
if (NOT DEFINED OPENOCD)
@@ -449,6 +462,7 @@ function(family_flash_openocd TARGET)
)
endfunction()
+
# Add flash openocd-wch target
# compiled from https://github.com/hathach/riscv-openocd-wch or https://github.com/dragonlock2/miscboards/blob/main/wch/SDK/riscv-openocd.tar.xz
function(family_flash_openocd_wch TARGET)
@@ -459,6 +473,7 @@ function(family_flash_openocd_wch TARGET)
family_flash_openocd(${TARGET})
endfunction()
+
# Add flash with https://github.com/ch32-rs/wlink
function(family_flash_wlink_rs TARGET)
if (NOT DEFINED WLINK_RS)
@@ -471,6 +486,7 @@ function(family_flash_wlink_rs TARGET)
)
endfunction()
+
# Add flash pycod target
function(family_flash_pyocd TARGET)
if (NOT DEFINED PYOC)
@@ -483,6 +499,7 @@ function(family_flash_pyocd TARGET)
)
endfunction()
+
# Flash with UF2
function(family_flash_uf2 TARGET FAMILY_ID)
add_custom_target(${TARGET}-uf2
@@ -491,6 +508,7 @@ function(family_flash_uf2 TARGET FAMILY_ID)
)
endfunction()
+
# Add flash teensy_cli target
function(family_flash_teensy TARGET)
if (NOT DEFINED TEENSY_CLI)
@@ -503,6 +521,7 @@ function(family_flash_teensy TARGET)
)
endfunction()
+
# Add flash using NXP's LinkServer (redserver)
# https://www.nxp.com/design/software/development-software/mcuxpresso-software-and-tools-/linkserver-for-microcontrollers:LINKERSERVER
function(family_flash_nxplink TARGET)
diff --git a/hw/bsp/stm32f0/FreeRTOSConfig/FreeRTOSConfig.h b/hw/bsp/stm32f0/FreeRTOSConfig/FreeRTOSConfig.h
index 37e7e0943..999dbfe9e 100644
--- a/hw/bsp/stm32f0/FreeRTOSConfig/FreeRTOSConfig.h
+++ b/hw/bsp/stm32f0/FreeRTOSConfig/FreeRTOSConfig.h
@@ -58,7 +58,7 @@
#define configCPU_CLOCK_HZ SystemCoreClock
#define configTICK_RATE_HZ ( 1000 )
#define configMAX_PRIORITIES ( 5 )
-#define configMINIMAL_STACK_SIZE ( 128 )
+#define configMINIMAL_STACK_SIZE ( 200 )
#define configTOTAL_HEAP_SIZE ( configSUPPORT_DYNAMIC_ALLOCATION*4*1024 )
#define configMAX_TASK_NAME_LEN 16
#define configUSE_16_BIT_TICKS 0
diff --git a/hw/bsp/stm32g0/FreeRTOSConfig/FreeRTOSConfig.h b/hw/bsp/stm32g0/FreeRTOSConfig/FreeRTOSConfig.h
index 82cb0cdb3..76133ea2d 100644
--- a/hw/bsp/stm32g0/FreeRTOSConfig/FreeRTOSConfig.h
+++ b/hw/bsp/stm32g0/FreeRTOSConfig/FreeRTOSConfig.h
@@ -58,7 +58,7 @@
#define configCPU_CLOCK_HZ SystemCoreClock
#define configTICK_RATE_HZ ( 1000 )
#define configMAX_PRIORITIES ( 5 )
-#define configMINIMAL_STACK_SIZE ( 128 )
+#define configMINIMAL_STACK_SIZE ( 200 )
#define configTOTAL_HEAP_SIZE ( configSUPPORT_DYNAMIC_ALLOCATION*4*1024 )
#define configMAX_TASK_NAME_LEN 16
#define configUSE_16_BIT_TICKS 0
diff --git a/hw/bsp/stm32g0/family.cmake b/hw/bsp/stm32g0/family.cmake
index b6838c619..0dafa9c0a 100644
--- a/hw/bsp/stm32g0/family.cmake
+++ b/hw/bsp/stm32g0/family.cmake
@@ -15,7 +15,7 @@ set(CMAKE_SYSTEM_PROCESSOR cortex-m0plus CACHE INTERNAL "System Processor")
set(CMAKE_TOOLCHAIN_FILE ${TOP}/examples/build_system/cmake/toolchain/arm_${TOOLCHAIN}.cmake)
set(FAMILY_MCUS STM32G0 CACHE INTERNAL "")
-
+set(OPENOCD_OPTION "-f interface/stlink.cfg -f target/stm32g0x.cfg")
#------------------------------------
# BOARD_TARGET
@@ -112,6 +112,7 @@ function(family_configure_example TARGET RTOS)
target_link_libraries(${TARGET} PUBLIC board_${BOARD} ${TARGET}-tinyusb)
# Flashing
- family_flash_stlink(${TARGET})
family_flash_jlink(${TARGET})
+ family_flash_stlink(${TARGET})
+ #family_flash_openocd(${TARGET})
endfunction()
diff --git a/hw/bsp/stm32h5/FreeRTOSConfig/FreeRTOSConfig.h b/hw/bsp/stm32h5/FreeRTOSConfig/FreeRTOSConfig.h
index cf6e23c1b..6a9c90a4a 100644
--- a/hw/bsp/stm32h5/FreeRTOSConfig/FreeRTOSConfig.h
+++ b/hw/bsp/stm32h5/FreeRTOSConfig/FreeRTOSConfig.h
@@ -58,7 +58,7 @@
#define configCPU_CLOCK_HZ SystemCoreClock
#define configTICK_RATE_HZ ( 1000 )
#define configMAX_PRIORITIES ( 5 )
-#define configMINIMAL_STACK_SIZE ( 128 )
+#define configMINIMAL_STACK_SIZE ( 200 )
#define configTOTAL_HEAP_SIZE ( configSUPPORT_DYNAMIC_ALLOCATION*4*1024 )
#define configMAX_TASK_NAME_LEN 16
#define configUSE_16_BIT_TICKS 0
diff --git a/src/device/usbd.c b/src/device/usbd.c
index d9b20d26d..6d27a3735 100644
--- a/src/device/usbd.c
+++ b/src/device/usbd.c
@@ -1201,7 +1201,7 @@ TU_ATTR_FAST_FUNC void dcd_event_handler(dcd_event_t const* event, bool in_isr)
break;
case DCD_EVENT_SETUP_RECEIVED:
- // TU_ASSERT(event->setup_received.bRequest != 0,);
+ // TU_ASSERT(event->setup_received.bRequest != 0,); // for catching issue with ch32v203 and windows with -O0/-Og
_usbd_queued_setup++;
send = true;
break;