Skip to content

Commit 1533577

Browse files
authored
Merge 7497f96 into c1ca759
2 parents c1ca759 + 7497f96 commit 1533577

9 files changed

+130
-13
lines changed
+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
*
3+
* Copyright (c) 2023 Project CHIP Authors
4+
*
5+
* Licensed under the Apache License, Version 2.0 (the "License");
6+
* you may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
18+
#pragma once
19+
20+
#include <lega_rtos_api.h>
21+
22+
// ==================== Platform Mutex Adaptations ====================
23+
24+
#define platform_mutex_t lega_mutex_t
25+
#define platform_init_mutex lega_rtos_init_mutex
26+
#define platform_lock_mutex lega_rtos_lock_mutex
27+
#define platform_unlock_mutex lega_rtos_unlock_mutex
28+
#define platform_delay_milliseconds lega_rtos_delay_milliseconds
29+
#define PLATFORM_WAIT_FOREVER LEGA_WAIT_FOREVER

src/platform/ASR/args.gni

+2
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,5 @@ chip_build_tests = false
2727
chip_inet_config_enable_ipv4 = true
2828
chip_inet_config_enable_tcp_endpoint = true
2929
chip_inet_config_enable_udp_endpoint = true
30+
31+
chip_system_config_locking = "platform"

src/platform/device.gni

+4
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,7 @@ if (chip_device_platform != "external") {
182182
chip_platform_config_include = ""
183183
chip_inet_platform_config_include = ""
184184
chip_system_platform_config_include = ""
185+
chip_system_platform_mutex_include = ""
185186
chip_system_layer_impl_config_file = ""
186187
} else {
187188
declare_args() {
@@ -190,6 +191,7 @@ if (chip_device_platform != "external") {
190191
chip_platform_config_include = ""
191192
chip_inet_platform_config_include = ""
192193
chip_system_platform_config_include = ""
194+
chip_system_platform_mutex_include = ""
193195
chip_system_layer_impl_config_file = ""
194196
}
195197
}
@@ -217,6 +219,8 @@ if (_chip_device_layer != "none" && chip_device_platform != "external") {
217219
"<platform/" + _chip_device_layer + "/InetPlatformConfig.h>"
218220
chip_system_platform_config_include =
219221
"<platform/" + _chip_device_layer + "/SystemPlatformConfig.h>"
222+
chip_system_platform_mutex_include =
223+
"<platform/" + _chip_device_layer + "/SystemPlatformMutex.h>"
220224
}
221225

222226
declare_args() {

src/system/BUILD.gn

+7
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ buildconfig_header("system_buildconfig") {
7373
config_device_layer = chip_device_platform != "none"
7474
chip_system_config_posix_locking = chip_system_config_locking == "posix"
7575
chip_system_config_freertos_locking = chip_system_config_locking == "freertos"
76+
chip_system_config_platform_locking = chip_system_config_locking == "platform"
7677
chip_system_config_mbed_locking = chip_system_config_locking == "mbed"
7778
chip_system_config_cmsis_rtos_locking =
7879
chip_system_config_locking == "cmsis-rtos"
@@ -94,6 +95,7 @@ buildconfig_header("system_buildconfig") {
9495
"CHIP_SYSTEM_CONFIG_USE_NETWORK_FRAMEWORK=false",
9596
"CHIP_SYSTEM_CONFIG_POSIX_LOCKING=${chip_system_config_posix_locking}",
9697
"CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING=${chip_system_config_freertos_locking}",
98+
"CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING=${chip_system_config_platform_locking}",
9799
"CHIP_SYSTEM_CONFIG_MBED_LOCKING=${chip_system_config_mbed_locking}",
98100
"CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING=${chip_system_config_cmsis_rtos_locking}",
99101
"CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING=${chip_system_config_zephyr_locking}",
@@ -127,6 +129,11 @@ buildconfig_header("system_buildconfig") {
127129
"SYSTEM_PLATFORM_CONFIG_INCLUDE=${chip_system_platform_config_include}",
128130
]
129131
}
132+
if (chip_system_platform_mutex_include != "") {
133+
defines += [
134+
"SYSTEM_PLATFORM_MUTEX_INCLUDE=${chip_system_platform_mutex_include}",
135+
]
136+
}
130137
if (chip_enable_thread_safety_checks) {
131138
defines += [ "SYSTEM_ENABLE_CLANG_THREAD_SAFETY_ANALYSIS=1" ]
132139
}

src/system/SystemConfig.h

+32-10
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,10 @@
151151
#define CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING INET_CONFIG_FREERTOS_LOCKING
152152
#endif // !defined(CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING) && defined(INET_CONFIG_FREERTOS_LOCKING)
153153

154+
#if !defined(CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING) && defined(INET_CONFIG_PLATFORM_LOCKING)
155+
#define CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING INET_CONFIG_PLATFORM_LOCKING
156+
#endif // !defined(CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING) && defined(INET_CONFIG_PLATFORM_LOCKING)
157+
154158
#if !defined(CHIP_SYSTEM_CONFIG_MBED_LOCKING) && defined(INET_CONFIG_MBED_LOCKING)
155159
#define CHIP_SYSTEM_CONFIG_MBED_LOCKING INET_CONFIG_MBED_LOCKING
156160
#endif // !defined(CHIP_SYSTEM_CONFIG_MBED_LOCKING) && defined(INET_CONFIG_MBED_LOCKING)
@@ -204,6 +208,20 @@
204208
#define CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING 0
205209
#endif /* CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING */
206210

211+
/**
212+
* @def CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
213+
*
214+
* @brief
215+
* Use PLATFORM locking.
216+
*
217+
* This should be generally asserted (1) for platform customization.
218+
*
219+
* However, if you are simulating an LwIP-based system atop POSIX threads and BSD sockets, this should also be deasserted (0).
220+
*/
221+
#ifndef CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
222+
#define CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING 0
223+
#endif /* CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING */
224+
207225
/**
208226
* @def CHIP_SYSTEM_CONFIG_MBED_LOCKING
209227
*
@@ -262,23 +280,27 @@
262280
* @brief
263281
* Disable the use of locking within the system layer.
264282
*
265-
* This value is mutually exclusive with CHIP_SYSTEM_CONFIG_POSIX_LOCKING and CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING and CHIP_SYSTEM_CONFIG_MBED_LOCKING.
283+
* This value is mutually exclusive with CHIP_SYSTEM_CONFIG_POSIX_LOCKING and CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING and CHIP_SYSTEM_CONFIG_MBED_LOCKING and CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING.
266284
*/
267285
#ifndef CHIP_SYSTEM_CONFIG_NO_LOCKING
268286
#define CHIP_SYSTEM_CONFIG_NO_LOCKING 0
269287
#endif /* CHIP_SYSTEM_CONFIG_NO_LOCKING */
270288

271-
#if !(CHIP_SYSTEM_CONFIG_POSIX_LOCKING || CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
272-
#error "REQUIRED: CHIP_SYSTEM_CONFIG_POSIX_LOCKING || CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING"
273-
#endif // !(CHIP_SYSTEM_CONFIG_POSIX_LOCKING || CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
289+
#if !(CHIP_SYSTEM_CONFIG_POSIX_LOCKING || CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
290+
#error "REQUIRED: CHIP_SYSTEM_CONFIG_POSIX_LOCKING || CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING"
291+
#endif // !(CHIP_SYSTEM_CONFIG_POSIX_LOCKING || CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
292+
293+
#if CHIP_SYSTEM_CONFIG_POSIX_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
294+
#error "FORBIDDEN: CHIP_SYSTEM_CONFIG_POSIX_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)"
295+
#endif // CHIP_SYSTEM_CONFIG_POSIX_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
274296

275-
#if CHIP_SYSTEM_CONFIG_POSIX_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
276-
#error "FORBIDDEN: CHIP_SYSTEM_CONFIG_POSIX_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)"
277-
#endif // CHIP_SYSTEM_CONFIG_POSIX_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
297+
#if CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING && (CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
298+
#error "FORBIDDEN: CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING && (CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)"
299+
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING && (CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
278300

279-
#if CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING && (CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
280-
#error "FORBIDDEN: CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING && (CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)"
281-
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING && (CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
301+
#if CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
302+
#error "FORBIDDEN: CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)"
303+
#endif // CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_MBED_LOCKING || CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
282304

283305
#if CHIP_SYSTEM_CONFIG_MBED_LOCKING && (CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)
284306
#error "FORBIDDEN: CHIP_SYSTEM_CONFIG_MBED_LOCKING && (CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING || CHIP_SYSTEM_CONFIG_ZEPHYR_LOCKING || CHIP_SYSTEM_CONFIG_NO_LOCKING)"

src/system/SystemMutex.cpp

+36
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,42 @@ DLL_EXPORT void Mutex::Lock(void)
110110
}
111111
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
112112

113+
#if CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
114+
DLL_EXPORT CHIP_ERROR Mutex::Init(Mutex & aThis)
115+
{
116+
restart:
117+
if (__sync_bool_compare_and_swap(&aThis.mInitialized, 0, 1))
118+
{
119+
platform_init_mutex((platform_mutex_t *) &aThis.mSemaphore);
120+
if (aThis.mSemaphore == nullptr)
121+
{
122+
aThis.mInitialized = 0;
123+
124+
return CHIP_ERROR_NO_MEMORY;
125+
}
126+
}
127+
else
128+
{
129+
while (aThis.mSemaphore == nullptr)
130+
{
131+
platform_delay_milliseconds(1);
132+
133+
if (aThis.mInitialized == 0)
134+
{
135+
goto restart;
136+
}
137+
}
138+
}
139+
140+
return CHIP_NO_ERROR;
141+
}
142+
143+
DLL_EXPORT void Mutex::Lock(void)
144+
{
145+
platform_lock_mutex((platform_mutex_t *) &this->mSemaphore, PLATFORM_WAIT_FOREVER);
146+
}
147+
#endif // CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
148+
113149
#if CHIP_SYSTEM_CONFIG_CMSIS_RTOS_LOCKING
114150
DLL_EXPORT CHIP_ERROR Mutex::Init(Mutex & aThis)
115151
{

src/system/SystemMutex.h

+17-1
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@
4848
#endif
4949
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
5050

51+
#if CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
52+
#include SYSTEM_PLATFORM_MUTEX_INCLUDE
53+
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
54+
5155
#if CHIP_SYSTEM_CONFIG_MBED_LOCKING
5256
#include <rtos/Mutex.h>
5357
#endif // CHIP_SYSTEM_CONFIG_MBED_LOCKING
@@ -112,7 +116,7 @@ class DLL_EXPORT CHIP_CAPABILITY("mutex") Mutex
112116
Mutex() = default;
113117

114118
static CHIP_ERROR Init(Mutex & aMutex);
115-
#if CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
119+
#if CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
116120
inline bool isInitialized() { return mInitialized; }
117121
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
118122

@@ -136,6 +140,11 @@ class DLL_EXPORT CHIP_CAPABILITY("mutex") Mutex
136140
volatile bool mInitialized = 0;
137141
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
138142

143+
#if CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
144+
volatile platform_mutex_t mSemaphore = nullptr;
145+
volatile bool mInitialized = 0;
146+
#endif // CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
147+
139148
#if CHIP_SYSTEM_CONFIG_MBED_LOCKING
140149
rtos::Mutex mMbedMutex;
141150
#endif // CHIP_SYSTEM_CONFIG_MBED_LOCKING
@@ -180,6 +189,13 @@ inline void Mutex::Unlock(void)
180189
}
181190
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
182191

192+
#if CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING
193+
inline void Mutex::Unlock(void)
194+
{
195+
platform_unlock_mutex((platform_mutex_t *) &this->mSemaphore);
196+
}
197+
#endif // CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
198+
183199
#if CHIP_SYSTEM_CONFIG_MBED_LOCKING
184200
inline CHIP_ERROR Mutex::Init(Mutex & aMutex)
185201
{

src/system/SystemPacketBuffer.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,7 @@ PacketBufferHandle PacketBufferHandle::New(size_t aAvailableSize, uint16_t aRese
508508
#elif CHIP_SYSTEM_PACKETBUFFER_FROM_CHIP_POOL
509509

510510
static_cast<void>(lBlockSize);
511-
#if !CHIP_SYSTEM_CONFIG_NO_LOCKING && CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING
511+
#if !CHIP_SYSTEM_CONFIG_NO_LOCKING && (CHIP_SYSTEM_CONFIG_FREERTOS_LOCKING || CHIP_SYSTEM_CONFIG_PLATFORM_LOCKING)
512512
if (!sBufferPoolMutex.isInitialized())
513513
{
514514
Mutex::Init(sBufferPoolMutex);

src/system/system.gni

+2-1
Original file line numberDiff line numberDiff line change
@@ -74,11 +74,12 @@ if (chip_system_config_locking == "") {
7474
assert(
7575
chip_system_config_locking == "posix" ||
7676
chip_system_config_locking == "freertos" ||
77+
chip_system_config_locking == "platform" ||
7778
chip_system_config_locking == "none" ||
7879
chip_system_config_locking == "mbed" ||
7980
chip_system_config_locking == "cmsis-rtos" ||
8081
chip_system_config_locking == "zephyr",
81-
"Please select a valid mutex implementation: posix, freertos, mbed, cmsis-rtos, zephyr, none")
82+
"Please select a valid mutex implementation: posix, freertos, platform, mbed, cmsis-rtos, zephyr, none")
8283

8384
assert(
8485
chip_system_config_clock == "clock_gettime" ||

0 commit comments

Comments
 (0)