Skip to content

Commit 6047fbb

Browse files
s07641069andriy-bilynskyymishadesh
authored
[Telink] Use common Zephyr heap & Update Telink image to 16 (#29531)
* [Telink] Use common Zephyr heap * [Telink] Added default RF TX power selection * [Telink] Update Telink image to 16 --------- Co-authored-by: Andrii Bilynskyi <andrii.bilynskyi@telink-semi.com> Co-authored-by: Misha Tkachenko <misha.tkachenko@telink-semi.com>
1 parent 188cf7d commit 6047fbb

File tree

13 files changed

+24
-48
lines changed

13 files changed

+24
-48
lines changed

.github/workflows/chef.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696
if: github.actor != 'restyled-io[bot]'
9797

9898
container:
99-
image: ghcr.io/project-chip/chip-build-telink:12
99+
image: ghcr.io/project-chip/chip-build-telink:16
100100
options: --user root
101101

102102
steps:

.github/workflows/examples-telink.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
if: github.actor != 'restyled-io[bot]'
3737

3838
container:
39-
image: ghcr.io/project-chip/chip-build-telink:12
39+
image: ghcr.io/project-chip/chip-build-telink:16
4040
volumes:
4141
- "/tmp/bloat_reports:/tmp/bloat_reports"
4242

config/telink/chip-module/Kconfig.defaults

+8-9
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,10 @@ config B9X_BLE_CTRL_MASTER_MAX_NUM
143143
config B9X_BLE_CTRL_SLAVE_MAX_NUM
144144
default 1
145145

146+
config B9X_BLE_CTRL_RF_POWER
147+
default 3 if PM
148+
default 9
149+
146150
choice B9X_BLE_CTRL_MAC_TYPE
147151
default B9X_BLE_CTRL_MAC_TYPE_RANDOM_STATIC
148152
endchoice
@@ -220,6 +224,10 @@ config OPENTHREAD_SLAAC
220224
config OPENTHREAD_MANUAL_START
221225
default y
222226

227+
config OPENTHREAD_DEFAULT_TX_POWER
228+
default 3 if PM
229+
default 9
230+
223231
config NET_TX_STACK_SIZE
224232
default 554 if PM
225233

@@ -247,15 +255,6 @@ config MBEDTLS_USER_CONFIG_ENABLE
247255
config MBEDTLS_USER_CONFIG_FILE
248256
default "telink-mbedtls-config.h"
249257

250-
config MBEDTLS_ENABLE_HEAP
251-
default y
252-
253-
# TBD: Something wrong with this heap. Need to be investigated. Cirrently just set minimal size
254-
config MBEDTLS_HEAP_SIZE
255-
default 0
256-
257-
config OPENTHREAD_EXTERNAL_HEAP
258-
default y
259258

260259
# getopt version
261260
config GETOPT_LONG

examples/all-clusters-app/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,3 @@ CONFIG_CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE=n
5555

5656
# Enable Power Management
5757
CONFIG_PM=n
58-
59-
# Custom RF power values
60-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
61-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

examples/all-clusters-minimal-app/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,3 @@ CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE=n
5353

5454
# Enable Power Management
5555
CONFIG_PM=n
56-
57-
# Custom RF power values
58-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
59-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

examples/bridge-app/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,3 @@ CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE=n
5656

5757
# Enable Power Management
5858
CONFIG_PM=n
59-
60-
# Custom RF power values
61-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
62-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

examples/chef/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,3 @@ CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE=n
5555

5656
# Enable Power Management
5757
CONFIG_PM=n
58-
59-
# Custom RF power values
60-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
61-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

examples/lighting-app/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,3 @@ CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE=n
5656

5757
# Enable Power Management
5858
CONFIG_PM=n
59-
60-
# Custom RF power values
61-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
62-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

examples/ota-requestor-app/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,3 @@ CONFIG_CHIP_LIB_SHELL=n
5656

5757
# Enable Power Management
5858
CONFIG_PM=n
59-
60-
# Custom RF power values
61-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
62-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

examples/platform/telink/project_include/OpenThreadConfig.h

-3
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,6 @@
3535

3636
#define OPENTHREAD_CONFIG_LOG_OUTPUT OPENTHREAD_CONFIG_LOG_OUTPUT_DEBUG_UART
3737

38-
#undef OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT
39-
#define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT 1
40-
4138
#undef OPENTHREAD_CONFIG_LOG_LEVEL
4239
#if (CONFIG_LOG_MODE_MINIMAL)
4340
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_NONE

examples/shell/telink/prj.conf

-4
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,3 @@ CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE=n
5555

5656
# Enable Power Management
5757
CONFIG_PM=n
58-
59-
# Custom RF power values
60-
CONFIG_B9X_BLE_CTRL_RF_POWER_P9P11DBM=y
61-
CONFIG_OPENTHREAD_DEFAULT_TX_POWER=9

src/platform/Zephyr/PlatformManagerImpl.cpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ PlatformManagerImpl PlatformManagerImpl::sInstance{ sChipThreadStack };
4545

4646
static k_timer sOperationalHoursSavingTimer;
4747

48-
#if !CONFIG_NORDIC_SECURITY_BACKEND
48+
#if !CONFIG_NORDIC_SECURITY_BACKEND && !defined(CONFIG_MBEDTLS_ZEPHYR_ENTROPY)
4949
static int app_entropy_source(void * data, unsigned char * output, size_t len, size_t * olen)
5050
{
5151
const struct device * entropy = DEVICE_DT_GET(DT_CHOSEN(zephyr_entropy));
@@ -71,7 +71,7 @@ static int app_entropy_source(void * data, unsigned char * output, size_t len, s
7171

7272
return ret;
7373
}
74-
#endif // !CONFIG_NORDIC_SECURITY_BACKEND
74+
#endif // !CONFIG_NORDIC_SECURITY_BACKEND && !defined(CONFIG_MBEDTLS_ZEPHYR_ENTROPY)
7575

7676
void PlatformManagerImpl::OperationalHoursSavingTimerEventHandler(k_timer * timer)
7777
{
@@ -108,20 +108,20 @@ CHIP_ERROR PlatformManagerImpl::_InitChipStack(void)
108108
{
109109
CHIP_ERROR err;
110110

111-
#if !CONFIG_NORDIC_SECURITY_BACKEND
111+
#if !CONFIG_NORDIC_SECURITY_BACKEND && !defined(CONFIG_MBEDTLS_ZEPHYR_ENTROPY)
112112
// Minimum required from source before entropy is released ( with mbedtls_entropy_func() ) (in bytes)
113113
const size_t kThreshold = 16;
114-
#endif // !CONFIG_NORDIC_SECURITY_BACKEND
114+
#endif // !CONFIG_NORDIC_SECURITY_BACKEND && !defined(CONFIG_MBEDTLS_ZEPHYR_ENTROPY)
115115

116116
// Initialize the configuration system.
117117
err = Internal::ZephyrConfig::Init();
118118
SuccessOrExit(err);
119119

120-
#if !CONFIG_NORDIC_SECURITY_BACKEND
120+
#if !CONFIG_NORDIC_SECURITY_BACKEND && !defined(CONFIG_MBEDTLS_ZEPHYR_ENTROPY)
121121
// Add entropy source based on Zephyr entropy driver
122122
err = chip::Crypto::add_entropy_source(app_entropy_source, NULL, kThreshold);
123123
SuccessOrExit(err);
124-
#endif // !CONFIG_NORDIC_SECURITY_BACKEND
124+
#endif // !CONFIG_NORDIC_SECURITY_BACKEND && !defined(CONFIG_MBEDTLS_ZEPHYR_ENTROPY)
125125

126126
// Call _InitChipStack() on the generic implementation base class to finish the initialization process.
127127
err = Internal::GenericPlatformManagerImpl_Zephyr<PlatformManagerImpl>::_InitChipStack();

src/platform/telink/telink-mbedtls-config.h

+8
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,14 @@
2424
#ifndef MBEDTLS_TSLR9_CONF_H
2525
#define MBEDTLS_TSLR9_CONF_H
2626

27+
#ifdef MBEDTLS_PLATFORM_MEMORY
28+
#undef MBEDTLS_PLATFORM_MEMORY
29+
#endif
30+
31+
#ifdef MBEDTLS_MEMORY_BUFFER_ALLOC_C
32+
#undef MBEDTLS_MEMORY_BUFFER_ALLOC_C
33+
#endif
34+
2735
#define MBEDTLS_HKDF_C
2836
#define MBEDTLS_PKCS5_C
2937
#define MBEDTLS_X509_CREATE_C

0 commit comments

Comments
 (0)