Skip to content

[BUG][SDW][CML] clock stop prepare issue - Speaker cannot work after suspend/resume #2606

@bardliao

Description

@bardliao

Canonical reported an issue that speaker can't work on CML + dual rt1308 laptop.
The issue happens only once so far.
The error kernel log is

rt1308 sdw:1:25d:1308:0: Clock Stop prepare failed for slave: -61
rt1308 sdw:1:25d:1308:0: pre-prepare failed:-61
intel-master sdw-master-1: prepare clock stop failed -61
intel-master sdw-master-1: cannot enable clock stop on suspend
...
rt1308 sdw:1:25d:1308:0: Unable to sync register 0xc030. -22
intel-master sdw-master-1: pm_runtime_get_sync failed in intel_startup, ret -22
intel-master sdw-master-1: ASoC: can't open DAI SDW1 Pin2: -22
SDW1-Playback: ASoC: BE open failed -22
SDW1-speakers: ASoC: failed to start some BEs -22

The issue is that somehow we didn't get ACK from codec and then cause clock stop prepare failed.
The question is that do we have a way to recover from no ack received?

Metadata

Metadata

Assignees

Labels

CMLApplies to Comet Lake platformClock Stop prepare failedSoundWire Clock Stop prepare failedP3Low-impact bugs or featuresSDWApplies to SoundWire bus for codec connectionbugSomething isn't workingsuspend resumeIssues related to suspend resume (e.g. rtcwake)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions