# [SOLVED] No sound with Intel CM238 HD Audio

## egrep

Hello,

For some reason I failed to setup sound on my Lenovo Y520-15IKBN laptop. I'm pretty sure it works on Linux, but sadly not in my case. Here is my configuration:

lspci -nnk

```

00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [8086:5910] (rev 05)

   Subsystem: Lenovo Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [17aa:3804]

   Kernel driver in use: skl_uncore

00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16) [8086:1901] (rev 05)

   Kernel driver in use: pcieport

00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 630 [8086:591b] (rev 04)

   Subsystem: Lenovo HD Graphics 630 [17aa:39fc]

   Kernel driver in use: i915

   Kernel modules: i915

00:14.0 USB controller [0c03]: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller [8086:a12f] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller [17aa:381d]

   Kernel driver in use: xhci_hcd

00:14.2 Signal processing controller [1180]: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem [8086:a131] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family Thermal Subsystem [17aa:3805]

   Kernel driver in use: intel_pch_thermal

   Kernel modules: intel_pch_thermal

00:16.0 Communication controller [0780]: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 [8086:a13a] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family MEI Controller [17aa:381e]

   Kernel driver in use: mei_me

   Kernel modules: mei_me

00:17.0 SATA controller [0106]: Intel Corporation HM170/QM170 Chipset SATA Controller [AHCI Mode] [8086:a103] (rev 31)

   Subsystem: Lenovo HM170/QM170 Chipset SATA Controller [AHCI Mode] [17aa:3803]

   Kernel driver in use: ahci

   Kernel modules: ahci

00:1c.0 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #2 [8086:a111] (rev f1)

   Kernel driver in use: pcieport

00:1c.2 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #3 [8086:a112] (rev f1)

   Kernel driver in use: pcieport

00:1c.3 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #4 [8086:a113] (rev f1)

   Kernel driver in use: pcieport

00:1d.0 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #9 [8086:a118] (rev f1)

   Kernel driver in use: pcieport

00:1f.0 ISA bridge [0601]: Intel Corporation HM175 Chipset LPC/eSPI Controller [8086:a152] (rev 31)

   Subsystem: Lenovo HM175 Chipset LPC/eSPI Controller [17aa:3803]

00:1f.2 Memory controller [0580]: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller [8086:a121] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family Power Management Controller [17aa:3819]

00:1f.3 Audio device [0403]: Intel Corporation CM238 HD Audio Controller [8086:a171] (rev 31)

   Subsystem: Lenovo CM238 HD Audio Controller [17aa:3803]

   Kernel driver in use: snd_hda_intel

00:1f.4 SMBus [0c05]: Intel Corporation 100 Series/C230 Series Chipset Family SMBus [8086:a123] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family SMBus [17aa:3817]

   Kernel driver in use: i801_smbus

   Kernel modules: i2c_i801

02:00.0 SD Host controller [0805]: O2 Micro, Inc. SD/MMC Card Reader Controller [1217:8621] (rev 01)

   Subsystem: Lenovo SD/MMC Card Reader Controller [17aa:381f]

   Kernel driver in use: sdhci-pci

   Kernel modules: sdhci_pci

03:00.0 Network controller [0280]: Intel Corporation Wireless 8265 / 8275 [8086:24fd] (rev 78)

   Subsystem: Intel Corporation Dual Band Wireless-AC 8265 [8086:1010]

   Kernel driver in use: iwlwifi

   Kernel modules: iwlwifi

04:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 10)

   Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [17aa:3884]

   Kernel driver in use: r8169

   Kernel modules: r8169

05:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 [144d:a804]

   Subsystem: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 [144d:a801]

   Kernel driver in use: nvme

```

soudcards:

```

$ tree -a /dev/snd/

/dev/snd/

├── by-path

│   └── pci-0000:00:1f.3 -> ../controlC0

├── controlC0

├── seq

└── timer

$ cat /proc/asound/cards

 0 [PCH            ]: HDA-Intel - HDA Intel PCH

                      HDA Intel PCH at 0xa1420000 irq 135

$ cat /proc/asound/devices

  1:        : sequencer

  2: [ 0]   : control

 33:        : timer

```

aplay

```

$ aplay -L

null

    Discard all samples (playback) or generate zero samples (capture)

pulse

    PulseAudio Sound Server

upmix

    Plugin for channel upmix (4,6,8)

vdownmix

    Plugin for channel downmix (stereo) with a simple spacialization

front:CARD=PCH

    Front output / input

surround21:CARD=PCH

    2.1 Surround output to Front and Subwoofer speakers

surround40:CARD=PCH

    4.0 Surround output to Front and Rear speakers

surround41:CARD=PCH

    4.1 Surround output to Front, Rear and Subwoofer speakers

surround50:CARD=PCH

    5.0 Surround output to Front, Center and Rear speakers

surround51:CARD=PCH

    5.1 Surround output to Front, Center, Rear and Subwoofer speakers

surround71:CARD=PCH

    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers

usbstream:CARD=PCH

    HDA Intel PCH

    USB Stream Output

```

dmesg

```

$ dmesg | grep -iE "snd|sound"

[    0.164487] Advanced Linux Sound Architecture Driver Initialized.

[    0.540537] snd_hda_intel 0000:00:1f.3: couldn't bind with audio component

[    0.555022]   No soundcards found.

[    0.646897] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    0.646912] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.830094] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

Please note:

 *Quote:*   

> couldn't bind with audio component

 

 *Quote:*   

> CORB reset timeout

 

 *Quote:*   

> no codecs found

 

speaker-test

```

$ speaker-test -l1 -p1 -D pulse

speaker-test 1.2.3

Playback device is pulse

Stream parameters are 48000Hz, S16_LE, 1 channels

Using 16 octaves of pink noise

Rate set to 48000Hz (requested 48000Hz)

Buffer size range from 192 to 2097152

Period size range from 64 to 699051

Requested period time 1 us

Periods = 4

was set period_size = 64

was set buffer_size = 259

 0 - Front Left

Time per period = 5.030103

```

lsmod

```

xhci_plat_hcd          16384  0

cdc_wdm                20480  0

pl2303                 24576  0

usb_serial_simple      20480  0

usbserial              40960  2 pl2303,usb_serial_simple

tun                    53248  0

lpc_ich                28672  0

mfd_core               16384  1 lpc_ich

configs                45056  0

rmi_smbus              16384  0

rmi_i2c                16384  0

rmi_core               77824  2 rmi_smbus,rmi_i2c

elan_i2c               40960  0

synaptics_usb          16384  0

synaptics_i2c          16384  0

i2c_smbus              16384  0

i2c_dev                16384  0

ntfs                  212992  0

ecb                    16384  0

cpufreq_userspace      16384  0

v4l2_dv_timings        36864  0

gspca_main             28672  0

uvcvideo              106496  0

videobuf2_vmalloc      16384  2 gspca_main,uvcvideo

videobuf2_memops       16384  1 videobuf2_vmalloc

videobuf2_v4l2         24576  2 gspca_main,uvcvideo

videodev              212992  3 gspca_main,videobuf2_v4l2,uvcvideo

videobuf2_common       49152  3 gspca_main,videobuf2_v4l2,uvcvideo

i2c_mux                16384  0

btusb                  49152  0

btrtl                  16384  1 btusb

btintel                24576  1 btusb

bnep                   20480  2

bluetooth             462848  29 btrtl,btintel,bnep,btusb

ecdh_generic           16384  1 bluetooth

ecc                    32768  1 ecdh_generic

intel_rapl_msr         20480  0

intel_rapl_common      28672  1 intel_rapl_msr

wmi_bmof               16384  0

x86_pkg_temp_thermal    20480  0

iwlmvm                348160  0

i915                 2088960  7

intel_powerclamp       20480  0

i2c_algo_bit           16384  1 i915

coretemp               16384  0

iwlwifi               327680  1 iwlmvm

sdhci_pci              53248  0

psmouse               151552  0

cqhci                  24576  1 sdhci_pci

drm_kms_helper        184320  1 i915

sdhci                  61440  1 sdhci_pci

r8169                  98304  0

syscopyarea            16384  1 drm_kms_helper

i2c_i801               28672  0

mmc_core              143360  3 sdhci,cqhci,sdhci_pci

sysfillrect            16384  1 drm_kms_helper

sysimgblt              16384  1 drm_kms_helper

fb_sys_fops            16384  1 drm_kms_helper

mei_me                 40960  0

wmi                    24576  1 wmi_bmof

mei                    86016  1 mei_me

intel_pch_thermal      16384  0

ahci                   40960  0

libahci                36864  1 ahci

intel_agp              20480  0

intel_gtt              24576  2 intel_agp,i915

drm                   425984  8 drm_kms_helper,i915

agpgart                36864  3 intel_agp,intel_gtt,drm

efivarfs               16384  1

fuse                  122880  1

```

/etc/modprobe.d/alsa.conf

```

# Alsa kernel modules' configuration file.

# ALSA portion

alias char-major-116 snd

# OSS/Free portion

alias char-major-14 soundcore

##

## IMPORTANT:

## You need to customise this section for your specific sound card(s)

## and then run `update-modules' command.

## Read alsa-driver's INSTALL file in /usr/share/doc for more info.

##

##  ALSA portion

## alias snd-card-0 snd-interwave

## alias snd-card-1 snd-ens1371

##  OSS/Free portion

## alias sound-slot-0 snd-card-0

## alias sound-slot-1 snd-card-1

##

# OSS/Free portion - card #1

alias sound-service-0-0 snd-mixer-oss

alias sound-service-0-1 snd-seq-oss

alias sound-service-0-3 snd-pcm-oss

alias sound-service-0-8 snd-seq-oss

alias sound-service-0-12 snd-pcm-oss

##  OSS/Free portion - card #2

## alias sound-service-1-0 snd-mixer-oss

## alias sound-service-1-3 snd-pcm-oss

## alias sound-service-1-12 snd-pcm-oss

alias /dev/mixer snd-mixer-oss

alias /dev/dsp snd-pcm-oss

alias /dev/midi snd-seq-oss

# Set this to the correct number of cards.

options snd cards_limit=1

```

emerge --info

```

$ emerge --info

Portage 3.0.0 (python 3.7.8-final-0, default/linux/amd64/17.1/desktop/gnome/systemd, gcc-10.1.0, glibc-2.31-r6, 5.7.9-gentoo x86_64)

=================================================================

System uname: Linux-5.7.9-gentoo-x86_64-Intel-R-_Core-TM-_i7-7700HQ_CPU_@_2.80GHz-with-gentoo-2.7

KiB Mem:    16271828 total,  14311488 free

KiB Swap:   16777212 total,  16777212 free

Timestamp of repository gentoo: Wed, 22 Jul 2020 21:30:01 +0000

Head commit of repository gentoo: bab757c75f679ac2adeb6e51b236ad07be981ef1

sh bash 5.0_p18

ld GNU ld (Gentoo 2.34 p4) 2.34.0

app-shells/bash:          5.0_p18::gentoo

dev-lang/perl:            5.30.3-r1::gentoo

dev-lang/python:          2.7.18-r1::gentoo, 3.7.8-r2::gentoo, 3.8.5::gentoo, 3.9.0_beta5::gentoo

dev-util/cmake:           3.17.3::gentoo

sys-apps/baselayout:      2.7::gentoo

sys-apps/sandbox:         2.20::gentoo

sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo

sys-devel/automake:       1.16.2::gentoo

sys-devel/binutils:       2.34-r1::gentoo

sys-devel/gcc:            10.1.0-r2::gentoo

sys-devel/gcc-config:     2.3.1::gentoo

sys-devel/libtool:        2.4.6-r6::gentoo

sys-devel/make:           4.3::gentoo

sys-kernel/linux-headers: 5.7::gentoo (virtual/os-headers)

sys-libs/glibc:           2.31-r6::gentoo

Repositories:

gentoo

    location: /var/db/repos/gentoo

    sync-type: rsync

    sync-uri: rsync://rsync.gentoo.org/gentoo-portage

    priority: -1000

    sync-rsync-verify-max-age: 24

    sync-rsync-verify-metamanifest: yes

    sync-rsync-extra-opts: 

    sync-rsync-verify-jobs: 1

ACCEPT_KEYWORDS="amd64 ~amd64"

ACCEPT_LICENSE="@FREE"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=skylake -O2 -pipe"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-march=skylake -O2 -pipe"

DISTDIR="/var/cache/distfiles"

ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"

FCFLAGS="-march=skylake -O2 -pipe"

FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

FFLAGS="-march=skylake -O2 -pipe"

GENTOO_MIRRORS="http://ftp.romnet.org/gentoo/ http://mirrors.xservers.ro/gentoo/"

LANG="en_US.utf8"

LDFLAGS="-Wl,-O1 -Wl,--as-needed"

MAKEOPTS="-j8"

PKGDIR="/var/cache/binpkgs"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"

PORTAGE_TMPDIR="/var/tmp"

USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli colord crypt cups dbus dri dts dvd dvdr eds emboss encode evo exif fat flac fortran gdbm gif gles2 gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk gtk3 hfs iconv icu introspection ipv6 jpeg lcms ldap libinput libnotify libsecret libtirpc mad mng mp3 mp4 mpeg multilib nautilus ncurses networkmanager nls nptl ntfs ogg opengl openmp pam pango pcre pdf png policykit ppds pulseaudio qt5 readline sdl seccomp spell split-usr ssl startup-notification svg systemd tcpd tiff tracker truetype udev udisks unicode upower usb vorbis wayland wxwidgets x264 xattr xcb xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 aes avx avx2 f16c fma3 pclmul popcnt rdrand sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="libinput synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2 php7-3" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python3_7" RUBY_TARGETS="ruby27" USERLAND="GNU" VIDEO_CARDS="intel i965 iris" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"

Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

```

Kernel Config: https://pastebin.com/raw/yxgKKUuL

Full dmesg log: https://pastebin.com/raw/DpFFV93z

Am I missing something else?Last edited by egrep on Sat Jul 25, 2020 11:29 am; edited 1 time in total

----------

## fturco

You may try enabling only the right codec for your audio card, and disable all the other ones.

On my system, for example:

```
$ grep -i codec /proc/asound/card0/codec#2

Codec: Analog Devices AD1882
```

Please note tha your /proc file location and your codec may differ from mine.

----------

## egrep

 *fturco wrote:*   

> You may try enabling only the right codec for your audio card, and disable all the other ones.
> 
> On my system, for example:
> 
> ```
> ...

 

There are no codecs (as mentioned above):

```

$ dmesg | grep codec

[    1.477247] snd_hda_intel 0000:00:1f.3: no codecs found!

```

In any case:

```

$ tree -a /proc/asound/

/proc/asound/

├── card0

│   └── id

├── cards

├── devices

├── hwdep

├── PCH -> card0

├── pcm

├── seq

│   ├── clients

│   ├── drivers

│   ├── queues

│   └── timer

├── timers

└── version

$ cat /proc/asound/card0/id 

PCH

$ tree -a /sys/class/sound/

/sys/class/sound/

├── card0 -> ../../devices/pci0000:00/0000:00:1f.3/sound/card0

├── controlC0 -> ../../devices/pci0000:00/0000:00:1f.3/sound/card0/controlC0

├── seq -> ../../devices/virtual/sound/seq

└── timer -> ../../devices/virtual/sound/timer

$ cat /sys/class/sound/card*/id

PCH

```

and

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    0.180295] Advanced Linux Sound Architecture Driver Initialized.

[    0.605371] ALSA device list:

[    0.606768]   No soundcards found.

[    1.350361] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.476103] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.477247] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.509067] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.057657] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

----------

## fturco

I noticed you have CONFIG_DRM_I915=m and CONFIG_SND_HDA_I915=y. Try instead building both of them as modules. Or both of them as built-in.

----------

## egrep

Just rebuilded the kernel and all the modules:

```

$ cat usr/src/linux/.config | grep I915 

CONFIG_DRM_I915=y

CONFIG_DRM_I915_FORCE_PROBE=""

CONFIG_DRM_I915_CAPTURE_ERROR=y

CONFIG_DRM_I915_COMPRESS_ERROR=y

CONFIG_DRM_I915_USERPTR=y

# CONFIG_DRM_I915_GVT is not set

CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250

CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500

CONFIG_DRM_I915_PREEMPT_TIMEOUT=640

CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000

CONFIG_DRM_I915_STOP_TIMEOUT=100

CONFIG_DRM_I915_TIMESLICE_DURATION=1

CONFIG_SND_HDA_I915=y

```

Both CONFIG_DRM_I915 and CONFIG_SND_HDA_I915 are "y"  now. Still no luck:

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    0.181628] Advanced Linux Sound Architecture Driver Initialized.

[    0.600459] ALSA device list:

[    0.600461]   No soundcards found.

[    1.352482] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops 0xffffffffbcea4ca0)

[    1.465554] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.466696] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.500001] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.124599] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

----------

## fturco

Well... please also try building both kernel options as modules.

----------

## egrep

Sill no luck. I even used new kernel.

```

$ uname -a

Linux saturn 5.7.10-gentoo #7 SMP Thu Jul 23 16:21:09 EEST 2020 x86_64 Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz GenuineIntel GNU/Linux

```

As far as I see there is no ability to compile CONFIG_SND_HDA_I915 as a module:

```

  │ Symbol: SND_HDA_I915 [=y] 

  │ Type  : bool 

  │ Defined at sound/hda/Kconfig:15

  │   Depends on: SOUND [=m] && !UML && SND [=m]

  │ Selects: SND_HDA_COMPONENT [=y]

  │ Selected by [m]:

  │   - DRM_I915 [=m] && HAS_IOMEM [=y] && DRM [=m] && X86 [=y] && PCI [=y] && SND_HDA_CORE [=m] 

```

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    1.347279] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.463239] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.464982] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.495619] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.050193] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

```

$ cat /usr/src/linux/.config | grep -E '(HDA|I915)'

CONFIG_DRM_I915=m

CONFIG_DRM_I915_FORCE_PROBE=""

CONFIG_DRM_I915_CAPTURE_ERROR=y

CONFIG_DRM_I915_COMPRESS_ERROR=y

CONFIG_DRM_I915_USERPTR=y

# CONFIG_DRM_I915_GVT is not set

CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250

CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500

CONFIG_DRM_I915_PREEMPT_TIMEOUT=640

CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000

CONFIG_DRM_I915_STOP_TIMEOUT=100

CONFIG_DRM_I915_TIMESLICE_DURATION=1

CONFIG_SND_HDA=m

CONFIG_SND_HDA_INTEL=m

CONFIG_SND_HDA_HWDEP=y

# CONFIG_SND_HDA_RECONFIG is not set

# CONFIG_SND_HDA_INPUT_BEEP is not set

# CONFIG_SND_HDA_PATCH_LOADER is not set

CONFIG_SND_HDA_CODEC_REALTEK=m

# CONFIG_SND_HDA_CODEC_ANALOG is not set

# CONFIG_SND_HDA_CODEC_SIGMATEL is not set

# CONFIG_SND_HDA_CODEC_VIA is not set

# CONFIG_SND_HDA_CODEC_HDMI is not set

# CONFIG_SND_HDA_CODEC_CIRRUS is not set

# CONFIG_SND_HDA_CODEC_CONEXANT is not set

# CONFIG_SND_HDA_CODEC_CA0110 is not set

# CONFIG_SND_HDA_CODEC_CA0132 is not set

# CONFIG_SND_HDA_CODEC_CMEDIA is not set

# CONFIG_SND_HDA_CODEC_SI3054 is not set

CONFIG_SND_HDA_GENERIC=m

CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0

CONFIG_SND_HDA_CORE=m

CONFIG_SND_HDA_COMPONENT=y

CONFIG_SND_HDA_I915=y

CONFIG_SND_HDA_PREALLOC_SIZE=2048

# CONFIG_SENSORS_HDAPS is not set

```

lspci

```

00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [8086:5910] (rev 05)

   Subsystem: Lenovo Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [17aa:3804]

   Kernel driver in use: skl_uncore

00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16) [8086:1901] (rev 05)

   Kernel driver in use: pcieport

00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 630 [8086:591b] (rev 04)

   Subsystem: Lenovo HD Graphics 630 [17aa:39fc]

   Kernel driver in use: i915

   Kernel modules: i915

00:14.0 USB controller [0c03]: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller [8086:a12f] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller [17aa:381d]

   Kernel driver in use: xhci_hcd

00:14.2 Signal processing controller [1180]: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem [8086:a131] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family Thermal Subsystem [17aa:3805]

   Kernel driver in use: intel_pch_thermal

   Kernel modules: intel_pch_thermal

00:16.0 Communication controller [0780]: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 [8086:a13a] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family MEI Controller [17aa:381e]

   Kernel driver in use: mei_me

   Kernel modules: mei_me

00:17.0 SATA controller [0106]: Intel Corporation HM170/QM170 Chipset SATA Controller [AHCI Mode] [8086:a103] (rev 31)

   Subsystem: Lenovo HM170/QM170 Chipset SATA Controller [AHCI Mode] [17aa:3803]

   Kernel driver in use: ahci

   Kernel modules: ahci

00:1c.0 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #2 [8086:a111] (rev f1)

   Kernel driver in use: pcieport

00:1c.2 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #3 [8086:a112] (rev f1)

   Kernel driver in use: pcieport

00:1c.3 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #4 [8086:a113] (rev f1)

   Kernel driver in use: pcieport

00:1d.0 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset Family PCI Express Root Port #9 [8086:a118] (rev f1)

   Kernel driver in use: pcieport

00:1f.0 ISA bridge [0601]: Intel Corporation HM175 Chipset LPC/eSPI Controller [8086:a152] (rev 31)

   Subsystem: Lenovo HM175 Chipset LPC/eSPI Controller [17aa:3803]

00:1f.2 Memory controller [0580]: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller [8086:a121] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family Power Management Controller [17aa:3819]

00:1f.3 Audio device [0403]: Intel Corporation CM238 HD Audio Controller [8086:a171] (rev 31)

   Subsystem: Lenovo CM238 HD Audio Controller [17aa:3803]

   Kernel driver in use: snd_hda_intel

   Kernel modules: snd_hda_intel

00:1f.4 SMBus [0c05]: Intel Corporation 100 Series/C230 Series Chipset Family SMBus [8086:a123] (rev 31)

   Subsystem: Lenovo 100 Series/C230 Series Chipset Family SMBus [17aa:3817]

   Kernel driver in use: i801_smbus

   Kernel modules: i2c_i801

02:00.0 SD Host controller [0805]: O2 Micro, Inc. SD/MMC Card Reader Controller [1217:8621] (rev 01)

   Subsystem: Lenovo SD/MMC Card Reader Controller [17aa:381f]

   Kernel driver in use: sdhci-pci

   Kernel modules: sdhci_pci

03:00.0 Network controller [0280]: Intel Corporation Wireless 8265 / 8275 [8086:24fd] (rev 78)

   Subsystem: Intel Corporation Dual Band Wireless-AC 8265 [8086:1010]

   Kernel driver in use: iwlwifi

   Kernel modules: iwlwifi

04:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 10)

   Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [17aa:3884]

   Kernel driver in use: r8169

   Kernel modules: r8169

05:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 [144d:a804]

   Subsystem: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961 [144d:a801]

   Kernel driver in use: nvme

```

dmseg: https://pastebin.com/raw/YDCMYfmB

Kernel Config: https://pastebin.com/raw/jG9PjDFs

----------

## fturco

 *egrep wrote:*   

> 
> 
> ```
> CONFIG_SND_HDA_CODEC_REALTEK=m
> 
> ...

 

Try building all those codecs as modules, so that they are all available and the kernel can automatically load the right one at boot. If that works, you can disable unneeded codecs later.

----------

## egrep

Sadly the same "No soundcards found."

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    0.184266] Advanced Linux Sound Architecture Driver Initialized.

[    0.601596] ALSA device list:

[    0.602920]   No soundcards found.

[    1.347095] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.462883] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.464417] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.495668] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.065041] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

```

CONFIG_DRM_I915=m

CONFIG_DRM_I915_FORCE_PROBE=""

CONFIG_DRM_I915_CAPTURE_ERROR=y

CONFIG_DRM_I915_COMPRESS_ERROR=y

CONFIG_DRM_I915_USERPTR=y

# CONFIG_DRM_I915_GVT is not set

CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250

CONFIG_DRM_I915_HEARTBEAT_INTERVAL=2500

CONFIG_DRM_I915_PREEMPT_TIMEOUT=640

CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000

CONFIG_DRM_I915_STOP_TIMEOUT=100

CONFIG_DRM_I915_TIMESLICE_DURATION=1

CONFIG_SND=y

CONFIG_SND_TIMER=y

CONFIG_SND_PCM=m

CONFIG_SND_HWDEP=m

CONFIG_SND_SEQ_DEVICE=y

CONFIG_SND_RAWMIDI=m

CONFIG_SND_JACK=y

CONFIG_SND_JACK_INPUT_DEV=y

# CONFIG_SND_OSSEMUL is not set

CONFIG_SND_PCM_TIMER=y

CONFIG_SND_HRTIMER=y

CONFIG_SND_DYNAMIC_MINORS=y

CONFIG_SND_MAX_CARDS=32

CONFIG_SND_SUPPORT_OLD_API=y

CONFIG_SND_PROC_FS=y

CONFIG_SND_VERBOSE_PROCFS=y

# CONFIG_SND_VERBOSE_PRINTK is not set

# CONFIG_SND_DEBUG is not set

CONFIG_SND_VMASTER=y

CONFIG_SND_DMA_SGBUF=y

CONFIG_SND_SEQUENCER=y

CONFIG_SND_SEQ_DUMMY=y

CONFIG_SND_SEQ_HRTIMER_DEFAULT=y

CONFIG_SND_SEQ_MIDI_EVENT=m

CONFIG_SND_SEQ_MIDI=m

CONFIG_SND_SEQ_MIDI_EMUL=m

CONFIG_SND_MPU401_UART=m

CONFIG_SND_OPL3_LIB=m

CONFIG_SND_OPL3_LIB_SEQ=m

CONFIG_SND_DRIVERS=y

# CONFIG_SND_PCSP is not set

# CONFIG_SND_DUMMY is not set

# CONFIG_SND_ALOOP is not set

# CONFIG_SND_VIRMIDI is not set

# CONFIG_SND_MTPAV is not set

# CONFIG_SND_SERIAL_U16550 is not set

# CONFIG_SND_MPU401 is not set

CONFIG_SND_PCI=y

# CONFIG_SND_AD1889 is not set

# CONFIG_SND_ALS300 is not set

# CONFIG_SND_ALS4000 is not set

# CONFIG_SND_ALI5451 is not set

# CONFIG_SND_ASIHPI is not set

# CONFIG_SND_ATIIXP is not set

# CONFIG_SND_ATIIXP_MODEM is not set

# CONFIG_SND_AU8810 is not set

# CONFIG_SND_AU8820 is not set

# CONFIG_SND_AU8830 is not set

# CONFIG_SND_AW2 is not set

# CONFIG_SND_AZT3328 is not set

# CONFIG_SND_BT87X is not set

# CONFIG_SND_CA0106 is not set

CONFIG_SND_CMIPCI=m

# CONFIG_SND_OXYGEN is not set

# CONFIG_SND_CS4281 is not set

# CONFIG_SND_CS46XX is not set

# CONFIG_SND_CTXFI is not set

# CONFIG_SND_DARLA20 is not set

# CONFIG_SND_GINA20 is not set

# CONFIG_SND_LAYLA20 is not set

# CONFIG_SND_DARLA24 is not set

# CONFIG_SND_GINA24 is not set

# CONFIG_SND_LAYLA24 is not set

# CONFIG_SND_MONA is not set

# CONFIG_SND_MIA is not set

# CONFIG_SND_ECHO3G is not set

# CONFIG_SND_INDIGO is not set

# CONFIG_SND_INDIGOIO is not set

# CONFIG_SND_INDIGODJ is not set

# CONFIG_SND_INDIGOIOX is not set

# CONFIG_SND_INDIGODJX is not set

# CONFIG_SND_EMU10K1 is not set

# CONFIG_SND_EMU10K1X is not set

# CONFIG_SND_ENS1370 is not set

# CONFIG_SND_ENS1371 is not set

# CONFIG_SND_ES1938 is not set

# CONFIG_SND_ES1968 is not set

# CONFIG_SND_FM801 is not set

# CONFIG_SND_HDSP is not set

# CONFIG_SND_HDSPM is not set

# CONFIG_SND_ICE1712 is not set

# CONFIG_SND_ICE1724 is not set

# CONFIG_SND_INTEL8X0 is not set

# CONFIG_SND_INTEL8X0M is not set

# CONFIG_SND_KORG1212 is not set

# CONFIG_SND_LOLA is not set

# CONFIG_SND_LX6464ES is not set

# CONFIG_SND_MAESTRO3 is not set

# CONFIG_SND_MIXART is not set

# CONFIG_SND_NM256 is not set

# CONFIG_SND_PCXHR is not set

# CONFIG_SND_RIPTIDE is not set

# CONFIG_SND_RME32 is not set

# CONFIG_SND_RME96 is not set

# CONFIG_SND_RME9652 is not set

# CONFIG_SND_SE6X is not set

# CONFIG_SND_SONICVIBES is not set

# CONFIG_SND_TRIDENT is not set

# CONFIG_SND_VIA82XX is not set

# CONFIG_SND_VIA82XX_MODEM is not set

# CONFIG_SND_VIRTUOSO is not set

# CONFIG_SND_VX222 is not set

# CONFIG_SND_YMFPCI is not set

CONFIG_SND_HDA=m

CONFIG_SND_HDA_INTEL=m

CONFIG_SND_HDA_HWDEP=y

# CONFIG_SND_HDA_RECONFIG is not set

# CONFIG_SND_HDA_INPUT_BEEP is not set

# CONFIG_SND_HDA_PATCH_LOADER is not set

CONFIG_SND_HDA_CODEC_REALTEK=m

CONFIG_SND_HDA_CODEC_ANALOG=m

CONFIG_SND_HDA_CODEC_SIGMATEL=m

CONFIG_SND_HDA_CODEC_VIA=m

CONFIG_SND_HDA_CODEC_HDMI=m

CONFIG_SND_HDA_CODEC_CIRRUS=m

CONFIG_SND_HDA_CODEC_CONEXANT=m

CONFIG_SND_HDA_CODEC_CA0110=m

CONFIG_SND_HDA_CODEC_CA0132=m

CONFIG_SND_HDA_CODEC_CA0132_DSP=y

CONFIG_SND_HDA_CODEC_CMEDIA=m

CONFIG_SND_HDA_CODEC_SI3054=m

CONFIG_SND_HDA_GENERIC=m

CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0

CONFIG_SND_HDA_CORE=m

CONFIG_SND_HDA_DSP_LOADER=y

CONFIG_SND_HDA_COMPONENT=y

CONFIG_SND_HDA_I915=y

CONFIG_SND_HDA_PREALLOC_SIZE=2048

CONFIG_SND_INTEL_NHLT=y

CONFIG_SND_INTEL_DSP_CONFIG=m

CONFIG_SND_USB=y

# CONFIG_SND_USB_AUDIO is not set

# CONFIG_SND_USB_UA101 is not set

# CONFIG_SND_USB_USX2Y is not set

# CONFIG_SND_USB_CAIAQ is not set

# CONFIG_SND_USB_US122L is not set

# CONFIG_SND_USB_6FIRE is not set

# CONFIG_SND_USB_HIFACE is not set

# CONFIG_SND_BCD2000 is not set

# CONFIG_SND_USB_POD is not set

# CONFIG_SND_USB_PODHD is not set

# CONFIG_SND_USB_TONEPORT is not set

# CONFIG_SND_USB_VARIAX is not set

CONFIG_SND_PCMCIA=y

# CONFIG_SND_VXPOCKET is not set

# CONFIG_SND_PDAUDIOCF is not set

# CONFIG_SND_SOC is not set

CONFIG_SND_X86=y

# CONFIG_SENSORS_HDAPS is not set

```

```

$ lsmod

Module                  Size  Used by

xhci_plat_hcd          16384  0

cdc_wdm                20480  0

pl2303                 24576  0

usb_serial_simple      20480  0

usbserial              40960  2 pl2303,usb_serial_simple

snd_opl3_synth         20480  0

snd_seq_midi           16384  0

snd_seq_midi_event     16384  1 snd_seq_midi

snd_seq_midi_emul      16384  1 snd_opl3_synth

snd_cmipci             40960  0

snd_mpu401_uart        16384  1 snd_cmipci

snd_opl3_lib           20480  2 snd_opl3_synth,snd_cmipci

snd_rawmidi            32768  2 snd_seq_midi,snd_mpu401_uart

snd_hda_codec_cirrus    20480  0

snd_hda_codec_ca0110    16384  0

snd_hda_codec_hdmi     61440  0

snd_hda_codec_idt      53248  0

snd_hda_codec_si3054    16384  0

snd_hda_codec_cmedia    16384  0

snd_hda_codec_via      24576  0

snd_hda_codec_analog    20480  0

snd_hda_codec_ca0132    86016  0

snd_hda_codec_conexant    20480  0

snd_hda_codec_realtek   110592  0

snd_hda_codec_generic    77824  8 snd_hda_codec_ca0110,snd_hda_codec_conexant,snd_hda_codec_cmedia,snd_hda_codec_analog,snd_hda_codec_realtek,snd_hda_codec_via,snd_hda_codec_cirrus,snd_hda_codec_idt

tun                    53248  0

lpc_ich                28672  0

mfd_core               16384  1 lpc_ich

configs                45056  0

rmi_smbus              16384  0

rmi_i2c                16384  0

rmi_core               77824  2 rmi_smbus,rmi_i2c

elan_i2c               40960  0

synaptics_usb          16384  0

synaptics_i2c          16384  0

i2c_smbus              16384  0

i2c_dev                16384  0

ntfs                  212992  0

ecb                    16384  0

cpufreq_userspace      16384  0

v4l2_dv_timings        36864  0

gspca_main             28672  0

uvcvideo              106496  0

videobuf2_vmalloc      16384  2 gspca_main,uvcvideo

videobuf2_memops       16384  1 videobuf2_vmalloc

videobuf2_v4l2         24576  2 gspca_main,uvcvideo

videodev              212992  3 gspca_main,videobuf2_v4l2,uvcvideo

videobuf2_common       49152  3 gspca_main,videobuf2_v4l2,uvcvideo

i2c_mux                16384  0

btusb                  49152  0

btrtl                  16384  1 btusb

btintel                24576  1 btusb

bnep                   20480  2

bluetooth             462848  29 btrtl,btintel,bnep,btusb

ecdh_generic           16384  1 bluetooth

ecc                    32768  1 ecdh_generic

intel_rapl_msr         20480  0

intel_rapl_common      28672  1 intel_rapl_msr

snd_hda_intel          36864  0

snd_intel_dspcfg       16384  1 snd_hda_intel

snd_hda_codec         118784  13 snd_hda_codec_generic,snd_hda_codec_ca0110,snd_hda_codec_conexant,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_cmedia,snd_hda_codec_analog,snd_hda_codec_realtek,snd_hda_codec_via,snd_hda_codec_si3054,snd_hda_codec_cirrus,snd_hda_codec_ca0132,snd_hda_codec_idt

wmi_bmof               16384  0

iwlmvm                348160  0

snd_hda_core           81920  12 snd_hda_codec_generic,snd_hda_codec_conexant,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_analog,snd_hda_codec,snd_hda_codec_realtek,snd_hda_codec_via,snd_hda_codec_si3054,snd_hda_codec_cirrus,snd_hda_codec_ca0132,snd_hda_codec_idt

i915                 2088960  8

x86_pkg_temp_thermal    20480  0

snd_pcm               102400  7 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_si3054,snd_cmipci,snd_hda_core,snd_hda_codec_ca0132

intel_powerclamp       20480  0

sdhci_pci              53248  0

coretemp               16384  0

psmouse               151552  0

i2c_algo_bit           16384  1 i915

cqhci                  24576  1 sdhci_pci

snd_hwdep              16384  2 snd_hda_codec,snd_opl3_lib

iwlwifi               327680  1 iwlmvm

sdhci                  61440  1 sdhci_pci

mmc_core              143360  3 sdhci,cqhci,sdhci_pci

drm_kms_helper        184320  1 i915

r8169                  98304  0

i2c_i801               28672  0

syscopyarea            16384  1 drm_kms_helper

sysfillrect            16384  1 drm_kms_helper

sysimgblt              16384  1 drm_kms_helper

fb_sys_fops            16384  1 drm_kms_helper

mei_me                 40960  0

mei                    86016  1 mei_me

intel_pch_thermal      16384  0

wmi                    24576  1 wmi_bmof

ahci                   40960  0

libahci                36864  1 ahci

intel_agp              20480  0

intel_gtt              24576  2 intel_agp,i915

drm                   425984  8 drm_kms_helper,i915

agpgart                36864  3 intel_agp,intel_gtt,drm

efivarfs               16384  1

fuse                  122880  1

```

----------

## fturco

Did you try testing sound with a live CD distribution?

----------

## egrep

I just booted my laptop from a Ubuntu 20.04 USB stick and saw the same messages in dmesg (no sounds cards found), Dummy Output in Gnome Settings, etc. I have not booted my laptop with Gentoo USB stick, however I remember the sound card was working on current Gentoo installation about few week ago or something like that.

----------

## egrep

Just wondering how's this related:

```

$ alsactl init

alsa-lib /var/tmp/portage/media-libs/alsa-lib-1.2.3.2/work/alsa-lib-1.2.3.2/src/ucm/parser.c:2152:(load_toplevel_config) Unable to find the top-level configuration file '/usr/share/alsa/ucm2/ucm.conf'.

alsa-lib /var/tmp/portage/media-libs/alsa-lib-1.2.3.2/work/alsa-lib-1.2.3.2/src/ucm/main.c:983:(snd_use_case_mgr_open) error: failed to import hw:0 use case configuration -2

Found hardware: "HDA-Intel" "" "" "0x17aa" "0x3803"

Hardware is initialized using a generic method

```

----------

## fturco

Did you inadvertenly disable audio in the BIOS perhaps?

----------

## egrep

With the following changes:

 *Quote:*   

> -CONFIG_SND_PCM=m
> 
> -CONFIG_SND_HWDEP=m
> 
> +CONFIG_SND_PCM=y
> ...

 

I get:

```
$ dmesg | grep -Ei '(sound|alsa|hda)'

[    0.184993] Advanced Linux Sound Architecture Driver Initialized.

[    0.574840] snd_hda_intel 0000:00:1f.3: couldn't bind with audio component

[    0.586865] ALSA device list:

[    0.587421]   No soundcards found.

[    0.681418] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    0.681435] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.304323] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.052059] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

Note: *Quote:*   

> couldn't bind with audio component

 

And after change it in such way:

 *Quote:*   

> -CONFIG_I2C_ALGOBIT=m
> 
> +CONFIG_I2C_ALGOBIT=y
> 
> -CONFIG_AGP=m
> ...

 

I get the same messages:

```
$ dmesg | grep -Ei '(sound|alsa|hda)'

[    0.189849] Advanced Linux Sound Architecture Driver Initialized.

[    0.590229] ALSA device list:

[    0.590231]   No soundcards found.

[    0.645605] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops 0xffffffff98ca4b60)

[    0.760336] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    0.761488] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.393842] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.135578] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0
```

At this time  full dmesg is: https://pastebin.com/raw/PKhad2Ep and Kernel Config: https://pastebin.com/raw/74yxnrNC

----------

## egrep

 *fturco wrote:*   

> Did you inadvertenly disable audio in the BIOS perhaps?

 

As I can see there is no ability to disable audio: https://imgur.com/a/HYbvkIm

----------

## theotherjoe

egrep,

first step should be to sort out the firmware loading in your kernel.

```
[    0.502633] i915 0000:00:02.0: Direct firmware load for i915/kbl_dmc_ver1_04.bin failed with error -2

[    0.502636] i915 0000:00:02.0: [drm] Failed to load DMC firmware i915/kbl_dmc_ver1_04.bin. Disabling runtime power management.
```

I wouldnt be surprised if that screws up recognising other subsystems in

the chipset later on (but I am not familiar with the Intel chipset).

Additionally, this is a link to the dmesg output from a properly

configured  similar system as yours. 

https://linux-hardware.org/index.php?probe=66d8655f62&log=dmesg

hope that helps in your next steps.

----------

## egrep

 *theotherjoe wrote:*   

> egrep,
> 
> first step should be to sort out the firmware loading in your kernel.
> 
> ```
> ...

 

Thank you for the tip. Although it didn't help me, at least I got rid of one more mistake and made my system a little more consistent.

```

$ dmesg | grep i915

[    1.533833] i915 0000:00:02.0: vgaarb: deactivate vga console

[    1.534866] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem

[    1.535999] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4)

[    1.548808] i915 0000:00:02.0: [drm:intel_dp_aux_init_backlight_funcs [i915]] Panel advertises DPCD backlight support, but VBT disagrees. If your backlight controls don't work try booting with i915.enable_dpcd_backlight=1. If your machine needs this, please file a _new_ bug report on drm/i915, see https://gitlab.freedesktop.org/drm/intel/-/wikis/How-to-file-i915-bugs for details.

[    1.566425] [drm] Initialized i915 1.6.0 20200313 for 0000:00:02.0 on minor 0

[    1.684260] fbcon: i915drmfb (fb0) is primary device

[    1.717529] i915 0000:00:02.0: fb0: i915drmfb frame buffer device

[    1.840267] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_globals_exit [i915])

```

However, the issue did not go away. I still see a message saying that the sound card could not be detected, Dummy Output in the Gnome Settings, etc. The I tried to revert my changes back - build hda parts as modules and here are the logs:

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    0.183585] Advanced Linux Sound Architecture Driver Initialized.

[    0.598099] ALSA device list:

[    0.598679]   No soundcards found.

[    1.840267] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_globals_exit [i915])

[    1.951240] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.952762] snd_hda_intel 0000:00:1f.3: no codecs found!

[    2.935198] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

Full dmesg at this time is https://pastebin.com/raw/6SDKaKyZ and Kernel Config is https://pastebin.com/raw/PLtLAwNk.

So, I will try to go through the dmesg you referred to and will try to find a clue.

----------

## theotherjoe

```
[    1.840267] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_globals_exit [i915])
```

this looks to me as if something goes pear-shaped during the initialisation 

of the audio device. for comparison look at the dmesg link that I included,

I would expect something similar on your system. 

It might be a good idea to include the Debug kernel option in 

Sound card support --> Advanced Linux Sound Architecture -- [*} Debug.

I think you should try a different kernel (5.4 or 4.19) and see if that makes

a difference.

also, you may want to include all the other available audio codecs in your

kernel just to be on the safe side (even though it should be a Realtek ALC233, 

from what I understand).

----------

## theotherjoe

In case you havent seen it yet:

https://wiki.gentoo.org/wiki/Lenovo_Y520_15IKBN

----------

## egrep

 *theotherjoe wrote:*   

> 
> 
> ```
> [    1.840267] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_globals_exit [i915])
> ```
> ...

 

Debug mode does not add any sensible info in my  case. Just the same output as w/o Debug. Option I included are:

```
CONFIG_SND_DEBUG=y

CONFIG_SND_DEBUG_VERBOSE=y

CONFIG_SND_PCM_XRUN_DEBUG=y
```

I suspect that this is due to:

```
[    0.599488] ALSA device list:

[    0.600095]   No soundcards found.
```

Just wondering why there is no "ALSA device list" line in the output you are referred. I'll different Kernel versions

----------

## egrep

 *theotherjoe wrote:*   

> In case you havent seen it yet:
> 
> https://wiki.gentoo.org/wiki/Lenovo_Y520_15IKBN

 

BTW, I'm the author of this page.

----------

## theotherjoe

thats funny, I didnt have a look for the author.  :Smile: 

came across the link while searching for information about

your audio system.

----------

## egrep

 *theotherjoe wrote:*   

> 
> 
> ```
> [    1.840267] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_globals_exit [i915])
> ```
> ...

 

Well, I tried my old kernels:

```

$ ls -l /boot/vmlinuz-*

-rw-r--r-- 1 root root 9008000 Jul 15 12:59 /boot/vmlinuz-5.4.48-gentoo

-rw-r--r-- 1 root root 7512672 Jul 24 19:03 /boot/vmlinuz-5.7.10-gentoo

-rw-r--r-- 1 root root 7512672 Jul 24 18:51 /boot/vmlinuz-5.7.10-gentoo.old

-rw-r--r-- 1 root root 9177696 Jul 16 21:27 /boot/vmlinuz-5.7.8-gentoo

-rw-r--r-- 1 root root 8072032 Jul 23 01:04 /boot/vmlinuz-5.7.9-gentoo

```

Still no luck. Btw, I adjusted configuration of /etc/modules-load.d/* and now my dmesg looks like https://linux-hardware.org/index.php?probe=66d8655f62&log=dmesg

But anyway

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    1.358306] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.481542] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.482892] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.514370] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.075133] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

Full dmesg at this time is https://pastebin.com/raw/LiKxrdxE and Kernel Config is https://pastebin.com/raw/22n3fSuS

lsmod

```

Module                  Size  Used by

xhci_plat_hcd          16384  0

cdc_wdm                20480  0

pl2303                 24576  0

usb_serial_simple      20480  0

usbserial              40960  2 pl2303,usb_serial_simple

snd_hda_codec_hdmi     61440  0

snd_hda_codec_realtek   110592  0

snd_hda_codec_generic    77824  1 snd_hda_codec_realtek

snd_seq_dummy          16384  0

snd_seq_midi           16384  0

snd_seq_midi_event     16384  1 snd_seq_midi

snd_rawmidi            32768  1 snd_seq_midi

snd_seq                73728  3 snd_seq_midi,snd_seq_midi_event,snd_seq_dummy

snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi

tun                    53248  0

lpc_ich                28672  0

mfd_core               16384  1 lpc_ich

configs                45056  0

rmi_smbus              16384  0

rmi_i2c                16384  0

rmi_core               77824  2 rmi_smbus,rmi_i2c

elan_i2c               40960  0

synaptics_usb          16384  0

synaptics_i2c          16384  0

i2c_smbus              16384  0

i2c_dev                16384  0

ntfs                  212992  0

ecb                    16384  0

cpufreq_userspace      16384  0

v4l2_dv_timings        36864  0

gspca_main             28672  0

uvcvideo              106496  0

videobuf2_vmalloc      16384  2 gspca_main,uvcvideo

videobuf2_memops       16384  1 videobuf2_vmalloc

videobuf2_v4l2         24576  2 gspca_main,uvcvideo

videodev              212992  3 gspca_main,videobuf2_v4l2,uvcvideo

videobuf2_common       49152  3 gspca_main,videobuf2_v4l2,uvcvideo

i2c_mux                16384  0

btusb                  49152  0

btrtl                  16384  1 btusb

btintel                24576  1 btusb

bnep                   20480  2

bluetooth             462848  29 btrtl,btintel,bnep,btusb

ecdh_generic           16384  1 bluetooth

ecc                    32768  1 ecdh_generic

intel_rapl_msr         20480  0

iwlmvm                348160  0

intel_rapl_common      28672  1 intel_rapl_msr

mac80211              737280  1 iwlmvm

libarc4                16384  1 mac80211

wmi_bmof               16384  0

snd_hda_intel          36864  0

snd_intel_dspcfg       16384  1 snd_hda_intel

iwlwifi               327680  1 iwlmvm

i915                 2088960  8

snd_hda_codec         118784  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek

snd_hwdep              16384  1 snd_hda_codec

snd_hda_core           77824  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek

intel_gtt              20480  1 i915

sdhci_pci              53248  0

x86_pkg_temp_thermal    20480  0

snd_pcm               102400  4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core

i2c_algo_bit           16384  1 i915

intel_powerclamp       20480  0

cqhci                  24576  1 sdhci_pci

snd_timer              32768  2 snd_seq,snd_pcm

sdhci                  61440  1 sdhci_pci

snd                    77824  10 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_pcm,snd_rawmidi

drm_kms_helper        184320  1 i915

coretemp               16384  0

psmouse               151552  0

cfg80211              729088  3 iwlmvm,iwlwifi,mac80211

r8169                  98304  0

soundcore              16384  1 snd

i2c_i801               28672  0

syscopyarea            16384  1 drm_kms_helper

mmc_core              143360  3 sdhci,cqhci,sdhci_pci

sysfillrect            16384  1 drm_kms_helper

sysimgblt              16384  1 drm_kms_helper

fb_sys_fops            16384  1 drm_kms_helper

mei_me                 40960  0

mei                    86016  1 mei_me

intel_pch_thermal      16384  0

wmi                    24576  1 wmi_bmof

ahci                   40960  0

libahci                36864  1 ahci

drm                   425984  8 drm_kms_helper,i915

efivarfs               16384  1

fuse                  122880  1

```

Should I configure GRUB somehow?Last edited by egrep on Fri Jul 24, 2020 5:37 pm; edited 1 time in total

----------

## NeddySeagoon

egrep,

Lets have a clean start and self consistent data set to to work with.

Please put your kernel .config and dmsg onto pastebins. All of it.

We will be looking at what isn't there but should be, not just the actual content of the posts.

Post your 

```
lspci -nnk
```

 I know you have done that before but I'm after a complete self consistent data set.

Post the output of 

```
ls -l /dev/snd
```

Post the output of 

```
cat /proc/asound/devices
```

Tell if your normal user is in the audio group or not.

Are using alsa or pulseaudio?

Tell how you build and install your kernel and when you followed this process last.

----------

## egrep

Hi NeddySeagoon,

 *NeddySeagoon wrote:*   

> Please put your kernel .config and dmsg onto pastebins. All of it.

 

https://pastebin.com/raw/n43qXXeB

 *NeddySeagoon wrote:*   

> Post your 
> 
> ```
> lspci -nnk
> ```
> ...

 

https://pastebin.com/raw/PAXNRnMP

 *NeddySeagoon wrote:*   

> Post the output of 
> 
> ```
> ls -l /dev/snd
> ```
> ...

 

```

$ ls -l /dev/snd/

total 0

drwxr-xr-x  2 root root       60 Jul 24 20:36 by-path

crw-rw----+ 1 root audio 116,  2 Jul 24 20:36 controlC0

crw-rw----+ 1 root audio 116,  1 Jul 24 20:36 seq

crw-rw----+ 1 root audio 116, 33 Jul 24 20:36 timer

```

 *NeddySeagoon wrote:*   

> Post the output of 
> 
> ```
> cat /proc/asound/devices
> ```
> ...

 

```

$ cat /proc/asound/devices

  1:        : sequencer

  2: [ 0]   : control

 33:        : timer

```

 *NeddySeagoon wrote:*   

> Tell if your normal user is in the audio group or not.

 

```

$ groups

adm wheel audio cdrom video users systemd-journal plugdev egrep

```

 *NeddySeagoon wrote:*   

> Are using alsa or pulseaudio?

 

```

$ cat /etc/portage/make.conf | grep USE

USE="${USE} initramfs networkmanager pulseaudio colord gtk3 fat hfs ntfs bluetooth wayland gles2 libinput"

```

 *NeddySeagoon wrote:*   

> Tell how you build and install your kernel and when you followed this process last.

 

```

cd /usr/src/linux

make menuconfig

make -j8

make modules_install

make install

genkernel --microcode-initramfs --microcode=intel --install initramfs

```

Hope this will help

----------

## NeddySeagoon

egrep,

dmesg is missing.

Its certainly a kernel issue as 

```
00:1f.3 Audio device [0403]: Intel Corporation CM238 HD Audio Controller [8086:a171] (rev 31)

   Subsystem: Lenovo CM238 HD Audio Controller [17aa:3803]

   Kernel driver in use: snd_hda_intel

   Kernel modules: snd_hda_intel
```

is correct and you still don't have any sound devices.

Why do you think that 

```
CONFIG_SND_HDA_CODEC_REALTEK=m
```

is the correct codec?

----------

## fturco

@egrep: did you update GRUB configuration after installing the kernel?

----------

## NeddySeagoon

fturco,

dmesg will tell :)

----------

## egrep

I'm sorry for the missed dmesg output. Here it is: https://pastebin.com/raw/mKV7rT0z

 *NeddySeagoon wrote:*   

> Why do you think that 
> 
> ```
> CONFIG_SND_HDA_CODEC_REALTEK=m
> ```
> ...

 

It was just may try because of this:

 *theotherjoe wrote:*   

> also, you may want to include all the other available audio codecs in your
> 
> kernel just to be on the safe side (even though it should be a Realtek ALC233, 
> 
> from what I understand).

 

Yes, I should disable this of course.

 *fturco wrote:*   

> @egrep: did you update GRUB configuration after installing the kernel?

 

I did this once when I updated the kernel version.

----------

## egrep

 *NeddySeagoon wrote:*   

> egrep,
> 
> dmesg is missing.
> 
> Its certainly a kernel issue as 
> ...

 

Btw, Lenovo says this is Realtek: https://pcsupport.lenovo.com/us/en/products/laptops-and-netbooks/legion-series/legion-y520-15ikbn/downloads/DS120220

----------

## NeddySeagoon

egrep,

```
[    0.000000] Linux version 5.7.10-gentoo (root@saturn) (gcc version 10.2.0 (Gentoo 10.2.0 p1), GNU ld (Gentoo 2.34 p4) 2.34.0) #31 SMP Fri Jul 24 18:51:26 EEST 2020
```

Thats 31 kernel builds and this one was built at Fri Jul 24 18:51:26 EEST 2020.

Good. Many people with sound problems are not running the kernel they think they are. Thats not you though.

```
[    1.356128] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
```

Thats the the HDMI output but there is no entry in /dev/snd for it.

```
[    1.488692] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0
```

comes from ./sound/hda/hdac_controller.c

The code is 

```
        for (timeout = 1000; timeout > 0; timeout--) {

                if (snd_hdac_chip_readw(bus, CORBRP) & AZX_CORBRP_RST)

                        break;

                udelay(1);

        }
```

Either something is missing, or the timeout is not long enough for your hardware. I suspect the former.

If you want to try a longer timeout, change the  timeout = 1000 for a bigger number and rebuild the kernel.

There is this kernel bug report.

```
[    1.490220] snd_hda_intel 0000:00:1f.3: no codecs found!
```

is consistent with having some other codec that the one in the kernel.

Enable them all as modules.  It may not matter unless that timeout is fixed.

Does this happen on a power on boot or resume from suspend or both?

Educated shot in the dark ... add the INTEL_LPSS options to your kernel.

There are about half a dozen.

Don't use 

```
[    1.571293] ntfs: driver 2.1.32 [Flags: R/W MODULE].
```

It won't do what you think it does but al least it no longer trashes NTFS filesystems.

----------

## egrep

 *NeddySeagoon wrote:*   

> egrep,
> 
> ```
> [    0.000000] Linux version 5.7.10-gentoo (root@saturn) (gcc version 10.2.0 (Gentoo 10.2.0 p1), GNU ld (Gentoo 2.34 p4) 2.34.0) #31 SMP Fri Jul 24 18:51:26 EEST 2020
> ```
> ...

 

No luck :-/

```

$ dmesg | grep -Ei '(sound|alsa|hda)'

[    1.359487] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.480967] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

[    1.482100] snd_hda_intel 0000:00:1f.3: no codecs found!

[    1.515079] random: alsactl: uninitialized urandom read (4 bytes read)

[    2.064798] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0

```

dmesg: https://pastebin.com/raw/tSVPBaDM

Kernel Config: https://pastebin.com/raw/fPmttMH7

Did I missed to enable something else?Last edited by egrep on Sat Jul 25, 2020 11:54 am; edited 1 time in total

----------

## egrep

Changing sound/hda/hdac_controller.c does not help at all. 

I changed it a bit from:

```

int timeout;

for (timeout = 1000; timeout > 0; timeout--) {

  if (snd_hdac_chip_readw(bus, CORBRP) & AZX_CORBRP_RST)

    break;

  udelay(1);

}

if (timeout <= 0)

  dev_err(bus->dev, "CORB reset timeout#1, CORBRP = %d\n",

     snd_hdac_chip_readw(bus, CORBRP));

```

to:

```

int timeout;

int reads = 0;

for (timeout = 100000; timeout > 0; timeout--) {

  reads++;

  if (snd_hdac_chip_readw(bus, CORBRP) & AZX_CORBRP_RST)

    break;

  udelay(1);

}

if (timeout <= 0)

  dev_err(bus->dev, "CORB reset timeout#1, CORBRP = %d (performed reads: %d)\n",

     snd_hdac_chip_readw(bus, CORBRP), reads);

```

Now dmesg looks as follows:

```

$ dmesg -w | grep snd_hda_intel

[    1.365090] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.658443] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0 (performed reads: 100000)

[    1.659746] snd_hda_intel 0000:00:1f.3: no codecs found!

[    2.445595] snd_hda_intel 0000:00:1f.3: CORB reset timeout#1, CORBRP = 0 (performed reads: 100000)

```

I've tried setting "snd_hda_intel.single_cmd=1" and "snd_hda_intel.probe_mask=1" as proposed here, but this does not change anything.

Adding "intel_idle.max_cstate=0" and "intel_pstate=disable" boot options as mentioned here changes nothing.

----------

## NeddySeagoon

egrep,

There is lots of good reading in 

/usr/src/linux/Documentation/sound/hd-audio

In particular, notes.rst and models.rst.  Start with notes.rst.

Both files give module parameters you can pass to  

snd_hda_intel when it loads.

As you have CONFIG_SND_HDA_INTEL=m and CONFIG_MODULE_UNLOAD=y, that makes life easy.

Do 

```
modprobe -r snd_hda_intel
```

That will fail if other modules are using snd_hda_intel, they must be removed first.

Its a bit of trial and error but lsmod can help.

Once snd_hda_intel has been removed, it can be reloaded with 

```
modprobe snd_hda_intel <some list of parameters>
```

```
modinfo snd_hda_intel
```

will show a list of possible parameters.

It will make you head hurt, as one invocation of modprobe snd_hda_intel can be used to set up lots of HD-Audio cards differently, hence the Array of ...

Once snd_hda_intel is reloaded, have a look at the end of dmesg. You want the timeout message to have gone away and your codec to be detected.

Rinse and repeat for the next 

```
modprobe snd_hda_intel <some list of parameters>
```

 that you want to try.

----------

## egrep

I managed to get it working. Finally!

I have reset my motherboard and CMOS. After that, I setup Kernel as follows:

```
$ cat /usr/src/linux/.config | grep SND | grep -v '^#'

CONFIG_SND=m

CONFIG_SND_TIMER=m

CONFIG_SND_PCM=m

CONFIG_SND_HWDEP=m

CONFIG_SND_SEQ_DEVICE=m

CONFIG_SND_RAWMIDI=m

CONFIG_SND_JACK=y

CONFIG_SND_JACK_INPUT_DEV=y

CONFIG_SND_PCM_TIMER=y

CONFIG_SND_HRTIMER=m

CONFIG_SND_DYNAMIC_MINORS=y

CONFIG_SND_MAX_CARDS=32

CONFIG_SND_SUPPORT_OLD_API=y

CONFIG_SND_PROC_FS=y

CONFIG_SND_VERBOSE_PROCFS=y

CONFIG_SND_VMASTER=y

CONFIG_SND_DMA_SGBUF=y

CONFIG_SND_SEQUENCER=m

CONFIG_SND_SEQ_DUMMY=m

CONFIG_SND_SEQ_HRTIMER_DEFAULT=y

CONFIG_SND_SEQ_MIDI_EVENT=m

CONFIG_SND_SEQ_MIDI=m

CONFIG_SND_SEQ_VIRMIDI=m

CONFIG_SND_DRIVERS=y

CONFIG_SND_VIRMIDI=m

CONFIG_SND_PCI=y

CONFIG_SND_HDA=m

CONFIG_SND_HDA_INTEL=m

CONFIG_SND_HDA_HWDEP=y

CONFIG_SND_HDA_CODEC_REALTEK=m

CONFIG_SND_HDA_CODEC_HDMI=m

CONFIG_SND_HDA_GENERIC=m

CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0

CONFIG_SND_HDA_CORE=m

CONFIG_SND_HDA_COMPONENT=y

CONFIG_SND_HDA_I915=y

CONFIG_SND_HDA_PREALLOC_SIZE=2048

CONFIG_SND_INTEL_NHLT=y

CONFIG_SND_INTEL_DSP_CONFIG=m

CONFIG_SND_USB=y

CONFIG_SND_PCMCIA=y

CONFIG_SND_X86=y
```

After reboot dmesg is:

```
$ dmesg | grep -Ei '(sound|alsa|hda)'

[    1.334604] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

[    1.372768] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC233: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker

[    1.372770] snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)

[    1.372772] snd_hda_codec_realtek hdaudioC0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)

[    1.372773] snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0

[    1.372774] snd_hda_codec_realtek hdaudioC0D0:    inputs:

[    1.372775] snd_hda_codec_realtek hdaudioC0D0:      Mic=0x19

[    1.372776] snd_hda_codec_realtek hdaudioC0D0:      Internal Mic=0x12

[    1.426306] input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input7

[    1.426366] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input8

[    1.426413] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input9

[    1.426460] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input10

[    1.426502] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input11

[    1.426545] input: HDA Intel PCH HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input12

[    1.426585] input: HDA Intel PCH HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input13

[    1.458811] random: alsactl: uninitialized urandom read (4 bytes read)
```

Thank you guys for the help!

----------

## NeddySeagoon

egrep,

I'm pleased that its working but I don't understand what resetting the CMOS did.

----------

## egrep

 *NeddySeagoon wrote:*   

> egrep,
> 
> I'm pleased that its working but I don't understand what resetting the CMOS did.

 

NeddySeagoon,

I decided to check if it would work after reading this comment. It was just a theory. However, it looks like it works. It is interesting that I have never changed the CMOS settings before.

----------

## NeddySeagoon

egrep,

Thank you for sharing that. I'm sure it will help future readers of this topic.

----------

## fturco

 *egrep wrote:*   

> I managed to get it working. Finally!

 

I'm glad you fixed this problem!  :Smile: 

----------

## AmirKabir

 *egrep wrote:*   

> I managed to get it working. Finally!
> 
> I have reset my motherboard and CMOS. After that, I setup Kernel as follows:
> 
> ```
> ...

 

You don't actually need all of this.

All you have to do ( for me at least ) was the enable CONFIG_SND_HDA_CODEC_REALTEK in:

```

-> Device Drivers              

                                                                                     

         -> Sound card support (SOUND [=y])                                                                                          

           -> Advanced Linux Sound Architecture (SND [=y])                                                                           

             -> HD-Audio

                     <*> Build Realtek HD-audio codec support

```

You can also enable these just to be sure:

```

CONFIG_SND_HDA_INTEL

CONFIG_SND_HDA_HWDEP

CONFIG_SND_HDA_RECONFIG

CONFIG_SND_HDA_INPUT_BEEP

CONFIG_SND_HDA_PATCH_LOADER

CONFIG_SND_HDA_GENERIC

```

Also I don't really think taking out and putting back your CMOS battery really does anything since I didn't do it and it worked.

----------

