Skip to content

Commit

Permalink
Release v1.16.2
Browse files Browse the repository at this point in the history
  • Loading branch information
RKOUSTM committed Dec 14, 2021
1 parent c7c5ec9 commit f8cefdf
Show file tree
Hide file tree
Showing 11,498 changed files with 126,802 additions and 187,569 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
116 changes: 116 additions & 0 deletions Drivers/CMSIS/DSP/DSP_Lib_TestSuite/buildDspLibs.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
@echo off

set UVEXE=C:\Keil_v5\UV4\UV4.EXE
set CURDIR=%CD%

if .%1==. goto help
for %%a in (ARM GCC) do if %1==%%a goto startBuild
goto help

:startBuild
echo.
echo Building DSP Libraries %1

if %1==ARM goto buildARM
if %1==GCC goto buildGCC
goto err

:buildARM
:buildGCC
cd ..\DSP_Lib\Source\%1

echo Building DSP Library for Cortex-M0 Little Endian
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM0l" -o "DspLib_cortexM0l_build.log"

echo Building DSP Library for Cortex-M3 Little Endian
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM3l" -o "DspLib_cortexM3l_build.log"

echo Building DSP Library for Cortex-M4 Little Endian
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM4l" -o "DspLib_cortexM4l_build.log"

echo Building DSP Library for Cortex-M4 Little Endian with single precision FPU
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM4lf" -o "DspLib_cortexM4lf_build.log"

echo Building DSP Library for Cortex-M7 Little Endian
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM7l" -o "DspLib_cortexM7l_build.log"

echo Building DSP Library for Cortex-M7 Little Endian with single precision FPU
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM7lfsp" -o "DspLib_cortexM7lfsp_build.log"

echo Building DSP Library for Cortex-M7 Little Endian with double precision FPU
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM7lfdp" -o "DspLib_cortexM7lfdp_build.log"

echo Building DSP Library for ARMv8-M Baseline Little Endian
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MBLl" -o "DspLib_ARMv8MBLl_build.log"

echo Building DSP Library for ARMv8-M Mainline Little Endian
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MMLl" -o "DspLib_ARMv8MMLl_build.log"

echo Building DSP Library for ARMv8-M Mainline Little Endian with single precision FPU
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MMLlfsp" -o "DspLib_ARMv8MMLlfsp_build.log"

REM echo Building DSP Library for ARMv8-M Mainline Little Endian with double precision FPU
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MMLlfdp" -o "DspLib_ARMv8MMLlfdp_build.log"

echo Building DSP Library for ARMv8-M Mainline Little Endian with DSP instructions
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MMLld" -o "DspLib_ARMv8MMLld_build.log"

echo Building DSP Library for ARMv8-M Mainline Little Endian with DSP instructions, single precision FPU
%UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MMLldfsp" -o "DspLib_ARMv8MMLldfsp_build.log"

REM echo Building DSP Library for ARMv8-M Mainline Little Endian with DSP instructions, double precision FPU
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "ARMv8MMLldfdp" -o "DspLib_ARMv8MMLldfdp_build.log"


REM big endian libraries are skipped!

REM echo Building DSP Library for Cortex-M0 Big Endian
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM0b" -o "DspLib_cortexM0b_build.log"

REM echo Building DSP Library for Cortex-M3 Big Endian
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM3b" -o "DspLib_cortexM3b_build.log"

REM echo Building DSP Library for Cortex-M4 Big Endian
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM4b" -o "DspLib_cortexM4b_build.log"

REM echo Building DSP Library for Cortex-M4 Big Endian with single precision FPU
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM4bf" -o "DspLib_cortexM4bf_build.log"

REM echo Building DSP Library for Cortex-M7 Big Endian
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM7b" -o "DspLib_cortexM7b_build.log"

REM echo Building DSP Library for Cortex-M7 Big Endian with single precision FPU
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM7bfsp" -o "DspLib_cortexM7bfsp_build.log"

REM echo Building DSP Library for Cortex-M7 Big Endian with double precision FPU
REM %UVEXE% -rb -j0 arm_cortexM_math.uvprojx -t "cortexM7bfdp" -o "DspLib_cortexM7bfdp_build.log"

goto deleteIntermediateFiles


:deleteIntermediateFiles
echo.
echo Deleting intermediate files
rmdir /S /Q IntermediateFiles
del /Q *.bak
del /Q *.dep
del /Q *.uvguix.*
del /Q ArInp.*

goto changeDir


:changeDir
cd %CURDIR%
goto end

:err

:help
echo Syntax: buildDspLibs toolchain
echo.
echo toolchain: ARM ^| GCC
echo.
echo e.g.: buildDspLibs ARM

:end
116 changes: 116 additions & 0 deletions Drivers/CMSIS/DSP/DSP_Lib_TestSuite/buildRefLibs.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
@echo off

set UVEXE=C:\Keil_v5\UV4\UV4.EXE
set CURDIR=%CD%

if .%1==. goto help
for %%a in (ARM GCC) do if %1==%%a goto startBuild
goto help

:startBuild
echo.
echo Building DSP Reference Libraries %1

if %1==ARM goto buildARM
if %1==GCC goto buildGCC
goto err

:buildARM
:buildGCC
cd .\RefLibs\%1

echo Building DSP Reference Library for Cortex-M0 Little Endian
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM0l" -o "RefLib_cortexM0l_build.log"

echo Building DSP Reference Library for Cortex-M3 Little Endian
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM3l" -o "RefLib_cortexM3l_build.log"

echo Building DSP Reference Library for Cortex-M4 Little Endian
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM4l" -o "RefLib_cortexM4l_build.log"

echo Building DSP Reference Library for Cortex-M4 Little Endian with single precision FPU
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM4lf" -o "RefLib_cortexM4lf_build.log"

echo Building DSP Reference Library for Cortex-M7 Little Endian
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM7l" -o "RefLib_cortexM7l_build.log"

echo Building DSP Reference Library for Cortex-M7 Little Endian with single precision FPU
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM7lfsp" -o "RefLib_cortexM7lfsp_build.log"

echo Building DSP Reference Library for Cortex-M7 Little Endian with double precision FPU
%UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM7lfdp" -o "RefLib_cortexM7lfdp_build.log"

echo Building DSP Reference Library for ARMv8-M Baseline Little Endian
%UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MBLl" -o "RefLib_ARMv8MBLl_build.log"

echo Building DSP Reference Library for ARMv8-M Mainline Little Endian
%UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MMLl" -o "RefLib_ARMv8MMLl_build.log"

echo Building DSP Reference Library for ARMv8-M Mainline Little Endian with single precision FPU
%UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MMLlfsp" -o "RefLib_ARMv8MMLlfsp_build.log"

REM echo Building DSP Reference Library for ARMv8-M Mainline Little Endian with double precision FPU
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MMLlfdp" -o "RefLib_ARMv8MMLlfdp_build.log"

echo Building DSP Reference Library for ARMv8-M Mainline Little Endian with DSP instructions
%UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MMLld" -o "RefLib_ARMv8MMLld_build.log"

echo Building DSP Reference Library for ARMv8-M Mainline Little Endian with DSP instructions, single precision FPU
%UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MMLldfsp" -o "RefLib_ARMv8MMLldfsp_build.log"

REM echo Building DSP Reference Library for ARMv8-M Mainline Little Endian with DSP instructions, double precision FPU
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t "ARMv8MMLldfdp" -o "RefLib_ARMv8MMLldfdp_build.log"


REM big endian libraries are skipped!

REM echo Building DSP Reference Library for Cortex-M0 Big Endian
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t"cortexM0b" -o "RefLib_cortexM0b_build.log"

REM echo Building DSP Reference Library for Cortex-M3 Big Endian
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t"cortexM3b" -o "RefLib_cortexM3b_build.log"

REM echo Building DSP Reference Library for Cortex-M4 Big Endian
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t"cortexM4b" -o "RefLib_cortexM4b_build.log"

REM echo Building DSP Reference Library for Cortex-M4 Big Endian Big Endian with single precision FPU
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t"cortexM4bf" -o "RefLib_cortexM4bf_build.log"

REM echo Building DSP Reference Library for Cortex-M7 Big Endian
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM7b" -o "RefLib_cortexM7b_build.log"

REM echo Building DSP Reference Library for Cortex-M7 Big Endian with single precision FPU
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM7bfsp" -o "RefLib_cortexM7bfsp_build.log"

REM echo Building DSP Reference Library for Cortex-M7 Big Endian with double precision FPU
REM %UVEXE% -rb -j0 RefLibs.uvprojx -t "cortexM7bfdp" -o "RefLib_cortexM7bfdp_build.log"

goto deleteIntermediateFiles


:deleteIntermediateFiles
echo.
echo Deleting intermediate files
rmdir /S /Q IntermediateFiles
del /Q *.bak
del /Q *.dep
del /Q *.uvguix.*
del /Q ArInp.*

goto changeDir


:changeDir
cd %CURDIR%
goto end

:err

:help
echo Syntax: buildRefLibs toolchain
echo.
echo toolchain: ARM ^| GCC
echo.
echo e.g.: buildRefLibs ARM

:end
129 changes: 129 additions & 0 deletions Drivers/CMSIS/DSP/DSP_Lib_TestSuite/runTest.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
@echo off

set UVEXE=C:\Keil_v5\UV4\UV4.EXE

if .%1==. goto help
for %%a in (ARM GCC) do if %1==%%a goto checkParam2
echo parameter %1 not supported.
goto help

:checkParam2
if .%2==. goto help
for %%a in ( ^
cortexM0l ^
cortexM3l ^
cortexM4l ^
cortexM4lf ^
cortexM7l ^
cortexM7lfsp ^
cortexM7lfdp ^
ARMv8MBLl ^
ARMv8MMLl ^
ARMv8MMLlfsp ^
ARMv8MMLlfdp ^
ARMv8MMLld ^
ARMv8MMLldfsp ^
ARMv8MMLldfdp ^
) do if %2==%%a goto checkParam3
echo parameter %2 not supported.
goto help

:checkParam3
if .%3==. goto help
for %%a in (MPS2 FVP Simulator) do if %3==%%a goto CheckLibraries
echo parameter %3 not supported.
goto help

:CheckLibraries
if %1==ARM goto CheckLibrariesARM
if %1==GCC goto CheckLibrariesGCC

:CheckLibrariesARM
if not exist ".\RefLibs\%1\Lib\arm_%2_ref.lib" (echo ".\RefLibs\%1\Lib\arm_%2_ref.lib" not found. & goto end)
if not exist "..\Lib\%1\arm_%2_math.lib" (echo "..\Lib\%1\arm_%2_ref.lib" not found. & goto end)
goto CopyLibrariesARM

:CheckLibrariesGCC
if not exist ".\RefLibs\%1\Lib\libarm_%2_ref.a" (echo ".\RefLibs\%1\Lib\libarm_%2_ref.a" not found. & goto end)
if not exist "..\Lib\%1\libarm_%2_math.a" (echo "..\Lib\%1\libarm_%2_math.a" not found. & goto end)
goto CopyLibrariesGCC

:CopyLibrariesARM
copy /B ".\RefLibs\%1\Lib\arm_%2_ref.lib" .\DspLibTest_%3\%1\Lib\arm_ref.lib /B /Y
copy /B "..\Lib\%1\arm_%2_math.lib" .\DspLibTest_%3\%1\Lib\arm_math.lib /B /Y
goto buildProject

:CopyLibrariesGCC
copy /B ".\RefLibs\%1\Lib\libarm_%2_ref.a" .\DspLibTest_%3\%1\Lib\libarm_ref.a /B /Y
copy /B "..\Lib\%1\libarm_%2_math.a" .\DspLibTest_%3\%1\Lib\libarm_math.a /B /Y
goto buildProject

:buildProject
echo Build Test Project ...
%UVEXE% -r -j0 .\DspLibTest_%3\%1\DspLibTest_%3.uvprojx -t "%2" -o ".\Logs\DspLibTest_%3_%2_build.log"

echo Run Test ...
del /Q ".\DspLibTest_%3\%1\Logs\DspLibTest_%3.log" 2>NUL
del /Q ".\DspLibTest_%3\%1\Logs\DspLibTest_%3_%2.log" 2>NUL

rem get start time (The format of %TIME% is HH:MM:SS,CS for example 23:59:59,99)
set STARTTIME=%TIME%

rem run the test
%UVEXE% -d .\DspLibTest_%3\%1\DspLibTest_%3.uvprojx -t "%2"

rem get end time
set ENDTIME=%TIME%

rem calculate duration
rem Change formatting for the start and end times
for /F "tokens=1-4 delims=:.," %%a in ("%STARTTIME%") do (
set /A "start=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)

for /F "tokens=1-4 delims=:.," %%a in ("%ENDTIME%") do (
set /A "end=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)

rem Test midnight rollover. If so, add 1 day=8640000 1/100ths secs
if %end% lss %start% set /a end+=8640000

rem Calculate the elapsed time by subtracting values
set /A elapsed=end-start

rem Format the results for output
set /A hh=elapsed/(60*60*100), rest=elapsed%%(60*60*100), mm=rest/(60*100), rest%%=60*100, ss=rest/100, cc=rest%%100
if %hh% lss 10 set hh=0%hh%
if %mm% lss 10 set mm=0%mm%
if %ss% lss 10 set ss=0%ss%
if %cc% lss 10 set cc=0%cc%

set DURATION=%hh%:%mm%:%ss%,%cc%

rem write time to file
echo Test %1 %2 : > ".\DspLibTest_%3\%1\Logs\DspLibTest_%3_%2_time.log"
echo Start time: %STARTTIME% >> ".\DspLibTest_%3\%1\Logs\DspLibTest_%3_%2_time.log"
echo End time: %ENDTIME% >> ".\DspLibTest_%3\%1\Logs\DspLibTest_%3_%2_time.log"
echo Duration: %DURATION% >> ".\DspLibTest_%3\%1\Logs\DspLibTest_%3_%2_time.log"

echo Copy Logfile ...
copy /B ".\DspLibTest_%3\%1\Logs\DspLibTest_%3.log" ".\DspLibTest_%3\%1\Logs\DspLibTest_%3_%2.log"

goto end


:help
echo.
echo Syntax: runTest toolchain core test
echo.
echo toolchain: ARM ^| GCC
echo core: cortexM0l ^| cortexM3l ^| cortexM4l ^| cortexM4lf ^| cortexM7l ^| cortexM7lfsp ^| cortexM7lfdp
echo ARMv8MBLl
echo ARMv8MMLl ^| ARMv8MMLlfsp ^| ARMv8MMLlfdp
echo ARMv8MMLld ^| ARMv8MMLldfsp ^| ARMv8MMLldfdp
echo test: MPS2 ^| FVP ^| Simulator
echo.
echo e.g.: runTest ARM cortexM3l Simulator

:end
@echo on
Loading

0 comments on commit f8cefdf

Please sign in to comment.