[alsa-devel] [PATCH 001/003] snd-powermac: enable headphone detection

Takashi Iwai tiwai at suse.de
Tue Apr 15 14:28:13 CEST 2008


At Mon, 14 Apr 2008 20:12:18 +0300,
Risto Suominen wrote:
> 
> From: Risto Suominen <Risto.Suominen at gmail.com>
> 
> Enable port change interrupt while initialising AWACS, Screamer, and
> Burgundy chipsets.
> 
> Signed-off-by: Risto Suominen <Risto.Suominen at gmail.com>
> ---
> Kernel version 2.6.25-rc8 (probably any 2.6)
> 
> --- sound/ppc/pmac.c.orig	2008-04-05 17:45:08.000000000 +0300
> +++ sound/ppc/pmac.c	2008-04-07 12:18:47.503077312 +0300
> @@ -214,7 +214,7 @@ static int snd_pmac_pcm_prepare(struct s
>  	int rate_index;
>  	long offset;
>  	struct pmac_stream *astr;
> -	
> +
>  	rec->dma_size = snd_pcm_lib_buffer_bytes(subs);
>  	rec->period_size = snd_pcm_lib_period_bytes(subs);
>  	rec->nperiods = rec->dma_size / rec->period_size;
> @@ -643,7 +643,7 @@ static int snd_pmac_pcm_close(struct snd
>  	/* reset constraints */
>  	astr->cur_freqs = chip->freqs_ok;
>  	astr->cur_formats = chip->formats_ok;
> -	
> +
>  	return 0;
>  }
> 

Please split the patch, one to fix the initialization and one to fix
coding styles.

> @@ -1063,6 +1063,10 @@ static int __init snd_pmac_detect(struct
>  	else {
>  		struct pci_dev *pdev = NULL;
> 
> +#ifndef for_each_pci_dev
> +#define for_each_pci_dev(d) \
> +		while ((d = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, d)) != NULL)
> +#endif

Why is this needed?


thanks,

Takashi

>  		for_each_pci_dev(pdev) {
>  			struct device_node *np = pci_device_to_OF_node(pdev);
>  			if (np && np == macio->of_node) {
> @@ -1300,9 +1304,9 @@ int __init snd_pmac_new(struct snd_card
> 
>  	snd_pmac_sound_feature(chip, 1);
> 
> -	/* reset */
> -	if (chip->model == PMAC_AWACS)
> -		out_le32(&chip->awacs->control, 0x11);
> +	/* reset & enable interrupts */
> +	if (chip->model <= PMAC_BURGUNDY)
> +		out_le32(&chip->awacs->control, chip->control_mask);
> 
>  	/* Powerbooks have odd ways of enabling inputs such as
>  	   an expansion-bay CD or sound from an internal modem
> 


More information about the Alsa-devel mailing list