-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
[icd] Introduced gn flags to allow conditional code compilation #31795
Conversation
942485b
to
92173ae
Compare
1ef5523
to
191d1d5
Compare
PR #31795: Size comparison from e5a3250 to 191d1d5 Increases (1 build for psoc6)
Decreases (28 builds for cc13x4_26x4, cc32xx, cyw30739, efr32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, stm32, telink)
|
191d1d5
to
84a6023
Compare
src/test_driver/linux-cirque/SubscriptionResumptionCapacityTest.py
Outdated
Show resolved
Hide resolved
PR #31795: Size comparison from bf46b08 to 84a6023 Increases (1 build for psoc6)
Decreases (28 builds for cc13x4_26x4, cc32xx, cyw30739, efr32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, stm32, telink)
|
7d32b8e
to
3a6b975
Compare
PR #31795: Size comparison from 3ec1ba5 to 3a6b975 Increases (1 build for psoc6)
Decreases (28 builds for cc13x4_26x4, cc32xx, cyw30739, efr32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, stm32, telink)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
e36671f
to
0bd2c50
Compare
PR #31795: Size comparison from bf9c86a to 0bd2c50 Increases (1 build for psoc6)
Decreases (28 builds for cc13x4_26x4, cc32xx, cyw30739, efr32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, stm32, telink)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved with a few small nits
src/app/clusters/icd-management-server/icd-management-server.cpp
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved with a few small nits
0bd2c50
to
06f07cc
Compare
The ICD implementation is compiled with a full set of features, even if the device uses SIT configuration. It results in a big flash memory waste on a functionalities that cannot be used by certain configuration. Introduced new gn flags corresponding to the ICD features - LIT, CIP and UAT. Modified the ICD Manager implementation and icd-management-server code to use created defines and cut off unused code by the preprocessor.
06f07cc
to
2c6587d
Compare
PR #31795: Size comparison from a95c3d5 to 2c6587d Increases (1 build for psoc6)
Decreases (29 builds for cc13x4_26x4, cc32xx, cyw30739, efr32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
Full report (84 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, stm32, telink)
|
…ect-chip#31795) The ICD implementation is compiled with a full set of features, even if the device uses SIT configuration. It results in a big flash memory waste on a functionalities that cannot be used by certain configuration. Introduced new gn flags corresponding to the ICD features - LIT, CIP and UAT. Modified the ICD Manager implementation and icd-management-server code to use created defines and cut off unused code by the preprocessor.
The ICD implementation is compiled with a full set of features, even if the device uses SIT configuration. It results in a big flash memory waste on a functionalities that cannot be used by certain configuration.
Introduced new gn flags corresponding to the ICD features - LIT, CIP and UAT. Modified the ICD Manager implementation and icd-management-server code to use created defines and cut off unused code by the preprocessor.
Before this change the flash and RAM size added by the SIT configuration for nrf platform was 7204 B flash, 1664 B RAM (for LIT it is over ~9k, because code size depends also on configuration selected in .zap).
After optimization it is 2416 B of flash and 128 B of RAM. The gain is 4788 B of flash and 1536 B of RAM.
Fixes: #29131