# [SOLVED]No sound, realtek ALC888

## jfranz2

Reinstalled Gentoo, after getting frustrated with both systemd and the binary packages from Arch. 

However, I am experiencing an issue. My sound device (Realtek ALC888) which is an on-board sound chip is not being detected by the kernel. It works on Windows, which is on a separate disk. 

output of lspci | grep Audio

```
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA)

01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]

```

The two devices are the vga sound chips on my graphics card. (AMD Radeon HD 7850)

I also have enabled the following kernel options

```
CONFIG_SND_HDA=y

CONFIG_SND_HDA_INTEL=y

CONFIG_SND_HDA_PREALLOC_SIZE=2048

CONFIG_SND_HDA_HWDEP=y

CONFIG_SND_HDA_RECONFIG=y

CONFIG_SND_HDA_CODEC_REALTEK=y

CONFIG_SND_HDA_CODEC_ANALOG=y

```

Any help figuring out the issue would be greatly appreciated.

----------

## krinn

```
head -1 /proc/asound/card*/codec*

==> /proc/asound/card0/codec#0 <==

Codec: Realtek ALC1200

==> /proc/asound/card1/codec#0 <==

Codec: Nvidia GPU 40 HDMI/DP

```

Don't assume your card need realtek codec because someone use realtec codec with intel hda, not all intel hda use realtek codec.

Of course my example is bad as my card use a realtek one  :Very Happy: 

Just check yours and confirm realtek was a good choice as codec.

----------

## Tony0945

On my system:

CONFIG_SND_HDA=m

CONFIG_SND_HDA_INTEL=m

CONFIG_SND_HDA_PREALLOC_SIZE=2048

CONFIG_SND_HDA_RECONFIG=y

CONFIG_SND_HDA_PATCH_LOADER=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

The major difference is the use of modules, not built ins. Try recompiling as modules then try again.

Also follow this: https://wiki.gentoo.org/wiki/ALSA

I'm taking you at your word that the card/chip is not detected, but it just may be a matter of being muted.

----------

## jfranz2

Hi,

Thanks for the replies. I was able to confirm that that it does use the Realtek codec. Unfortunately, making them modules did not fix the situation either.

----------

## krinn

then show us why you think it is not detect.

as example (again)

```
cat /proc/asound/cards

 0 [Intel          ]: HDA-Intel - HDA Intel

                      HDA Intel at 0xf9cf8000 irq 68

 1 [NVidia         ]: HDA-Intel - HDA NVidia

                      HDA NVidia at 0xfbdfc000 irq 34

```

Here you should get 2 infos

1/ the cards detected list

2/ their order of appearance, as intel is 0, it's default card, some people experience issue that intel goes 1 making the nvidia default and of course using it, it output from it and if no speakers are attach to it, it can let anyone think the intel card is not working.

Well, it work, it's just not the one in use.

----------

## jfranz2

```

0 [SB             ]: HDA-Intel - HDA ATI SB

                      HDA ATI SB at 0xfe024000 irq 16

 1 [HDMI           ]: HDA-Intel - HDA ATI HDMI

                      HDA ATI HDMI at 0xfdffc000 irq 26

```

I believe now that is detected, however I can not get it to work. I've tired using built in alsa, module alsa and now I am trying to see if Realteks alsa driver will work, unfortunately I can not get it to compile though.

----------

## krinn

Make them module instead of buildin, just because it is easier and it will get you more infos than you think:

```
lsmod | grep hda

snd_hda_codec_hdmi     20770  1 

snd_hda_codec_realtek    51791  1 

snd_hda_intel          20085  4 

snd_hda_codec          71988  3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel

snd_hwdep               4747  1 snd_hda_codec

snd_pcm                53927  4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel

snd_page_alloc          5518  2 snd_pcm,snd_hda_intel

snd                    42858  16 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_hda_codec,snd_hda_intel,snd_seq_device

```

It prove snd_hda_codec_realtek is loaded and in use by snd_hda_codec, so it just confirm realtek codec was need and the module was loaded to fulfil that need.

So it just answer your question: is the realtek driver work?

----------

## jfranz2

lsmod only brings up two results

1. fglrx

2. r8168 (ethernet)

----------

## jfranz2

I believe the output of lspci -v will be more helpful. I also think, once again, it is not detected by the kernel based on this output.

```

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] RS780 Host Bridge

        Subsystem: Advanced Micro Devices, Inc. [AMD] RS780 Host Bridge

        Flags: bus master, 66MHz, medium devsel, latency 32

        Memory at <ignored> (64-bit, non-prefetchable)

        Capabilities: [c4] HyperTransport: Slave or Primary Interface

        Capabilities: [54] HyperTransport: UnitID Clumping

        Capabilities: [40] HyperTransport: Retry Mode

        Capabilities: [9c] HyperTransport: #1a

        Capabilities: [f8] HyperTransport: #1c

00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] RS780 PCI to PCI bridge (ext gfx port 0) (prog-if 00 [Normal decode])

        Flags: bus master, fast devsel, latency 0

        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0

        I/O behind bridge: 0000e000-0000efff

        Memory behind bridge: fdf00000-fdffffff

        Prefetchable memory behind bridge: 00000000d0000000-00000000dfffffff

        Capabilities: [50] Power Management version 3

        Capabilities: [58] Express Root Port (Slot+), MSI 00

        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit-

        Capabilities: [b0] Subsystem: Advanced Micro Devices, Inc. [AMD] Device 9600

        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+

        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>

        Capabilities: [110] Virtual Channel

        Kernel driver in use: pcieport

00:06.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] RS780 PCI to PCI bridge (PCIE port 2) (prog-if 00 [Normal decode])

        Flags: bus master, fast devsel, latency 0

        Bus: primary=00, secondary=02, subordinate=02, sec-latency=0

        I/O behind bridge: 0000d000-0000dfff

        Memory behind bridge: fde00000-fdefffff

        Prefetchable memory behind bridge: 00000000fdb00000-00000000fdbfffff                                                                                

        Capabilities: [50] Power Management version 3

        Capabilities: [58] Express Root Port (Slot+), MSI 00

        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit-

        Capabilities: [b0] Subsystem: Advanced Micro Devices, Inc. [AMD] Device 9600

        Capabilities: [b8] HyperTransport: MSI Mapping Enable+ Fixed+

        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>

        Capabilities: [110] Virtual Channel

        Kernel driver in use: pcieport

00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (prog-if 01 [AHCI 1.0])

        Subsystem: Gigabyte Technology Co., Ltd Device b002

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 22

        I/O ports at ff00 [size=8]

        I/O ports at fe00 [size=4]

        I/O ports at fd00 [size=8]

        I/O ports at fc00 [size=4]

        I/O ports at fb00 [size=16]

        Memory at fe02f000 (32-bit, non-prefetchable) [size=1K]

        Capabilities: [60] Power Management version 2

        Capabilities: [70] SATA HBA v1.0

        Kernel driver in use: ahci

00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (prog-if 10 [OHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 16

        Memory at fe02e000 (32-bit, non-prefetchable) [size=4K]

        Kernel driver in use: ohci-pci

00:12.1 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0 USB OHCI1 Controller (prog-if 10 [OHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 16

        Memory at fe02d000 (32-bit, non-prefetchable) [size=4K]

        Kernel driver in use: ohci-pci

00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller (prog-if 20 [EHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 17

        Memory at fe02c000 (32-bit, non-prefetchable) [size=256]

        Capabilities: [c0] Power Management version 2

        Capabilities: [e4] Debug port: BAR=1 offset=00e0

        Kernel driver in use: ehci-pci

00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller (prog-if 10 [OHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 18

        Memory at fe02b000 (32-bit, non-prefetchable) [size=4K]

        Kernel driver in use: ohci-pci

00:13.1 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0 USB OHCI1 Controller (prog-if 10 [OHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 18

        Memory at fe02a000 (32-bit, non-prefetchable) [size=4K]

        Kernel driver in use: ohci-pci

00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller (prog-if 20 [EHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 19

        Memory at fe029000 (32-bit, non-prefetchable) [size=256]

        Capabilities: [c0] Power Management version 2

        Capabilities: [e4] Debug port: BAR=1 offset=00e0

        Kernel driver in use: ehci-pci

00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 3c)

        Subsystem: Gigabyte Technology Co., Ltd GA-MA770-DS3rev2.0 Motherboard

        Flags: 66MHz, medium devsel

        Capabilities: [b0] HyperTransport: MSI Mapping Enable- Fixed+

00:14.1 IDE interface: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 IDE Controller (prog-if 8a [Master SecP PriP])

        Subsystem: Gigabyte Technology Co., Ltd Device 5002

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 255

        I/O ports at 01f0 [size=8]

        I/O ports at 03f4

        I/O ports at 0170 [size=8]

        I/O ports at 0374

        I/O ports at fa00 [size=16]

        Capabilities: [70] MSI: Enable- Count=1/2 Maskable- 64bit-

00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA)

        Subsystem: Gigabyte Technology Co., Ltd Device a002

        Flags: bus master, slow devsel, latency 32, IRQ 16

        Memory at fe024000 (64-bit, non-prefetchable) [size=16K]

        Capabilities: [50] Power Management version 2

        Kernel driver in use: snd_hda_intel

        Kernel modules: snd_hda_intel

00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller

        Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller

        Flags: bus master, 66MHz, medium devsel, latency 0

00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge (prog-if 01 [Subtractive decode])

        Flags: bus master, VGA palette snoop, 66MHz, medium devsel, latency 64

        Bus: primary=00, secondary=03, subordinate=03, sec-latency=64

        I/O behind bridge: 0000c000-0000cfff

        Memory behind bridge: fdd00000-fddfffff

        Prefetchable memory behind bridge: fdc00000-fdcfffff

00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller (prog-if 10 [OHCI])

        Subsystem: Gigabyte Technology Co., Ltd Device 5004

        Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 18

        Memory at fe028000 (32-bit, non-prefetchable) [size=4K]

        Kernel driver in use: ohci-pci

00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor HyperTransport Configuration

        Flags: fast devsel

        Capabilities: [80] HyperTransport: Host or Secondary Interface

00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Address Map

        Flags: fast devsel

00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor DRAM Controller

        Flags: fast devsel

00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Miscellaneous Control

        Flags: fast devsel

        Capabilities: [f0] Secure device <?>

00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 10h Processor Link Control

        Flags: fast devsel

01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Pitcairn PRO [Radeon HD 7850] (prog-if 00 [VGA controller])

        Subsystem: Hightech Information System Ltd. Device 2320

        Flags: bus master, fast devsel, latency 0, IRQ 28

        Memory at d0000000 (64-bit, prefetchable) [size=256M]

        Memory at fdf80000 (64-bit, non-prefetchable) [size=256K]

        I/O ports at ee00 [size=256]

        [virtual] Expansion ROM at fdf00000 [disabled] [size=128K]

        Capabilities: [48] Vendor Specific Information: Len=08 <?>

        Capabilities: [50] Power Management version 3

        Capabilities: [58] Express Legacy Endpoint, MSI 00

        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+

        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>

        Capabilities: [150] Advanced Error Reporting

        Capabilities: [270] #19

        Capabilities: [2b0] Address Translation Service (ATS)

        Capabilities: [2c0] #13

        Capabilities: [2d0] #1b

        Kernel driver in use: fglrx_pci

        Kernel modules: fglrx

01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series]

        Subsystem: Hightech Information System Ltd. Device aab0

        Flags: bus master, fast devsel, latency 0, IRQ 26

        Memory at fdffc000 (64-bit, non-prefetchable) [size=16K]

        Capabilities: [48] Vendor Specific Information: Len=08 <?>

        Capabilities: [50] Power Management version 3

        Capabilities: [58] Express Legacy Endpoint, MSI 00

        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+

        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>

        Capabilities: [150] Advanced Error Reporting

        Kernel driver in use: snd_hda_intel

        Kernel modules: snd_hda_intel

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

        Subsystem: Gigabyte Technology Co., Ltd Motherboard

        Flags: bus master, fast devsel, latency 0, IRQ 27

        I/O ports at de00 [size=256]

        Memory at fdbff000 (64-bit, prefetchable) [size=4K]

        Memory at fdbf8000 (64-bit, prefetchable) [size=16K]

        Capabilities: [40] Power Management version 3

        Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+

        Capabilities: [70] Express Endpoint, MSI 01

        Capabilities: [b0] MSI-X: Enable- Count=4 Masked-

        Capabilities: [d0] Vital Product Data

        Capabilities: [100] Advanced Error Reporting

        Capabilities: [140] Virtual Channel

        Capabilities: [160] Device Serial Number 01-00-00-00-68-4c-e0-00

        Kernel driver in use: r8168

        Kernel modules: r8168

```

Also aplay -l

```

sudo aplay -l

**** List of PLAYBACK Hardware Devices ****

No protocol specified

xcb_connection_has_error() returned true

```

----------

## Tony0945

lsmod should have given you a whole raft of modules. Try this to show the modules in the running kernel: 

```
 zcat /proc/config.gz | grep HDA|grep m
```

Also show results of 

```
 modprobe -vv snd_hda_intel
```

 Be sure both v's are there, it's not a typo.

Are you sure you rebooted into your new kernel?

----------

## Tony0945

jfranz2, your hardware looks a lot like mine. What is your mobo make and model? Mine is MSI  785GTM-E45. I also have that chip on Gigabyte GA-880GA-UD3H.

----------

## krinn

 *jfranz2 wrote:*   

> I believe the output of lspci -v will be more helpful. I also think, once again, it is not detected by the kernel based on this output.
> 
> ```
> 
> 00:14.1 IDE interface: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 IDE Controller (prog-if 8a [Master SecP PriP])
> ...

 

Like we said here "au contraire", it just tell you they are detect and drivers are in use.

While it also tells you your IDE controller will not work (as it lack drivers).

----------

## jfranz2

 *Tony0945 wrote:*   

> jfranz2, your hardware looks a lot like mine. What is your mobo make and model? Mine is MSI  785GTM-E45. I also have that chip on Gigabyte GA-880GA-UD3H.

 

I have a Gigabyte GA-MA78LMT-S2 motherboard. Also will post the info in a few minutes. I am having a lot of problems with portage so I am trying to get that sorted out in another thread.

----------

## steveL

Onboard Intel HDA are awful, and best disabled. I think I should point out however that you have two cards using the same module, which is even less likely to work, from what I've seen.

----------

## Tony0945

 *Quote:*   

> Onboard Intel HDA are awful, and best disabled

 

Well, maybe if you are listening to concert music. It's fine for YouTube and such. And as far as music goes, what would sound concert-quality on my $6 speakers?

----------

## Jaglover

Every gentooer should have Systemrescuecd USB stick in their back pocket (under pillow when asleep). So take it, boot it and see if your lspci -nnk shows drivers loaded for your onboard sound device.

----------

## steveL

 *Tony0945 wrote:*   

> Well, maybe if you are listening to concert music.

 

I meant the hardware causes issues, ime; it took a couple of years before I finally agreed with Griz, and disabled it in the BIOS, as well as deselected the module.

It's truly crap; a USB gaming headphone works much better, if you want something cheap and cheerful (and rather useful.)

----------

## jfranz2

After I updated to kernel 3.19 I have a bunch of modules now, and I suspect my sound may work. However I cannot confirm since ati-drivers will not compile with the latest kernel. Will confirm if I can get a fix for ati-drivers.

----------

## Jaglover

You need no ATI drivers to play sound.

----------

## jfranz2

You are correct, but it would be more enjoyable to listen to it with my desktop working. Regardless, sound is working now, confirmed by recording a WAV sample using arecord and playing it back with aplay.

My hypothesis is that for some reason the sound modules didn't get compiled into the 3.18 kernel. I can see that the modules were successfully installed into the 3.19 kernel however. (I can provide a more verbose output once I can get my desktop working)

This can now be marked solved as my sound is now working.

----------

