-
Notifications
You must be signed in to change notification settings - Fork 349
topology: align all cAVS nocodec topologies #4378
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Up2 has two reported problems on my machine - only one reported by CI: simultaneous-playback-capture; suspend-resume; @ranj063 do we still have an issue with nocodec+dynamic pipelines on APL? |
|
@aiChaoSONG @fredoh9 the simultaneous playback-capture error is an sof-test issue. The scripts are trying to use a non-existent device hw:0,10 on playback. Man, I managed to break just about everything today! |
Looks there is a bug on sof-test. it is supposed to look for 'both' pipeline, but hw:0,10 is DMIC. I will take a look. |
@chao made a fix for this, thesofproject/sof-test#713. Currently under review. |
Oh my, we've been using hw:10 for a while for SoundWire topologies, not sure how we avoided this case. |
|
let's re-run this when the sof-test fix is merged. I tested it and so far no issues. |
|
@fredoh9 can you ping this PR once test changes are merged. Thanks. |
@plbossart yes. you need my thesofproject/linux#2974 to fix that. Please bear with me for one more day. I'm also adding support for multi-core with dynamic pipelines. I will update this one and create a new one ASAP |
It's the usual "green failures" a.k.a. "not testing the tests". Writing them and getting them into production even when they have never ever FAILED once and never proved that they are capable of actually catching and reporting any failure. Not even locally on the system of neither the test author nor the feature author. This is much more harmful and costly than the more common lack of coverage. For instance simply reverting a bug fix with a single commit and run a test again to check coverage is apparently something extraordinary that took 4 months in #3522 (comment) Many other examples in thesofproject/sof-test#312, thesofproject/sof-test#702 and others. |
|
thesofproject/sof-test#715 is merged now |
|
SOFCI TEST |
|
@plbossart apart from sof-apl-nocodec, none of the other topologies changed here will get tested by the PR device test. Do we want to run a daily test instead? |
There's no CNL nocodec test device so you'll have to trust my results. |
|
For TGL/ADL nocodec, I can run a test today. |
@plbossart how is cnl nocodec with dynamic pipelines and nulti-core passing for you? |
Prepare for use of common file Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
We first want to enable the simplified topologies, then multi-core then dynamic pipelines. The latter two cases will be handled in follow-up patches. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Remove all the hard-coding and use macros. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Prepare for reuse across all platforms. For now this still uses single-core. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
No idea what we add artificial limitations on formats Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
fe57a90 to
a6af4e9
Compare
|
As discussed, I removed the dynamic pipelines and multi-core. I still see errors on TGL-nocodec on my local test platforms, not sure why. CI is sill using the development/sof-tgl-nocodec-ci.tplg so the problems should not show with this PR until @fredoh9 changes the configurations |
|
@fredoh9 can you rerun the CI after your CI changes are made and I'll merge tomorrow if all is well. Thanks ! |
use platform name to infer root clocks Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Prepare for use on APL to use SSP0,1, 5, all other platforms use SSP0,1,2 Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Add macros to quickly enable multi-core with DMICs Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
…ions Not all devices have 4 cores, some only have 2 and even APL/GLK is currently limited to a single core. For now we still use a single core for all topologies, we will enable multi-core in a follow-up patch. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
The beginning of the end of insanity? Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Move the existing sof-apl-nocodec to the development folder, in case SOF CI still wants to use it. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
a6af4e9 to
3e393d4
Compare
|
@plbossart this changes the SSP counts on APL, it was 6 and now 3. |
I think this is good, APL has the smallest memory so it makes sense using the memory for testing different components instead of testing different SSP ports. |
|
@fredoh9 CI all green, but APL HDA has not run - I'm assuming we need a reboot ? |
No it doesn't. I tested on APL-up2 with SSP5, works fine. The existing tests no longer test all SSPs anyways, we tested exactly four and now it's down to three. Compare the initial sof-apl-nocodec with the new one. The only changes are the removal of the mixer and removal of SSP3. I will re-add the mixer later later but one thing at a time. |
|
@lgirdwood ready to merge IMHO. we've tested on multiple platforms. @fredoh9 tested on ADL-nocodec, we don't see issuea reported. Next steps will be to add multicore, then dynamic pipelines, then a mixer. |
|
I don't like to merge my own PRs, but the results seem to be fine (Up2-hda uses a different topology) and it's already beer-o'clock in multiple parts of the world. Will merge so that we see the complete results early next week. |


I am not happy with the nocodec topologies on cAVS platforms!
a) the DMIC tests are only a subset of what we use in actual platforms (no IIR, 2ch only, no DMIC 16kHz)
b) the SSP configurations are all over the place (formats, etc).
c) there's copy-paste everywhere for no good reason
d) there's no support for multi-cores.
e) not all platforms are supported.
f) there is a mixer only for APL (WHY?)
We can align with more macros. This PR suggests a SINGLE sof-cavs-nocodec.m4 which uses the PLATFORM information to infer which SSPs to use and which cores to schedule things on.
This is still WIP, e.g. the APL mixer was removed as an initial step, hence the draft status.
I smoke-tested this on APL-Up2 and the data shows up on the connector. The only change is that we now have 2 dmic devices and the SSP5 is shown as device2, port5. More tests are required before merge.