AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 21 Bitcoin

feat(core): implement touch wakeup in ft3168 driver and wire into suspend/resume

Public commit record

What the developer wrote

Authored by bleska

85/100 · Strong
feat(core): implement touch wakeup in ft3168 driver and wire into suspend/resume

Add USE_TOUCH_WAKEUP-guarded g_touch_wakeup_enabled static outside the
driver struct so it survives touch_deinit() memset during suspend.

Pass touch_wakeup_enabled parameter to display_suspend/resume so the
display driver can choose between light-suspend (panel stays powered,
touch EXTI IRQ armed) and full deinit paths.

[no changelog]
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit adds a new power-saving feature for Trezor hardware wallets: the device can now optionally wake from suspend when the touchscreen is touched. It restructures how the display and touch drivers suspend and resume, choosing between a 'light sleep' path (screen stays powered, touch sensor stays armed) and a 'full shutdown' path. The change itself is a feature implementation, not a fix for a known vulnerability, and there is no direct evidence in the commit or references that it addresses a security bug.

Recommended action

Treat as a normal feature commit. Reviewers should verify that the light-suspend path correctly preserves secrets, that the touch EXTI handler cannot spuriously wake the device, and that `g_touch_wakeup_enabled` cannot be corrupted by the `touch_deinit()` memset or left in an inconsistent state across suspend/resume. No immediate security action is indicated by the diff alone.

Security signals we found

01

New power-management feature with two suspend paths (light vs full deinit)

02

Global state deliberately placed outside driver struct to survive memset teardown

03

IRQ-based touch EXTI wakeup path added

04

Refactoring of boolean comparisons from secfalse-based to sectrue-based

05

No changelog entry despite functional change

Risk score

Why this scored 21/100

Our methodology →
Potential impact 3/30
Exploitability 2/25
Stealth signal 2/15
Affected reach 4/15
Confidence 7/10
Evidence quality 3/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.