[alsa-devel] [PATCH] ALSA: hda - add mic fixup for ALC269VB on Ordissimo EVE2

Takashi Iwai tiwai at suse.de
Wed Jun 5 12:26:59 CEST 2013


At Mon,  3 Jun 2013 11:53:10 +0200,
Anisse Astier wrote:
> 
> This fixes the internal and external mic on Ordissimo EVE2,  also known
> as Malata PC-B1303.
> 
> We still don't know how to detect mic jack like Realtek's windows
> driver.
> 
> Signed-off-by: Anisse Astier <anisse at astier.eu>

Thanks, applied.

> ---
> Hi,
> 
> I'm on a dead end on this computer, I can't seem to find how the mic jack
> presence works. It's always on(presence detected whatever the status) on NID
> 0x18, the one used for the external mic. I have tried every NID, manually
> enabling pin_sense on each, but only the headphone jack detection works. The
> mic sense is nowhere to be seen.

I also don't know any other method for Realtek.  For IDT codecs, there
are some devices with GPIO unsol events, but Realtek codecs seem to
use only the normal pin detection unsol events.

So, on your device, GET_PIN_SENSE doesn't return the detection bit
set?  You tried setting SET_PIN_SENSE before GET_PIN_SENSE, right?


Takashi

> 
> This is on top sound/for-next.
> 
> Also, I'd love to have access to an ALC269VB datasheet, or at least know the
> differences with an ALC269. Do no hesitate to contact me in private.
> 
> Regards,
> 
> Anisse
> ---
>  sound/pci/hda/patch_realtek.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 59d2e91..6b0d8fe 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -3225,6 +3225,7 @@ enum {
>  	ALC271_FIXUP_HP_GATE_MIC_JACK,
>  	ALC269_FIXUP_ACER_AC700,
>  	ALC269_FIXUP_LIMIT_INT_MIC_BOOST,
> +	ALC269VB_FIXUP_ORDISSIMO_EVE2,
>  };
>  
>  static const struct hda_fixup alc269_fixups[] = {
> @@ -3467,6 +3468,15 @@ static const struct hda_fixup alc269_fixups[] = {
>  		.type = HDA_FIXUP_FUNC,
>  		.v.func = alc269_fixup_limit_int_mic_boost,
>  	},
> +	[ALC269VB_FIXUP_ORDISSIMO_EVE2] = {
> +		.type = HDA_FIXUP_PINS,
> +		.v.pins = (const struct hda_pintbl[]) {
> +			{ 0x12, 0x99a3092f }, /* int-mic */
> +			{ 0x18, 0x03a11d20 }, /* mic */
> +			{ 0x19, 0x411111f0 }, /* Unused bogus pin */
> +			{ }
> +		},
> +	},
>  };
>  
>  static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> @@ -3533,6 +3543,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
>  	SND_PCI_QUIRK(0x17aa, 0x2203, "Thinkpad X230 Tablet", ALC269_FIXUP_LENOVO_DOCK),
>  	SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K),
>  	SND_PCI_QUIRK(0x17aa, 0x9e54, "LENOVO NB", ALC269_FIXUP_LENOVO_EAPD),
> +	SND_PCI_QUIRK(0x1b7d, 0xa831, "Ordissimo EVE2 ", ALC269VB_FIXUP_ORDISSIMO_EVE2), /* Also known as Malata PC-B1303 */
>  
>  #if 0
>  	/* Below is a quirk table taken from the old code.
> -- 
> 1.8.1.4
> 


More information about the Alsa-devel mailing list