fix(core): Fix dysfunctional utils.USE_TROPIC.
What changed, and why it matters
This commit fixes a build configuration bug for the Trezor T3W1 hardware wallet. The Tropic secure-element feature was being compiled in, but the feature flag that tells the rest of the firmware to actually use it was not being registered. The change adds 'tropic' to the list of available features so the firmware can correctly enable Tropic support. There is no direct evidence in the commit of a security vulnerability or exploit.
Treat as a normal build fix. Verify that downstream firmware code correctly checks the 'tropic' feature flag and that the Tropic secure-element functions as intended. No urgent security action is indicated by this commit alone.
Security signals we found
Build-system feature flag registration fix
Secure-element (Tropic) integration configuration
No memory-safety, cryptographic, or authorization changes visible
Evidence from the diff
In the SCons model files for Trezor T3W1 revisions A, B, and C, the Tropic secure-element configuration block already added include paths and C preprocessor defines (USE_TROPIC, LT_USE_TREZOR_CRYPTO, LT_HELPERS), but it failed to append ‘tropic’ to the features_available list. The commit adds features_available.append(‘tropic’) in each revision’s configure() function. This is a build-system feature-registration fix; the security relevance depends on whether downstream code gates Tropic functionality on that flag, which is not shown in the diff.
Changed components
core/site_scons/models/T3W1/trezor_t3w1_revA.pycore/site_scons/models/T3W1/trezor_t3w1_revB.pycore/site_scons/models/T3W1/trezor_t3w1_revC.pyInspect captured patch +3 / −0
diff --git a/core/site_scons/models/T3W1/trezor_t3w1_revA.py b/core/site_scons/models/T3W1/trezor_t3w1_revA.py
index 09d0b97d6..8f62ad875 100644
--- a/core/site_scons/models/T3W1/trezor_t3w1_revA.py
+++ b/core/site_scons/models/T3W1/trezor_t3w1_revA.py
@@ -218,6 +218,7 @@ def configure(
paths += ["embed/sec/tropic/inc"]
paths += ["vendor/libtropic/include"]
paths += ["vendor/libtropic/src"]
+ features_available.append("tropic")
defines += [("USE_TROPIC", "1")]
defines += [("LT_USE_TREZOR_CRYPTO", "1")]
defines += [("LT_HELPERS", "1")]
diff --git a/core/site_scons/models/T3W1/trezor_t3w1_revB.py b/core/site_scons/models/T3W1/trezor_t3w1_revB.py
index 1feb097c5..2f9c3f298 100644
--- a/core/site_scons/models/T3W1/trezor_t3w1_revB.py
+++ b/core/site_scons/models/T3W1/trezor_t3w1_revB.py
@@ -219,6 +219,7 @@ def configure(
paths += ["embed/sec/tropic/inc"]
paths += ["vendor/libtropic/include"]
paths += ["vendor/libtropic/src"]
+ features_available.append("tropic")
defines += [("USE_TROPIC", "1")]
defines += [("LT_USE_TREZOR_CRYPTO", "1")]
defines += [("LT_HELPERS", "1")]
diff --git a/core/site_scons/models/T3W1/trezor_t3w1_revC.py b/core/site_scons/models/T3W1/trezor_t3w1_revC.py
index 6b3d55bd1..62ee811c2 100644
--- a/core/site_scons/models/T3W1/trezor_t3w1_revC.py
+++ b/core/site_scons/models/T3W1/trezor_t3w1_revC.py
@@ -218,6 +218,7 @@ def configure(
paths += ["embed/sec/tropic/inc"]
paths += ["vendor/libtropic/include"]
paths += ["vendor/libtropic/src"]
+ features_available.append("tropic")
defines += [("USE_TROPIC", "1")]
defines += [("LT_USE_TREZOR_CRYPTO", "1")]
defines += [("LT_HELPERS", "1")]
Why this scored 12/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.