Skip to content

Conversation

Martin-NXP
Copy link
Contributor

Summary

This PR adds support for using mbedTLS 3.x with the NXP MCXW72 platform. By default, the platform uses mbedTLS 2.x, but users can use version 3.x by passing the following argument to the west build command:
-DCONFIG_CHIP_MBEDTLS_3X=y

This flexibility allows to migrate to mbedTLS 3.x while maintaining compatibility with existing setups.

Testing

BLE thread commissioning with contact sensor mcxw72 example, 1 commissioning with mbedtls 2.X and 1 commissioning with mbedtls 3.x completed successfully

Readability checklist

The checklist below will help the reviewer finish PR review in time and keep the
code readable:

  • PR title is
    descriptive
  • Apply the
    “When in Rome…”
    rule (coding style)
  • PR size is short
  • Try to avoid "squashing" and "force-update" in commit history
  • CI time didn't increase

See: Pull Request Guidelines

marius-preda and others added 2 commits October 13, 2025 15:38
@Martin-NXP Martin-NXP requested a review from a team as a code owner October 13, 2025 13:55
@github-actions github-actions bot added platform nxp NXP platform labels Oct 13, 2025
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request enables the use of mbedTLS 3.x for the NXP MCXW72 platform, providing flexibility to switch between mbedTLS versions. The changes primarily involve updating submodules and modifying the build configuration to remove platform-specific mbedtls include paths. A necessary header, mbedtls/version.h, is also included in CHIPCryptoPalS200.cpp to support version-dependent compilation. My review includes a minor suggestion to maintain consistency in header inclusion style. Overall, the changes appear correct and well-aligned with the goal of improving mbedTLS version flexibility.

Copy link

github-actions bot commented Oct 13, 2025

PR #41443: Size comparison from f902839 to e453422

Full report (10 builds for cc13x4_26x4, cc32xx, nrfconnect, realtek, stm32)
platform target config section f902839 e453422 change % change
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 769432 769432 0 0.0
RAM 103208 103208 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 781076 781076 0 0.0
RAM 108360 108360 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 727072 727072 0 0.0
RAM 97276 97276 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 711540 711540 0 0.0
RAM 97484 97484 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 554310 554310 0 0.0
RAM 205544 205544 0 0.0
lock CC3235SF_LAUNCHXL FLASH 587034 587034 0 0.0
RAM 205768 205768 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 929968 929968 0 0.0
RAM 160987 160987 0 0.0
realtek light-switch-app rtl8777g FLASH 705368 705368 0 0.0
RAM 106784 106784 0 0.0
lighting-app rtl8777g FLASH 756568 756568 0 0.0
RAM 127132 127132 0 0.0
stm32 light STM32WB5MM-DK FLASH 469068 469068 0 0.0
RAM 141208 141208 0 0.0

@dinabenamar dinabenamar added the changing-git-submodules-on-purpose This PR is changing git submodules on intentionally (and it is not a "commit all" typo/mistake) label Oct 13, 2025
Copy link

github-actions bot commented Oct 13, 2025

PR #41443: Size comparison from f902839 to 2707e23

Full report (37 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, nrfconnect, nxp, psoc6, qpg, realtek, stm32, telink)
platform target config section f902839 2707e23 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1105406 1105406 0 0.0
RAM 178754 178754 0 0.0
bl702 lighting-app bl702+eth FLASH 659894 659894 0 0.0
RAM 134825 134825 0 0.0
bl702+wifi FLASH 835978 835978 0 0.0
RAM 124301 124301 0 0.0
bl706+mfd+rpc+littlefs FLASH 1069114 1069114 0 0.0
RAM 117141 117141 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 899328 899328 0 0.0
RAM 105476 105476 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 981876 981876 0 0.0
RAM 109628 109628 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 769432 769432 0 0.0
RAM 103208 103208 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 781076 781076 0 0.0
RAM 108360 108360 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 727072 727072 0 0.0
RAM 97276 97276 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 711540 711540 0 0.0
RAM 97484 97484 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 554310 554310 0 0.0
RAM 205544 205544 0 0.0
lock CC3235SF_LAUNCHXL FLASH 587034 587034 0 0.0
RAM 205768 205768 0 0.0
efr32 lock-app BRD4187C FLASH 961168 961168 0 0.0
RAM 126228 126228 0 0.0
BRD4338a FLASH 755896 755888 -8 -0.0
RAM 255516 255516 0 0.0
window-app BRD4187C FLASH 1055508 1055508 0 0.0
RAM 122424 122424 0 0.0
esp32 all-clusters-app c3devkit DRAM 103016 103016 0 0.0
FLASH 1792516 1792516 0 0.0
IRAM 83862 83862 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 929968 929968 0 0.0
RAM 160987 160987 0 0.0
nxp contact mcxw71+release FLASH 691800 691800 0 0.0
RAM 61440 61440 0 0.0
lighting mcxw71+release FLASH 723368 723368 0 0.0
RAM 68100 68100 0 0.0
lock mcxw71+release FLASH 770592 770592 0 0.0
RAM 61804 61804 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1672460 1672460 0 0.0
RAM 213620 213620 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1589940 1589940 0 0.0
RAM 210900 210900 0 0.0
light cy8ckit_062s2_43012 FLASH 1456772 1456772 0 0.0
RAM 197616 197616 0 0.0
lock cy8ckit_062s2_43012 FLASH 1489084 1489084 0 0.0
RAM 225328 225328 0 0.0
qpg lighting-app qpg6200+debug FLASH 835432 835432 0 0.0
RAM 127604 127604 0 0.0
lock-app qpg6200+debug FLASH 772180 772180 0 0.0
RAM 118580 118580 0 0.0
realtek light-switch-app rtl8777g FLASH 705368 705368 0 0.0
RAM 106784 106784 0 0.0
lighting-app rtl8777g FLASH 756568 756568 0 0.0
RAM 127132 127132 0 0.0
stm32 light STM32WB5MM-DK FLASH 469068 469068 0 0.0
RAM 141208 141208 0 0.0
telink bridge-app tl7218x FLASH 708408 708408 0 0.0
RAM 90356 90356 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 795940 795940 0 0.0
RAM 40908 40908 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 787136 787136 0 0.0
RAM 93552 93552 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 713942 713942 0 0.0
RAM 51724 51724 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 747246 747246 0 0.0
RAM 70772 70772 0 0.0
light-switch-app-ota-factory-data tl3218x_retention FLASH 724098 724098 0 0.0
RAM 34472 34472 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 601366 601366 0 0.0
RAM 108600 108600 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 819756 819760 4 0.0
RAM 91948 91948 0 0.0

Copy link

codecov bot commented Oct 13, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 50.94%. Comparing base (f902839) to head (2707e23).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master   #41443   +/-   ##
=======================================
  Coverage   50.94%   50.94%           
=======================================
  Files        1378     1378           
  Lines      100698   100698           
  Branches    13058    13058           
=======================================
  Hits        51302    51302           
  Misses      49396    49396           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@arkq arkq left a comment

Choose a reason for hiding this comment

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

Approving because it has platform owner approval

@mergify mergify bot merged commit 32e0455 into project-chip:master Oct 14, 2025
78 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changing-git-submodules-on-purpose This PR is changing git submodules on intentionally (and it is not a "commit all" typo/mistake) nxp NXP platform platform review - approved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants