From b55e7db9885838ce5d79a3542012fa630990ac5a Mon Sep 17 00:00:00 2001 From: Arkadiusz Balys Date: Mon, 18 Dec 2023 11:32:27 +0100 Subject: [PATCH] [nrfconnect] Add kconfig for enabling Read Client To save some FLASH and RAM memory space we can disable Read Client functionality in nrfconnect samples. This commit adds kconfig to enable or disable Read Client in the Interaction Model. --- config/nrfconnect/chip-module/CMakeLists.txt | 1 + config/nrfconnect/chip-module/Kconfig | 7 +++++++ examples/all-clusters-app/nrfconnect/prj.conf | 3 +++ examples/all-clusters-app/nrfconnect/prj_dfu.conf | 3 +++ examples/all-clusters-app/nrfconnect/prj_release.conf | 3 +++ examples/light-switch-app/nrfconnect/prj.conf | 3 +++ examples/light-switch-app/nrfconnect/prj_no_dfu.conf | 3 +++ examples/light-switch-app/nrfconnect/prj_release.conf | 3 +++ src/test_driver/nrfconnect/prj.conf | 3 +++ 9 files changed, 29 insertions(+) diff --git a/config/nrfconnect/chip-module/CMakeLists.txt b/config/nrfconnect/chip-module/CMakeLists.txt index 81f7769ac21094..672bf5834da196 100644 --- a/config/nrfconnect/chip-module/CMakeLists.txt +++ b/config/nrfconnect/chip-module/CMakeLists.txt @@ -137,6 +137,7 @@ matter_add_gn_arg_bool ("chip_enable_wifi" CONFIG_WIFI_NR matter_add_gn_arg_bool ("chip_system_config_provide_statistics" CONFIG_CHIP_STATISTICS) matter_add_gn_arg_bool ("chip_enable_icd_server" CONFIG_CHIP_ENABLE_ICD_SUPPORT) matter_add_gn_arg_bool ("chip_enable_factory_data" CONFIG_CHIP_FACTORY_DATA) +matter_add_gn_arg_bool ("chip_enable_read_client" CONFIG_CHIP_ENABLE_READ_CLIENT) if (CONFIG_CHIP_FACTORY_DATA OR CONFIG_CHIP_FACTORY_DATA_CUSTOM_BACKEND) matter_add_gn_arg_bool("chip_use_transitional_commissionable_data_provider" FALSE) diff --git a/config/nrfconnect/chip-module/Kconfig b/config/nrfconnect/chip-module/Kconfig index 33528638670917..3414bdd26c9687 100644 --- a/config/nrfconnect/chip-module/Kconfig +++ b/config/nrfconnect/chip-module/Kconfig @@ -273,4 +273,11 @@ config CHIP_OPENTHREAD_JOINER_ENABLED If disabled, it allows to optimize memory usage even if Thread Joiner support is enabled. +config CHIP_ENABLE_READ_CLIENT + bool "Enable Read Client in the Interaction Model" + help + Enable support for Read Client in the Interaction Model. + This config can be disabled for device types that do not require Read Client functionality. + Disabling this config can save flash and RAM space. + endif # CHIP diff --git a/examples/all-clusters-app/nrfconnect/prj.conf b/examples/all-clusters-app/nrfconnect/prj.conf index 527fae10089448..dfb604a06349c1 100644 --- a/examples/all-clusters-app/nrfconnect/prj.conf +++ b/examples/all-clusters-app/nrfconnect/prj.conf @@ -44,3 +44,6 @@ CONFIG_CHIP_OTA_REQUESTOR=n # Disable QSPI NOR CONFIG_CHIP_QSPI_NOR=n + +# Enable the Read Client for binding purposes +CONFIG_CHIP_ENABLE_READ_CLIENT=y diff --git a/examples/all-clusters-app/nrfconnect/prj_dfu.conf b/examples/all-clusters-app/nrfconnect/prj_dfu.conf index ca8f536fafce18..3b5937b4073d9a 100644 --- a/examples/all-clusters-app/nrfconnect/prj_dfu.conf +++ b/examples/all-clusters-app/nrfconnect/prj_dfu.conf @@ -45,3 +45,6 @@ CONFIG_ASSERT_NO_MSG_INFO=y # Enable Factory Data feature CONFIG_CHIP_FACTORY_DATA=y CONFIG_CHIP_FACTORY_DATA_BUILD=y + +# Enable the Read Client for binding purposes +CONFIG_CHIP_ENABLE_READ_CLIENT=y diff --git a/examples/all-clusters-app/nrfconnect/prj_release.conf b/examples/all-clusters-app/nrfconnect/prj_release.conf index ebe3a71f8765eb..714fa9dd4ab740 100644 --- a/examples/all-clusters-app/nrfconnect/prj_release.conf +++ b/examples/all-clusters-app/nrfconnect/prj_release.conf @@ -52,3 +52,6 @@ CONFIG_BOOT_BANNER=n # Enable Factory Data feature CONFIG_CHIP_FACTORY_DATA=y CONFIG_CHIP_FACTORY_DATA_BUILD=y + +# Enable the Read Client for binding purposes +CONFIG_CHIP_ENABLE_READ_CLIENT=y diff --git a/examples/light-switch-app/nrfconnect/prj.conf b/examples/light-switch-app/nrfconnect/prj.conf index 2327bafd36bff9..dd75cdf99c4fd1 100644 --- a/examples/light-switch-app/nrfconnect/prj.conf +++ b/examples/light-switch-app/nrfconnect/prj.conf @@ -45,3 +45,6 @@ CONFIG_USE_SEGGER_RTT=n # Enable Factory Data feature CONFIG_CHIP_FACTORY_DATA=y CONFIG_CHIP_FACTORY_DATA_BUILD=y + +# Enable the Read Client for binding purposes +CONFIG_CHIP_ENABLE_READ_CLIENT=y diff --git a/examples/light-switch-app/nrfconnect/prj_no_dfu.conf b/examples/light-switch-app/nrfconnect/prj_no_dfu.conf index df884ba56d4300..def17d5345e22c 100644 --- a/examples/light-switch-app/nrfconnect/prj_no_dfu.conf +++ b/examples/light-switch-app/nrfconnect/prj_no_dfu.conf @@ -47,3 +47,6 @@ CONFIG_CHIP_OTA_REQUESTOR=n # Disable QSPI NOR CONFIG_CHIP_QSPI_NOR=n + +# Enable the Read Client for binding purposes +CONFIG_CHIP_ENABLE_READ_CLIENT=y diff --git a/examples/light-switch-app/nrfconnect/prj_release.conf b/examples/light-switch-app/nrfconnect/prj_release.conf index 5366a4f3dc3b6c..c57d5eb42bf168 100644 --- a/examples/light-switch-app/nrfconnect/prj_release.conf +++ b/examples/light-switch-app/nrfconnect/prj_release.conf @@ -59,3 +59,6 @@ CONFIG_BOOT_BANNER=n # Enable Factory Data feature CONFIG_CHIP_FACTORY_DATA=y CONFIG_CHIP_FACTORY_DATA_BUILD=y + +# Enable the Read Client for binding purposes +CONFIG_CHIP_ENABLE_READ_CLIENT=y diff --git a/src/test_driver/nrfconnect/prj.conf b/src/test_driver/nrfconnect/prj.conf index a4af4f769a4c67..4a49d837a1d56a 100644 --- a/src/test_driver/nrfconnect/prj.conf +++ b/src/test_driver/nrfconnect/prj.conf @@ -93,3 +93,6 @@ CONFIG_CHIP_ENABLE_DNSSD_SRP=n CONFIG_CHIP_DEVICE_VENDOR_ID=65521 CONFIG_CHIP_DEVICE_PRODUCT_ID=32768 CONFIG_CHIP_PROJECT_CONFIG="main/include/CHIPProjectConfig.h" + +# Enable the Read Client +CONFIG_CHIP_ENABLE_READ_CLIENT=y