I have been struggling with a sound problem for months now so I thought someone could help me here, I'll try to give as much details as I can but I'm pretty new to the whole Linux ecosystem and not sure wich informations are useful or not.
The problem :
My laptop (DELL-G3-3590) runs a dual-boot windows/ elementary OS Hera, when I first installed elementary OS, everything was fine except that I needed nvidia drivers to run a dual-screen, I installed them ( nvidia-driver-430 ) and the sound stopped working.
It seems that ALSA is only detecting the nvidia GPU sound card with the HDMI sound chipset. The internal speakers and microphone are no longer detected in the audio settings.
PS : On windows, everything works fine.
My configuration :
My graphic card is a Nvidia Geforce GTX 1660 Ti.
The two audio related cards in my computer are the following (from sudo lspci -vv
) :
00:1f.3 Multimedia audio controller: Intel Corporation Cannon Lake PCH cAVS (rev 10)
Subsystem: Dell Device 0949
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: 32, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: Memory at a52a0000 (64-bit, non-prefetchable) [size=16K]
Region 4: Memory at a5000000 (64-bit, non-prefetchable) [size=1M]
Capabilities: [50] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0-,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [80] Vendor Specific Information: Len=14 <?>
Capabilities: [60] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Kernel driver in use: sof-audio-pci
Kernel modules: snd_hda_intel, sof_pci_dev
01:00.1 Audio device: NVIDIA Corporation Device 1aeb (rev a1)
Subsystem: Dell Device 0949
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 B routed to IRQ 17
Region 0: Memory at a30d0000 (32-bit, non-prefetchable) [size=16K]
Capabilities: [60] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D3 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [78] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us
ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 75.000W
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-
LnkCap: Port #0, Speed 8GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <512ns, L1 <4us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range AB, TimeoutDis+, LTR+, OBFF Via message
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-
EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
Capabilities: [100 v2] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
AERCap: First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
What I've tried :
I tried many solutions found on the internet but none of them worked, still, as long as I remember, I tried:
Changing default sound card with alsamixer : the only sound card detected is the Nvidia HDA with the HDMI chipset
Changing sound card priorities in my BIOS : it doesn't offer that possibilty, I can only enable or disable the sound card ( it is enabled )
Removing all files in ~/.config/pulse : after a reboot they were all back there, it may be useful to note that the wen
pulseaudio
in a terminal, I get the following output :
E: [pulseaudio] pid.c: Daemon already running.
E: [pulseaudio] main.c: Failure of pa_pid_file_create().
- Blacklisting snd-hda-intel in
/etc/modprobe.d/blacklist.conf
, based on this article : both of my soundcards uses snd-hda-intel so I just had no sound card at all.
And I think that's it, I tried a few stuff with alsa configuration that I can't remember precisely.
Hope someone will be able to help. Thank your for your time and if you need any additional informations please ask me.
Edit : I just booted in usb to check what alsamixer shows when the sound works, the sound card I'm trying to get to work is an HDA Intel PCH with the chip ALC3254