Skip to content

dma channel management fixes - #786

Merged
lgirdwood merged 2 commits into
thesofproject:masterfrom
keyonjie:master
Jan 8, 2019
Merged

lgirdwood merged 2 commits into
thesofproject:masterfrom
keyonjie:master

Conversation

@keyonjie

@keyonjie keyonjie commented Jan 2, 2019

Copy link
Copy Markdown
Contributor

This series is only minor changes to fix a dma channel exhausted issue that happens at suspend/resume.
We get dma channels at dai_config() for dai component, but this might be called several times and the previous got channels are leak at that case.

For dais, we don't support change dma channel dynamically, so only get
dma channel at first config, ignore that for  latter dai_config
invokings to avoid dma channel leaking.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
This will be helpful for error reporting at host dma channel management.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
@RanderWang

Copy link
Copy Markdown
Collaborator

This issue is caused by kernel driver. I agree with keyon to protect dma in FW.

@RanderWang RanderWang left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how about dai_reset()?

@RanderWang

Copy link
Copy Markdown
Collaborator

please refer to PR in kernel: thesofproject/linux#472

@keyonjie

keyonjie commented Jan 3, 2019

Copy link
Copy Markdown
Contributor Author

@RanderWang dma channel is put in dai_free(), so I didn't reset dd->chan at reset, we should only reset it after channel is put.

Maybe we need move channel put to dai_reset() actually.

@RanderWang RanderWang left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@keyonjie

keyonjie commented Jan 8, 2019

Copy link
Copy Markdown
Contributor Author

@lgirdwood ping.

@lgirdwood
lgirdwood merged commit 9f403d6 into thesofproject:master Jan 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants