[alsa-devel] [PATCH] snd-sbxfi: implement support for 192khz playback/capture.

Takashi Iwai tiwai at suse.de
Sun Oct 19 10:46:12 CEST 2008


At Sat, 18 Oct 2008 13:37:24 -0500,
William Pitcock wrote:
> 
> Implements support for 192khz initialization for playback and capture.
> 
> Signed-off-by: William Pitcock <nenolod at sacredspiral.co.uk>

Applied now.  Thanks.

> ---
>  sound/pci/sbxfi/sbxfi.c |   18 ++++++++++++++----
>  1 files changed, 14 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/pci/sbxfi/sbxfi.c b/sound/pci/sbxfi/sbxfi.c
> index 4c65125..d64d462 100644
> --- a/sound/pci/sbxfi/sbxfi.c
> +++ b/sound/pci/sbxfi/sbxfi.c
> @@ -514,7 +514,7 @@ static void sbxfi_write_amop(struct sbxfi *chip,
>  static void sbxfi_playback_start(struct sbxfi *chip, struct sbxfi_port *port)
>  {
>  	unsigned int start, loop;
> -	unsigned int ctrl, ratec;
> +	unsigned int ctrl, ratec = 0;
>  	struct snd_pcm_runtime *runtime;
>  
>  	if (port->tlb_index < 0)
> @@ -523,12 +523,19 @@ static void sbxfi_playback_start(struct sbxfi *chip, struct sbxfi_port *port)
>  	start = port->tlb_index * SBXFI_PAGE_SIZE;
>  	loop = start + frames_to_bytes(runtime, runtime->buffer_size);
>  
> +	/*
> +	 * ratec is the rate selection mode, 0x4c = 48000hz, 0x5c = 96000hz,
> +	 * 0x6c = 192000hz.
> +	 */
>  	switch (runtime->rate) {
>  	case 48000:
> -		ratec = 0x4c; /* XXX what meaning? */
> +		ratec = 0x4c;
>  		break;
>  	case 96000:
> -		ratec = 0x5c; /* XXX what meaning? */
> +		ratec = 0x5c;
> +		break;
> +	case 192000:
> +		ratec = 0x6c;
>  		break;
>  	}
>  	ctrl = ratec;
> @@ -559,7 +566,7 @@ static void sbxfi_playback_stop(struct sbxfi *chip, struct sbxfi_port *port)
>  static void sbxfi_capture_start(struct sbxfi *chip, struct sbxfi_port *port)
>  {
>  	unsigned int start, loop;
> -	unsigned int ctrl, ratec;
> +	unsigned int ctrl, ratec = 0;
>  	struct snd_pcm_runtime *runtime;
>  
>  	if (port->tlb_index < 0)
> @@ -575,6 +582,9 @@ static void sbxfi_capture_start(struct sbxfi *chip, struct sbxfi_port *port)
>  	case 96000:
>  		ratec = 0x5d | SRCCTL_RUN_STATE;
>  		break;
> +	case 192000:
> +		ratec = 0x6d | SRCCTL_RUN_STATE;
> +		break;
>  	}
>  
>  	ctrl = ratec;
> -- 
> 1.5.5.4
> 
> _______________________________________________
> 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