LINUX.ORG.RU

Не работает звук, как всегда... Intel HD Audio | Gentoo

 , , ,


1

2

Доброго времени суток, господа. Решив в очередной раз окунуться в никс мир я по старой памяти накатил Gentoo 17.0, но как всегда есть проблема со звуком, если раньше по молодости лет я сидел сутками и решал проблемы методом гугла, сейчас же, то ли я стал туговат на мозги, то ли проблема действительно странная, кароче не получается ничего, прошу помощи, итак , для начала спек: Gygabyte EP43-DS3, Core2Quad 2.3 GHz, NVIDIA 560 Ti, 8GB RAM и всякие другие штуки не столь важные для дела

zurisar@localhost ~ $ uname -a
Linux localhost 4.14.78-gentoo #1 SMP Fri Nov 2 02:48:04 MSK 2018 x86_64 Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz GenuineIntel GNU/Linux
zurisar@localhost ~ $ dmesg | grep -i audio
[    0.391651] ALSA device list:
[    0.391761]   No soundcards found.
[    0.395698] hdaudio hdaudioC0D2: Unable to bind the codec
[    0.633058] hdaudio hdaudioC1D0: Unable to bind the codec
[    0.634727] hdaudio hdaudioC1D1: Unable to bind the codec
[    0.634912] hdaudio hdaudioC1D2: Unable to bind the codec
[    0.635115] hdaudio hdaudioC1D3: Unable to bind the codec
zurisar@localhost ~ $ sudo lspci | grep -i audio
00:1b.0 Audio device: Intel Corporation 82801JI (ICH10 Family) HD Audio Controller
01:00.1 Audio device: NVIDIA Corporation GF114 HDMI Audio Controller (rev a1)

HDMI на видеокарте меня не интересует

Еще есть такая приблуда

zurisar@localhost ~ $ lsusb | grep G35
Bus 004 Device 003: ID 046d:0a15 Logitech, Inc. G35 Headset

Настройки ядра

zurisar@localhost ~ $ cat /usr/src/linux/.config | grep SND_HDA
CONFIG_SND_HDA=y
CONFIG_SND_HDA_INTEL=y
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
# CONFIG_SND_HDA_INPUT_BEEP is not set
CONFIG_SND_HDA_PATCH_LOADER=y
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 is not set
CONFIG_SND_HDA_CODEC_CMEDIA=m
# CONFIG_SND_HDA_CODEC_SI3054 is not set
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_CORE=y
CONFIG_SND_HDA_DSP_LOADER=y
CONFIG_SND_HDA_I915=y
CONFIG_SND_HDA_EXT_CORE=m
CONFIG_SND_HDA_PREALLOC_SIZE=64

zurisar@localhost ~ $ cat /usr/src/linux/.config | grep SOC
# CONFIG_SOCK_CGROUP_DATA is not set
# CONFIG_NF_SOCKET_IPV4 is not set
# CONFIG_NF_SOCKET_IPV6 is not set
# CONFIG_VSOCKETS is not set
# CONFIG_INTEL_SOC_DTS_THERMAL is not set
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
CONFIG_SND_SOC=y
CONFIG_SND_SOC_AC97_BUS=y
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
CONFIG_SND_SOC_COMPRESS=y
CONFIG_SND_SOC_TOPOLOGY=y
# CONFIG_SND_SOC_AMD_ACP is not set
CONFIG_SND_ATMEL_SOC=m
# CONFIG_SND_SOC_FSL_ASRC is not set
# CONFIG_SND_SOC_FSL_SAI is not set
# CONFIG_SND_SOC_FSL_SSI is not set
# CONFIG_SND_SOC_FSL_SPDIF is not set
# CONFIG_SND_SOC_FSL_ESAI is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
# CONFIG_SND_SOC_IMG is not set
CONFIG_SND_SOC_INTEL_SST=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST_MATCH=m
CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
CONFIG_SND_SOC_INTEL_BYTCR_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_BYTCR_RT5651_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m
CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m
CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
# STMicroelectronics STM32 SOC audio support
# CONFIG_SND_SOC_XTFPGA_I2S is not set
CONFIG_SND_SOC_I2C_AND_SPI=y
CONFIG_SND_SOC_AC97_CODEC=m
CONFIG_SND_SOC_ADAU_UTILS=m
CONFIG_SND_SOC_ADAU1701=m
CONFIG_SND_SOC_ADAU17X1=m
CONFIG_SND_SOC_ADAU1761=m
CONFIG_SND_SOC_ADAU1761_I2C=m
CONFIG_SND_SOC_ADAU7002=m
CONFIG_SND_SOC_AK4554=m
CONFIG_SND_SOC_AK4613=m
CONFIG_SND_SOC_AK4642=m
CONFIG_SND_SOC_AK5386=m
CONFIG_SND_SOC_ALC5623=m
CONFIG_SND_SOC_BT_SCO=m
CONFIG_SND_SOC_CS35L32=m
CONFIG_SND_SOC_CS35L33=m
CONFIG_SND_SOC_CS35L34=m
CONFIG_SND_SOC_CS35L35=m
CONFIG_SND_SOC_CS42L42=m
CONFIG_SND_SOC_CS42L51=m
CONFIG_SND_SOC_CS42L51_I2C=m
CONFIG_SND_SOC_CS42L52=m
CONFIG_SND_SOC_CS42L56=m
CONFIG_SND_SOC_CS42L73=m
CONFIG_SND_SOC_CS4265=m
CONFIG_SND_SOC_CS4270=m
CONFIG_SND_SOC_CS4271=m
CONFIG_SND_SOC_CS4271_I2C=m
CONFIG_SND_SOC_CS42XX8=m
CONFIG_SND_SOC_CS42XX8_I2C=m
CONFIG_SND_SOC_CS43130=m
CONFIG_SND_SOC_CS4349=m
CONFIG_SND_SOC_CS53L30=m
CONFIG_SND_SOC_DA7213=m
CONFIG_SND_SOC_DA7219=m
CONFIG_SND_SOC_DIO2125=m
CONFIG_SND_SOC_DMIC=m
CONFIG_SND_SOC_ES7134=m
CONFIG_SND_SOC_ES8316=m
CONFIG_SND_SOC_ES8328=m
CONFIG_SND_SOC_ES8328_I2C=m
CONFIG_SND_SOC_GTM601=m
CONFIG_SND_SOC_HDAC_HDMI=m
CONFIG_SND_SOC_INNO_RK3036=m
CONFIG_SND_SOC_MAX98090=m
CONFIG_SND_SOC_MAX98357A=m
CONFIG_SND_SOC_MAX98504=m
CONFIG_SND_SOC_MAX98927=m
CONFIG_SND_SOC_MAX9860=m
CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m
CONFIG_SND_SOC_PCM1681=m
CONFIG_SND_SOC_PCM179X=m
CONFIG_SND_SOC_PCM179X_I2C=m
CONFIG_SND_SOC_PCM3168A=m
CONFIG_SND_SOC_PCM3168A_I2C=m
CONFIG_SND_SOC_PCM512x=m
CONFIG_SND_SOC_PCM512x_I2C=m
CONFIG_SND_SOC_RL6231=m
CONFIG_SND_SOC_RL6347A=m
CONFIG_SND_SOC_RT286=m
CONFIG_SND_SOC_RT298=m
CONFIG_SND_SOC_RT5616=m
CONFIG_SND_SOC_RT5631=m
CONFIG_SND_SOC_RT5640=m
CONFIG_SND_SOC_RT5645=m
CONFIG_SND_SOC_RT5651=m
CONFIG_SND_SOC_RT5663=m
CONFIG_SND_SOC_RT5670=m
# CONFIG_SND_SOC_RT5677_SPI is not set
CONFIG_SND_SOC_SGTL5000=m
CONFIG_SND_SOC_SIGMADSP=m
CONFIG_SND_SOC_SIGMADSP_I2C=m
CONFIG_SND_SOC_SIGMADSP_REGMAP=m
CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m
CONFIG_SND_SOC_SN95031=m
CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_SSM2602=m
CONFIG_SND_SOC_SSM2602_I2C=m
CONFIG_SND_SOC_SSM4567=m
CONFIG_SND_SOC_STA32X=m
CONFIG_SND_SOC_STA350=m
CONFIG_SND_SOC_STI_SAS=m
CONFIG_SND_SOC_TAS2552=m
CONFIG_SND_SOC_TAS5086=m
CONFIG_SND_SOC_TAS571X=m
CONFIG_SND_SOC_TAS5720=m
CONFIG_SND_SOC_TFA9879=m
CONFIG_SND_SOC_TLV320AIC23=m
CONFIG_SND_SOC_TLV320AIC23_I2C=m
CONFIG_SND_SOC_TLV320AIC31XX=m
CONFIG_SND_SOC_TLV320AIC3X=m
CONFIG_SND_SOC_TS3A227E=m
CONFIG_SND_SOC_WM8510=m
CONFIG_SND_SOC_WM8523=m
CONFIG_SND_SOC_WM8524=m
CONFIG_SND_SOC_WM8580=m
CONFIG_SND_SOC_WM8711=m
CONFIG_SND_SOC_WM8728=m
CONFIG_SND_SOC_WM8731=m
CONFIG_SND_SOC_WM8737=m
CONFIG_SND_SOC_WM8741=m
CONFIG_SND_SOC_WM8750=m
CONFIG_SND_SOC_WM8753=m
CONFIG_SND_SOC_WM8776=m
CONFIG_SND_SOC_WM8804=m
CONFIG_SND_SOC_WM8804_I2C=m
CONFIG_SND_SOC_WM8903=m
CONFIG_SND_SOC_WM8960=m
CONFIG_SND_SOC_WM8962=m
CONFIG_SND_SOC_WM8974=m
CONFIG_SND_SOC_WM8978=m
CONFIG_SND_SOC_WM8985=m
CONFIG_SND_SOC_ZX_AUD96P22=m
CONFIG_SND_SOC_NAU8540=m
CONFIG_SND_SOC_NAU8810=m
CONFIG_SND_SOC_NAU8824=m
CONFIG_SND_SOC_NAU8825=m
CONFIG_SND_SOC_TPA6130A2=m
# SOC (System On Chip) specific Drivers
# CONFIG_SOC_TI is not set
CONFIG_ASSOCIATIVE_ARRAY=y

В alsamixer девайсов нет, микшер pulseaudio тоже не показывает хардварных девайсов, никакие модули относящиеся к аудио не подтягиваются...

zurisar@localhost ~ $ lsmod
Module                  Size  Used by
razerfirefly           36864  0
nvidia_drm             40960  1
nvidia_modeset       1077248  17 nvidia_drm
nvidia              13864960  648 nvidia_modeset

zurisar@localhost ~ $ sudo modprobe snd-hda-codec-generic
modprobe: ERROR: could not insert 'snd_hda_codec_generic': Unknown symbol in module, or unknown parameter (see dmesg)
zurisar@localhost ~ $ dmesg | tail
[ 1747.401831] snd_hda_codec_generic: Unknown symbol snd_hda_get_bool_hint (err 0)
[ 1747.401839] snd_hda_codec_generic: Unknown symbol snd_hda_get_int_hint (err 0)

Вопрос: куда еще потыкать что бы эта дрянь хотя бы определилась системой? Точнее обе дряни и встроенная звуковуха и наушники...

alsactl init что-нибудь выдает?

Meyer ★★★★★
()

компилируй модулями:

CONFIG_SND_HDA=m
CONFIG_SND_HDA_INTEL=m

Bruce_Lee ★★
()

Очень много программ привязались к Puls sudio и по этом чтобы был звук тебе надо либо поставить саму Пульсу, либо поставить переходник с Пульсы на Алсу.
Я вот к примеру пользуюсь переходником.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)

как всегда есть проблема со звуком

Школоконпелятор, плиз.

anonymous
()

Чем ядро собирал? make modules_install не забыл? В eselect kernel выбрано что нужно?

Дата регистрации: 06.11.2018 23:03:42 Последнее посещение: 06.11.2018 23:04:04

Ощущается постановка и толстота.
Ну и альтимейт солюшен: возьми kernel и initramfs от последнего Debian'а :D

Deleted
()

для Intel Corporation 82801JI (ICH10 Family) HD Audio Controller нужен только snd_hda_intel.

CONFIG_SND_HDA_INTEL=y

подозреваю, что

CONFIG_SND_HDA_GENERIC=m

должен быть

CONFIG_SND_HDA_GENERIC=y

или грузить его надо сразу.

arrecck ★★★
()
Ответ на: комментарий от torvn77

Ты вообще читал оригинальное сообщение? У человека не загружается драйвер. Или, по-твоему, пульса с железом через святой дух общается?

anonymous
()

ERROR: could not insert 'snd_hda_codec_generic': Unknown symbol in module, or unknown parameter

Ничего, что у тебя там модуль лежит поломанный? Судя по всему ты вычистил лишние символы из ядрышка на этапе сборки, задав соответствующий параметр в конфиге, чего делать не следует. Бери конфиг из Debian/Ubuntu/Fedora, собирай ядро с ним, а потом своё на базе этого конфига уже пили. Можешь и defconfig взять, но там «есть нюанс».

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)

выложи весь конфиг на pastebin и скинь сюда

Elmer_
()

could not insert 'snd_hda_codec_generic': Unknown symbol in module

Эта ошибка значит что ты загружаешь в ядро модуль от другого ядра.

Скорее всего, у тебя есть отдельны /boot и ты собрал одну версию ядра уже несколько раз. И первый раз у тебя был смонтирован /boot и ты установил образ ядра в смонтированный /boot, а потом собрал ещё раз ядро уже без смонтированного /boot.

В итоге ты сейчас грузишься с ядром, которое ты собрал первый раз, а модули в /lib/modules у тебя лежат уже от второй сборки ядра.

Ну либо ты попросту после второй пересборки ядра сделал только установку модулей, без установки образа ядра.

Так что удостоверься, что ты загружаешь последнее собранное ядро.

Смотри вывод

uname -a
и
file /usr/src/linux/boot/arch/x86/... тут тоже где-то есть образ ядра
поищи.

anonymous
()

Unknown symbol

Ядро почисть и собери понову. У тебя, видать, что то старое с новым попуталось

vasily_pupkin ★★★★★
()
Ответ на: комментарий от Bruce_Lee

По идее и в дебиане прога должна была за собой притащить всё нужное, ну может задав вопрос о выборе, но тем не менее мне пришлось гадать почему нет звука.

Атак анонимус выше написал правильно, я вообще не понял что у него проблема ядром, а не приложениями.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 1)

GA-EP43-DS3: Audio Realtek ALC888 codec High Definition Audio

Что-то мне кажется там HD Realtek

CONFIG_SND_HDA=y

CONFIG_SND_HDA_CODEC_REALTEK=y

Ненужное подчисть, SoC SND выключи вообще, должно работать.

GreedyFluff
()
Ответ на: комментарий от GreedyFluff

Итак, первичный ответ

localhost /home/zurisar # alsactl init
alsactl: init:1757: No soundcards found...

Далее, ядро собираю генкернелом, командой

genkernel --install --menuconfig --symlink --mountboot --clean all

Каталога /usr/src/linux/boot у меня нет вообще, поискать не смог (:

Весь конфиг ядра: https://pastebin.com/jMSubHft

Сейчас сбегаю в магазин и попробую убрать весь сок и собрать только с дженерик драйвером, на этой конфигурации 5 лет назад гента крутилась без проблем и звук работал чуть ли не из коробки, единственное что коробки у генты нет... Ну и видяха была другая, но это же не может влиять сейчас.

zurisar
() автор топика
Ответ на: комментарий от Deleted

Я ничего не вырезал, наверное... Не на этом уровне воспоминаний что сейчас.

Итак пересобрал ядро, конфиг в кратце

CONFIG_SND_HDA=y
CONFIG_SND_HDA_INTEL=y
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
# CONFIG_SND_HDA_INPUT_BEEP is not set
CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_CODEC_REALTEK=y
CONFIG_SND_HDA_CODEC_ANALOG=y
# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
# CONFIG_SND_HDA_CODEC_VIA is not set
CONFIG_SND_HDA_CODEC_HDMI=y
# 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=y
# CONFIG_SND_HDA_CODEC_SI3054 is not set
CONFIG_SND_HDA_GENERIC=y
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_CORE=y
CONFIG_SND_HDA_I915=y
CONFIG_SND_HDA_PREALLOC_SIZE=64
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=y
CONFIG_SND_USB_UA101=m
CONFIG_SND_USB_USX2Y=m
CONFIG_SND_USB_CAIAQ=m
CONFIG_SND_USB_CAIAQ_INPUT=y
CONFIG_SND_USB_US122L=m
CONFIG_SND_USB_6FIRE=m
CONFIG_SND_USB_HIFACE=m
CONFIG_SND_BCD2000=m
CONFIG_SND_USB_LINE6=m
CONFIG_SND_USB_POD=m
CONFIG_SND_USB_PODHD=m
CONFIG_SND_USB_TONEPORT=m
CONFIG_SND_USB_VARIAX=m
CONFIG_SND_PCMCIA=y
# CONFIG_SND_VXPOCKET is not set
# CONFIG_SND_PDAUDIOCF is not set
CONFIG_SND_X86=y

Полный конфиг: https://pastebin.com/d1GArQsk

ksyms включил, в dmesg тоже самое

[    0.389852] ALSA device list:
[    0.389962]   No soundcards found.
[    0.394036] hdaudio hdaudioC0D2: Unable to bind the codec
[    0.631076] hdaudio hdaudioC1D0: Unable to bind the codec
[    0.631269] hdaudio hdaudioC1D1: Unable to bind the codec
[    0.631444] hdaudio hdaudioC1D2: Unable to bind the codec
[    0.631617] hdaudio hdaudioC1D3: Unable to bind the codec

Полный дмесг: https://pastebin.com/4EwtGcev

Но на

modprobe snd-hda-codec-generic
ошибок в дмесге больше нет, в lsmod так же ничего нового, в alsamixer и в пульсе устройств не появилось.

Сейчас попробую загрузится с флешки и посмотреть что говорит лайвсд, по результатам отпишу. Однако, 5 лет конфигурация компа не менялась кроме видеокарты и перехода на ССД, значит что-то менялось либо в драйверах либо в ядре.

Ну ладно настроим звук, потом будем с клавой разбираться, тут еще веселее ситуация. Всем спасибо за советы, надеюсь что-то прокатит.

zurisar
() автор топика
Ответ на: комментарий от Deleted

А ты хоть знаешь зачем они нужны? Хинт: не нужны, если ты не собираешься отлаживать ядро.

anonymous
()
Ответ на: комментарий от zurisar

Каталога /usr/src/linux/boot у меня нет вообще, поискать не смог (:

Написал же, что путь примерный, писал по памяти.

Вот правильные пути:

file /usr/src/linux/arch/x86/boot/bzImage 
uname -a

Неужели так сложно посмотреть что находится в /usr/src/linux и найти?

То что у тебя сейчас не работает звук - проблема лишь в том, что ты загрузил одно ядро, а модули в /lib/modules/версия_ядра/ уже от другого ядра.

Просто удостоверься, что дата и время сборки в выводах приведённых в этом сообщении командах совпадают - в этом случае модули будут загружаться и если ты правильно сконфигурировал ядро, то звук у тебя заработает.

Выкинь genkernel, ну либо используй его лишь для сборки initramfs, если он тебе нужен.

К тому же в genkernel, если ты его не настраивал ядро и модули собираются в один поток.

Либо настраивай, что бы сборка шла нормально, а лучше собирай ядро руками:

cd /usr/src/linux
make menuconfig
make -jN bzImage
make -jN modules
mount /boot
make install
make modules_install
Где N - число потоков сборки, можешь взять равным количеству ядер процессора, ну либо кол-во ядер - 1.

Думай головой.

anonymous
()
Ответ на: комментарий от anonymous

Да, знаю. Для тогО, чтобы не возникало таких проблем, как у ТС. В его случае собрать конфиг работающий от федоры и сравнивать. Собака порылась совсем не в тех опциях, которые он показывает. А искать конкретную опцию лично мне лениво - времени будет нужно потратить ооочень много. С учетом того, что линукса у меня под рукой только на серверах.

Deleted
()
Ответ на: комментарий от zurisar

Полный конфиг: https://pastebin.com/d1GArQsk

CONFIG_TRIM_UNUSED_KSYMS=y

Или отключи. Или перед пересборкой ядра, предварительно сохранив .config, чисти make mrproper. Ядро не умеет дособираться, построив правильный список ненужных символов для очистки. Только полная пересборка.

anonymous
()
Ответ на: комментарий от anonymous

О, правильный коммент. Лорчую.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.