Skip to content

Commit 319fb68

Browse files
authored
Merge branch 'master' into granbery/power_topology_test_scripts
2 parents 248e9a9 + 598356c commit 319fb68

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+548
-434
lines changed

.github/workflows/unit_integration_test.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ jobs:
6565
"clang") GN_ARGS='is_clang=true';;
6666
"mbedtls") GN_ARGS='chip_crypto="mbedtls"';;
6767
"rotating_device_id") GN_ARGS='chip_crypto="boringssl" chip_enable_rotating_device_id=true';;
68-
"icd") GN_ARGS='chip_enable_icd_server=true';;
68+
"icd") GN_ARGS='chip_enable_icd_server=true chip_enable_icd_lit=true';;
6969
*) ;;
7070
esac
7171

BUILD.gn

+4-2
Original file line numberDiff line numberDiff line change
@@ -626,8 +626,10 @@ if (current_toolchain != "${dir_pw_toolchain}/default:default") {
626626

627627
if (enable_linux_lit_icd_app_build) {
628628
group("linux_lit_icd_app") {
629-
deps =
630-
[ "${chip_root}/examples/lit-icd-app/linux(${standalone_toolchain})" ]
629+
lit_icd_standalone_toolchain =
630+
"${chip_root}/config/standalone/toolchain:lit_icd"
631+
632+
deps = [ "${chip_root}/examples/lit-icd-app/linux(${lit_icd_standalone_toolchain})" ]
631633
}
632634

633635
extra_build_deps += [ ":linux_lit_icd_app" ]

config/nrfconnect/chip-module/CMakeLists.txt

+6
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,12 @@ matter_add_gn_arg_bool ("chip_enable_icd_server" CONFIG_CHIP_EN
139139
matter_add_gn_arg_bool ("chip_enable_factory_data" CONFIG_CHIP_FACTORY_DATA)
140140
matter_add_gn_arg_bool ("chip_enable_read_client" CONFIG_CHIP_ENABLE_READ_CLIENT)
141141

142+
if (CONFIG_CHIP_ENABLE_ICD_SUPPORT)
143+
matter_add_gn_arg_bool ("chip_enable_icd_lit" CONFIG_CHIP_ICD_LIT_SUPPORT)
144+
matter_add_gn_arg_bool ("chip_enable_icd_checkin" CONFIG_CHIP_ICD_CHECK_IN_SUPPORT)
145+
matter_add_gn_arg_bool ("chip_enable_icd_user_active_mode_trigger" CONFIG_CHIP_ICD_UAT_SUPPORT)
146+
endif()
147+
142148
if (CONFIG_CHIP_FACTORY_DATA OR CONFIG_CHIP_FACTORY_DATA_CUSTOM_BACKEND)
143149
matter_add_gn_arg_bool("chip_use_transitional_commissionable_data_provider" FALSE)
144150
matter_add_gn_arg_bool("chip_use_transitional_device_instance_info_provider" FALSE)

config/nxp/chip-module/Kconfig

+1-1
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ endif #CHIP_FACTORY_DATA_BUILD
208208
# See config/zephyr/Kconfig for full definition
209209
config CHIP_FACTORY_RESET_ERASE_NVS
210210
bool
211-
default y if CHIP_FACTORY_DATA || CHIP_FACTORY_DATA_CUSTOM_BACKEND
211+
default y
212212

213213
endif
214214

config/nxp/chip-module/Kconfig.defaults

+37-7
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ config PTHREAD_IPC
8787

8888
config POSIX_MAX_FDS
8989
int
90-
default 16
90+
default 8
9191

9292
# Application stack size
9393
config MAIN_STACK_SIZE
@@ -99,12 +99,21 @@ config INIT_STACKS
9999
config NET_MGMT_EVENT_STACK_SIZE
100100
default 2048
101101

102+
config NET_MGMT_EVENT_QUEUE_SIZE
103+
default 20
104+
102105
config NET_IPV6_MLD
103106
default y
104107

105108
config NET_IF_MCAST_IPV6_ADDR_COUNT
106109
default 14
107110

111+
config NET_IF_MAX_IPV4_COUNT
112+
default 2
113+
114+
config NET_IF_MAX_IPV6_COUNT
115+
default 2
116+
108117
config NET_TC_TX_COUNT
109118
default 1
110119

@@ -129,10 +138,10 @@ config NET_TC_RX_THREAD_BASE_PRIO
129138

130139
# Network buffers
131140
config NET_PKT_RX_COUNT
132-
default 16
141+
default 60
133142

134143
config NET_PKT_TX_COUNT
135-
default 16
144+
default 40
136145

137146
config NET_BUF_RX_COUNT
138147
default 60
@@ -141,7 +150,7 @@ config NET_BUF_TX_COUNT
141150
default 80
142151

143152
config NET_BUF_DATA_SIZE
144-
default 1700
153+
default 1744
145154

146155
# Bluetooth Low Energy configs
147156

@@ -233,11 +242,14 @@ choice WPA_SUPP_LOG_LEVEL_CHOICE
233242
endchoice
234243

235244
config WPA_SUPP_THREAD_STACK_SIZE
236-
default 6144
245+
default 12288
237246

238247
config SYSTEM_WORKQUEUE_STACK_SIZE
239248
default 2048
240249

250+
config NET_TCP_WORKQ_STACK_SIZE
251+
default 2048
252+
241253
# align these numbers to match the OpenThread config
242254
config NET_IF_UNICAST_IPV6_ADDR_COUNT
243255
default 6
@@ -246,7 +258,25 @@ config NET_IF_MCAST_IPV6_ADDR_COUNT
246258
default 8
247259

248260
config NET_SOCKETS_POLL_MAX
249-
default 4
261+
default 8
262+
263+
config NET_IPV4_FRAGMENT_MAX_COUNT
264+
default 3
265+
266+
config NET_IPV4_FRAGMENT_MAX_PKT
267+
default 7
268+
269+
config NET_IPV4_FRAGMENT_TIMEOUT
270+
default 3
271+
272+
config NET_IPV6_FRAGMENT_MAX_COUNT
273+
default 3
274+
275+
config NET_IPV6_FRAGMENT_MAX_PKT
276+
default 7
277+
278+
config NET_IPV6_FRAGMENT_TIMEOUT
279+
default 3
250280

251281
# options managed by IP4/IP6 simultaneous support
252282
# aligned here to match OpenThread config
@@ -260,7 +290,7 @@ config SHELL_STACK_SIZE
260290
default 2616
261291

262292
config HEAP_MEM_POOL_SIZE
263-
default 65536
293+
default 122880
264294

265295
config CHIP_MALLOC_SYS_HEAP_SIZE
266296
default 28672 # 28 kB

config/standalone/toolchain/BUILD.gn

+9
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,12 @@ gcc_toolchain("standalone") {
2525
import("${chip_root}/config/standalone/args.gni")
2626
}
2727
}
28+
29+
gcc_toolchain("lit_icd") {
30+
toolchain_args = {
31+
current_os = host_os
32+
current_cpu = host_cpu
33+
is_clang = false
34+
import("${chip_root}/examples/lit-icd-app/linux/args.gni")
35+
}
36+
}

config/telink/chip-module/CMakeLists.txt

+6
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,12 @@ matter_add_gn_arg_bool ("chip_detail_logging" CONFIG_MATTER_
104104
matter_add_gn_arg_bool ("chip_automation_logging" FALSE)
105105
matter_add_gn_arg_bool ("chip_enable_icd_server" CONFIG_CHIP_ENABLE_ICD_SUPPORT)
106106

107+
if (CONFIG_CHIP_ENABLE_ICD_SUPPORT)
108+
matter_add_gn_arg_bool ("chip_enable_icd_lit" CONFIG_CHIP_ICD_LIT_SUPPORT)
109+
matter_add_gn_arg_bool ("chip_enable_icd_checkin" CONFIG_CHIP_ICD_CHECK_IN_SUPPORT)
110+
matter_add_gn_arg_bool ("chip_enable_icd_user_active_mode_trigger" CONFIG_CHIP_ICD_UAT_SUPPORT)
111+
endif()
112+
107113
if (CONFIG_CHIP_FACTORY_DATA)
108114
matter_add_gn_arg_bool ("chip_use_transitional_commissionable_data_provider" "false")
109115
matter_add_gn_arg_bool ("chip_enable_factory_data" "true")

config/zephyr/Kconfig

+32-7
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,7 @@ if CHIP_ENABLE_ICD_SUPPORT
334334

335335
config CHIP_ICD_SLOW_POLL_INTERVAL
336336
int "Intermittently Connected Device slow polling interval (ms)"
337+
default 30000 if CHIP_ICD_LIT_SUPPORT
337338
default 1000
338339
help
339340
Provides the Intermittently Connected Device slow polling interval in milliseconds while the
@@ -347,33 +348,57 @@ config CHIP_ICD_FAST_POLLING_INTERVAL
347348
Provides the Intermittently Connected Device fast polling interval in milliseconds while the
348349
device is in the active mode. It determines the fastest frequency at which the device will be able
349350
to receive the messages in the active mode. The CHIP_ICD_FAST_POLLING_INTERVAL shall be smaller than
350-
CHIP_ICD_ACTIVE_MODE_INTERVAL.
351+
CHIP_ICD_ACTIVE_MODE_DURATION.
351352

352-
config CHIP_ICD_IDLE_MODE_INTERVAL
353-
int "Intermittently Connected Device idle mode interval (s)"
353+
config CHIP_ICD_IDLE_MODE_DURATION
354+
int "Intermittently Connected Device idle mode duration (s)"
355+
default 300 if CHIP_ICD_LIT_SUPPORT
354356
default 120
355357
help
356-
Provides the Intermittently Connected Device idle mode interval in seconds.
358+
Provides the Intermittently Connected Device idle mode duration in seconds.
357359
It determines the maximum amount of time the device can stay in the idle mode, which means the
358360
device may be unreachable and not able to receive messages.
359361

360-
config CHIP_ICD_ACTIVE_MODE_INTERVAL
361-
int "Intermittently Connected Device active mode interval (ms)"
362+
config CHIP_ICD_ACTIVE_MODE_DURATION
363+
int "Intermittently Connected Device active mode duration (ms)"
362364
default 300
363365
help
364-
Provides the Intermittently Connected Device active mode interval in milliseconds.
366+
Provides the Intermittently Connected Device active mode duration in milliseconds.
365367
It determines the minimum amount of time the device shall stay in the active mode.
366368

367369
config CHIP_ICD_ACTIVE_MODE_THRESHOLD
368370
int "Intermittently Connected Device active mode threshold (ms)"
371+
default 5000 if CHIP_ICD_LIT_SUPPORT
369372
default 300
370373
help
371374
Provides the Intermittently Connected Device active mode threshold in milliseconds.
372375
It determines the minimum amount of time the device shall stay in the active mode after the network activity.
376+
For LIT devices it cannot be set to a value smaller than 5000 ms.
377+
378+
config CHIP_ICD_LIT_SUPPORT
379+
bool "Intermittenly Connected Device Long Idle Time support"
380+
imply CHIP_ICD_CHECK_IN_SUPPORT
381+
imply CHIP_ICD_UAT_SUPPORT
382+
help
383+
Enables the Intermittently Connected Device Long Idle Time support in Matter.
384+
It also implies the ICD Check-In and UAT features support that are mandatory for LIT device.
385+
386+
config CHIP_ICD_CHECK_IN_SUPPORT
387+
bool "Intermittenly Connected Device Check-In protocol support"
388+
help
389+
Enables the Check-In protocol support in Matter. It allows an ICD device to notify the registered
390+
ICD clients that it is available for communication.
391+
392+
config CHIP_ICD_UAT_SUPPORT
393+
bool "Intermittenly Connected Device User Active Mode Trigger support"
394+
help
395+
Enables the User Active Mode Trigger (UAT) support in Matter. It allows the User to use application specific
396+
means (e.g. button press) to trigger an ICD device to enter the active mode and become responsive.
373397

374398
config CHIP_ICD_CLIENTS_PER_FABRIC
375399
int "Intermittently Connected Device number of clients per fabric"
376400
default 2
401+
depends on CHIP_ICD_CHECK_IN_SUPPORT
377402
help
378403
Provides the Intermittently Connected Device number of clients per fabric. It determines the maximum number
379404
of clients per fabric that can be registered to receive notification from a device if their subscription is lost.

examples/light-switch-app/qpg/args.gni

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ chip_enable_ota_requestor = true
2323
chip_openthread_ftd = false
2424
enable_sleepy_device = true
2525
chip_enable_icd_server = true
26+
chip_enable_icd_lit = true
2627

2728
# Disable lock tracking, since our FreeRTOS configuration does not set
2829
# INCLUDE_xSemaphoreGetMutexHolder

examples/lit-icd-app/linux/args.gni

+1
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,4 @@ matter_enable_tracing_support = true
3030
chip_enable_icd_server = true
3131
chip_subscription_timeout_resumption = false
3232
chip_icd_report_on_active_mode = true
33+
chip_enable_icd_lit = true

examples/lit-icd-app/silabs/build_for_wifi_args.gni

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ chip_enable_icd_server = true
2828
chip_subscription_timeout_resumption = false
2929
sl_use_subscription_synching = true
3030
icd_enforce_sit_slow_poll_limit = true
31+
chip_enable_icd_lit = true
3132

3233
# ICD Matter Configuration flags
3334
sl_idle_mode_duration_s = 3600 # 60min Idle Mode Duration

examples/lit-icd-app/silabs/openthread.gni

+1
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ chip_subscription_timeout_resumption = false
3232
sl_use_subscription_synching = true
3333
icd_enforce_sit_slow_poll_limit = true
3434
chip_icd_report_on_active_mode = true
35+
chip_enable_icd_lit = true
3536

3637
# Openthread Configuration flags
3738
sl_ot_idle_interval_ms = 3600000 # 60mins Idle Polling Interval

examples/smoke-co-alarm-app/telink/prj.conf

+2
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,5 @@ CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE=n
5050

5151
# Enable Power Management
5252
CONFIG_PM=y
53+
54+
CONFIG_CHIP_ICD_LIT_SUPPORT=y

0 commit comments

Comments
 (0)