[alsa-devel] [PATCH] Enable HP output on nVidia Corporation MCP79 HDA (rev b1) (Macbook Pro 5, 5)

Takashi Iwai tiwai at suse.de
Thu Jul 30 14:49:20 CEST 2009


At Thu, 30 Jul 2009 14:44:27 +0200,
Stelian Pop wrote:
> 
> Hi,
> 
> The patch below, to be applied on the latest sound-unstable-2.6.git,
> enables headphones output on my MacBookPro 5,5, together with the
> automuting feature.
> 
> Here is the exact soundcard id:
> 	Vendor Id: 0x10134206
> 	Subsystem Id: 0x106b4d00
> 	Revision Id: 0x100301
> 
> Thanks for the previous efforts to make this work !

Great, this is *the* missing piece!

I'm going to merge the hda-cirrus patch back to the (stable) sound GIT
tree so that it'll be merged into the next 2.6.32 kernel.


Thanks!

Takashi


> 
> Stelian.
> 
> diff --git a/sound/pci/hda/patch_cirrus.c b/sound/pci/hda/patch_cirrus.c
> index f552738..09be633 100644
> --- a/sound/pci/hda/patch_cirrus.c
> +++ b/sound/pci/hda/patch_cirrus.c
> @@ -832,6 +832,12 @@ static void cs_automute(struct hda_codec *codec)
>  				    AC_VERB_SET_PIN_WIDGET_CONTROL,
>  				    hp_present ? 0 : PIN_OUT);
>  	}
> +	if (spec->board_config == CS420X_MBP55) {
> +		if (hp_present)
> +			snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA, 0x2);
> +		else
> +			snd_hda_codec_write(codec, 0x01, 0, AC_VERB_SET_GPIO_DATA, 0x8);
> +	}
>  }
>  
>  static void cs_automic(struct hda_codec *codec)
> @@ -1133,10 +1139,10 @@ static int patch_cs420x(struct hda_codec *codec)
>  
>  	switch (spec->board_config) {
>  	case CS420X_MBP55:
> -		/* GPIO3 = EAPD? */
> -		spec->gpio_mask = 0x08;
> -		spec->gpio_dir = 0x08;
> -		spec->gpio_data = 0x08;
> +		/* GPIO1 = headphones */
> +		/* GPIO3 = speakers */
> +		spec->gpio_mask = 0x0a;
> +		spec->gpio_dir = 0x0a;
>  		break;
>  	}
>  
> 
> -- 
> Stelian Pop <stelian at popies.net>
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 


More information about the Alsa-devel mailing list