Re: [PATCH 2/3] ASoC: Blackfin: add multi-channel supporting in Blackfin ASoC driver and AD1980 codec driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Tue, 21 Oct 2008 11:36:12 +0800,
Bryan Wu wrote:
> 
> From: Cliff Cai <cliff.cai@xxxxxxxxxx>
> 
> Signed-off-by: Cliff Cai <cliff.cai@xxxxxxxxxx>
> Signed-off-by: Bryan Wu <cooloney@xxxxxxxxxx>
> ---
>  sound/soc/blackfin/Kconfig          |    8 ++
>  sound/soc/blackfin/bf5xx-ac97-pcm.c |   45 +++++++----
>  sound/soc/blackfin/bf5xx-ac97.c     |  152 +++++++++++++++++++++--------------
>  sound/soc/blackfin/bf5xx-ac97.h     |   35 +++++++-
>  sound/soc/codecs/ad1980.c           |    5 +-
>  5 files changed, 163 insertions(+), 82 deletions(-)
> 
> diff --git a/sound/soc/blackfin/Kconfig b/sound/soc/blackfin/Kconfig
> index 3fce187..e58d5b1 100644
> --- a/sound/soc/blackfin/Kconfig
> +++ b/sound/soc/blackfin/Kconfig
> @@ -55,6 +55,14 @@ config SND_MMAP_SUPPORT
>  	  Say y if you want AC97 driver to support mmap mode.
>  	  We introduce an intermediate buffer to simulate mmap.
>  
> +config SND_MULTICHAN_SUPPORT

SND_BF5XX_MULTICHAN_SUPPORT is preferred because it's pretty specific
to bf5xx.
(Well, the same about SND_MMAP_SUPPORT, which I overlooked it...)

> +	bool "Enable Multichannel Support"
> +	depends on SND_BF5XX_AC97
> +	default n
> +	help
> +	  Say y if you want AC97 driver to support up to 5.1 channel audio.
> +	  this mode will consume much more memory for DMA. 
> +
>  config SND_BF5XX_SOC_SPORT
>  	tristate
>  	
> diff --git a/sound/soc/blackfin/bf5xx-ac97-pcm.c b/sound/soc/blackfin/bf5xx-ac97-pcm.c
> index 25e50d2..eb1531f 100644
> --- a/sound/soc/blackfin/bf5xx-ac97-pcm.c
> +++ b/sound/soc/blackfin/bf5xx-ac97-pcm.c
> @@ -43,24 +43,34 @@
>  #include "bf5xx-ac97.h"
>  #include "bf5xx-sport.h"
>  
> +static unsigned int ac97_chan_mask[] = {
> +	SP_FL, /* Mono */
> +	SP_STEREO, /* Stereo */
> +	SP_2DOT1, /* 2.1*/
> +	SP_QUAD,/*Quadraquic*/
> +	SP_FL | SP_FR | SP_FC | SP_SL | SP_SR,/*5 channels */
> +	SP_5DOT1, /* 5.1 */
> +};
> +
>  #if defined(CONFIG_SND_MMAP_SUPPORT)
>  static void bf5xx_mmap_copy(struct snd_pcm_substream *substream,
>  	 snd_pcm_uframes_t count)
>  {
>  	struct snd_pcm_runtime *runtime = substream->runtime;
>  	struct sport_device *sport = runtime->private_data;
> +	unsigned int chan_mask = ac97_chan_mask[substream->runtime->channels - 1];

"substream->" can be removed here.  Ditto for the lines below.

>  static int bf5xx_pcm_hw_free(struct snd_pcm_substream *substream)
>  {
> +	#if defined(CONFIG_SND_MMAP_SUPPORT)

Put '#' at the beginning of the line.

Also, in general, I recommend you to run checkpatch.pl once before
submitting patches.


thanks,

Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux