-
Notifications
You must be signed in to change notification settings - Fork 318
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
LNL NOCODEC alsa-bat playback failure #9123
Comments
It's not the same frequency as previously.... |
https://sof-ci.01.org/linuxpr/PR4899/build2589/devicetest/index.html?model=LNLM_RVP_NOCODEC&testcase=check-alsabat-headset-playback-821 has an xrun reported by userspace but nothing in the firmware trace. https://sof-ci.01.org/sofpr/PR9119/build4654/devicetest/index.html?model=LNLM_RVP_NOCODEC&testcase=check-alsabat-headset-playback-599 has no xrun reported by userspace, but the trace has tons of
|
@plbossart Both above test runs have "Broken pipe":
I think this is related. The capture audio file has flawless audio for first 33000 samples and then it breaks down. |
Another, very recent alsabat regression, this time on capture and MTLP_RVP_HDA If different then it would be a very strange timing coincidence because both test cases have been very consistently passing over the last few weeks. |
Now we have a broken test with NOCODEC alsa-bat capture I must admit I don't know if what the difference is between alsa-bat-headset-playback and alsa-bat-headset-capture, we need to play and capture on the same devices and test the same loopback playback: capture: Looks the same to me? What am I missing @fredoh9 @marc-hb @kv2019i ? |
@plbossart At least in the capture case, there is again glitches in capture audio. In specific case of |
@fredoh9 just explained this to me: NOCODEC is special. Outside NOCODEC:
NOCODEC is special, it has no USB. So:
So both tests do more or less the same thing on NOCODEC. |
Right, so can we skip the capture part to avoid unnecessary confusions? |
and its also suspiciously close to 0.5 seconds of audio. 0.5 second USB audio buffer size ??? |
There's no USB involved in Nocodec mode, it's an SSP loopback. |
"send patches" |
This comment was marked as off-topic.
This comment was marked as off-topic.
different interface, different issue please |
@plbossart can I ask for the logs with ipc payload? |
In theory the dmesg log should already have the entire payload provided, an option must be missing in the CI setup.
|
All LNL RVPs in SOF CI have the IPC dump enabled. |
It's hit-and-miss because:
|
According to @kv2019i :
Correct? |
need to keep bit(11) enabled.
|
i have checked all BA devices also for IPC dump. its enabled with above values |
@fredoh9, if we want to have payload dump enabled on all configurations then 0xc01 for nocodec and 0x801 for others. It would be better if we could get bpftrace working to get the IPC message dumps, but they will be without the kernel print provided contexts...
it prints all IPC messages but the payload printing will cut the print at BPFTRACE_MAX_STRLEN and so far I was not able to work that around to split up the payload print. There are limitations what we can do with bpftrace, if anyone can make this work then we can probably introduce an IPC log alongside of dmesg and the firmware log? |
Setting the source/sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Move the buffer parameter configurations to the new copier_bind bind function. Delete the sink buffers configurations from the copier_module_copy function. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
Setting the source/sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Move the buffer parameter configurations to the new copier_bind bind function. Delete the sink buffers configurations from the copier_module_copy function. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
Setting the source/sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Move the buffer parameter configurations to the new copier_bind bind function. Delete the sink buffers configurations from the copier_module_copy function. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
This just happened again in CI: Have you made sure the kernel, firmware and system configuration is 100% identical? Even better: have you just downloaded and installed packages from CI directly? On the same system(s). |
Setting the source/sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Move the buffer parameter configurations to the new copier_bind bind function. Delete the sink buffers configurations from the copier_module_copy function. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
Setting the sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Move the buffer parameter configuration to the new copier_bind bind function. Delete the sink buffers configuration from the copier_module_copy function. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
Setting the sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Move the buffer parameter configuration to the new copier_bind bind function. Delete the sink buffers configuration from the copier_module_copy function. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
Setting the sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Add bind function to configure sink buffers parameters. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Remove ipc4_update_buffer_format from the copier_module_copy function. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
Fixed in PR #9276 |
To be closed after one round of daily tests. |
Setting the sink buffers parameters in the copier_update_params function is not sufficient. If a sink buffer is attached during copier operation, the module will not set buffers parameters. Add bind function to configure sink buffers parameters. There is no need to configure sink buffers parameters on each copy. We are assured that they were configured at the time of bind. Remove ipc4_update_buffer_format from the copier_module_copy function. Fixes: thesofproject#9123 Signed-off-by: Adrian Warecki <[email protected]>
@marc-hb I don't see any glitches in the attached wave file only the peak at 999 Hz is visible in fft I think this is a different issue than the one I fixed. |
@marc-hb Could you please take a look at the @softwarecki respone? |
I don't know anything about the details sorry but I remember that in the past every time a "human eye" and alsabat disagreed, alsabat won eventually. I have no idea what caused this particular failure: it could be a LNL-specific USB bug, or a LNL-specific audio bug, a bug in sof-test or even something else but all the evidence so far has shown alsabat itself to be the least suspect. |
Reviewing a week worth of daily test plans with this configurationg (starting 2024-09-02), this test is passing all the time. It is likely zephyrproject-rtos/zephyr#77805 fix was responsible for the occasional 1ms glitches seen in this test and those are now gone. There is one failure left in the alsa-bat-capture test, I'll file a separate bug to track that. |
Failure reported in
https://sof-ci.01.org/linuxpr/PR4899/build2589/devicetest/index.html?model=LNLM_RVP_NOCODEC&testcase=check-alsabat-headset-playback-821
This could be the consequence of a xrun.
cc:
The text was updated successfully, but these errors were encountered: