Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simple support of composed Bridged Devices. #17506

Merged
merged 3 commits into from
Apr 20, 2022

Conversation

AntonGrey
Copy link
Contributor

@AntonGrey AntonGrey commented Apr 19, 2022

Matter doesn't have support of composed Bridged Devices.

The problem is that sdk currently provides no way to access(fill or read) PartsList on endpoints other than EP0.
Link to Topology or logical grouping chapter which describe exposure of composed Bridged Devices.

Change overview

  • Add link to root endpoint for endpoints of a composed Bridged Devices.
  • Encode PartsList for a root endpoint of a composed Bridged Devices.

@boring-cyborg boring-cyborg bot added the app label Apr 19, 2022
@github-actions
Copy link

github-actions bot commented Apr 19, 2022

PR #17506: Size comparison from 6a1d09f to 80e5225

Increases above 0.2%:

platform target config section 6a1d09f 80e5225 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 .data 3380 3396 16 0.5
cyw30739 light cyw930739m2evb_01 .data 684 692 8 1.2
lock cyw930739m2evb_01 .data 648 656 8 1.2
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 564 568 4 0.7
efr32 lighting-app BRD4161A .data 2040 2048 8 0.4
BRD4161A+rpc .data 2244 2252 8 0.4
window-app BRD4161A .data 1948 1960 12 0.6
k32w light k32w061+release .data 1992 2000 8 0.4
lock k32w061+release .data 1952 1960 8 0.4
linux all-clusters-app debug .data 1920 1984 64 3.3
bridge-app debug+rpc .data 2912 3072 160 5.5
chip-tool-no-interactive-ipv6only arm64 .data 1184 1192 8 0.7
lighting-app debug+rpc .data 1952 1984 32 1.6
lock-app debug .data 1472 1504 32 2.2
ota-provider-app debug .data 1640 1672 32 2.0
ota-requestor-app debug .data 1896 1928 32 1.7
shell debug .data 1296 1360 64 4.9
thermostat-no-ble arm64 .data 1440 1488 48 3.3
tv-app debug .data 4448 4640 192 4.3
p6 all-clusters-app default .data 2768 2784 16 0.6
light-app default .data 2576 2584 8 0.3
lock-app default .data 2536 2544 8 0.3
Increases (32 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 6a1d09f 80e5225 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 685799 685895 96 0.0
.data 3380 3396 16 0.5
.text 581696 581792 96 0.0
lock-ftd LP_CC2652R7 (read only) 678095 678191 96 0.0
.data 3212 3220 8 0.2
.text 578292 578388 96 0.0
lock-mtd LP_CC2652R7 (read only) 626839 626935 96 0.0
(read/write) 146980 146988 8 0.0
.data 3212 3220 8 0.2
.text 527148 527244 96 0.0
pump-app LP_CC2652R7 (read only) 649807 649903 96 0.0
(read/write) 152492 152756 264 0.2
.data 3244 3252 8 0.2
.text 573600 573696 96 0.0
pump-controller-app LP_CC2652R7 (read only) 643151 643247 96 0.0
(read/write) 152160 152168 8 0.0
.data 3208 3216 8 0.2
.text 563608 563704 96 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 619310 619414 104 0.0
.app_xip_area 526068 526164 96 0.0
.data 684 692 8 1.2
lock cyw930739m2evb_01 (read/write) 614010 614114 104 0.0
.app_xip_area 522248 522344 96 0.0
.data 648 656 8 1.2
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 566406 566414 8 0.0
.data 564 568 4 0.7
efr32 lighting-app BRD4161A (read only) 909172 909412 240 0.0
(read/write) 133128 133136 8 0.0
.data 2040 2048 8 0.4
.text 909164 909404 240 0.0
BRD4161A+rpc (read only) 943548 943804 256 0.0
(read/write) 149812 149820 8 0.0
.data 2244 2252 8 0.4
.text 943540 943796 256 0.0
window-app BRD4161A (read only) 846644 846884 240 0.0
(read/write) 131116 131128 12 0.0
.data 1948 1960 12 0.6
.text 846636 846876 240 0.0
esp32 all-clusters-app c3devkit (read only) 981816 981952 136 0.0
(read/write) 1398170 1398186 16 0.0
.dram0.data 14412 14428 16 0.1
.flash.text 981816 981952 136 0.0
m5stack (read only) 1036999 1037187 188 0.0
(read/write) 465896 465912 16 0.0
.dram0.data 34152 34168 16 0.0
.flash.text 1031615 1031803 188 0.0
k32w light k32w061+release (read/write) 684868 684972 104 0.0
.data 1992 2000 8 0.4
.text 599164 599260 96 0.0
lock k32w061+release (read/write) 726164 726268 104 0.0
.data 1952 1960 8 0.4
.text 639868 639964 96 0.0
linux all-clusters-app debug (read only) 2708945 2710113 1168 0.0
(read/write) 149568 149632 64 0.0
.data 1920 1984 64 3.3
.text 2300754 2302018 1264 0.1
bridge-app debug+rpc (read only) 1841901 1843581 1680 0.1
(read/write) 91920 92080 160 0.2
.data 2912 3072 160 5.5
.text 1573701 1575477 1776 0.1
chip-tool debug (read only) 10863597 10863613 16 0.0
.text 9484741 9484757 16 0.0
chip-tool-no-interactive-ipv6only arm64 (read/write) 494929 494945 16 0.0
.data 1184 1192 8 0.7
lighting-app debug+rpc (read only) 2319033 2320201 1168 0.1
(read/write) 127984 128016 32 0.0
.data 1952 1984 32 1.6
.text 1969154 1970418 1264 0.1
lock-app debug (read only) 2142729 2144345 1616 0.1
(read/write) 120248 120280 32 0.0
.data 1472 1504 32 2.2
.text 1796130 1797842 1712 0.1
ota-provider-app debug (read only) 2051969 2052097 128 0.0
(read/write) 115616 115648 32 0.0
.data 1640 1672 32 2.0
.text 1721170 1721298 128 0.0
ota-requestor-app debug (read only) 2082785 2082913 128 0.0
(read/write) 118424 118456 32 0.0
.data 1896 1928 32 1.7
.text 1754178 1754306 128 0.0
shell debug (read only) 2535873 2537025 1152 0.0
(read/write) 150312 150376 64 0.0
.data 1296 1360 64 4.9
.text 2158466 2159714 1248 0.1
thermostat-no-ble arm64 (read only) 2359996 2360972 976 0.0
(read/write) 151137 151185 48 0.0
.data 1440 1488 48 3.3
.text 1985648 1986624 976 0.0
tv-app debug (read only) 2836161 2837393 1232 0.0
(read/write) 253136 253328 192 0.1
.data 4448 4640 192 4.3
.text 2438530 2439858 1328 0.1
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2410724 2410852 128 0.0
.data 5840 5848 8 0.1
.text 1373324 1373452 128 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1165731 1165843 112 0.0
text 802796 802884 88 0.0
p6 all-clusters-app default (read/write) 2518464 2518704 240 0.0
.data 2768 2784 16 0.6
.text 1476728 1476968 240 0.0
light-app default (read/write) 2417144 2417400 256 0.0
.data 2576 2584 8 0.3
.text 1375408 1375664 256 0.0
lock-app default (read/write) 2421032 2421288 256 0.0
.data 2536 2544 8 0.3
.text 1379296 1379552 256 0.0
telink lighting-app tlsr9518adk80d (read/write) 802236 802364 128 0.0
text 570790 570912 122 0.0
Decreases (8 builds for cc13x2_26x2, linux)
platform target config section 6a1d09f 80e5225 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 167384 167288 -96 -0.1
lock-ftd LP_CC2652R7 (read/write) 166056 165960 -96 -0.1
linux all-clusters-app debug .rodata 233541 233445 -96 -0.0
bridge-app debug+rpc .rodata 149273 149177 -96 -0.1
lighting-app debug+rpc .rodata 183433 183337 -96 -0.1
lock-app debug .rodata 189849 189753 -96 -0.1
shell debug .rodata 215666 215570 -96 -0.0
tv-app debug .rodata 215435 215339 -96 -0.0
Full report (32 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 6a1d09f 80e5225 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 685799 685895 96 0.0
(read/write) 167384 167288 -96 -0.1
.bss 76168 76168 0 0.0
.data 3380 3396 16 0.5
.rodata 103623 103623 0 0.0
.text 581696 581792 96 0.0
lock-ftd LP_CC2652R7 (read only) 678095 678191 96 0.0
(read/write) 166056 165960 -96 -0.1
.bss 74192 74192 0 0.0
.data 3212 3220 8 0.2
.rodata 99319 99319 0 0.0
.text 578292 578388 96 0.0
lock-mtd LP_CC2652R7 (read only) 626839 626935 96 0.0
(read/write) 146980 146988 8 0.0
.bss 69912 69912 0 0.0
.data 3212 3220 8 0.2
.rodata 99199 99199 0 0.0
.text 527148 527244 96 0.0
pump-app LP_CC2652R7 (read only) 649807 649903 96 0.0
(read/write) 152492 152756 264 0.2
.bss 74624 74624 0 0.0
.data 3244 3252 8 0.2
.rodata 75719 75719 0 0.0
.text 573600 573696 96 0.0
pump-controller-app LP_CC2652R7 (read only) 643151 643247 96 0.0
(read/write) 152160 152168 8 0.0
.bss 74328 74328 0 0.0
.data 3208 3216 8 0.2
.rodata 79055 79055 0 0.0
.text 563608 563704 96 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 619310 619414 104 0.0
.app_xip_area 526068 526164 96 0.0
.bss 75908 75908 0 0.0
.data 684 692 8 1.2
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 614010 614114 104 0.0
.app_xip_area 522248 522344 96 0.0
.bss 74460 74460 0 0.0
.data 648 656 8 1.2
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 566406 566414 8 0.0
.app_xip_area 465056 465056 0 0.0
.bss 83752 83752 0 0.0
.data 564 568 4 0.7
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 909172 909412 240 0.0
(read/write) 133128 133136 8 0.0
.bss 131088 131088 0 0.0
.data 2040 2048 8 0.4
.text 909164 909404 240 0.0
BRD4161A+rpc (read only) 943548 943804 256 0.0
(read/write) 149812 149820 8 0.0
.bss 147568 147568 0 0.0
.data 2244 2252 8 0.4
.text 943540 943796 256 0.0
window-app BRD4161A (read only) 846644 846884 240 0.0
(read/write) 131116 131128 12 0.0
.bss 129168 129168 0 0.0
.data 1948 1960 12 0.6
.text 846636 846876 240 0.0
esp32 all-clusters-app c3devkit (read only) 981816 981952 136 0.0
(read/write) 1398170 1398186 16 0.0
.dram0.bss 62640 62640 0 0.0
.dram0.data 14412 14428 16 0.1
.flash.rodata 202208 202208 0 0.0
.flash.text 981816 981952 136 0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1036999 1037187 188 0.0
(read/write) 465896 465912 16 0.0
.dram0.bss 68152 68152 0 0.0
.dram0.data 34152 34168 16 0.0
.flash.rodata 231756 231756 0 0.0
.flash.text 1031615 1031803 188 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 684868 684972 104 0.0
.bss 77912 77912 0 0.0
.data 1992 2000 8 0.4
.text 599164 599260 96 0.0
lock k32w061+release (read/write) 726164 726268 104 0.0
.bss 78544 78544 0 0.0
.data 1952 1960 8 0.4
.text 639868 639964 96 0.0
linux all-clusters-app debug (read only) 2708945 2710113 1168 0.0
(read/write) 149568 149632 64 0.0
.bss 59968 59968 0 0.0
.data 1920 1984 64 3.3
.data.rel.ro 81624 81624 0 0.0
.dynamic 608 608 0 0.0
.got 4448 4448 0 0.0
.init 27 27 0 0.0
.init_array 984 984 0 0.0
.rodata 233541 233445 -96 -0.0
.text 2300754 2302018 1264 0.1
bridge-app debug+rpc (read only) 1841901 1843581 1680 0.1
(read/write) 91920 92080 160 0.2
.bss 44232 44232 0 0.0
.data 2912 3072 160 5.5
.data.rel.ro 39688 39688 0 0.0
.dynamic 592 592 0 0.0
.got 3920 3920 0 0.0
.init 27 27 0 0.0
.init_array 544 544 0 0.0
.rodata 149273 149177 -96 -0.1
.text 1573701 1575477 1776 0.1
chip-tool debug (read only) 10863597 10863613 16 0.0
(read/write) 373552 373552 0 0.0
.bss 22592 22592 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 343592 343592 0 0.0
.dynamic 624 624 0 0.0
.got 4936 4936 0 0.0
.init 27 27 0 0.0
.init_array 648 648 0 0.0
.rodata 544653 544653 0 0.0
.text 9484741 9484757 16 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10481020 10481020 0 0.0
(read/write) 494929 494945 16 0.0
.bss 40865 40865 0 0.0
.data 1184 1192 8 0.7
.data.rel.ro 390744 390744 0 0.0
.dynamic 560 560 0 0.0
.got 58336 58336 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 518396 518396 0 0.0
.text 8851684 8851684 0 0.0
lighting-app debug+rpc (read only) 2319033 2320201 1168 0.1
(read/write) 127984 128016 32 0.0
.bss 50016 50016 0 0.0
.data 1952 1984 32 1.6
.data.rel.ro 70312 70312 0 0.0
.dynamic 608 608 0 0.0
.got 4304 4304 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 183433 183337 -96 -0.1
.text 1969154 1970418 1264 0.1
lock-app debug (read only) 2142729 2144345 1616 0.1
(read/write) 120248 120280 32 0.0
.bss 47840 47840 0 0.0
.data 1472 1504 32 2.2
.data.rel.ro 65368 65368 0 0.0
.dynamic 592 592 0 0.0
.got 4248 4248 0 0.0
.init 27 27 0 0.0
.init_array 720 720 0 0.0
.rodata 189849 189753 -96 -0.1
.text 1796130 1797842 1712 0.1
ota-provider-app debug (read only) 2051969 2052097 128 0.0
(read/write) 115616 115648 32 0.0
.bss 48032 48032 0 0.0
.data 1640 1672 32 2.0
.data.rel.ro 60200 60200 0 0.0
.dynamic 608 608 0 0.0
.got 4448 4448 0 0.0
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 173803 173803 0 0.0
.text 1721170 1721298 128 0.0
ota-requestor-app debug (read only) 2082785 2082913 128 0.0
(read/write) 118424 118456 32 0.0
.bss 48704 48704 0 0.0
.data 1896 1928 32 1.7
.data.rel.ro 62248 62248 0 0.0
.dynamic 592 592 0 0.0
.got 4288 4288 0 0.0
.init 27 27 0 0.0
.init_array 656 656 0 0.0
.rodata 170124 170124 0 0.0
.text 1754178 1754306 128 0.0
shell debug (read only) 2535873 2537025 1152 0.0
(read/write) 150312 150376 64 0.0
.bss 67368 67368 0 0.0
.data 1296 1360 64 4.9
.data.rel.ro 75944 75944 0 0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 215666 215570 -96 -0.0
.text 2158466 2159714 1248 0.1
thermostat-no-ble arm64 (read only) 2359996 2360972 976 0.0
(read/write) 151137 151185 48 0.0
.bss 62945 62945 0 0.0
.data 1440 1488 48 3.3
.data.rel.ro 78984 78984 0 0.0
.dynamic 560 560 0 0.0
.got 4752 4752 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 145356 145356 0 0.0
.text 1985648 1986624 976 0.0
tv-app debug (read only) 2836161 2837393 1232 0.0
(read/write) 253136 253328 192 0.1
.bss 165976 165976 0 0.0
.data 4448 4640 192 4.3
.data.rel.ro 76512 76512 0 0.0
.dynamic 592 592 0 0.0
.got 4680 4680 0 0.0
.init 27 27 0 0.0
.init_array 912 912 0 0.0
.rodata 215435 215339 -96 -0.0
.text 2438530 2439858 1328 0.1
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2410724 2410852 128 0.0
.bss 185252 185252 0 0.0
.data 5840 5848 8 0.1
.text 1373324 1373452 128 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1165731 1165843 112 0.0
bss 136520 136520 0 0.0
rodata 147780 147780 0 0.0
text 802796 802884 88 0.0
p6 all-clusters-app default (read/write) 2518464 2518704 240 0.0
.bss 118624 118624 0 0.0
.data 2768 2784 16 0.6
.text 1476728 1476968 240 0.0
light-app default (read/write) 2417144 2417400 256 0.0
.bss 112104 112104 0 0.0
.data 2576 2584 8 0.3
.text 1375408 1375664 256 0.0
lock-app default (read/write) 2421032 2421288 256 0.0
.bss 111904 111904 0 0.0
.data 2536 2544 8 0.3
.text 1379296 1379552 256 0.0
telink lighting-app tlsr9518adk80d (read/write) 802236 802364 128 0.0
bss 69952 69952 0 0.0
noinit 40416 40416 0 0.0
text 570790 570912 122 0.0

Copy link
Contributor

@mrjerryjohns mrjerryjohns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't the existing bridge app be updated to reflect this usage?

src/app/util/af-types.h Outdated Show resolved Hide resolved
src/app/util/attribute-storage.h Show resolved Hide resolved
@andy31415 andy31415 merged commit dd0f7c9 into project-chip:master Apr 20, 2022
@AntonGrey AntonGrey deleted the support_composed_devices branch April 21, 2022 05:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants