audio: mic_privacy: Fix DSP panic during D3 entry with HW managed mode #10041
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When transitioning to D3 state with a pipeline containing a DAI that supports microphone privacy but is in HW-managed mode, the DSP can panic. This occurs because the mic_privacy_get_mic_disable_status() function is called unconditionally during suspend/resume regardless of the privacy mode.
Fix the issue by explicitly checking for
mic_privacy_manager_get_policy() == MIC_PRIVACY_FW_MANAGED before attempting to save/restore the mic disable status. This ensures we only interact with the privacy status when the firmware is responsible for managing it, and allows HW-managed configurations to properly transit through D3 power states without exceptions.
This is a small but critical fix to the previous microphone privacy D3 resume patch, addressing panic cases observed with HDA and SoundWire interfaces.