From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: question about realtek ALC269VB Date: Fri, 21 Sep 2012 19:17:14 +0200 Message-ID: References: <505C9ED0.7070406@fisher-privat.net> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15]) by alsa0.perex.cz (Postfix) with ESMTP id 93B82265DDF for ; Fri, 21 Sep 2012 19:17:17 +0200 (CEST) In-Reply-To: <505C9ED0.7070406@fisher-privat.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: Oleksij Rempel Cc: alsa-devel@alsa-project.org List-Id: alsa-devel@alsa-project.org 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 ] > >From 46472c1fbd9b82ea95cf22f2b49c74d4a7e82360 Mon Sep 17 00:00:00 2001 > From: Oleksij Rempel > 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 > --- > 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 ] > 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 ] > 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