Repository navigation
tplgtool2.py: show PCM names on graph output - #1054
Conversation
Fixed a quadruple """" that broke the parser in some editors. Minor rewording. Signed-off-by: Marc Herbert <marc.herbert@intel.com>
|
Seems to work great... for topology1. https://sof-ci.01.org/softestpr/PR1054/build417/devicetest/index.html
|
|
Besides In any case it seems a bit weird to have to parse the widget name... is there no simpler widget->pcm connection in the topology? EDIT: not really, see https://github.com/thesofproject/linux/blob/2776754a4cd984a390a17a0c96635beb2ad408d8/sound/soc/sof/topology.c#L1148 |
| assert n_l <= 1, f"Unexpected number of PCMs matching pcm_id={pcm_id}: {n_l} ({pcm_names})" | ||
|
|
||
| return pcm_names[0] if n_l == 1 else f"No PCM with ID={pcm_id}" | ||
|
|
There was a problem hiding this comment.
IIRC @ranj063 already did some changes in the topology2 naming, not sure if these changes are based on top of the topology2 changes?
In addition, while the name of the PCM device is nice, the PCM device number is the most useful for testing. How difficult would it be to add the hw: ID?
There was a problem hiding this comment.
IIRC @ranj063 already did some changes in the topology2 naming, not sure if these changes are based on top of the topology2 changes?
Are these changes merged yet? In which git repo?
This is sof-test: it's a different git repo so the tests are running with the latest of everything that was merged. I think. EDIT: as a sheer coincidence just discovered sof-test is tested with yesterday's SOF.
How difficult would it be to add the hw: ID?
Isn't that the pcm_id I'm matching against? If not then what is it? @ranj063 can you help explain? I'm a total topology noob sorry, just trying stuff and marvelling at how lucky I am to make the graphs look so much better with so little Python code.
There was a problem hiding this comment.
IIRC @ranj063 already did some changes in the topology2 naming, not sure if these changes are based on top of the topology2 changes?
In addition, while the name of the PCM device is nice, the PCM device number is the most useful for testing. How difficult would it be to add the hw: ID?
@plbossart I think this is a good change on top of what I did with the naming. With a name like host-copier.1.playback you've already got the PCM ID i.e. 1 and this adds the name of the PCM next to it
fixed now with thesofproject/sof#7747 |
| if match is None: | ||
| # Don't crash the entire program when passed a wrong input; | ||
| # put an error message in the graph instead. | ||
| return f'No PCM or host-copier number found in "{wname}"' |
There was a problem hiding this comment.
From @ranj063 : this is a topology error, make it a hard fail.
902e261
|
I started running the new version manually on all .tplg files and I'm finding new errors: Also affects apl-nocodec in EDIT: the assert interruption was the most likely reason why the graph below was incomplete. Ignore this graph!
|
|
The guessing can stop. Signed-off-by: Marc Herbert <marc.herbert@intel.com>
The graph is still produced but now there's something that can be used for testing. Signed-off-by: Marc Herbert <marc.herbert@intel.com>
|
graph still missing in https://sof-ci.01.org/softestpr/PR1054/build568/devicetest/index.html?model=APL_UP2_NOCODEC&testcase=verify-tplg-binary, DUT-env.py in the CI framework assumes there's no output in case of error. Working on that. |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
|
SOFCI TEST EDIT: https://sof-ci.01.org/softestpr/PR1054/build576/devicetest/index.html shows the APL_UP_NOCODEC graph with the missing pcm_id |
|
For a while I naively thought I could quickly fix the problematic topologies above - and then merge this. I have neither enough time nor knowledge for that. So the most recent and... perfect-at-last revision does a "soft fail": it still produces the graph even when a PCM id is not found. That's what it used to do before this PR and graph is probably useful for troubleshooting anyway so I think it's the best design after all. An error message is printed on stdout and placed in the graph too, see example in https://sof-ci.01.org/softestpr/PR1054/build576/devicetest/index.html?model=APL_UP2_NOCODEC&testcase=verify-tplg-binary There's also a non-zero exit status. MTL https://sof-ci.01.org/softestpr/PR1054/build577/devicetest/index.html and stable-v2.2 have the small and usual amount of suspend/resume failures; nothing else https://sof-ci.01.org/softestpr/PR1054/build575/devicetest/index.html?model=TGLU_RVP_SDW_IPC4ZPH&testcase=multiple-pause-resume-5 is known. Everything else green there. |
|
thanks @RanderWang for your patience through the error-handling back and forth! |



No description provided.