Comments (10)
@lgirdwood Would you provide more info here so validation can reproduce and follow up?
- topology
- the steps to reproduce this issue
I think you're using UP2, latest sof-dev, and sof master branch.
from linux.
Leafhill, I've only seen it once and it looks like an obvious runtime PM get() is needed during the duration of all topology loading.
from linux.
@lgirdwood did you mean something like this:
int snd_sof_load_topology(struct snd_sof_dev *sdev, const char *file)
{
const struct firmware *fw;
struct snd_soc_tplg_hdr *hdr;
int ret;
dev_dbg(sdev->dev, "loading topology:%s\n", file);
ret = request_firmware(&fw, file, sdev->dev);
if (ret < 0) {
dev_err(sdev->dev, "error: tplg %s load failed with %d\n",
file, ret);
return ret;
}
ret = pm_runtime_get_sync(sdev->dev);
if (ret < 0) {
dev_err(sdev->dev, "error: topology load pm_runtime_get_sync failed with %d\n",
ret);
return ret;
}
hdr = (struct snd_soc_tplg_hdr *)fw->data;
ret = snd_soc_tplg_component_load(sdev->component,
&sof_tplg_ops, fw,
SND_SOC_TPLG_INDEX_ALL);
if (ret < 0) {
dev_err(sdev->dev, "error: tplg component load failed %d\n",
ret);
ret = -EINVAL;
}
ret = pm_runtime_put(sdev->dev);
if (ret < 0)
dev_err(sdev->dev, "error: topology load pm_runtime_put failed with %d\n",
ret);
release_firmware(fw);
return ret;
}
from linux.
@plbossart yep
from linux.
ok, will push this code then. Thanks
from linux.
@plbossart we enable runtime pm on sof device after the topology is loaded. To make the change above, maybe we need to change that as well?
from linux.
@ranj063 is that a recent update ? If not then why did we get D3 entry during topology loading as above log.
from linux.
@lgirdwood no this is not a recent change. Let me look into this today and I will comment on @plbossart 's pull request
from linux.
@ranj063
How about the resume process?
We will reload the tplg after the DSP is resumed, which means that
[ 5.445792] sof-audio sof-audio: error: failed to enter PM idle -11
May not happen at the first boot.
I believe this PR is good for the following resume tplg load.
from linux.
#249 fixes this issue
from linux.
Related Issues (20)
- Microphone not working (Lenovo YOGA slim 7i) HOT 2
- Simultaneous audio capture from branched capture pipelines fail HOT 1
- HELP! Matebook 14 s does not install any external sound card drivers
- [HD-A] System does not wake up Playback/Capture-> pause -> suspend->resume scenario HOT 12
- [MTL] ThinkBook 13x Gen 4 speakers do not work HOT 5
- [BUG] Huawei MateBook E DRR-W76 - no soundcards found HOT 4
- Hardware-dependent RT714 DMIC settings needed HOT 15
- LNL HDA pause-release MAX issue HOT 8
- [BUG] [CML] jack detection of speaker error on galaxy chromebook HOT 6
- [BUG] Huawei MateBook E DRR-W76 - the speakers are not working HOT 14
- SoundWire locking issues HOT 8
- [BUG] Distorted internal speaker sound on sof-rt5682 HOT 2
- LNL SoundWire xruns during repeated playback HOT 3
- Missing topology sof-mtl-rt711.tplg HOT 2
- Lenovo Thinkpad X1 Carbon Gen1- DSP boot failure HOT 36
- No sound on Dell XPS 17 9700 HOT 19
- Speakers Inverted - Razer Blade 15 (2022) HOT 3
- CML controller bank switch timeout HOT 3
- [LNL]Suspend resume with playback or capture will Fail or TIMEOUT HOT 41
- [LNL] Multiple Pipeline Playback/capture stress test fails. HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linux.