Skip to content

[FEATURE] Dump IPC state machine status on IPC timed out #846

@lgirdwood

Description

@lgirdwood

IPC timeouts are often difficult to debug as we have two state machines running, one within the driver and the other within the FW.

This feature is to add useful debug output to the kernel when it detects and IPC timeout. i.e.

<< dmesg after current IPC timeout is printed >>
error: IPC host state: HOST_TO_DSP_CMD, DSP_TO_HOST_NOTIFICATION
error: IPC host mask: DSP_TO_HOST_NOTIFICATION
error: IPC host raw: status 0x00000003 mask 0x0000001
error: IPC dsp state: DSP_TO_HOST_NOTIFICATION
error: IPC dsp mask: DSP_TO_HOST_NOTIFICATION
error: IPC dsp raw: status 0x00000001 mask 0x0000001

The intention here is to show the IPC state machines for both DSP and host and show the pending operations in a high level manner alongside the raw status and mask.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions