| # |
| # Copyright (c) 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_NXP_PLATFORM |
| bool |
| default y |
| help |
| States that the configuration uses Matter NXP platform, |
| what can be used to conditionally deviate from Zephyr generic configuration |
| for NXP platform related purposes. |
| |
| # See config/zephyr/Kconfig for full definition |
| config CHIP_DEVICE_VENDOR_NAME |
| default "NXP Semiconductors" |
| |
| config CHIP_APP_LOG_LEVEL |
| int "Logging level in application" |
| default LOG_DEFAULT_LEVEL |
| depends on LOG |
| help |
| Sets the logging level in the Matter application. Use this configuration |
| option only within the application. To set the logging level for the |
| Matter stack, use the MATTER_LOG_LEVEL configuration option. |
| |
| config CHIP_EXAMPLE_DEVICE_INFO_PROVIDER |
| bool "Include default device information provider build" |
| default y |
| |
| config CHIP_DEBUG_SYMBOLS |
| bool "Generate debug symbols" |
| default y |
| help |
| Enables building the application with debug symbols. |
| |
| config CHIP_MALLOC_SYS_HEAP |
| default y if !ARCH_POSIX |
| |
| config CHIP_FACTORY_DATA |
| bool "Factory data provider" |
| help |
| Enables the default NXP factory data provider implementation that |
| supports reading the factory data encoded in the KLV format from the |
| flash memory partition. This option requires a fixed partition named |
| "factory_partition" declared on the device tree. Factory data partition |
| can be generated during build process, see CHIP_FACTORY_DATA_BUILD Kconfig. |
| |
| config CHIP_FACTORY_DATA_CUSTOM_BACKEND |
| bool "Custom factory data provider" |
| depends on !CHIP_FACTORY_DATA |
| help |
| Enables user's custom factory data provider implementation. This option |
| cannot be used with the CHIP_FACTORY_DATA, which enables the default NXP |
| factory data provider implementation. |
| |
| config CHIP_FACTORY_DATA_BUILD |
| bool "Generate factory data contents" |
| default n |
| imply CHIP_FACTORY_DATA |
| help |
| Enables generation of the factory data contents during the building. This |
| option requires a fixed partition named "factory_partition" declared on the |
| device tree. |
| |
| config CHIP_FACTORY_DATA_VERSION |
| int |
| default 1 |
| help |
| Provides the version of the generated factory data parameter set. This is |
| a hidden configuration option that the user cannot change. You can use |
| this value in the factory data provider implementation to verify that the |
| factory data saved in the flash memory has the expected version. |
| |
| config CHIP_FACTORY_DATA_ROTATING_DEVICE_UID_MAX_LEN |
| int "Maximum length of rotating device ID unique ID in bytes" |
| default 16 |
| depends on CHIP_FACTORY_DATA |
| help |
| Maximum acceptable length of rotating device ID unique ID in bytes. |
| |
| if CHIP_FACTORY_DATA |
| |
| config CHIP_ENCRYPTED_FACTORY_DATA_AES128_KEY |
| string "AES128 key used to encrypt factory data." |
| default "2B7E151628AED2A6ABF7158809CF4F3C" |
| help |
| AES128 key used to encrypt factory data. |
| |
| config CHIP_ENCRYPTED_FACTORY_DATA |
| bool "Encrypt factory data with AES128 ECB." |
| default y |
| help |
| If enabled, the factory data partition will be encrypted with AES128 ECB. |
| |
| config CHIP_DEVICE_PRODUCT_URL |
| string "Product URL" |
| help |
| Provides the URL to the product page. The URL is exposed as an attribute |
| of the Basic Information cluster. |
| |
| config CHIP_DEVICE_PRODUCT_LABEL |
| string "Product label" |
| help |
| Provides the product label. The label is exposed as an attribute |
| of the Basic Information cluster. |
| |
| config CHIP_DEVICE_PART_NUMBER |
| string "Part number" |
| help |
| Provides the part number. The part number is exposed as an attribute |
| of the Basic Information cluster. |
| |
| endif |
| |
| if CHIP_FACTORY_DATA_BUILD |
| |
| # Factory data definitions |
| config CHIP_FACTORY_DATA_GENERATE_ONBOARDING_CODES |
| bool "Generate onboarding codes during the generation of a factory data set" |
| help |
| Enables generation of onboarding codes (manual pairing code and QR code) |
| during the generation of a factory data set. You can provide the |
| onboarding codes a Matter controller to commission a device to a Matter |
| network. |
| |
| # Select source of the certificates |
| choice CHIP_FACTORY_DATA_CERT_SOURCE |
| prompt "Attestation certificate file source" |
| default CHIP_FACTORY_DATA_USE_DEFAULT_CERTS |
| |
| config CHIP_FACTORY_DATA_USE_DEFAULT_CERTS |
| bool "Use pre-generated development certificates" |
| help |
| Uses pre-generated certificate files from the |
| credentials/development/attestation/ directory that match the |
| configured Product ID. This can be used for development purpose. |
| |
| config CHIP_FACTORY_DATA_CERT_SOURCE_GENERATED |
| bool "Auto-generate certificates" |
| help |
| Generates new certificates instead of using pre-generated ones. The |
| certificates are generated on every build. |
| |
| config CHIP_FACTORY_DATA_CERT_SOURCE_USER |
| bool "Use user-provided certificate files" |
| help |
| Uses user-provided certificate files. The user needs to specify the |
| absolute paths to all necessary files. |
| |
| endchoice |
| |
| if CHIP_FACTORY_DATA_CERT_SOURCE_USER |
| |
| config CHIP_FACTORY_DATA_USER_CERTS_CD_CERT |
| string "Path to the CD certificate (DER format)" |
| help |
| Provides the absolute path to the CD certificate file in the DER format. |
| |
| config CHIP_FACTORY_DATA_USER_CERTS_DAC_CERT |
| string "Path to the DAC certificate (DER format)" |
| help |
| Provides the absolute path to the DAC certificate file in the DER format. |
| |
| config CHIP_FACTORY_DATA_USER_CERTS_DAC_KEY |
| string "Path to the DAC private key (DER format)" |
| help |
| Provides the absolute path to the DAC keypair file in the DER format. Both |
| public and private keys must be present (the private key will be extracted |
| automatically). |
| |
| config CHIP_FACTORY_DATA_USER_CERTS_PAI_CERT |
| string "Path to the PAI certificate (DER format)" |
| help |
| Provides the absolute path to the PAI certificate in the DER format. |
| endif |
| |
| # Configs for SPAKE2+ generation |
| config CHIP_FACTORY_DATA_GENERATE_SPAKE2_VERIFIER |
| bool "Generate SPAKE2+ verifier" |
| help |
| Enables the generation of the SPAKE2+ verifier for the configured SPAKE2+ |
| passcode, iteration count and salt. |
| |
| config CHIP_DEVICE_GENERATE_ROTATING_DEVICE_UID |
| bool "Generate Rotating device ID unique ID" |
| default y |
| help |
| Enables the generation of a random Rotating device ID unique ID. |
| |
| endif #CHIP_FACTORY_DATA_BUILD |
| |
| # See config/zephyr/Kconfig for full definition |
| config CHIP_FACTORY_RESET_ERASE_NVS |
| bool |
| default y |
| |
| endif |
| |
| config CHIP_LOG_SIZE_OPTIMIZATION |
| bool "Disable some detailed logs to decrease flash usage" |
| help |
| Disables some log levels for specific Matter log modules that provide |
| information that is too detailed to be used in most cases. You can find |
| full configuration enabled by this option in the |
| platform/nxp/CHIPPlatformConfig.h file. |
| |
| config CHIP_IPV4 |
| bool "IPv4 support for Matter" |
| default n |
| depends on NET_IPV4 |
| help |
| If disabled, it allows to build NXP SDK application |
| with IPv4 support independently of the Matter stack still |
| running over IPv6. |
| |
| config CHIP_OTA_REQUESTOR |
| bool |
| select BOOTLOADER_MCUBOOT |
| |
| config BOOTLOADER_MCUBOOT |
| bool |
| select IMG_MANAGER |
| select STREAM_FLASH |
| select STREAM_FLASH_ERASE |
| |
| config CHIP_OTA_REQUESTOR_BUFFER_SIZE |
| int "OTA Requestor image buffer size" |
| default 256 |
| depends on CHIP_OTA_REQUESTOR |
| help |
| Configures the size of the buffer used by OTA Requestor when downloading |
| and writing a new firmware image to flash. |
| |
| config CHIP_OTA_REQUESTOR_REBOOT_ON_APPLY |
| bool "Auto-reboot when firmware update is applied" |
| default y |
| depends on CHIP_OTA_REQUESTOR |
| imply REBOOT |
| help |
| Reboots the device automatically after downloading a new firmware update |
| to swap the old and the new firmware images. The reboot happens only when |
| a user consents to apply the firmware update. |
| |
| choice CHIP_OTA_REQUEST_UPGRADE_TYPE |
| prompt "Type of the upgrade to apply on new images" |
| default CHIP_OTA_REQUEST_UPGRADE_TEST |
| depends on CHIP_OTA_REQUESTOR |
| |
| config CHIP_OTA_REQUEST_UPGRADE_PERMANENT |
| bool "Mark the image as permanent" |
| help |
| The upgrade will be permanent on the next reboot. |
| No coming back to the old image. |
| |
| config CHIP_OTA_REQUEST_UPGRADE_TEST |
| bool "Mark the image as a test" |
| help |
| The upgrade will be marked as a test. |
| Image will be run on the next reboot, if confirmed it |
| becomes permanent, otherwise the new image is reverted. |
| |
| endchoice |