Skip to content
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

rockchip64: disable pl330 patch due to pulseaudio issues #7813

Merged
merged 1 commit into from
Feb 10, 2025

Conversation

paolosabatino
Copy link
Contributor

@paolosabatino paolosabatino commented Feb 9, 2025

Description

This partially reverts #7695 for current 6.12 rockchip64 kernel.

I discovered some issues during release tests on analog audio of OrangePi 4 LTS board (rk3399). Despite the pl330 patches fix the pops and cracks under heavy memory load, Pulseaudio seems to have a compability problem and produces frequent buffer underruns, making audio output unstable.

The problems went unnoticed because I always tested the PL330 fix against ALSA on minimal installations without pulseaudio, which is instead installed out of the box on full desktop releases.

For now, it is better to disable the patches on rockchip64 because the little pops and cracks are "better" than the buffer underruns.

How Has This Been Tested?

  • Tested on rk3399 Orange PI 4 LTS

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • My changes generate no new warnings

@paolosabatino paolosabatino requested a review from a team February 9, 2025 20:07
@github-actions github-actions bot added size/small PR with less then 50 lines Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... Patches Patches related to kernel, U-Boot, ... labels Feb 9, 2025
@rpardini
Copy link
Member

rpardini commented Feb 9, 2025

Hmm -- I'm also from pulseaudio times, but I hear the kids are now using pipewire -- which is pulseaudio compatible -- maybe it does not occur there?

@paolosabatino
Copy link
Contributor Author

@rpardini actually don't know the pipewire status, I usually test full desktop releases with Audacious and there pipewire output driver was refusing to work on Noble and was not available at all on Bookworm; armbian xfce desktop still proposes the pulseaudio mixer and utilities out of the box, so I guess it is still the preferred choice.

I would like to follow the kids and be happy and joyful with pipewire, but I have a suspect the pl330 patch fixes the periodic dma requests, but introduces an oddity about the interrupt handling (bad timing? unbalanced buffer counting?).
I definitely need to check against the vendor kernel: I had similar buffer underrun issues when I tried the patch on a board which was running a complex ALSA setup with several plugins. Since some of those plugins were "custom made" and did some trickery, so I thought the problem may lie in those plugins, but now that also pulseaudio is showing a similar issue as well... mmmh... doesn't smell good.

@paolosabatino paolosabatino merged commit c739c25 into armbian:main Feb 10, 2025
10 checks passed
@paolosabatino paolosabatino deleted the disable-pl330-patches branch February 10, 2025 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Hardware Hardware related like kernel, U-Boot, ... Needs review Seeking for review Patches Patches related to kernel, U-Boot, ... size/small PR with less then 50 lines
Development

Successfully merging this pull request may close these issues.

2 participants