1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00

Merge pull request #17985 from aabadie/pr/pkg/tflite-micro-kconfig

pkg/tflite-micro: add kconfig support
This commit is contained in:
Leandro Lanzieri 2022-04-28 09:31:18 +02:00 committed by GitHub
commit 77382affa3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 108 additions and 12 deletions

View File

@ -18,16 +18,16 @@ rsource "kconfigs/Kconfig.errors"
# For now, get used modules as macros from this file (see kconfig.mk)
osource "$(KCONFIG_GENERATED_DEPENDENCIES)"
# Load first board configurations, which might override CPU's
# Load first the application configuration, as it may declare symbols in priority
osource "$(APPDIR)/Kconfig"
# Load board configurations, which might override CPU's
orsource "$(BOARDDIR)/Kconfig"
orsource "$(RIOTCPU)/$(CPU)/Kconfig"
rsource "$(RIOTBOARD)/Kconfig"
rsource "$(RIOTCPU)/Kconfig"
# The application may declare new symbols as well
osource "$(APPDIR)/Kconfig"
rsource "core/Kconfig"
rsource "drivers/Kconfig"
rsource "sys/Kconfig"

View File

@ -25,6 +25,7 @@ rsource "esp8266_sdk/Kconfig"
rsource "etl/Kconfig"
rsource "fff/Kconfig"
rsource "fido2_tests/Kconfig"
rsource "flatbuffers/Kconfig"
rsource "gecko_sdk/Kconfig"
rsource "gemmlowp/Kconfig"
rsource "hacl/Kconfig"
@ -52,8 +53,10 @@ rsource "qcbor/Kconfig"
rsource "qdsa/Kconfig"
rsource "qr-code-generator/Kconfig"
rsource "relic/Kconfig"
rsource "ruy/Kconfig"
rsource "semtech-loramac/Kconfig"
rsource "talking_leds/Kconfig"
rsource "tflite-micro/Kconfig"
rsource "tiny-asn1/Kconfig"
rsource "tinycbor/Kconfig"
rsource "tinycrypt/Kconfig"

15
pkg/flatbuffers/Kconfig Normal file
View File

@ -0,0 +1,15 @@
# Copyright (c) 2022 Inria
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#
config PACKAGE_FLATBUFFERS
bool "Flatbuffers package"
depends on TEST_KCONFIG
depends on HAS_CPP
depends on HAS_LIBSTDCPP
select MODULE_LIBSTDCPP
select MODULE_CPP11-COMPAT

View File

@ -8,10 +8,5 @@
config PACKAGE_GEMMLOWP
bool "General Matrix Multiplication package"
depends on TEST_KCONFIG
select MODULE_GEMMLOWP
help
A small self-contained low-precision GEMM library.
config MODULE_GEMMLOWP
bool
depends on TEST_KCONFIG

View File

@ -7,3 +7,7 @@
config PACKAGE_RUY
bool "The ruy matrix multiplication library"
depends on TEST_KCONFIG
depends on HAS_CPP
depends on HAS_LIBSTDCPP
select MODULE_CPP11-COMPAT

View File

@ -1,3 +1 @@
FEATURES_REQUIRED += cpp
USEMODULE += cpp11-compat

59
pkg/tflite-micro/Kconfig Normal file
View File

@ -0,0 +1,59 @@
# Copyright (c) 2022 Inria
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#
config PACKAGE_TFLITE-MICRO
bool "TFlite Micro package"
depends on TEST_KCONFIG
depends on HAS_CPP
depends on HAS_LIBSTDCPP
depends on !HAS_ARCH_MIPS32R2
depends on !HAS_ARCH_RISCV
select MODULE_LIBSTDCPP
select MODULE_CPP11-COMPAT
select PACKAGE_FLATBUFFERS
select PACKAGE_GEMMLOWP
select PACKAGE_RUY
select MODULE_TFLITE-C
select MODULE_TFLITE-CORE-API
select MODULE_TFLITE-KERNELS
select MODULE_TFLITE-KERNELS-INTERNAL
select MODULE_TFLITE-KERNELS-INTERNAL-REFERENCE
select MODULE_TFLITE-MICRO
select MODULE_TFLITE-MICRO-KERNELS
select MODULE_TFLITE-MICRO-MEMORY-PLANNER
select MODULE_TFLITE-SCHEMA
config MODULE_TFLITE-C
bool
config MODULE_TFLITE-CORE-API
bool
config MODULE_TFLITE-KERNELS
bool
config MODULE_TFLITE-KERNELS-INTERNAL
bool
config MODULE_TFLITE-KERNELS-INTERNAL-REFERENCE
bool
config MODULE_TFLITE-MICRO
bool
config MODULE_TFLITE-MICRO-KERNELS
bool
config MODULE_TFLITE-MICRO-MEMORY-PLANNER
bool
config MODULE_TFLITE-SCHEMA
bool

View File

@ -1,4 +1,3 @@
FEATURES_REQUIRED += cpp
USEMODULE += cpp11-compat
USEPKG += flatbuffers

View File

@ -0,0 +1 @@
CONFIG_PACKAGE_FLATBUFFERS=y

View File

@ -0,0 +1,6 @@
config MODULE_CORTEXM_FPU
bool
default n
depends on TEST_KCONFIG
depends on CPU_CORE_CORTEX_M
depends on HAS_CORTEXM_FPU

View File

@ -11,4 +11,8 @@ DISABLE_MODULE += cortexm_fpu
USEMODULE += mnist
EXTERNAL_MODULE_DIRS += external_modules
# As there is an 'Kconfig' we want to explicitly disable Kconfig by setting
# the variable to empty
SHOULD_RUN_KCONFIG ?=
include $(RIOTBASE)/Makefile.include

View File

@ -0,0 +1,2 @@
CONFIG_PACKAGE_TFLITE-MICRO=y
CONFIG_MODULE_MNIST=y

View File

@ -0,0 +1,10 @@
# Copyright (c) 2022 Inria
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#
config MODULE_MNIST
bool "MNIST main functions"
depends on TEST_KCONFIG