From afa53f0e94474c331cd2a49580433d00e4a4f9ce Mon Sep 17 00:00:00 2001 From: rbaron Date: Thu, 15 Jun 2023 07:45:55 +0200 Subject: [PATCH] Introduce CONFIG_BOARD_REVISION_CODE Beside having a `CONFIG_BOARD_REVISION` Kconfig string that represents our semantic versioning for board revisions, the ZigBee sample requires an integer representation of it. Instead of conditioning the integer version on the string version only for that sample and having to touch the ZigBee sample whenever we add a revision, I decided to have a board-wide config, so that both string and int versions live close to each other. Fixes #138. --- .../prstlib/boards/arm/bparasite_nrf52833/Kconfig.defconfig | 4 ++++ .../arm/bparasite_nrf52833/bparasite_nrf52833_1_1_0.conf | 1 + .../arm/bparasite_nrf52833/bparasite_nrf52833_1_2_0.conf | 1 + .../arm/bparasite_nrf52833/bparasite_nrf52833_2_0_0.conf | 1 + .../prstlib/boards/arm/bparasite_nrf52840/Kconfig.defconfig | 4 ++++ .../arm/bparasite_nrf52840/bparasite_nrf52840_1_1_0.conf | 1 + .../arm/bparasite_nrf52840/bparasite_nrf52840_1_2_0.conf | 1 + .../arm/bparasite_nrf52840/bparasite_nrf52840_2_0_0.conf | 1 + code/nrf-connect/samples/zigbee/Kconfig | 2 +- 9 files changed, 15 insertions(+), 1 deletion(-) diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/Kconfig.defconfig b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/Kconfig.defconfig index 71c501c..637d11c 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/Kconfig.defconfig +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/Kconfig.defconfig @@ -8,6 +8,10 @@ config BOARD_REVISION string "Board revision." default "1.0.0" +config BOARD_REVISION_CODE + int "Board revision code. An integer representation of the board revision." + default 1 + config BT_CTLR default BT diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_1_0.conf b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_1_0.conf index c1f719c..8aa0858 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_1_0.conf +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_1_0.conf @@ -1 +1,2 @@ CONFIG_BOARD_REVISION="1.1.0" +CONFIG_BOARD_REVISION_CODE=2 diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_2_0.conf b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_2_0.conf index 9daf8a6..b4b99e3 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_2_0.conf +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_1_2_0.conf @@ -1 +1,2 @@ CONFIG_BOARD_REVISION="1.2.0" +CONFIG_BOARD_REVISION_CODE=3 diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_2_0_0.conf b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_2_0_0.conf index 2dc67c8..aa78f61 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_2_0_0.conf +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52833/bparasite_nrf52833_2_0_0.conf @@ -1 +1,2 @@ CONFIG_BOARD_REVISION="2.0.0" +CONFIG_BOARD_REVISION_CODE=4 diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/Kconfig.defconfig b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/Kconfig.defconfig index 520ada7..969d54d 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/Kconfig.defconfig +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/Kconfig.defconfig @@ -8,6 +8,10 @@ config BOARD_REVISION string "Board revision." default "1.0.0" +config BOARD_REVISION_CODE + int "Board revision code. An integer representation of the board revision." + default 1 + config BT_CTLR default BT diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_1_0.conf b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_1_0.conf index c1f719c..8aa0858 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_1_0.conf +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_1_0.conf @@ -1 +1,2 @@ CONFIG_BOARD_REVISION="1.1.0" +CONFIG_BOARD_REVISION_CODE=2 diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_2_0.conf b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_2_0.conf index 9daf8a6..b4b99e3 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_2_0.conf +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_1_2_0.conf @@ -1 +1,2 @@ CONFIG_BOARD_REVISION="1.2.0" +CONFIG_BOARD_REVISION_CODE=3 diff --git a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_2_0_0.conf b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_2_0_0.conf index 2dc67c8..aa78f61 100644 --- a/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_2_0_0.conf +++ b/code/nrf-connect/prstlib/boards/arm/bparasite_nrf52840/bparasite_nrf52840_2_0_0.conf @@ -1 +1,2 @@ CONFIG_BOARD_REVISION="2.0.0" +CONFIG_BOARD_REVISION_CODE=4 diff --git a/code/nrf-connect/samples/zigbee/Kconfig b/code/nrf-connect/samples/zigbee/Kconfig index 5346f11..8b980c6 100644 --- a/code/nrf-connect/samples/zigbee/Kconfig +++ b/code/nrf-connect/samples/zigbee/Kconfig @@ -19,7 +19,7 @@ config PRST_ZB_MODEL_ID config PRST_ZB_HARDWARE_VERSION int "Zigbee basic cluster hardware version attribute. 1 byte." - default 2 + default BOARD_REVISION_CODE choice PRST_ZB_FACTORY_RESET_METHOD bool "Factory reset method"