-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added CMSIS DSP_Lib #129
Added CMSIS DSP_Lib #129
Conversation
Previously, this line reset LDFLAGS, whereas it should just add flags. Signed-off-by: Mike Hamer <[email protected]>
Note that arm_math.h and the DSP library comes from CMSIS v4.10, whereas the CF2 Firmware uses CMSIS 3.00. This doesn't seem to be causing problems, since the DSP library is fairly self contained. The CMSIS version used for the CF1 is, however, too old to be compatible with the newer DSP_Lib, and would need to be updated if DSP_Lib were required for the CF1. Signed-off-by: Mike Hamer <[email protected]>
Do we have a link to the source of the library? I think we need to link to it somehow if we use the binary version. Otherwise can we add the source code? |
We could add the source code (I had done this initially), however there are two big reasons to use the library (tldr: simplicity and simplicity):
The DSP Lib was taken from the (now open-sourced) CMSIS development: https://github.com/ARM-software/CMSIS At some point in time, now that the above repository is available online, we could consider moving the CMSIS implementation into the vendor folder as a git submodule. |
From https://github.com/ARM-software/CMSIS Signed-off-by: Mike Hamer <[email protected]>
I can see Mikes points, but there are also huge disadvantages with submitting binaries: I like the idea of having a git submodule most, even if it increases compile time and Makefile efforts. |
@whoenig Agreed here, I will add it to the build system as a git submodule. Having it to compile with different compile flag than the rest of the system is a small complication but I think I will just make another Makefile and compile the .a lib with it. This .a will be a dependency of the Crazyflie 2 firmware. |
I pushed a commit that adds the CMSIS lib from source. It is compiled with a separate Makefile into a lib file so we can chose the compile flags for the lib independently from the rest of the Firmware. This is enabled for CF2 only as there is no need of it for CF1 for now. |
Note that arm_math.h and the DSP library comes from CMSIS v4.10, whereas the CF2 Firmware uses CMSIS 3.00. This doesn't seem to be causing problems, since the DSP library is fairly self contained.
The CMSIS version used for the CF1 is, however, too old to be compatible with the newer DSP_Lib, and would need to be updated if DSP_Lib were required for the CF1.
Signed-off-by: Mike Hamer [email protected]