From 69c10dcaaca2d343aa045328dec80737c0dffbf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Mon, 2 Sep 2019 16:06:05 +0200 Subject: [PATCH] dshot: move implementation to a separate directory & library So that the static memory overhead is not added to targets w/o dshot --- .../px4/stm/stm32_common/dshot/CMakeLists.txt | 36 +++++++++++++++++++ .../stm32_common/{io_pins => dshot}/dshot.c | 0 .../stm/stm32_common/io_pins/CMakeLists.txt | 1 - .../nuttx/src/px4/stm/stm32f4/CMakeLists.txt | 1 + .../nuttx/src/px4/stm/stm32f7/CMakeLists.txt | 1 + src/drivers/dshot/CMakeLists.txt | 1 + 6 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 platforms/nuttx/src/px4/stm/stm32_common/dshot/CMakeLists.txt rename platforms/nuttx/src/px4/stm/stm32_common/{io_pins => dshot}/dshot.c (100%) diff --git a/platforms/nuttx/src/px4/stm/stm32_common/dshot/CMakeLists.txt b/platforms/nuttx/src/px4/stm/stm32_common/dshot/CMakeLists.txt new file mode 100644 index 0000000000..d04316b3b7 --- /dev/null +++ b/platforms/nuttx/src/px4/stm/stm32_common/dshot/CMakeLists.txt @@ -0,0 +1,36 @@ +############################################################################ +# +# Copyright (c) 2015-2019 PX4 Development Team. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name PX4 nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +px4_add_library(arch_dshot + dshot.c +) diff --git a/platforms/nuttx/src/px4/stm/stm32_common/io_pins/dshot.c b/platforms/nuttx/src/px4/stm/stm32_common/dshot/dshot.c similarity index 100% rename from platforms/nuttx/src/px4/stm/stm32_common/io_pins/dshot.c rename to platforms/nuttx/src/px4/stm/stm32_common/dshot/dshot.c diff --git a/platforms/nuttx/src/px4/stm/stm32_common/io_pins/CMakeLists.txt b/platforms/nuttx/src/px4/stm/stm32_common/io_pins/CMakeLists.txt index 91c857af34..401bf06ef5 100644 --- a/platforms/nuttx/src/px4/stm/stm32_common/io_pins/CMakeLists.txt +++ b/platforms/nuttx/src/px4/stm/stm32_common/io_pins/CMakeLists.txt @@ -36,5 +36,4 @@ px4_add_library(arch_io_pins pwm_servo.c pwm_trigger.c input_capture.c - dshot.c ) diff --git a/platforms/nuttx/src/px4/stm/stm32f4/CMakeLists.txt b/platforms/nuttx/src/px4/stm/stm32f4/CMakeLists.txt index 0b5fe399e0..5acfab9f87 100644 --- a/platforms/nuttx/src/px4/stm/stm32f4/CMakeLists.txt +++ b/platforms/nuttx/src/px4/stm/stm32f4/CMakeLists.txt @@ -33,6 +33,7 @@ add_subdirectory(../stm32_common/adc adc) +add_subdirectory(../stm32_common/dshot dshot) add_subdirectory(../stm32_common/hrt hrt) add_subdirectory(../stm32_common/led_pwm led_pwm) add_subdirectory(../stm32_common/io_pins io_pins) diff --git a/platforms/nuttx/src/px4/stm/stm32f7/CMakeLists.txt b/platforms/nuttx/src/px4/stm/stm32f7/CMakeLists.txt index 0b5fe399e0..5acfab9f87 100644 --- a/platforms/nuttx/src/px4/stm/stm32f7/CMakeLists.txt +++ b/platforms/nuttx/src/px4/stm/stm32f7/CMakeLists.txt @@ -33,6 +33,7 @@ add_subdirectory(../stm32_common/adc adc) +add_subdirectory(../stm32_common/dshot dshot) add_subdirectory(../stm32_common/hrt hrt) add_subdirectory(../stm32_common/led_pwm led_pwm) add_subdirectory(../stm32_common/io_pins io_pins) diff --git a/src/drivers/dshot/CMakeLists.txt b/src/drivers/dshot/CMakeLists.txt index 75934d22fd..6f98950d16 100644 --- a/src/drivers/dshot/CMakeLists.txt +++ b/src/drivers/dshot/CMakeLists.txt @@ -38,6 +38,7 @@ px4_add_module( dshot.cpp DEPENDS arch_io_pins + arch_dshot mixer mixer_module output_limit