From df5b2f7911662c0761bf1877e8f6f35b7b0450e9 Mon Sep 17 00:00:00 2001 From: "tsubashmail@gmail.com" Date: Wed, 12 Apr 2023 13:41:35 +1000 Subject: [PATCH] Tools: port for STM32L4+ processor Added support for stm32l4+ processor - Added scripts for hwdef generation - Tested in custom hardware prototype (stm32l4r5vit6) - Tested all peripherals and auto pilot modes. --- Tools/AP_Bootloader/bl_protocol.cpp | 3 ++ Tools/CPUInfo/output-PixFlamingo.txt | 71 ++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100755 Tools/CPUInfo/output-PixFlamingo.txt diff --git a/Tools/AP_Bootloader/bl_protocol.cpp b/Tools/AP_Bootloader/bl_protocol.cpp index c4577cd231..0bacbce147 100644 --- a/Tools/AP_Bootloader/bl_protocol.cpp +++ b/Tools/AP_Bootloader/bl_protocol.cpp @@ -316,6 +316,9 @@ jump_to_app() #elif defined(STM32L4) rccDisableAPB1R1(~0); rccDisableAPB1R2(~0); +#elif defined(STM32L4PLUS) + rccDisableAPB1R1(~0); + rccDisableAPB1R2(~0); #else rccDisableAPB1(~0); #endif diff --git a/Tools/CPUInfo/output-PixFlamingo.txt b/Tools/CPUInfo/output-PixFlamingo.txt new file mode 100755 index 0000000000..b33cc18a18 --- /dev/null +++ b/Tools/CPUInfo/output-PixFlamingo.txt @@ -0,0 +1,71 @@ +SYSCLK 120MHz +Type sizes: +char : 1 +short : 2 +int : 4 +long : 4 +long long : 8 +bool : 1 +void* : 4 +printing NaN: nan +printing +Inf: inf +printing -Inf: -inf + +Operation timings: +Note: timings for some operations are very data dependent +nop 0.0105 usec/call +micros() 0.9710 usec/call +micros16() 0.1179 usec/call +millis() 2.0830 usec/call +millis16() 2.1672 usec/call +micros64() 1.0273 usec/call +fadd 0.0648 usec/call +fsub 0.0630 usec/call +fmul 0.0656 usec/call +fdiv /= 0.1738 usec/call +fdiv 2/x 0.1668 usec/call +dadd 0.8870 usec/call +dsub 0.8592 usec/call +dmul 0.4650 usec/call +ddiv 0.5958 usec/call +sinf() 1.3428 usec/call +cosf() 1.2680 usec/call +arm_sin_f32() 0.4202 usec/call +arm_cos_f32() 0.4472 usec/call +tanf() 2.0798 usec/call +acosf() 1.3822 usec/call +asinf() 1.4354 usec/call +atan2f() 2.0736 usec/call +sqrtf() 0.1790 usec/call +sin() 1.3470 usec/call +cos() 1.2674 usec/call +tan() 2.0820 usec/call +acos() 1.3848 usec/call +asin() 1.4472 usec/call +atan2() 2.0726 usec/call +sqrt() 0.1834 usec/call +arm_sqrt_f32() 0.2216 usec/call +sq() 0.0490 usec/call +powf(v,2) 0.0478 usec/call +powf(v,3.1) 6.9318 usec/call +EKF 48.7400 usec/call +iadd8 0.0854 usec/call +isub8 0.0850 usec/call +imul8 0.0820 usec/call +idiv8 0.0870 usec/call +iadd16 0.0584 usec/call +isub16 0.0630 usec/call +imul16 0.0602 usec/call +idiv16 0.1202 usec/call +iadd32 0.0478 usec/call +isub32 0.0544 usec/call +imul32 0.0496 usec/call +idiv32 0.0884 usec/call +iadd64 0.0990 usec/call +isub64 0.1028 usec/call +imul64 0.1518 usec/call +idiv64 0.9588 usec/call +memcpy128 0.9161 usec/call +memset128 1.0854 usec/call +delay(1) 1018.43 usec/call +SEM 2.2314 usec/call