Score:2

No sound on an HP 15z-fc000 after warm boot

kr flag

I have an HP 15z-fc000 that won't play sound from its built-in speakers after a warm boot (i.e., after doing "reboot"). It works fine after a cold boot (i.e., after doing "shutdown", waiting for it to turn completely off, and then turning it back on with the power button). When it's not working, the name of the output device I see is "Dummy output". Here's the relevant device from lspci -vvvnn from a warm boot when it's broken:

03:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller [1022:15e3]
        Subsystem: Hewlett-Packard Company Family 17h (Models 10h-1fh) HD Audio Controller [103c:8b2f]
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin C routed to IRQ 54
        IOMMU group: 17
        Region 0: Memory at fccc0000 (32-bit, non-prefetchable) [size=32K]
        Capabilities: [48] Vendor Specific Information: Len=08 <?>
        Capabilities: [50] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [64] Express (v2) Endpoint, MSI 00
                DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited
                        ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 0.000W
                DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
                        RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
                        MaxPayload 256 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
                LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1us
                        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
                LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 16GT/s (ok), Width x16 (ok)
                        TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
                DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR-
                         10BitTagComp+ 10BitTagReq- OBFF Not Supported, ExtFmt+ EETLPPrefix+, MaxEETLPPrefixes 1
                         EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
                         FRS- TPHComp- ExtTPHComp-
                         AtomicOpsCap: 32bit- 64bit- 128bitCAS-
                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled,
                         AtomicOpsCtl: ReqEn-
                LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete- EqualizationPhase1-
                         EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
                         Retimer- 2Retimers- CrosslinkRes: unsupported
        Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
                Address: 0000000000000000  Data: 0000
        Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Capabilities: [2a0 v1] Access Control Services
                ACSCap: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
                ACSCtl: SrcValid- TransBlk- ReqRedir- CmpltRedir- UpstreamFwd- EgressCtrl- DirectTrans-
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

On cold boots when it's working, it has DisINTx+ instead of DisINTx-, MSI: Enable+ instead of MSI: Enable-, and Address: 00000000fee00000 instead of Address: 0000000000000000.

On warm boots when it's broken, I don't see this device in aplay -l at all, but on cold boots when it's working, it appears there like this:

card 1: Generic_1 [HD-Audio Generic], device 0: ALC236 Analog [ALC236 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

I've tried on both Ubuntu 22.04 (a clean installation, not an upgrade from an older version) and 23.04 (from a live USB), and neither one works. I'm happy to use either, should there be a solution that works on one but not the other. Here's some other things I tried, and the results:

  • Adding snd-hda-intel.model=generic to the kernel command line, or appending options snd-hda-intel model=generic to /etc/modprobe.d/alsa-base.conf - Changes the output device I see to "HD-Audio Generic Digital Stereo (HDMI)", but I still can't hear anything played through it.
  • Adding snd-hda-intel.dmic_detect=0 to the kernel command line, or appending options snd-hda-intel dmic_detect=0 to /etc/modprobe.d/alsa-base.conf - No noticeable change
  • Both of the above at the same time - No noticeable change beyond what the first one did alone
  • Booting the 6.3.0 mainline kernel from https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.3/amd64/ - No noticeable change
  • pulseaudio --kill followed by pulseaudio --start: PulseAudio never comes back up and I can't even see sound preferences anymore until I reboot
  • sudo touch /usr/share/pipewire/media-session.d/with-pulseaudio followed by systemctl --user restart pipewire-session-manager: No noticeable change

I'm out of ideas. What should I try/do next?

Jeff avatar
mx flag
Try this method: https://github.com/HewlettPackard/zhpe-driver
Joseph Sible-Reinstate Monica avatar
@Logan That driver has nothing whatsoever to do with audio.
sancho.s ReinstateMonicaCellio avatar
https://bbs.archlinux.org/viewtopic.php?id=79700
sancho.s ReinstateMonicaCellio avatar
https://bbs.archlinux.org/viewtopic.php?id=211494
sancho.s ReinstateMonicaCellio avatar
Do you have another card that may be messing with audio? See https://unix.stackexchange.com/questions/736659/disable-pci-sound-card-with-udev
Score:1
pl flag

There exists a sort of "canonical set" of commands that I wrote, and it helped many others diagnosing (and then solving) audio issues. In particular, if you see "Dummy output".

Please check Only "Dummy output" (sound) in Ubuntu 20.04 after reboot - Broken driver / module and post whatever results you find.

Joseph Sible-Reinstate Monica avatar
The problem still exists after looking through everything there, but I did make one new discovery while trying it all: this problem only occurs after warm boots (reboots), and sound works fine on the first boot after cold boots (powering all the way off and then back on). I edited details about this into my question, including differences between the outputs of some commands.
sancho.s ReinstateMonicaCellio avatar
@JosephSible-ReinstateMonica - I suggest you post in the question the output of each of the commands listed in the link. It may provide useful information.
Score:1
dj flag

The same problem with the same laptop. First time it works, then after reboot - it does not (dummy output). What I found additionally is that Ubuntu 21.10 still works fine at least in this respect (i.e., you can reboot without any issues). However, Ubuntu 22.04 (the very first release) with Linux 5.15 does not work fine any more. If I remember correctly, Ubuntu 21.10 still used Linux 5.13. That means the issue was most likely introduced in the driver somewhere in between 5.13 and 5.15.

Another thing I noticed is that sound device identifiers are enumerated differently:

  1. In Ubuntu 22.04+, we have:

cat /sys/class/sound/hwC1D0/subsystem_id : 0xaa0100

cat /sys/class/sound/hwC2D0/subsystem_id : 0x103c8b30

  1. In Ubuntu 21.10, we have:

cat /sys/class/sound/hwC0D0/subsystem_id : 0xaa0100

cat /sys/class/sound/hwC1D0/subsystem_id : 0x103c8b30

Note that in Ubuntu 21.10 it starts from hwC0D0, but in Ubuntu 22.04+ it starts from hwC1D0. Furthermore, after reboot hwC2D0 completely disappears.

Is the codec (hwC2D0) is somehow powered off when the driver is unloaded?

Score:0

After receiving a helpful bit of information from Ruslan, namely that this used to work fine in prior Ubuntu versions, I managed to confirm that this is a kernel regression caused by commit 5aec98913095ed3b4424ed6c5fdeb6964e9734da. I reported this as https://bugzilla.kernel.org/show_bug.cgi?id=217440 and am working around it for now by doing a custom kernel build with that change reverted. Regzbot link: https://linux-regtracking.leemhuis.info/regzbot/regression/bugzilla.kernel.org/217440/

I sit in a Tesla and translated this thread with Ai:

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.