lenovo/x60: add hda_verb.c

This creates a config for the x60 audio based
on values taken from vendor bios.

The pin config is stored in (for linux 4.5 at least):
/sys/class/sound/card0/hw*/init_pin_configs
In the left column there is the pin number.
In the right column there is the default configuration of that pin.
(This has to be done while running the proprietary bios)

More information on the sound card can be found in:
/proc/asound/card0/codec#*
This also hold the information of /sys/class/sound/

What is improved:
- internal microphone is chosen by default
- when jack is inserted it is chosen instead of internal speaker

Before this had to be done manually in alsa or pulseaudio.

TEST= check if internal microphone is used by default in
pavucontrol if you are using pulseaudio.
Plug in a jack with headphones and check if there
is sound output through these and not the build-in
speaker.

Change-Id: Id3b700fd84905a72cc1f69e7d8bfa6145f231756
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/15063
Tested-by: build bot (Jenkins)
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
Arthur Heymans 2016-06-03 18:37:38 +02:00 committed by Nico Huber
parent 09b6444b88
commit 7d38fafd96
1 changed files with 17 additions and 2 deletions

View File

@ -1,7 +1,22 @@
#include <device/azalia_device.h>
const u32 cim_verb_data[0] = {};
const u32 cim_verb_data[] = {
0x11d41981, /* Codec Vendor / Device ID: Analog Devices AD1981 */
0x17aa2025, /* Subsystem ID */
0x0000000b, /* Number of 4 dword sets */
AZALIA_SUBVENDOR(0x0, 0x17aa2025),
AZALIA_PIN_CFG(0, 0x05, 0xc3014110),
AZALIA_PIN_CFG(0, 0x06, 0x4221401f),
AZALIA_PIN_CFG(0, 0x07, 0x591311f0),
AZALIA_PIN_CFG(0, 0x08, 0xc3a15020),
AZALIA_PIN_CFG(0, 0x09, 0x41813021),
AZALIA_PIN_CFG(0, 0x0a, 0x014470f0),
AZALIA_PIN_CFG(0, 0x16, 0x59f311f0),
AZALIA_PIN_CFG(0, 0x17, 0x59931122),
AZALIA_PIN_CFG(0, 0x18, 0x41a19023),
AZALIA_PIN_CFG(0, 0x19, 0x9933e12e)
};
const u32 pc_beep_verbs[0] = {};
AZALIA_ARRAY_SIZES;