fix(freertos): workaround a hardware bug related to HWLP coprocessor

This commit manually sets the HWLP context to dirty when a Task that needs it is scheduled it.
This commit is contained in:
Omar Chebib
2025-05-15 15:48:45 +08:00
parent 087d7db455
commit acd976161f
4 changed files with 107 additions and 86 deletions
@@ -483,6 +483,10 @@ config SOC_CPU_HAS_HWLOOP
bool
default y
config SOC_CPU_HAS_HWLOOP_STATE_BUG
bool
default y
config SOC_CPU_HAS_PIE
bool
default y
@@ -171,6 +171,7 @@
#define SOC_CPU_HAS_FPU 1
#define SOC_CPU_HAS_FPU_EXT_ILL_BUG 1 // EXT_ILL CSR doesn't support FLW/FSW
#define SOC_CPU_HAS_HWLOOP 1
#define SOC_CPU_HAS_HWLOOP_STATE_BUG 1 // HWLOOP state doesn't go to DIRTY after executing the last instruction of a loop
/* PIE coprocessor assembly is only supported with GCC compiler */
#ifndef __clang__
#define SOC_CPU_HAS_PIE 1