Bug 1225281

Summary: LG 32ld450 hdmi audio is not probe properly.
Product: [openSUSE] openSUSE Tumbleweed Reporter: ted chang <monkeyboyted>
Component: SoundAssignee: Antonio Larrosa <alarrosa>
Status: RESOLVED INVALID QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Tumbleweed   
URL: https://www.lg.com/ca_en/tv-soundbars/lcd-tvs/32ld450/
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: alsa-info.sh
hdmi sound doesn't work
No HDMI audio option.
lg-32ld450 edid file
dmesg of working boot

Description ted chang 2024-05-24 23:42:17 UTC
Created attachment 875094 [details]
alsa-info.sh

Hi Kernel driver maintainers.

I tested LG 32ld450 HDMI audio on my LCD steam deck. I also used the original pinephone dock and deck dock shows the same results.


System information

Operating System: openSUSE Tumbleweed 20240523
KDE Plasma Version: 6.0.4
KDE Frameworks Version: 6.2.0
Qt Version: 6.7.0
Kernel Version: 6.9.1-1-default (64-bit)
Graphics Platform: Wayland
Processors: 8 × AMD Custom APU 0405
Memory: 13.5 GiB of RAM
Graphics Processor: AMD Custom GPU 0405
Manufacturer: Valve
Product Name: Jupiter
System Version: 1


zypper info wireplumber
Loading repository data...
Reading installed packages...


Information for package wireplumber:
------------------------------------
Repository     : openSUSE-Tumbleweed-Oss
Name           : wireplumber
Version        : 0.5.2-2.1
Arch           : x86_64
Vendor         : openSUSE
Installed Size : 943.2 KiB
Installed      : Yes
Status         : up-to-date
Source package : wireplumber-0.5.2-2.1.src
Upstream URL   : https://gitlab.freedesktop.org/pipewire/wireplumber
Summary        : Session / policy manager implementation for PipeWire
Description    : 
    WirePlumber is a modular session / policy manager for PipeWire and
    a GObject-based high-level library that wraps PipeWire's API,
    providing convenience for writing the daemon's modules as well as
    external tools for managing PipeWire.



zypper info pipewire
Loading repository data...
Reading installed packages...


Information for package pipewire:
---------------------------------
Repository     : openSUSE-Tumbleweed-Oss
Name           : pipewire
Version        : 1.0.6-2.1
Arch           : x86_64
Vendor         : openSUSE
Installed Size : 104.8 KiB
Installed      : Yes
Status         : up-to-date
Source package : pipewire-1.0.6-2.1.src
Upstream URL   : https://pipewire.org/
Summary        : A Multimedia Framework designed to be an audio and video server and more
Description    : 
    PipeWire is a server and user space API to deal with multimedia pipelines.

    Some of its features include:

     * Capture and playback of audio and video with minimal latency;
     * Real-time Multimedia processing on audio and video;
     * Multiprocess architecture to let applications share multimedia content;
     * GStreamer plugins for easy use and integration in current applications;
     * Sandboxed applications support.



aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
speexrate
    Rate Converter Plugin Using Speex Resampler
pipewire
    PipeWire Sound Server
upmix
    Plugin for channel upmix (4,6,8)
default
    Default ALSA Output (currently PipeWire Media Server)
hdmi:CARD=Generic,DEV=0
    HD-Audio Generic, HDMI 0
    HDMI Audio Output
hdmi:CARD=Generic,DEV=1
    HD-Audio Generic, HDMI 1
    HDMI Audio Output
hdmi:CARD=Generic,DEV=2
    HD-Audio Generic, LG TV
    HDMI Audio Output
hdmi:CARD=Generic,DEV=3
    HD-Audio Generic, HDMI 3
    HDMI Audio Output
sysdefault:CARD=acp5x
    acp5x, 
    Default Audio Device

 aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 8: HDMI 2 [LG TV]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: acp5x [acp5x], device 0: Playback/Capture nau8821-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: acp5x [acp5x], device 1: CS35L41 Stereo Playback multicodec-1 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0


wpctl status
PipeWire 'pipewire-0' [1.0.6, doof@localhost.localdomain, cookie:1360545133]
 └─ Clients:
        31. kwin_wayland                        [1.0.6, doof@localhost.localdomain, pid:2424]
        32. WirePlumber                         [1.0.6, doof@localhost.localdomain, pid:3250]
        40. WirePlumber [export]                [1.0.6, doof@localhost.localdomain, pid:3250]
        62. pipewire                            [1.0.6, doof@localhost.localdomain, pid:3565]
        63. QtPulseAudio:3276                   [1.0.6, doof@localhost.localdomain, pid:3276]
        64. xdg-desktop-portal                  [1.0.6, doof@localhost.localdomain, pid:2511]
        65. KDE Connect Daemon                  [1.0.6, doof@localhost.localdomain, pid:4011]
        66. Plasma PA                           [1.0.6, doof@localhost.localdomain, pid:3785]
        67. Steam Voice Settings                [1.0.6, doof@localhost.localdomain, pid:4349]
        68. Steam                               [1.0.6, doof@localhost.localdomain, pid:4349]
        69. Plasma PA                           [1.0.6, doof@localhost.localdomain, pid:5443]
        70. wpctl                               [1.0.6, doof@localhost.localdomain, pid:8819]

Audio
 ├─ Devices:
 │      41. Rembrandt Radeon High Definition Audio Controller [alsa]
 │      42. ACP/ACP3X/ACP6x Audio Coprocessor   [alsa]
 │  
 ├─ Sinks:
 │  *   47. ACP/ACP3X/ACP6x Audio Coprocessor Speaker [vol: 1.00]
 │      48. ACP/ACP3X/ACP6x Audio Coprocessor Headphones [vol: 1.00]
 │  
 ├─ Sources:
 │  *   49. ACP/ACP3X/ACP6x Audio Coprocessor Headset Microphone + Internal Microphone [vol: 1.00]
 │  
 ├─ Filters:
 │  
 └─ Streams:

Video
 ├─ Devices:
 │  
 ├─ Sinks:
 │  
 ├─ Sources:
 │  
 ├─ Filters:
 │  
 └─ Streams:

Settings
 └─ Default Configured Devices:
         0. Audio/Sink    alsa_output.pci-0000_04_00.1.hdmi-stereo-extra2
         1. Audio/Source  alsa_input.pci-0000_04_00.5-platform-acp5x_mach.0.HiFi__hw_acp5x_0__source



Observed
HDMI audio isn't probe properly. 

This command works

speaker-test -Dplughw:0,8 -c2


Expected. Speakers work out of the box.
Comment 1 ted chang 2024-05-24 23:43:31 UTC
Created attachment 875095 [details]
hdmi sound doesn't work

This command works

speaker-test -Dplughw:0,8 -c2
Comment 2 ted chang 2024-05-24 23:46:17 UTC
Created attachment 875096 [details]
No HDMI audio option.

KDE settings is missing the HDMI audio option.
Comment 3 ted chang 2024-05-24 23:49:50 UTC
Created attachment 875097 [details]
lg-32ld450 edid file

 parse-edid  < lg-32ld450.edid 
Checksum Correct

Section "Monitor"
        Identifier "LG TV"
        ModelName "LG TV"
        VendorName "GSM"
        # Monitor Manufactured week 1 of 2010
        # EDID version 1.3
        # Digital Display
        DisplaySize 160 90
        Gamma 2.20
        Option "DPMS" "false"
        Horizsync 31-82
        VertRefresh 57-63
        # Maximum pixel clock is 160MHz
        #Not giving standard mode: 1280x1024, 60Hz
        #Not giving standard mode: 1024x768, 60Hz
        #Not giving standard mode: 800x600, 60Hz
        #Not giving standard mode: 640x480, 60Hz

        #Extension block found. Parsing...
        Modeline        "Mode 9" +hsync +vsync 
        Modeline        "Mode 0" +hsync +vsync 
        Modeline        "Mode 1" +hsync +vsync 
        Modeline        "Mode 2" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
        Modeline        "Mode 3" 74.250 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
        Modeline        "Mode 4" 74.250 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync
        Modeline        "Mode 5" 74.250 1920 2008 2052 2200 1080 1082 1087 1125 +hsync +vsync interlace
        Modeline        "Mode 6" 74.250 1280 1390 1420 1650 720 725 730 750 +hsync +vsync
        Modeline        "Mode 7" 27.027 720 736 798 858 480 489 495 525 -hsync -vsync
        Modeline        "Mode 8" 27.027 720 736 798 858 480 489 495 525 -hsync -vsync
        Modeline        "Mode 10" +hsync +vsync interlace
        Modeline        "Mode 11" +hsync +vsync 
        Modeline        "Mode 12" -hsync -vsync 
        Option "PreferredMode" "Mode 9"
EndSection
Comment 4 Takashi Iwai 2024-05-25 07:30:52 UTC
Antonio, this looks like another report about pipewire / wireplumber issues.
Comment 5 ted chang 2024-05-25 20:54:23 UTC
I believe I resolved this issue. Somehow I had a default wireplumber profile

rm .local/state/wireplumber/default-profile 

I ran this command and deleted it.

It had something like pci alsa off.

My sound now works.
Comment 6 ted chang 2024-05-25 20:56:21 UTC
Created attachment 875103 [details]
dmesg of working boot

I should had kept the default wireplumber file. Oh well.
Comment 7 Antonio Larrosa 2024-06-10 18:02:10 UTC
Thanks Ted for resolving the issue yourself and letting us know how you fixed it. Indeed knowing the differences between the broken and working versions of the default-profile file would have been nice, but at least you know where to look if it happens again.