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

Auto-select data model set based on specification version #37394

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

cecille
Copy link
Contributor

@cecille cecille commented Feb 4, 2025

This PR adds auto-selection of the data model files into the data-model-based tests. Because of the limited set of changes between 1.4.1 and 1.4, this means the 1.4.1 test harness should be able to be used to certify 1.4 devices. Further work is required to expand this to minor versions.

Notes are the work to expand this to minor version and also to handle testing of multiple specification revisions in the CI is being tracked here: project-chip/matter-test-scripts#448

Testing

Added unit-style tests for data model selection in TestSpecParsingSelection.py (added to CI).

Because the specification version is hard coded in the SDK, we can only realistically test against whatever the current spec version is in the CI. Instead, I manually generated versions of the door lock app with the different versions (1.4 or 1.4.1) and Terms and Conditions either set or not set, then ran TC_AccessChecker.py, TC_DeviceConformance.py, TC_DeviceBasicComposition.py against them. Results as follows:
1.4, no TC - all pass except IDM-10.5 (ota requestor cluster - known issue)
1.4 with TC - DeviceConformance fails with errors about provisional TC things
1.4.1 no TC - all pass except IDM-10.5 (ota requestor cluster - known issue)
1.4.1 with TC - all pass except IDM-10.5 (ota requestor cluster - known issue)
^ These pass and fail as expected

Copy link

github-actions bot commented Feb 4, 2025

PR #37394: Size comparison from 6292e6e to 289b467

Full report (2 builds for cc32xx)
platform target config section 6292e6e 289b467 change % change
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 538637 538637 0 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 572493 572493 0 0.0
RAM 205344 205344 0 0.0

Copy link

github-actions bot commented Feb 5, 2025

PR #37394: Size comparison from 6292e6e to aecb846

Full report (72 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 6292e6e aecb846 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1093988 1093992 4 0.0
RAM 103298 103298 0 0.0
bl702 lighting-app bl702+eth FLASH 650600 650604 4 0.0
RAM 25265 25265 0 0.0
bl702+wifi FLASH 828508 828512 4 0.0
RAM 13981 13981 0 0.0
bl706+mfd+rpc+littlefs FLASH 1057068 1057072 4 0.0
RAM 23861 23861 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 888502 888506 4 0.0
RAM 18504 18504 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 971488 971492 4 0.0
RAM 16368 16368 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 838160 838168 8 0.0
RAM 123464 123464 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 823564 823588 24 0.0
RAM 125344 125344 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 770836 770844 8 0.0
RAM 113804 113804 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 755088 755096 8 0.0
RAM 114012 114012 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 538637 538653 16 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 572493 572501 8 0.0
RAM 205344 205344 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 679601 679601 0 0.0
RAM 78532 78532 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 699445 699445 0 0.0
RAM 81172 81172 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 699445 699445 0 0.0
RAM 81172 81172 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 656389 656389 0 0.0
RAM 73600 73600 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 615977 615985 8 0.0
RAM 71516 71516 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 635613 635621 8 0.0
RAM 74060 74060 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 635613 635621 8 0.0
RAM 74060 74060 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 635457 635473 16 0.0
RAM 74524 74524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 655165 655181 16 0.0
RAM 77068 77068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 655165 655181 16 0.0
RAM 77068 77068 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 611893 611909 16 0.0
RAM 68612 68612 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 631753 631769 16 0.0
RAM 71252 71252 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 631753 631769 16 0.0
RAM 71252 71252 0 0.0
efr32 lock-app BRD4187C FLASH 936440 936376 -64 -0.0
RAM 159872 159872 0 0.0
BRD4338a FLASH 730356 730380 24 0.0
RAM 234700 234700 0 0.0
window-app BRD4187C FLASH 1029712 1029648 -64 -0.0
RAM 127976 127976 0 0.0
esp32 all-clusters-app c3devkit DRAM 97296 97296 0 0.0
FLASH 1577564 1577572 8 0.0
IRAM 83820 83820 0 0.0
m5stack DRAM 116092 116092 0 0.0
FLASH 1545178 1545182 4 0.0
IRAM 117039 117039 0 0.0
linux air-purifier-app debug unknown 4760 4760 0 0.0
FLASH 2710221 2710237 16 0.0
RAM 132816 132816 0 0.0
all-clusters-app debug unknown 5568 5568 0 0.0
FLASH 5976202 5976218 16 0.0
RAM 531632 531632 0 0.0
all-clusters-minimal-app debug unknown 5464 5464 0 0.0
FLASH 5324888 5324904 16 0.0
RAM 242744 242744 0 0.0
bridge-app debug unknown 5480 5480 0 0.0
FLASH 4683142 4683158 16 0.0
RAM 221480 221480 0 0.0
chip-tool debug unknown 6120 6120 0 0.0
FLASH 13099998 13100014 16 0.0
RAM 596770 596770 0 0.0
chip-tool-ipv6only arm64 unknown 21848 21848 0 0.0
FLASH 11163616 11163632 16 0.0
RAM 648448 648448 0 0.0
fabric-admin debug unknown 5808 5808 0 0.0
FLASH 11389471 11389487 16 0.0
RAM 596554 596554 0 0.0
fabric-bridge-app debug unknown 4736 4736 0 0.0
FLASH 4507708 4507724 16 0.0
RAM 208664 208664 0 0.0
fabric-sync debug unknown 4976 4976 0 0.0
FLASH 5614085 5614101 16 0.0
RAM 483536 483536 0 0.0
lighting-app debug+rpc+ui unknown 6144 6144 0 0.0
FLASH 5625841 5625857 16 0.0
RAM 231760 231760 0 0.0
lock-app debug unknown 5416 5416 0 0.0
FLASH 4732256 4732272 16 0.0
RAM 207728 207728 0 0.0
ota-provider-app debug unknown 4776 4776 0 0.0
FLASH 4360768 4360784 16 0.0
RAM 201368 201368 0 0.0
ota-requestor-app debug unknown 4728 4728 0 0.0
FLASH 4498240 4498256 16 0.0
RAM 205952 205952 0 0.0
shell debug unknown 4256 4256 0 0.0
FLASH 3006141 3006157 16 0.0
RAM 160504 160504 0 0.0
thermostat-no-ble arm64 unknown 9536 9536 0 0.0
FLASH 4098176 4098192 16 0.0
RAM 246096 246096 0 0.0
tv-app debug unknown 5744 5744 0 0.0
FLASH 5953717 5953733 16 0.0
RAM 606936 606936 0 0.0
tv-casting-app debug unknown 5320 5320 0 0.0
FLASH 11273581 11273597 16 0.0
RAM 710896 710896 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 907196 907204 8 0.0
RAM 142395 142395 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 901824 901828 4 0.0
RAM 124739 124739 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 845920 845928 8 0.0
RAM 141323 141323 0 0.0
nxp contact k32w0+release FLASH 584496 584512 16 0.0
RAM 70860 70860 0 0.0
mcxw71+release FLASH 599832 599832 0 0.0
RAM 63080 63080 0 0.0
light k32w0+release FLASH 610940 610956 16 0.0
RAM 70252 70252 0 0.0
k32w1+release FLASH 685368 685368 0 0.0
RAM 48664 48664 0 0.0
lock mcxw71+release FLASH 748848 748872 24 0.0
RAM 67476 67476 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646844 1646860 16 0.0
RAM 211560 211560 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1553612 1553612 0 0.0
RAM 208376 208376 0 0.0
light cy8ckit_062s2_43012 FLASH 1469292 1469292 0 0.0
RAM 200352 200352 0 0.0
lock cy8ckit_062s2_43012 FLASH 1467340 1467340 0 0.0
RAM 224688 224688 0 0.0
qpg lighting-app qpg6105+debug FLASH 662232 662240 8 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 620004 620028 24 0.0
RAM 99648 99648 0 0.0
stm32 light STM32WB5MM-DK FLASH 482824 482832 8 0.0
RAM 144672 144672 0 0.0
telink bridge-app tl7218x FLASH 665242 665250 8 0.0
RAM 90812 90812 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 622000 622008 8 0.0
RAM 31484 31484 0 0.0
light-app-ota-shell-factory-data tl3218x FLASH 770754 770762 8 0.0
RAM 43552 43552 0 0.0
tl7218x FLASH 779284 779292 8 0.0
RAM 98688 98688 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 680618 680626 8 0.0
RAM 52176 52176 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 709172 709180 8 0.0
RAM 73384 73384 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 626086 626094 8 0.0
RAM 142016 142016 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 813468 813476 8 0.0
RAM 99560 99560 0 0.0
tizen all-clusters-app arm unknown 5116 5116 0 0.0
FLASH 1752956 1752976 20 0.0
RAM 93524 93524 0 0.0
chip-tool-ubsan arm unknown 11408 11408 0 0.0
FLASH 18699718 18699790 72 0.0
RAM 8184616 8184648 32 0.0

Copy link

github-actions bot commented Feb 5, 2025

PR #37394: Size comparison from 6292e6e to 088aeef

Full report (1 build for stm32)
platform target config section 6292e6e 088aeef change % change
stm32 light STM32WB5MM-DK FLASH 482824 482888 64 0.0
RAM 144672 144688 16 0.0

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.

2 participants