Hda intel driver linux

How do I install new Intel HDA sound drivers?

In certain cases I might have an older kernel or release of Ubuntu where my sound driver might be too old or buggy, how can I get updated sound drivers for my built in Intel Audio chip?

4 Answers 4

  1. Go to this page
  2. Under the «Source label», check which DKMS package that is corresponding to your current distribution series (Maverick, Natty, Oneiric etc) and click the leftmost arrow to expand that section.
  3. Under the new section «Package files», click the file ending with «.deb», download and install it:
    • You can either do this by selecting «open with», which will take you to the Ubuntu Software Center, where you can click «Install», or
    • Save the file to disk, open a terminal window, change to the right directory and execute «sudo dpkg -i «
  4. Reboot.

These instructions will only work if there is a corresponding daily build. That is, installing on 16.04.2 is not possible using 16.04.1, so make certain that the distribution name and version both match.

For a long time I used the method of Jorge Castro, but found it not worked from some time. The next command fix it perfectly:

sudo apt install linux-modules-extra-`uname -r` 

I had the same issue and I was able to fix it using «HDAJackRetask» from «alsa-tools-gui». Enter the following command in the terminal:

sudo apt install alsa-tools-gui 

Then open HDAJackRetask by entering hdajackretask in terminal or using the applications menu.

Select the proper hardware from the drop down menu on top (Conexant CX20641 in my case) and override the «Green Line Out, Rear side» (or any other connection you’re using) from «Line out» to «Internal speaker».

In my case the «Apply now» button resulted in a «resource busy» error, but using the «Install boot override» I was able to reload the override configuration automatically during the boot process.

For me, on Ubuntu 20.0.04, inxi -A was showing no audio driver:

$ inxi -A Audio: Device-1: Intel C610/X99 series HD Audio driver: N/A 

The hdajackretask command would segfault upon trying to run, and installing linux-modules-extra-* did nothing to help. The solution was this answer:

sudo nano /etc/default/grub
Find GRUB_CMDLINE_LINUX_DEFAULT and add snd_hda_intel.dmic_detect=0 to the end of it.
It will look something like this:
GRUB_CMDLINE_LINUX_DEFAULT=»loglevel=3 snd_hda_intel.dmic_detect=0″
Rebuild grub menu sudo grub-mkconfig -o /boot/grub/grub.cfg and reboot.

That caused the driver to show up, and all audio to work. No more «Dummy Output».

$ inxi -A Audio: Device-1: Intel C610/X99 series HD Audio driver: snd_hda_intel 

Источник

Читайте также:  Linux update node js version

Опции для драйвера snd-hda-intel

HD-audio — это новый стандарт встроенного аудиокомпонента на современных ПК после AC97. Хотя Linux уже давно поддерживает HD-audio, с новыми машинами часто возникают проблемы. Часть проблемы — сломанный BIOS, остальное — реализация драйвера. В этом документе объясняются краткие методы устранения неполадок и отладки оборудования HD-audio.

Компонент HD-audio состоит из двух частей: микросхемы контроллера и микросхем кодека на шине HD-audio. Linux предоставляет один драйвер для всех контроллеров, snd-hda-intel. Хотя в названии драйвера содержится слово известного производителя оборудования, оно относится не только к нему, а ко всем микросхемам контроллеров, в том числе и других компаний. Поскольку предполагается, что контроллеры HD-аудио совместимы, в большинстве случаев должен работать один драйвер snd-hda. Но, что неудивительно, существуют известные ошибки и проблемы, характерные для каждого типа контроллера. В драйвере snd-hda-intel есть несколько способов их исправить, они описаны ниже.

У контроллера может быть несколько кодеков. Обычно у вас есть один аудиокодек и, возможно, один модемный кодек. Теоретически может быть несколько аудиокодеков, например для аналоговых и цифровых выходов, и драйвер может работать неправильно из-за конфликта элементов микшера. Это должно быть исправлено в будущем, если такое оборудование действительно существует.

Драйвер snd-hda-intel имеет несколько различных парсеров кодеков в зависимости от кодека. В качестве запасного варианта у него есть общий синтаксический анализатор, но до сих пор эта функциональность довольно ограничена. Вместо общего синтаксического анализатора обычно используется синтаксический анализатор кодека (закодированный в patch_*.c) для реализаций, зависящих от кодека.

Опции модели для кодека HD-Audio

Наиболее частая проблема с драйвером HD-audio — это неподдерживаемые функции кодека или несоответствующая конфигурация устройства. Большая часть кода, специфичного для кодеков, имеет несколько предустановленных моделей, чтобы либо переопределить настройку BIOS, либо предоставить более полные функции.

Драйвер проверяет идентификатор SSID PCI и просматривает таблицу статической конфигурации, пока не будет найдена соответствующая запись. Если у вас новый компьютер, вы можете увидеть сообщение, подобное приведённому ниже:

hda_codec: ALC880: BIOS auto-probing.

Между тем, в более ранних версиях вы бы увидели такое сообщение:

hda_codec: Unknown model for ALC880, trying auto-probe from BIOS.

Для просмотра записей системного журнала связанных с snd-hda-intel используйте команду:

journalctl -b | grep hda_codec

Даже если вы видите такое сообщение, не надо паниковать. Прежде всего, это информационное сообщение, без предупреждения и без ошибки. Это означает, что PCI SSID вашего устройства не указан в списке известных предустановленных моделей (белом списке). Но это не значит, что драйвер сломан. Многие драйверы кодеков предоставляют механизм автоматической настройки на основе настроек BIOS.

Читайте также:  Linux vs code permission denied

Аудиокодек HD обычно имеет виджеты «контактов», а BIOS устанавливает конфигурацию каждого контакта по умолчанию, которая указывает местоположение, тип подключения, цвет разъёма и т. д. Драйвер HD-аудио может угадать правильное соединение, исходя из этих значений конфигурации по умолчанию. Однако некоторые коды поддержки кодеков, такие как patch_analog.c, не поддерживают автоматическое зондирование. И BIOS часто, да, довольно часто ломается. Он устанавливает неправильные значения и портит поведение драйвера.

Модель пресетов (недавно названная «исправлением») предназначена в основном для преодоления такой ситуации. Когда соответствующая модель пресета найдена в белом списке, драйвер предполагает статическую конфигурацию этой предустановки с правильной установкой контактов и т. д. Таким образом, если у вас есть более новая машина с немного другим SSID PCI (или SSID кодека) от существующий, у вас может быть хороший шанс повторно использовать ту же модель. Вы можете передать параметр модели, чтобы указать предустановленную модель вместо поиска SSID PCI (и кодека).

Доступные значения параметров модели зависят от микросхемы кодека. Проверьте свою микросхему кодека в файле proc кодека.

cat /proc/asound/card*/codec* | grep Codec Codec: Realtek ALC295 Codec: Intel Kabylake HDMI

Он покажет название производителя/продукта вашего чипа кодека. Затем смотрите файл HD-Audio Codec-Specific Models, раздел HD-audio driver. Вы можете найти список кодеков и вариантов моделей, принадлежащих каждому кодеку. Например, для чипа кодека Realtek ALC262 укажите model=ultra для устройств, совместимых с Samsung Q1 Ultra.

Сделайте резервную копию файла, если он уже существует:

sudo cp /etc/modprobe.d/alsa-base.conf /etc/modprobe.d/alsa-base.conf.bak

Для исправления достаточно добавить строку в файл /etc/modprobe.d/alsa-base.conf:

sudo gedit /etc/modprobe.d/alsa-base.conf
options snd-hda-intel model=МОДЕЛЬ

Вместо слово МОДЕЛЬ нужно вписать значение, которое вы найдёте для модели вашего ноутбука на странице HD-Audio Codec-Specific Models.

Читайте также:  Linux filenames with spaces

Причём там не обязательно будет точное название модели — просто найдите то, что ближе всего к ней. Например, модель моего ноутбука ASUS GL703GE, самое похожее, что я смог найти, это «asus-g73jw», тогда строка, которую я добавил в файл /etc/modprobe.d/alsa-base.conf, следующая:

options snd-hda-intel model=asus-g73jw

Сохраните этот файл и перезагрузитесь — после этого проблема должна исчезнуть.

Вместо перезагрузки вы можете перезапустить модуль драйвера — это особенно удобно, если вы хотите попробовать несколько значений.

sudo modprobe -r snd-hda-intel sudo modprobe snd-hda-intel

Таким образом, первое, что вы можете сделать для любого совершенно нового, неподдерживаемого и неработающего оборудования для HD-аудио, — это проверить HD-аудиокодек и несколько различных значений параметров модели. Если вам повезёт, некоторые из них могут хорошо подойти к вашему устройству.

Есть несколько специальных значений опций модели:

  • когда передаётся «nofixup», специфичные для устройства исправления в анализаторе кодеков пропускаются.
  • когда передаётся «generic» синтаксический анализатор кодека пропускается, и используется только общий синтаксический анализатор.

Вывод на динамик и наушники

Одна из наиболее частых (и очевидных) ошибок с HD-аудио — это бесшумный вывод звука через встроенный динамик или разъем для наушников или их обоих. В общем, сначала стоит попробовать выход на наушники. Для выхода динамика часто требуются дополнительные элементы управления, такие как биты внешнего усилителя. Таким образом, выход на наушники имеет немного больше шансов.

Перед отправкой отчёта об ошибке ещё раз проверьте, правильно ли настроен микшер. Последняя версия драйвера snd-hda-intel обеспечивает в основном «Master» регулятор громкости, а также «Front» (где Front указывает передние каналы). Кроме того, могут быть отдельные элементы управления «Наушники» и «Динамик».

То же самое и для выхода на динамик. На некоторых кодеках может быть переключатель «Внешний усилитель». Включите это, если есть.

Ещё одна проблема, связанная с этим, — это автоматическое отключение звука на динамиках при подключении наушников. Эта функция реализована в большинстве случаев, но не для каждой предустановленной модели или кода поддержки кодеков.

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

Источник

Оцените статью
Adblock
detector