From 929820136ae71e4a3ffea8ab484df2b9f3bd6ebf Mon Sep 17 00:00:00 2001 From: Jukka Laitinen Date: Fri, 8 Oct 2021 10:53:24 +0300 Subject: [PATCH] Move sw_crypto and stub_keystore under src/drivers This is more logical place for the "backend" implementation than directly under platform. This also allows making other implementations as "real" drivers, as well as proper configuration via Kconfigs Signed-off-by: Jukka Laitinen --- Kconfig | 9 +--- platforms/common/CMakeLists.txt | 1 - platforms/common/px4_sw_crypto/CMakeLists.txt | 44 ------------------- .../drivers}/stub_keystore/CMakeLists.txt | 0 src/drivers/stub_keystore/Kconfig | 6 +++ .../keystore_backend_definitions.h | 0 .../drivers}/stub_keystore/public_key.h | 0 .../drivers}/stub_keystore/stub_keystore.c | 0 .../drivers}/sw_crypto/CMakeLists.txt | 0 src/drivers/sw_crypto/Kconfig | 6 +++ .../drivers}/sw_crypto/crypto.c | 0 .../sw_crypto/crypto_backend_definitions.h | 0 12 files changed, 14 insertions(+), 52 deletions(-) delete mode 100644 platforms/common/px4_sw_crypto/CMakeLists.txt rename {platforms/common/px4_sw_crypto => src/drivers}/stub_keystore/CMakeLists.txt (100%) create mode 100644 src/drivers/stub_keystore/Kconfig rename {platforms/common/px4_sw_crypto => src/drivers}/stub_keystore/keystore_backend_definitions.h (100%) rename {platforms/common/px4_sw_crypto => src/drivers}/stub_keystore/public_key.h (100%) rename {platforms/common/px4_sw_crypto => src/drivers}/stub_keystore/stub_keystore.c (100%) rename {platforms/common/px4_sw_crypto => src/drivers}/sw_crypto/CMakeLists.txt (100%) create mode 100644 src/drivers/sw_crypto/Kconfig rename {platforms/common/px4_sw_crypto => src/drivers}/sw_crypto/crypto.c (100%) rename {platforms/common/px4_sw_crypto => src/drivers}/sw_crypto/crypto_backend_definitions.h (100%) diff --git a/Kconfig b/Kconfig index 36ef7c4746..f44a72657c 100644 --- a/Kconfig +++ b/Kconfig @@ -114,14 +114,9 @@ config BOARD_ETHERNET flag to indicate that ethernet is enabled config BOARD_CRYPTO - string "Crypto" + bool "Crypto support" help - Crypto implementation selection - -config BOARD_KEYSTORE - string "Keystore" - help - Keystore implememntation selection + Enable PX4 Crypto Support. Select the implementation under drivers menu "Serial ports" diff --git a/platforms/common/CMakeLists.txt b/platforms/common/CMakeLists.txt index b103e5b6ef..16e3537c02 100644 --- a/platforms/common/CMakeLists.txt +++ b/platforms/common/CMakeLists.txt @@ -61,4 +61,3 @@ endif() add_subdirectory(px4_work_queue) add_subdirectory(work_queue) -add_subdirectory(px4_sw_crypto) diff --git a/platforms/common/px4_sw_crypto/CMakeLists.txt b/platforms/common/px4_sw_crypto/CMakeLists.txt deleted file mode 100644 index f5efe80424..0000000000 --- a/platforms/common/px4_sw_crypto/CMakeLists.txt +++ /dev/null @@ -1,44 +0,0 @@ -############################################################################ -# -# Copyright (c) 2021 Technology Innoavation Institute. 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. -# -############################################################################ - -if (DEFINED PX4_CRYPTO) - if (IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${PX4_CRYPTO}) - add_subdirectory(${PX4_CRYPTO}) - endif() -endif() - -if (DEFINED PX4_KEYSTORE) - if (IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${PX4_KEYSTORE}) - add_subdirectory(${PX4_KEYSTORE}) - endif() -endif() diff --git a/platforms/common/px4_sw_crypto/stub_keystore/CMakeLists.txt b/src/drivers/stub_keystore/CMakeLists.txt similarity index 100% rename from platforms/common/px4_sw_crypto/stub_keystore/CMakeLists.txt rename to src/drivers/stub_keystore/CMakeLists.txt diff --git a/src/drivers/stub_keystore/Kconfig b/src/drivers/stub_keystore/Kconfig new file mode 100644 index 0000000000..b2f1f08185 --- /dev/null +++ b/src/drivers/stub_keystore/Kconfig @@ -0,0 +1,6 @@ +menuconfig DRIVERS_STUB_KEYSTORE + bool "stub_keystore" + depends on DRIVERS_SW_CRYPTO + default n + ---help--- + Enable support for stub_keystore diff --git a/platforms/common/px4_sw_crypto/stub_keystore/keystore_backend_definitions.h b/src/drivers/stub_keystore/keystore_backend_definitions.h similarity index 100% rename from platforms/common/px4_sw_crypto/stub_keystore/keystore_backend_definitions.h rename to src/drivers/stub_keystore/keystore_backend_definitions.h diff --git a/platforms/common/px4_sw_crypto/stub_keystore/public_key.h b/src/drivers/stub_keystore/public_key.h similarity index 100% rename from platforms/common/px4_sw_crypto/stub_keystore/public_key.h rename to src/drivers/stub_keystore/public_key.h diff --git a/platforms/common/px4_sw_crypto/stub_keystore/stub_keystore.c b/src/drivers/stub_keystore/stub_keystore.c similarity index 100% rename from platforms/common/px4_sw_crypto/stub_keystore/stub_keystore.c rename to src/drivers/stub_keystore/stub_keystore.c diff --git a/platforms/common/px4_sw_crypto/sw_crypto/CMakeLists.txt b/src/drivers/sw_crypto/CMakeLists.txt similarity index 100% rename from platforms/common/px4_sw_crypto/sw_crypto/CMakeLists.txt rename to src/drivers/sw_crypto/CMakeLists.txt diff --git a/src/drivers/sw_crypto/Kconfig b/src/drivers/sw_crypto/Kconfig new file mode 100644 index 0000000000..5c17ea3f22 --- /dev/null +++ b/src/drivers/sw_crypto/Kconfig @@ -0,0 +1,6 @@ +menuconfig DRIVERS_SW_CRYPTO + bool "sw_crypto" + depends on BOARD_CRYPTO + default n + ---help--- + Enable support for sw_crypto diff --git a/platforms/common/px4_sw_crypto/sw_crypto/crypto.c b/src/drivers/sw_crypto/crypto.c similarity index 100% rename from platforms/common/px4_sw_crypto/sw_crypto/crypto.c rename to src/drivers/sw_crypto/crypto.c diff --git a/platforms/common/px4_sw_crypto/sw_crypto/crypto_backend_definitions.h b/src/drivers/sw_crypto/crypto_backend_definitions.h similarity index 100% rename from platforms/common/px4_sw_crypto/sw_crypto/crypto_backend_definitions.h rename to src/drivers/sw_crypto/crypto_backend_definitions.h