| # |
| # Copyright (c) 2023-2024 Project CHIP Authors |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| rsource "../../zephyr/Kconfig" |
| |
| if CHIP |
| |
| config CHIP_TELINK_PLATFORM |
| bool |
| default y |
| help |
| States that the configuration uses Matter Telink platform, |
| what can be used to conditionally deviate from Zephyr generic configuration |
| for Telink platform related purposes. |
| |
| # See config/zephyr/Kconfig for full definition |
| config CHIP_DEVICE_VENDOR_NAME |
| default "Telink Semiconductor" |
| |
| # See config/common/cmake/Kconfig for full definition |
| config CHIP_NFC_ONBOARDING_PAYLOAD |
| default n |
| imply I2C |
| imply ST25DVXXKC |
| imply NFC |
| |
| # See config/zephyr/Kconfig for full definition |
| config CHIP_OTA_REQUESTOR |
| bool |
| select BOOTLOADER_MCUBOOT |
| |
| config BOOTLOADER_MCUBOOT |
| bool |
| select IMG_MANAGER |
| select STREAM_FLASH |
| select STREAM_FLASH_ERASE |
| select TELINK_W91_N22_MATTER_OTA_LAYOUT if BOARD_TLSR9118BDK40D || BOARD_TLSR9118BDK40D_V1 |
| |
| # See config/zephyr/Kconfig for full definition |
| config CHIP_OTA_IMAGE_BUILD |
| bool |
| default y if CHIP_OTA_REQUESTOR |
| |
| config SIGNED_OTA_IMAGE_FILE_NAME |
| string "Zephyr signed image file name" |
| default "zephyr.signed.lzma.signed.bin" if COMPRESS_LZMA |
| default "zephyr.signed.bin" |
| depends on BOOTLOADER_MCUBOOT |
| help |
| Provides the file name of the generated Zephyr signed image. |
| |
| config TELINK_OTA_BUTTON_TEST |
| bool "Enable image update initiation via button press" |
| default n |
| depends on CHIP_OTA_REQUESTOR |
| help |
| Merge the signed binary with the same version as the main into slot-1 of merged.hex. |
| Pressing the button initiates a forced image update. |
| |
| config CHIP_DFU_OVER_BT_SMP |
| bool "Enable DFU over Bluetooth LE SMP feature set" |
| select BOOTLOADER_MCUBOOT |
| select MCUMGR |
| select MCUMGR_TRANSPORT_BT |
| select ZCBOR |
| select MCUMGR_GRP_IMG |
| select MCUMGR_GRP_OS |
| select MCUMGR_GRP_ZBASIC |
| select MCUMGR_GRP_ZBASIC_STORAGE_ERASE |
| select MCUMGR_TRANSPORT_BT_REASSEMBLY |
| select MCUMGR_MGMT_NOTIFICATION_HOOKS |
| select MCUMGR_GRP_IMG_UPLOAD_CHECK_HOOK |
| select MCUMGR_GRP_IMG_STATUS_HOOKS |
| help |
| Enables Device Firmware Upgrade over Bluetooth LE with SMP and configures |
| the set of options related to that feature. |
| |
| config CHIP_DFU_OVER_BT_SMP_BUILD |
| bool "Enable DFU over BT SMP image building" |
| depends on CHIP_DFU_OVER_BT_SMP |
| default n |
| |
| config TELINK_OTA_PARTITION_ADDR |
| hex "image-1 partition address" |
| default $(dt_node_reg_addr_hex,$(dt_nodelabel_path,slot1_partition),0) |
| depends on TELINK_OTA_BUTTON_TEST |
| |
| config CHIP_ROTATING_DEVICE_ID |
| bool "Generate rotating device ID" |
| default n |
| help |
| Enables the rotating device identifier that provides a non-trackable |
| identifier. The identifier is unique per device and rotates at pre-defined |
| moments. |
| |
| config CHIP_FACTORY_DATA |
| bool "Enable Factory Data support" |
| select ZCBOR |
| help |
| Enables support for reading factory data from flash memory partition. |
| It requires factory_data partition to exist. |
| |
| config CHIP_FACTORY_DATA_CUSTOM_BACKEND |
| bool "Enable Factory Data custom backend" |
| depends on !CHIP_FACTORY_DATA |
| help |
| Enables user custom factory data implementation. It cannot be used |
| with the CHIP_FACTORY_DATA that enabled default Telink factory data |
| implementation. |
| |
| config CHIP_FACTORY_DATA_BUILD |
| bool "Enable Factory Data build" |
| default n |
| help |
| Enables generation of factory data during the building. |
| It requires factory_data partition to exist. |
| As a result a new output file factory_data.bin will be created. |
| |
| config CHIP_FACTORY_DATA_VERSION |
| int |
| default 1 |
| help |
| The Factory data version contains a current version of a factory data |
| parameter set that the user cannot change. |
| After moving to the next version of the factory data set, change the default value. |
| This config is used to validate the version of a factory data set on a device-side |
| with the version of factory data saved in the Flash memory. |
| |
| if CHIP_FACTORY_DATA_BUILD |
| |
| # Factory data definitions |
| config CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE |
| bool "Enable merging generated factory data with the build target .bin file" |
| default y |
| help |
| Enables merging generated factory data with the build target zephyr.bin file. |
| As a result, output file merged.bin will consist of all partitions including |
| factory data. |
| |
| config TELINK_FACTORY_DATA_PARTITION_ADDR |
| hex "factory-data partition address" |
| default $(dt_node_reg_addr_hex,$(dt_nodelabel_path,factory_partition),0) |
| depends on CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE |
| |
| # Use default certificates without generating or providing them |
| config CHIP_FACTORY_DATA_USE_DEFAULT_CERTS |
| bool "Use default certificates located in Matter repository" |
| default y |
| help |
| Pre-generated certificates can be used for development purpose. |
| This config includes default pre-generated certificates |
| which are located in credentials/development/attestation/ directory |
| instead of generating new ones. |
| If this config is set to `n` new certificates will be generated. |
| |
| # Configs for SPAKE2 generation |
| config CHIP_FACTORY_DATA_GENERATE_SPAKE2_VERIFIER |
| bool "Enable spake2 verifier generation" |
| help |
| Enables generation of spake2 verifier according to |
| given iteration counter, salt and passcode. |
| To generate Spake2 verifier a spake2p executable must be available |
| from system variables environment. |
| |
| config CHIP_DEVICE_GENERATE_ROTATING_DEVICE_UID |
| bool "Enable generation of a new Rotating device id unique id" |
| default y |
| help |
| Enables generation of a new Rotating device id unique id. |
| |
| endif #CHIP_FACTORY_DATA_BUILD |
| |
| # See config/zephyr/Kconfig for full definition |
| config CHIP_FACTORY_RESET_ERASE_SETTINGS |
| bool |
| default n |
| |
| endif |
| |
| config CHIP_BUTTON_MANAGER_IRQ_MODE |
| bool "Use GPIO in an IRQ mode instead of polling the GPIO" |
| default y if BOARD_TLSR9118BDK40D |
| default PM |
| help |
| Use GPIO in an IRQ mode to avoid button polling loop and extend the battery lifetime by waking up by GPIO event. |
| GPIO events are working only with GPIO IRQ. This option changes button matrix configuration. |
| |
| config CHIP_ENABLE_APPLICATION_STATUS_LED |
| bool "Enable application status LED" |
| default !(PM) |
| help |
| Enable application status LED. |
| |
| config CHIP_ENABLE_PM_DURING_BLE |
| bool "Enable PM during BLE operation" |
| default n if SOC_RISCV_TELINK_W91 |
| default PM |
| help |
| Enable PM during BLE operation. |
| |
| config SHELL_BACKEND_SERIAL_RX_RING_BUFFER_SIZE |
| default 255 if SHELL_BACKEND_SERIAL |
| |
| config CHIP_ENABLE_POWER_ON_FACTORY_RESET |
| bool "Enable power on factory reset sequence" |
| default n |
| help |
| Enable power on factory reset sequence. If device power triggered off during |
| first 5 seconds after power on and this sequence repeated 5 times - factory |
| reset will be involved. |
| |
| config CHIP_TASK_STACK_SIZE |
| int |
| default 6328 if PM && !SOC_RISCV_TELINK_W91 |
| default 8448 |
| |
| config CHIP_USE_MARS_SENSOR |
| bool "Use Mars board sensor" |
| depends on SOC_RISCV_TELINK_B9X && (BOARD_TLSR9518ADK80D || BOARD_TLSR9518ADK80D_RETENTION) |
| default n |
| |
| config CHIP_PERSISTENT_SUBSCRIPTIONS |
| default n if BOARD_TL3218X_RETENTION |
| default y |
| # selecting experimental for this feature since there is an issue with multiple controllers. |
| select EXPERIMENTAL |
| |
| config CHIP_MAX_FABRICS |
| int "Maximum number of Matter fabrics" |
| default 3 if BOARD_TL3218X_RETENTION |
| default 5 |
| help |
| The maximum number of Matter fabrics that device can be joined to. |
| |
| if CHIP_PERSISTENT_SUBSCRIPTIONS |
| |
| config CHIP_MAX_ACTIVE_CASE_CLIENTS |
| int "Maximum number of outgoing CASE sessions" |
| default CHIP_MAX_FABRICS |
| help |
| The maximum number of outgoing CASE sessions that can be simultaneously handled by the end device. |
| |
| config CHIP_MAX_ACTIVE_DEVICES |
| int "Maximum number of simultaneous connections over CASE" |
| default CHIP_MAX_FABRICS |
| help |
| The maximum number of devices to which the Server implementers will be able to |
| concurrently connect over CASE and interact with. |
| |
| config CHIP_SUBSCRIPTION_RESUMPTION_MIN_RETRY_INTERVAL |
| int "Minimum subscription resumption interval in seconds" |
| default 20 |
| depends on CHIP_PERSISTENT_SUBSCRIPTIONS |
| help |
| The minimum interval in seconds before resuming a subscription that timed out. |
| |
| config CHIP_SUBSCRIPTION_RESUMPTION_RETRY_MULTIPLIER |
| int "The multiplier for subscription resumption retry in seconds" |
| default 40 |
| depends on CHIP_PERSISTENT_SUBSCRIPTIONS |
| help |
| The multiplier per subscription resumption retry attempt that is multiplied by the index of Fibonacci sequence |
| and added to CHIP_SUBSCRIPTION_RESUMPTION_MIN_RETRY_INTERVAL to obtain final wait time for next retry. |
| endif |
| |
| config TFLM_FEATURE |
| bool "Enable the TFLM micro speech feature" |
| default n |