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

[System] Remove LwIP from EFR32 OpenThread implementation #17512

Conversation

jepenven-silabs
Copy link
Contributor

Problem

Fix #13085

Change overview

Last PR in a serie of PR to add a Native OpenThread implementation of Matter without the need to use LwIP as a wrapper.

By enabling chip_system_config_use_open_thread_inet_endpoints=true and setting chip_with_lwip=false Platform manufacturer can now build Matter without LwIP or Zephyr, thus reducing the usage of the Flash.

Testing

Tested on EFR32 and Unit Test.

@github-actions
Copy link

github-actions bot commented Apr 19, 2022

PR #17512: Size comparison from 03ea72d to d153978

Increases (4 builds for cc13x2_26x2, p6)
platform target config section 03ea72d d153978 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 685783 685791 8 0.0
.text 581680 581688 8 0.0
lock-mtd LP_CC2652R7 (read only) 626831 626839 8 0.0
.text 527140 527148 8 0.0
pump-app LP_CC2652R7 (read only) 649799 649807 8 0.0
.text 573592 573600 8 0.0
p6 lock-app default (read/write) 2421208 2421224 16 0.0
.text 1379472 1379488 16 0.0
Decreases (1 build for cc13x2_26x2)
platform target config section 03ea72d d153978 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 167400 167392 -8 -0.0
Full report (27 builds for cc13x2_26x2, cyw30739, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 03ea72d d153978 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 685783 685791 8 0.0
(read/write) 167400 167392 -8 -0.0
.bss 76168 76168 0 0.0
.data 3380 3380 0 0.0
.rodata 103623 103623 0 0.0
.text 581680 581688 8 0.0
lock-ftd LP_CC2652R7 (read only) 678087 678087 0 0.0
(read/write) 166064 166064 0 0.0
.bss 74192 74192 0 0.0
.data 3212 3212 0 0.0
.rodata 99319 99319 0 0.0
.text 578284 578284 0 0.0
lock-mtd LP_CC2652R7 (read only) 626831 626839 8 0.0
(read/write) 146980 146980 0 0.0
.bss 69912 69912 0 0.0
.data 3212 3212 0 0.0
.rodata 99199 99199 0 0.0
.text 527140 527148 8 0.0
pump-app LP_CC2652R7 (read only) 649799 649807 8 0.0
(read/write) 152492 152492 0 0.0
.bss 74624 74624 0 0.0
.data 3244 3244 0 0.0
.rodata 75719 75719 0 0.0
.text 573592 573600 8 0.0
pump-controller-app LP_CC2652R7 (read only) 643143 643143 0 0.0
(read/write) 152160 152160 0 0.0
.bss 74328 74328 0 0.0
.data 3208 3208 0 0.0
.rodata 79055 79055 0 0.0
.text 563600 563600 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 619302 619302 0 0.0
.app_xip_area 526060 526060 0 0.0
.bss 75908 75908 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 613994 613994 0 0.0
.app_xip_area 522232 522232 0 0.0
.bss 74460 74460 0 0.0
.data 648 648 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 566390 566390 0 0.0
.app_xip_area 465040 465040 0 0.0
.bss 83752 83752 0 0.0
.data 564 564 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w light k32w061+release (read/write) 684852 684852 0 0.0
.bss 77912 77912 0 0.0
.data 1992 1992 0 0.0
.text 599148 599148 0 0.0
lock k32w061+release (read/write) 726148 726148 0 0.0
.bss 78544 78544 0 0.0
.data 1952 1952 0 0.0
.text 639852 639852 0 0.0
linux all-clusters-app debug (read only) 2709137 2709137 0 0.0
(read/write) 149568 149568 0 0.0
.bss 59968 59968 0 0.0
.data 1920 1920 0 0.0
.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 233669 233669 0 0.0
.text 2300818 2300818 0 0.0
bridge-app debug+rpc (read only) 1842109 1842109 0 0.0
(read/write) 91920 91920 0 0.0
.bss 44232 44232 0 0.0
.data 2912 2912 0 0.0
.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 149433 149433 0 0.0
.text 1573749 1573749 0 0.0
chip-tool debug (read only) 10863821 10863821 0 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 544813 544813 0 0.0
.text 9484805 9484805 0 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10481260 10481260 0 0.0
(read/write) 494929 494929 0 0.0
.bss 40865 40865 0 0.0
.data 1184 1184 0 0.0
.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 518524 518524 0 0.0
.text 8851796 8851796 0 0.0
lighting-app debug+rpc (read only) 2319225 2319225 0 0.0
(read/write) 127984 127984 0 0.0
.bss 50016 50016 0 0.0
.data 1952 1952 0 0.0
.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 183561 183561 0 0.0
.text 1969218 1969218 0 0.0
lock-app debug (read only) 2142921 2142921 0 0.0
(read/write) 120248 120248 0 0.0
.bss 47840 47840 0 0.0
.data 1472 1472 0 0.0
.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 189977 189977 0 0.0
.text 1796194 1796194 0 0.0
ota-provider-app debug (read only) 2052161 2052161 0 0.0
(read/write) 115616 115616 0 0.0
.bss 48032 48032 0 0.0
.data 1640 1640 0 0.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 173931 173931 0 0.0
.text 1721234 1721234 0 0.0
ota-requestor-app debug (read only) 2082977 2082977 0 0.0
(read/write) 118424 118424 0 0.0
.bss 48704 48704 0 0.0
.data 1896 1896 0 0.0
.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 170252 170252 0 0.0
.text 1754242 1754242 0 0.0
shell debug (read only) 2536065 2536065 0 0.0
(read/write) 150312 150312 0 0.0
.bss 67368 67368 0 0.0
.data 1296 1296 0 0.0
.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 215794 215794 0 0.0
.text 2158530 2158530 0 0.0
thermostat-no-ble arm64 (read only) 2360236 2360236 0 0.0
(read/write) 151137 151137 0 0.0
.bss 62945 62945 0 0.0
.data 1440 1440 0 0.0
.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 145484 145484 0 0.0
.text 1985760 1985760 0 0.0
tv-app debug (read only) 2836353 2836353 0 0.0
(read/write) 253136 253136 0 0.0
.bss 165976 165976 0 0.0
.data 4448 4448 0 0.0
.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 215563 215563 0 0.0
.text 2438594 2438594 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2410916 2410916 0 0.0
.bss 185252 185252 0 0.0
.data 5840 5840 0 0.0
.text 1373516 1373516 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1165731 1165731 0 0.0
bss 136520 136520 0 0.0
rodata 147780 147780 0 0.0
text 802792 802792 0 0.0
p6 all-clusters-app default (read/write) 2518648 2518648 0 0.0
.bss 118624 118624 0 0.0
.data 2768 2768 0 0.0
.text 1476912 1476912 0 0.0
light-app default (read/write) 2417320 2417320 0 0.0
.bss 112104 112104 0 0.0
.data 2576 2576 0 0.0
.text 1375584 1375584 0 0.0
lock-app default (read/write) 2421208 2421224 16 0.0
.bss 111904 111904 0 0.0
.data 2536 2536 0 0.0
.text 1379472 1379488 16 0.0
telink lighting-app tlsr9518adk80d (read/write) 802236 802236 0 0.0
bss 69952 69952 0 0.0
noinit 40416 40416 0 0.0
text 570794 570794 0 0.0

@github-actions
Copy link

github-actions bot commented Apr 19, 2022

PR #17512: Size comparison from 03ea72d to 1321b14

Increases (6 builds for cc13x2_26x2, esp32, p6)
platform target config section 03ea72d 1321b14 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 685783 685791 8 0.0
.text 581680 581688 8 0.0
lock-mtd LP_CC2652R7 (read only) 626831 626839 8 0.0
.text 527140 527148 8 0.0
pump-app LP_CC2652R7 (read only) 649799 649807 8 0.0
.text 573592 573600 8 0.0
esp32 all-clusters-app c3devkit (read only) 981876 981882 6 0.0
.flash.text 981876 981882 6 0.0
.iram0.text 62016 62020 4 0.0
m5stack (read only) 1037047 1037111 64 0.0
.flash.text 1031663 1031727 64 0.0
p6 lock-app default (read/write) 2421208 2421224 16 0.0
.text 1379472 1379488 16 0.0
Decreases (4 builds for cc13x2_26x2, efr32)
platform target config section 03ea72d 1321b14 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 167400 167392 -8 -0.0
efr32 lighting-app BRD4161A (read only) 909172 906932 -2240 -0.2
(read/write) 133128 128908 -4220 -3.2
.bss 131088 126872 -4216 -3.2
.data 2040 2036 -4 -0.2
.text 909164 906924 -2240 -0.2
BRD4161A+rpc (read only) 943548 941292 -2256 -0.2
(read/write) 149812 145592 -4220 -2.8
.bss 147568 143352 -4216 -2.9
.data 2244 2240 -4 -0.2
.text 943540 941284 -2256 -0.2
window-app BRD4161A (read only) 846644 844404 -2240 -0.3
(read/write) 131116 126992 -4124 -3.1
.bss 129168 125048 -4120 -3.2
.data 1948 1944 -4 -0.2
.text 846636 844396 -2240 -0.3
Full report (32 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 03ea72d 1321b14 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 685783 685791 8 0.0
(read/write) 167400 167392 -8 -0.0
.bss 76168 76168 0 0.0
.data 3380 3380 0 0.0
.rodata 103623 103623 0 0.0
.text 581680 581688 8 0.0
lock-ftd LP_CC2652R7 (read only) 678087 678087 0 0.0
(read/write) 166064 166064 0 0.0
.bss 74192 74192 0 0.0
.data 3212 3212 0 0.0
.rodata 99319 99319 0 0.0
.text 578284 578284 0 0.0
lock-mtd LP_CC2652R7 (read only) 626831 626839 8 0.0
(read/write) 146980 146980 0 0.0
.bss 69912 69912 0 0.0
.data 3212 3212 0 0.0
.rodata 99199 99199 0 0.0
.text 527140 527148 8 0.0
pump-app LP_CC2652R7 (read only) 649799 649807 8 0.0
(read/write) 152492 152492 0 0.0
.bss 74624 74624 0 0.0
.data 3244 3244 0 0.0
.rodata 75719 75719 0 0.0
.text 573592 573600 8 0.0
pump-controller-app LP_CC2652R7 (read only) 643143 643143 0 0.0
(read/write) 152160 152160 0 0.0
.bss 74328 74328 0 0.0
.data 3208 3208 0 0.0
.rodata 79055 79055 0 0.0
.text 563600 563600 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 619302 619302 0 0.0
.app_xip_area 526060 526060 0 0.0
.bss 75908 75908 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 613994 613994 0 0.0
.app_xip_area 522232 522232 0 0.0
.bss 74460 74460 0 0.0
.data 648 648 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 566390 566390 0 0.0
.app_xip_area 465040 465040 0 0.0
.bss 83752 83752 0 0.0
.data 564 564 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 909172 906932 -2240 -0.2
(read/write) 133128 128908 -4220 -3.2
.bss 131088 126872 -4216 -3.2
.data 2040 2036 -4 -0.2
.text 909164 906924 -2240 -0.2
BRD4161A+rpc (read only) 943548 941292 -2256 -0.2
(read/write) 149812 145592 -4220 -2.8
.bss 147568 143352 -4216 -2.9
.data 2244 2240 -4 -0.2
.text 943540 941284 -2256 -0.2
window-app BRD4161A (read only) 846644 844404 -2240 -0.3
(read/write) 131116 126992 -4124 -3.1
.bss 129168 125048 -4120 -3.2
.data 1948 1944 -4 -0.2
.text 846636 844396 -2240 -0.3
esp32 all-clusters-app c3devkit (read only) 981876 981882 6 0.0
(read/write) 1398306 1398306 0 0.0
.dram0.bss 62640 62640 0 0.0
.dram0.data 14412 14412 0 0.0
.flash.rodata 202344 202344 0 0.0
.flash.text 981876 981882 6 0.0
.iram0.text 62016 62020 4 0.0
m5stack (read only) 1037047 1037111 64 0.0
(read/write) 466024 466024 0 0.0
.dram0.bss 68152 68152 0 0.0
.dram0.data 34152 34152 0 0.0
.flash.rodata 231884 231884 0 0.0
.flash.text 1031663 1031727 64 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 684852 684852 0 0.0
.bss 77912 77912 0 0.0
.data 1992 1992 0 0.0
.text 599148 599148 0 0.0
lock k32w061+release (read/write) 726148 726148 0 0.0
.bss 78544 78544 0 0.0
.data 1952 1952 0 0.0
.text 639852 639852 0 0.0
linux all-clusters-app debug (read only) 2709137 2709137 0 0.0
(read/write) 149568 149568 0 0.0
.bss 59968 59968 0 0.0
.data 1920 1920 0 0.0
.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 233669 233669 0 0.0
.text 2300818 2300818 0 0.0
bridge-app debug+rpc (read only) 1842109 1842109 0 0.0
(read/write) 91920 91920 0 0.0
.bss 44232 44232 0 0.0
.data 2912 2912 0 0.0
.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 149433 149433 0 0.0
.text 1573749 1573749 0 0.0
chip-tool debug (read only) 10863821 10863821 0 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 544813 544813 0 0.0
.text 9484805 9484805 0 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10481260 10481260 0 0.0
(read/write) 494929 494929 0 0.0
.bss 40865 40865 0 0.0
.data 1184 1184 0 0.0
.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 518524 518524 0 0.0
.text 8851796 8851796 0 0.0
lighting-app debug+rpc (read only) 2319225 2319225 0 0.0
(read/write) 127984 127984 0 0.0
.bss 50016 50016 0 0.0
.data 1952 1952 0 0.0
.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 183561 183561 0 0.0
.text 1969218 1969218 0 0.0
lock-app debug (read only) 2142921 2142921 0 0.0
(read/write) 120248 120248 0 0.0
.bss 47840 47840 0 0.0
.data 1472 1472 0 0.0
.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 189977 189977 0 0.0
.text 1796194 1796194 0 0.0
ota-provider-app debug (read only) 2052161 2052161 0 0.0
(read/write) 115616 115616 0 0.0
.bss 48032 48032 0 0.0
.data 1640 1640 0 0.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 173931 173931 0 0.0
.text 1721234 1721234 0 0.0
ota-requestor-app debug (read only) 2082977 2082977 0 0.0
(read/write) 118424 118424 0 0.0
.bss 48704 48704 0 0.0
.data 1896 1896 0 0.0
.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 170252 170252 0 0.0
.text 1754242 1754242 0 0.0
shell debug (read only) 2536065 2536065 0 0.0
(read/write) 150312 150312 0 0.0
.bss 67368 67368 0 0.0
.data 1296 1296 0 0.0
.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 215794 215794 0 0.0
.text 2158530 2158530 0 0.0
thermostat-no-ble arm64 (read only) 2360236 2360236 0 0.0
(read/write) 151137 151137 0 0.0
.bss 62945 62945 0 0.0
.data 1440 1440 0 0.0
.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 145484 145484 0 0.0
.text 1985760 1985760 0 0.0
tv-app debug (read only) 2836353 2836353 0 0.0
(read/write) 253136 253136 0 0.0
.bss 165976 165976 0 0.0
.data 4448 4448 0 0.0
.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 215563 215563 0 0.0
.text 2438594 2438594 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2410916 2410916 0 0.0
.bss 185252 185252 0 0.0
.data 5840 5840 0 0.0
.text 1373516 1373516 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1165731 1165731 0 0.0
bss 136520 136520 0 0.0
rodata 147780 147780 0 0.0
text 802792 802792 0 0.0
p6 all-clusters-app default (read/write) 2518648 2518648 0 0.0
.bss 118624 118624 0 0.0
.data 2768 2768 0 0.0
.text 1476912 1476912 0 0.0
light-app default (read/write) 2417320 2417320 0 0.0
.bss 112104 112104 0 0.0
.data 2576 2576 0 0.0
.text 1375584 1375584 0 0.0
lock-app default (read/write) 2421208 2421224 16 0.0
.bss 111904 111904 0 0.0
.data 2536 2536 0 0.0
.text 1379472 1379488 16 0.0
telink lighting-app tlsr9518adk80d (read/write) 802236 802236 0 0.0
bss 69952 69952 0 0.0
noinit 40416 40416 0 0.0
text 570794 570794 0 0.0

@jepenven-silabs jepenven-silabs merged commit ff32d56 into project-chip:master Apr 19, 2022
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.

Decouple LwIP of OpenThread (add Native OpenThread implementation)
3 participants