Skip to content

Fix various ZAP templates to handle name collisions between global and cluster-specific structs better. #38621

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bzbarsky-apple
Copy link
Contributor

Will also need project-chip/zap#1584 to actually generate the right things.

Testing

Ensured that codegen without ZAP changes does not change and the ZAP changes do the right thing for codegen.

Copy link

github-actions bot commented Apr 26, 2025

PR #38621: Size comparison from 6b81cb3 to 62aa797

Full report (75 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 6b81cb3 62aa797 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1100736 1100736 0 0.0
RAM 94866 94866 0 0.0
bl702 lighting-app bl702+eth FLASH 655402 655402 0 0.0
RAM 33533 33533 0 0.0
bl702+wifi FLASH 832652 832652 0 0.0
RAM 22257 22257 0 0.0
bl706+mfd+rpc+littlefs FLASH 1065176 1065176 0 0.0
RAM 32181 32181 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 896064 896064 0 0.0
RAM 26920 26920 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 978852 978852 0 0.0
RAM 24668 24668 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 820316 820316 0 0.0
RAM 120304 120304 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 829600 829600 0 0.0
RAM 125424 125424 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 776328 776328 0 0.0
RAM 113772 113772 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 760628 760628 0 0.0
RAM 113988 113988 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 546978 546978 0 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 578562 578562 0 0.0
RAM 205440 205440 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 662285 662285 0 0.0
RAM 77276 77276 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 682137 682137 0 0.0
RAM 79916 79916 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 682137 682137 0 0.0
RAM 79916 79916 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 639069 639069 0 0.0
RAM 72344 72344 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 622357 622357 0 0.0
RAM 73524 73524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 641993 641993 0 0.0
RAM 76068 76068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 641993 641993 0 0.0
RAM 76068 76068 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 642149 642149 0 0.0
RAM 76548 76548 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 661857 661857 0 0.0
RAM 79092 79092 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 661857 661857 0 0.0
RAM 79092 79092 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 618561 618561 0 0.0
RAM 70636 70636 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 638421 638421 0 0.0
RAM 73276 73276 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 638421 638421 0 0.0
RAM 73276 73276 0 0.0
efr32 lock-app BRD4187C FLASH 943928 943928 0 0.0
RAM 132044 132044 0 0.0
BRD4338a FLASH 738344 738344 0 0.0
RAM 206960 206960 0 0.0
window-app BRD4187C FLASH 1036096 1036096 0 0.0
RAM 128084 128084 0 0.0
esp32 all-clusters-app c3devkit DRAM 103456 103456 0 0.0
FLASH 1804468 1804468 0 0.0
IRAM 83846 83846 0 0.0
m5stack DRAM 122028 122028 0 0.0
FLASH 1769782 1769782 0 0.0
IRAM 117043 117043 0 0.0
linux air-purifier-app debug unknown 4848 4848 0 0.0
FLASH 2768067 2768067 0 0.0
RAM 114616 114616 0 0.0
all-clusters-app debug unknown 5656 5656 0 0.0
FLASH 6309572 6309572 0 0.0
RAM 531672 531672 0 0.0
all-clusters-minimal-app debug unknown 5528 5528 0 0.0
FLASH 5433910 5433910 0 0.0
RAM 224728 224728 0 0.0
bridge-app debug unknown 5544 5544 0 0.0
FLASH 4730878 4730878 0 0.0
RAM 203112 203112 0 0.0
camera-app debug unknown 8856 8856 0 0.0
FLASH 6808683 6808683 0 0.0
RAM 225592 225592 0 0.0
camera-controller debug unknown 9240 9240 0 0.0
FLASH 14057675 14057675 0 0.0
RAM 649144 649144 0 0.0
chip-tool debug unknown 6256 6256 0 0.0
FLASH 14323575 14323575 0 0.0
RAM 636192 636192 0 0.0
chip-tool-ipv6only arm64 unknown 39640 39640 0 0.0
FLASH 12360208 12360208 0 0.0
RAM 682512 682512 0 0.0
fabric-admin debug unknown 5936 5936 0 0.0
FLASH 12435631 12435631 0 0.0
RAM 635552 635552 0 0.0
fabric-bridge-app debug unknown 4800 4800 0 0.0
FLASH 4558696 4558696 0 0.0
RAM 190256 190256 0 0.0
fabric-sync debug unknown 5056 5056 0 0.0
FLASH 5699365 5699365 0 0.0
RAM 485896 485896 0 0.0
lighting-app debug+rpc+ui unknown 6264 6264 0 0.0
FLASH 5628785 5628785 0 0.0
RAM 207240 207240 0 0.0
lock-app debug unknown 5496 5496 0 0.0
FLASH 4799378 4799378 0 0.0
RAM 194472 194472 0 0.0
ota-provider-app debug unknown 4840 4840 0 0.0
FLASH 4416296 4416296 0 0.0
RAM 183088 183088 0 0.0
ota-requestor-app debug unknown 4792 4792 0 0.0
FLASH 4548888 4548888 0 0.0
RAM 187560 187560 0 0.0
shell debug unknown 4272 4272 0 0.0
FLASH 3070028 3070028 0 0.0
RAM 147928 147928 0 0.0
thermostat-no-ble arm64 unknown 9600 9600 0 0.0
FLASH 4215792 4215792 0 0.0
RAM 231168 231168 0 0.0
tv-app debug unknown 5832 5832 0 0.0
FLASH 6049461 6049461 0 0.0
RAM 609448 609448 0 0.0
tv-casting-app debug unknown 5416 5416 0 0.0
FLASH 12491917 12491917 0 0.0
RAM 754392 754392 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 919720 919720 0 0.0
RAM 167515 167515 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 911804 911804 0 0.0
RAM 145759 145759 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 856320 856320 0 0.0
RAM 141267 141267 0 0.0
nxp contact k32w0+release FLASH 590680 590680 0 0.0
RAM 72852 72852 0 0.0
mcxw71+release FLASH 622728 622728 0 0.0
RAM 63188 63188 0 0.0
light k32w0+release FLASH 616500 616500 0 0.0
RAM 72148 72148 0 0.0
k32w1+release FLASH 706968 706968 0 0.0
RAM 72036 72036 0 0.0
lock mcxw71+release FLASH 771984 771984 0 0.0
RAM 67604 67604 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1665948 1665948 0 0.0
RAM 212408 212408 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1570228 1570228 0 0.0
RAM 208584 208584 0 0.0
light cy8ckit_062s2_43012 FLASH 1445260 1445260 0 0.0
RAM 197328 197328 0 0.0
lock cy8ckit_062s2_43012 FLASH 1474548 1474548 0 0.0
RAM 225024 225024 0 0.0
qpg lighting-app qpg6105+debug FLASH 667284 667284 0 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 625576 625576 0 0.0
RAM 99832 99832 0 0.0
stm32 light STM32WB5MM-DK FLASH 464472 464472 0 0.0
RAM 141504 141504 0 0.0
telink bridge-app tl7218x FLASH 674908 674908 0 0.0
698026 698026 0 0.0
RAM 90756 90756 0 0.0
101904 101904 0 0.0
light-app-ota-compress-lzma-factory-data tl3218x FLASH 779496 779496 0 0.0
RAM 50136 50136 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 769756 769756 0 0.0
RAM 40436 40436 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 758214 758214 0 0.0
786132 786132 0 0.0
RAM 97556 97556 0 0.0
109324 109324 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 685248 685248 0 0.0
707358 707358 0 0.0
RAM 51604 51604 0 0.0
62636 62636 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 713698 713698 0 0.0
743540 743540 0 0.0
RAM 73424 73424 0 0.0
85824 85824 0 0.0
light-switch-app-ota-shell-factory-data tl3218x_retention FLASH 711244 711244 0 0.0
RAM 37060 37060 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 605718 605718 0 0.0
605260 605260 0 0.0
RAM 138656 138656 0 0.0
148720 148720 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 793216 793220 4 0.0
820746 820750 4 0.0
RAM 96412 96412 0 0.0
107584 107584 0 0.0
tizen all-clusters-app arm unknown 5184 5184 0 0.0
FLASH 1809040 1809040 0 0.0
RAM 94576 94576 0 0.0
chip-tool-ubsan arm unknown 20244 20244 0 0.0
FLASH 20408422 20408422 0 0.0
RAM 8895060 8895060 0 0.0

…d cluster-specific structs better.

Will also need project-chip/zap#1584 to actually
generate the right things.
@bzbarsky-apple bzbarsky-apple force-pushed the fix-struct-name-collisions branch from 62aa797 to 4dc789a Compare April 26, 2025 06:25
Copy link

github-actions bot commented Apr 26, 2025

PR #38621: Size comparison from 4cbce7f to 4dc789a

Full report (75 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 4cbce7f7 4dc789a change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1100736 1100736 0 0.0
RAM 94866 94866 0 0.0
bl702 lighting-app bl702+eth FLASH 655402 655402 0 0.0
RAM 33533 33533 0 0.0
bl702+wifi FLASH 832652 832652 0 0.0
RAM 22257 22257 0 0.0
bl706+mfd+rpc+littlefs FLASH 1065176 1065176 0 0.0
RAM 32181 32181 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 896064 896064 0 0.0
RAM 26920 26920 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 978852 978852 0 0.0
RAM 24668 24668 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 820316 820316 0 0.0
RAM 120304 120304 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 829600 829600 0 0.0
RAM 125424 125424 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 776328 776328 0 0.0
RAM 113772 113772 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 760628 760628 0 0.0
RAM 113988 113988 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 546978 546978 0 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 578562 578562 0 0.0
RAM 205440 205440 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 662285 662285 0 0.0
RAM 77276 77276 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 682137 682137 0 0.0
RAM 79916 79916 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 682137 682137 0 0.0
RAM 79916 79916 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 639069 639069 0 0.0
RAM 72344 72344 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 622357 622357 0 0.0
RAM 73524 73524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 641993 641993 0 0.0
RAM 76068 76068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 641993 641993 0 0.0
RAM 76068 76068 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 642149 642149 0 0.0
RAM 76548 76548 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 661857 661857 0 0.0
RAM 79092 79092 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 661857 661857 0 0.0
RAM 79092 79092 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 618561 618561 0 0.0
RAM 70636 70636 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 638421 638421 0 0.0
RAM 73276 73276 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 638421 638421 0 0.0
RAM 73276 73276 0 0.0
efr32 lock-app BRD4187C FLASH 943928 943928 0 0.0
RAM 132044 132044 0 0.0
BRD4338a FLASH 738344 738344 0 0.0
RAM 206960 206960 0 0.0
window-app BRD4187C FLASH 1036096 1036096 0 0.0
RAM 128084 128084 0 0.0
esp32 all-clusters-app c3devkit DRAM 103456 103456 0 0.0
FLASH 1804468 1804468 0 0.0
IRAM 83846 83846 0 0.0
m5stack DRAM 122028 122028 0 0.0
FLASH 1769782 1769782 0 0.0
IRAM 117043 117043 0 0.0
linux air-purifier-app debug unknown 4848 4848 0 0.0
FLASH 2768067 2768067 0 0.0
RAM 114616 114616 0 0.0
all-clusters-app debug unknown 5656 5656 0 0.0
FLASH 6309572 6309572 0 0.0
RAM 531672 531672 0 0.0
all-clusters-minimal-app debug unknown 5528 5528 0 0.0
FLASH 5433910 5433910 0 0.0
RAM 224728 224728 0 0.0
bridge-app debug unknown 5544 5544 0 0.0
FLASH 4730878 4730878 0 0.0
RAM 203112 203112 0 0.0
camera-app debug unknown 8856 8856 0 0.0
FLASH 6808683 6808683 0 0.0
RAM 225592 225592 0 0.0
camera-controller debug unknown 9240 9240 0 0.0
FLASH 14058363 14058363 0 0.0
RAM 649144 649144 0 0.0
chip-tool debug unknown 6256 6256 0 0.0
FLASH 14323575 14323575 0 0.0
RAM 636192 636192 0 0.0
chip-tool-ipv6only arm64 unknown 39640 39640 0 0.0
FLASH 12360208 12360208 0 0.0
RAM 682512 682512 0 0.0
fabric-admin debug unknown 5936 5936 0 0.0
FLASH 12435631 12435631 0 0.0
RAM 635552 635552 0 0.0
fabric-bridge-app debug unknown 4800 4800 0 0.0
FLASH 4558696 4558696 0 0.0
RAM 190256 190256 0 0.0
fabric-sync debug unknown 5056 5056 0 0.0
FLASH 5699365 5699365 0 0.0
RAM 485896 485896 0 0.0
lighting-app debug+rpc+ui unknown 6264 6264 0 0.0
FLASH 5628785 5628785 0 0.0
RAM 207240 207240 0 0.0
lock-app debug unknown 5496 5496 0 0.0
FLASH 4799378 4799378 0 0.0
RAM 194472 194472 0 0.0
ota-provider-app debug unknown 4840 4840 0 0.0
FLASH 4416296 4416296 0 0.0
RAM 183088 183088 0 0.0
ota-requestor-app debug unknown 4792 4792 0 0.0
FLASH 4548888 4548888 0 0.0
RAM 187560 187560 0 0.0
shell debug unknown 4272 4272 0 0.0
FLASH 3070028 3070028 0 0.0
RAM 147928 147928 0 0.0
thermostat-no-ble arm64 unknown 9600 9600 0 0.0
FLASH 4215792 4215792 0 0.0
RAM 231168 231168 0 0.0
tv-app debug unknown 5832 5832 0 0.0
FLASH 6049461 6049461 0 0.0
RAM 609448 609448 0 0.0
tv-casting-app debug unknown 5416 5416 0 0.0
FLASH 12491917 12491917 0 0.0
RAM 754392 754392 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 919720 919720 0 0.0
RAM 167515 167515 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 911804 911804 0 0.0
RAM 145759 145759 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 856320 856320 0 0.0
RAM 141267 141267 0 0.0
nxp contact k32w0+release FLASH 590680 590680 0 0.0
RAM 72852 72852 0 0.0
mcxw71+release FLASH 622728 622728 0 0.0
RAM 63188 63188 0 0.0
light k32w0+release FLASH 616500 616500 0 0.0
RAM 72148 72148 0 0.0
k32w1+release FLASH 706968 706968 0 0.0
RAM 72036 72036 0 0.0
lock mcxw71+release FLASH 771984 771984 0 0.0
RAM 67604 67604 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1665948 1665948 0 0.0
RAM 212408 212408 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1570228 1570228 0 0.0
RAM 208584 208584 0 0.0
light cy8ckit_062s2_43012 FLASH 1445260 1445260 0 0.0
RAM 197328 197328 0 0.0
lock cy8ckit_062s2_43012 FLASH 1474548 1474548 0 0.0
RAM 225024 225024 0 0.0
qpg lighting-app qpg6105+debug FLASH 667284 667284 0 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 625576 625576 0 0.0
RAM 99832 99832 0 0.0
stm32 light STM32WB5MM-DK FLASH 464472 464472 0 0.0
RAM 141504 141504 0 0.0
telink bridge-app tl7218x FLASH 674908 674908 0 0.0
698026 698026 0 0.0
RAM 90756 90756 0 0.0
101904 101904 0 0.0
light-app-ota-compress-lzma-factory-data tl3218x FLASH 779496 779496 0 0.0
RAM 50136 50136 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 769756 769756 0 0.0
RAM 40436 40436 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 758214 758214 0 0.0
786132 786132 0 0.0
RAM 97556 97556 0 0.0
109324 109324 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 685248 685248 0 0.0
707358 707358 0 0.0
RAM 51604 51604 0 0.0
62636 62636 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 713698 713698 0 0.0
743540 743540 0 0.0
RAM 73424 73424 0 0.0
85824 85824 0 0.0
light-switch-app-ota-shell-factory-data tl3218x_retention FLASH 711244 711244 0 0.0
RAM 37060 37060 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 605718 605718 0 0.0
605260 605260 0 0.0
RAM 138656 138656 0 0.0
148720 148720 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 793216 793220 4 0.0
820746 820750 4 0.0
RAM 96412 96412 0 0.0
107584 107584 0 0.0
tizen all-clusters-app arm unknown 5184 5184 0 0.0
FLASH 1809040 1809040 0 0.0
RAM 94576 94576 0 0.0
chip-tool-ubsan arm unknown 20244 20244 0 0.0
FLASH 20408422 20408422 0 0.0
RAM 8895060 8895060 0 0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Todo
Development

Successfully merging this pull request may close these issues.

2 participants