[alsa-devel] question about realtek ALC269VB

Takashi Iwai tiwai at suse.de
Fri Sep 21 19:17:14 CEST 2012


At Fri, 21 Sep 2012 19:07:28 +0200,
Oleksij Rempel wrote:
> 
> Hallo all, Takashi,
> 
> in attachment is a patch to enable external mic on Asus Zenbook UX32A.
> It works fine for me, except there created some mixer/controls which 
> make no sense on this laptop. For example "Digital" input and IEC958.
> How are they detected? By pin descriptor, or some code insight of 
> patch_realtek.c

It must come from the default pin setup.
I guess your machine has either a HDMI or a DP output, no?
If it has, IEC958 is a mandatory control for the audio output over
such a digital interface.  "Digital" is likely the volume control
created by alsa-lib, so it's no driver issue, and you can safely
ignore it.


Takashi

> amixer and codec dump are attached too.
> 
> 
> -- 
> Regards,
> Oleksij
> [2 0001-ALSA-hda-Add-external-mic-quirk-for-Asus-Zenbook-UX3.patch <text/x-patch (7bit)>]
> >From 46472c1fbd9b82ea95cf22f2b49c74d4a7e82360 Mon Sep 17 00:00:00 2001
> From: Oleksij Rempel <bug-track at fisher-privat.net>
> Date: Fri, 21 Sep 2012 17:44:58 +0200
> Subject: [PATCH] ALSA: hda - Add external mic quirk for Asus Zenbook UX31A
> 
> Signed-off-by: Oleksij Rempel <bug-track at fisher-privat.net>
> ---
>  sound/pci/hda/patch_realtek.c |    1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 1907dda..3d440fc 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -6189,6 +6189,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
>  	SND_PCI_QUIRK(0x1025, 0x0349, "Acer AOD260", ALC269_FIXUP_INV_DMIC),
>  	SND_PCI_QUIRK(0x103c, 0x1586, "HP", ALC269_FIXUP_MIC2_MUTE_LED),
>  	SND_PCI_QUIRK(0x1043, 0x1427, "Asus Zenbook UX31E", ALC269VB_FIXUP_DMIC),
> +	SND_PCI_QUIRK(0x1043, 0x1517, "Asus Zenbook UX31A", ALC269VB_FIXUP_DMIC),
>  	SND_PCI_QUIRK(0x1043, 0x1a13, "Asus G73Jw", ALC269_FIXUP_ASUS_G73JW),
>  	SND_PCI_QUIRK(0x1043, 0x1b13, "Asus U41SV", ALC269_FIXUP_INV_DMIC),
>  	SND_PCI_QUIRK(0x1043, 0x16e3, "ASUS UX50", ALC269_FIXUP_STEREO_DMIC),
> -- 
> 1.7.10.4
> 
> [3 amixer <text/plain; UTF-8 (base64)>]
> Simple mixer control 'Master',0
>   Capabilities: pvolume pvolume-joined pswitch pswitch-joined penum
>   Playback channels: Mono
>   Limits: Playback 0 - 87
>   Mono: Playback 47 [54%] [-30.00dB] [on]
> Simple mixer control 'Headphone',0
>   Capabilities: pvolume pswitch penum
>   Playback channels: Front Left - Front Right
>   Limits: Playback 0 - 87
>   Mono:
>   Front Left: Playback 87 [100%] [0.00dB] [on]
>   Front Right: Playback 87 [100%] [0.00dB] [on]
> Simple mixer control 'Speaker',0
>   Capabilities: pvolume pswitch penum
>   Playback channels: Front Left - Front Right
>   Limits: Playback 0 - 87
>   Mono:
>   Front Left: Playback 87 [100%] [0.00dB] [on]
>   Front Right: Playback 87 [100%] [0.00dB] [on]
> Simple mixer control 'PCM',0
>   Capabilities: pvolume penum
>   Playback channels: Front Left - Front Right
>   Limits: Playback 0 - 255
>   Mono:
>   Front Left: Playback 255 [100%] [0.00dB]
>   Front Right: Playback 255 [100%] [0.00dB]
> Simple mixer control 'Mic',0
>   Capabilities: pvolume pswitch penum
>   Playback channels: Front Left - Front Right
>   Limits: Playback 0 - 31
>   Mono:
>   Front Left: Playback 0 [0%] [-34.50dB] [off]
>   Front Right: Playback 0 [0%] [-34.50dB] [off]
> Simple mixer control 'Mic Boost',0
>   Capabilities: volume penum
>   Playback channels: Front Left - Front Right
>   Capture channels: Front Left - Front Right
>   Limits: 0 - 3
>   Front Left: 0 [0%] [0.00dB]
>   Front Right: 0 [0%] [0.00dB]
> Simple mixer control 'IEC958',0
>   Capabilities: pswitch pswitch-joined penum
>   Playback channels: Mono
>   Mono: Playback [off]
> Simple mixer control 'Capture',0
>   Capabilities: cvolume cswitch penum
>   Capture channels: Front Left - Front Right
>   Limits: Capture 0 - 31
>   Front Left: Capture 14 [45%] [4.50dB] [on]
>   Front Right: Capture 14 [45%] [4.50dB] [on]
> Simple mixer control 'Auto-Mute Mode',0
>   Capabilities: enum
>   Items: 'Disabled' 'Enabled'
>   Item0: 'Enabled'
> Simple mixer control 'Digital',0
>   Capabilities: cvolume penum
>   Capture channels: Front Left - Front Right
>   Limits: Capture 0 - 120
>   Front Left: Capture 120 [100%] [30.00dB]
>   Front Right: Capture 120 [100%] [30.00dB]
> Simple mixer control 'Internal Mic Boost',0
>   Capabilities: volume penum
>   Playback channels: Front Left - Front Right
>   Capture channels: Front Left - Front Right
>   Limits: 0 - 3
>   Front Left: 2 [67%] [24.00dB]
>   Front Right: 2 [67%] [24.00dB]
> [4 hda_1 <text/plain; UTF-8 (base64)>]
> Codec: Realtek ALC269VB
> Address: 0
> AFG Function Id: 0x1 (unsol 1)
> Vendor Id: 0x10ec0269
> Subsystem Id: 0x10431517
> Revision Id: 0x100100
> No Modem Function Group found
> Default PCM:
>     rates [0x560]: 44100 48000 96000 192000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Default Amp-In caps: N/A
> Default Amp-Out caps: N/A
> GPIO: io=2, o=0, i=0, unsolicited=1, wake=0
>   IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
>   IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
> Node 0x02 [Audio Output] wcaps 0x1d: Stereo Amp-Out
>   Control: name="Headphone Playback Volume", index=0, device=0
>     ControlAmp: chs=3, dir=Out, idx=0, ofs=0
>   Device: name="ALC269VB Analog", type="Audio", device=0
>   Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0
>   Amp-Out vals:  [0x2f 0x2f]
>   Converter: stream=8, channel=0
>   PCM:
>     rates [0x560]: 44100 48000 96000 192000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x03 [Audio Output] wcaps 0x1d: Stereo Amp-Out
>   Control: name="Speaker Playback Volume", index=0, device=0
>     ControlAmp: chs=3, dir=Out, idx=0, ofs=0
>   Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0
>   Amp-Out vals:  [0x2f 0x2f]
>   Converter: stream=8, channel=0
>   PCM:
>     rates [0x560]: 44100 48000 96000 192000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
>   Converter: stream=0, channel=0
>   Digital:
>   Digital category: 0x0
>   PCM:
>     rates [0x5e0]: 44100 48000 88200 96000 192000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
>   Amp-In caps: ofs=0x0b, nsteps=0x1f, stepsize=0x05, mute=1
>   Amp-In vals:  [0x8b 0x8b]
>   Converter: stream=0, channel=0
>   SDI-Select: 0
>   PCM:
>     rates [0x560]: 44100 48000 96000 192000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
>   Connection: 1
>      0x23
> Node 0x09 [Audio Input] wcaps 0x10011b: Stereo Amp-In
>   Control: name="Capture Switch", index=0, device=0
>   Control: name="Capture Volume", index=0, device=0
>   Device: name="ALC269VB Analog", type="Audio", device=0
>   Amp-In caps: ofs=0x0b, nsteps=0x1f, stepsize=0x05, mute=1
>   Amp-In vals:  [0x0e 0x0e]
>   Converter: stream=4, channel=0
>   SDI-Select: 0
>   PCM:
>     rates [0x560]: 44100 48000 96000 192000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
>   Connection: 1
>      0x22
> Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Control: name="Mic Playback Volume", index=0, device=0
>     ControlAmp: chs=3, dir=In, idx=0, ofs=0
>   Control: name="Mic Playback Switch", index=0, device=0
>     ControlAmp: chs=3, dir=In, idx=0, ofs=0
>   Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
>   Amp-In vals:  [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
>   Connection: 5
>      0x18 0x19 0x1a 0x1b 0x1d
> Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x00 0x00] [0x00 0x00]
>   Connection: 2
>      0x02 0x0b
> Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x00 0x00] [0x00 0x00]
>   Connection: 2
>      0x03 0x0b
> Node 0x0e [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x0f [Audio Mixer] wcaps 0x20010a: Mono Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x00] [0x80]
>   Connection: 2
>      0x02 0x0b
> Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x11 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x12 [Pin Complex] wcaps 0x40000b: Stereo Amp-In
>   Control: name="Internal Mic Boost Volume", index=0, device=0
>     ControlAmp: chs=3, dir=In, idx=0, ofs=0
>   Control: name="Internal Mic Phantom Jack", index=0, device=0
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
>   Amp-In vals:  [0x01 0x01]
>   Pincap 0x00000020: IN
>   Pin Default 0x99a3092f: [Fixed] Mic at Int ATAPI
>     Conn = ATAPI, Color = Unknown
>     DefAssociation = 0x2, Sequence = 0xf
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x20: IN
> Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x14 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Control: name="Speaker Playback Switch", index=0, device=0
>     ControlAmp: chs=3, dir=Out, idx=0, ofs=0
>   Control: name="Speaker Phantom Jack", index=0, device=0
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x00 0x00]
>   Pincap 0x00010014: OUT EAPD Detect
>   EAPD 0x2: EAPD
>   Pin Default 0x99130110: [Fixed] Speaker at Int ATAPI
>     Conn = ATAPI, Color = Unknown
>     DefAssociation = 0x1, Sequence = 0x0
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x40: OUT
>   Unsolicited: tag=00, enabled=0
>   Connection: 2
>      0x0c 0x0d*
> Node 0x15 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x16 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x17 [Pin Complex] wcaps 0x40010c: Mono Amp-Out
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80]
>   Pincap 0x00000010: OUT
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>     DefAssociation = 0xf, Sequence = 0x0
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x00:
>   Connection: 1
>      0x0f
> Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
>   Control: name="Mic Boost Volume", index=0, device=0
>     ControlAmp: chs=3, dir=In, idx=0, ofs=0
>   Control: name="Mic Jack", index=0, device=0
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
>   Amp-In vals:  [0x00 0x00]
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x00001734: IN OUT Detect
>     Vref caps: HIZ 50 GRD 80
>   Pin Default 0x01a19c20: [Jack] Mic at Ext Rear
>     Conn = 1/8, Color = Pink
>     DefAssociation = 0x2, Sequence = 0x0
>   Pin-ctls: 0x24: IN VREF_80
>   Unsolicited: tag=02, enabled=1
>   Connection: 1
>      0x0d
> Node 0x19 [Pin Complex] wcaps 0x40008b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
>   Amp-In vals:  [0x00 0x00]
>   Pincap 0x00001724: IN Detect
>     Vref caps: HIZ 50 GRD 80
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>     DefAssociation = 0xf, Sequence = 0x0
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x20: IN VREF_HIZ
>   Unsolicited: tag=00, enabled=0
> Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
>   Amp-In vals:  [0x00 0x00]
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x0000003c: IN OUT HP Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>     DefAssociation = 0xf, Sequence = 0x0
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x20: IN
>   Unsolicited: tag=00, enabled=0
>   Connection: 2
>      0x0c* 0x0d
> Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
>   Amp-In vals:  [0x00 0x00]
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x00000034: IN OUT Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>     DefAssociation = 0xf, Sequence = 0x0
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x20: IN
>   Unsolicited: tag=00, enabled=0
>   Connection: 2
>      0x0c* 0x0d
> Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x1d [Pin Complex] wcaps 0x400000: Mono
>   Pincap 0x00000020: IN
>   Pin Default 0x40079a2d: [N/A] Line Out at Ext N/A
>     Conn = Analog, Color = Pink
>     DefAssociation = 0x2, Sequence = 0xd
>   Pin-ctls: 0x20: IN
> Node 0x1e [Pin Complex] wcaps 0x400381: Stereo Digital
>   Pincap 0x00000014: OUT Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>     DefAssociation = 0xf, Sequence = 0x0
>     Misc = NO_PRESENCE
>   Pin-ctls: 0x40: OUT
>   Unsolicited: tag=00, enabled=0
>   Connection: 1
>      0x06
> Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
>   Processing caps: benign=0, ncoeff=25
> Node 0x21 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Control: name="Headphone Playback Switch", index=0, device=0
>     ControlAmp: chs=3, dir=Out, idx=0, ofs=0
>   Control: name="Headphone Jack", index=0, device=0
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x00 0x00]
>   Pincap 0x0000001c: OUT HP Detect
>   Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
>     Conn = 1/8, Color = Green
>     DefAssociation = 0x1, Sequence = 0xf
>   Pin-ctls: 0xc0: OUT HP
>   Unsolicited: tag=01, enabled=1
>   Connection: 2
>      0x0c* 0x0d
> Node 0x22 [Audio Selector] wcaps 0x30010b: Stereo Amp-In
>   Amp-In caps: N/A
>   Amp-In vals:  [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
>   Connection: 7
>      0x18 0x19 0x1a 0x1b 0x1d 0x0b 0x12*
> Node 0x23 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
>   Connection: 6
>      0x18 0x19 0x1a 0x1b 0x1d 0x0b


More information about the Alsa-devel mailing list