[alsa-devel] [PATCH] ALSA: at73c213: clk_round_rate() can return a zero upon error

Takashi Iwai tiwai at suse.de
Tue Dec 10 08:56:14 CET 2013


At Mon, 9 Dec 2013 18:40:48 -0800,
Paul Walmsley wrote:
> 
> 
> Treat both negative and zero return values from clk_round_rate()
> as errors.  This is needed since subsequent patches will convert
> clk_round_rate()'s return value to be an unsigned type, rather
> than a signed type, since some clock sources can generate rates higher 
> than (2^31)-1 Hz.
> 
> Eventually, when calling clk_round_rate(), only a return value of
> zero will be considered a error.  All other values will be
> considered valid rates.  The comparison against values less than
> 0 is kept to preserve the correct behavior in the meantime.
> 
> Signed-off-by: Paul Walmsley <pwalmsley at nvidia.com>
> Cc: Hans-Christian Egtvedt <egtvedt at samfundet.no>
> Cc: Takashi Iwai <tiwai at suse.de>
> Cc: Jaroslav Kysela <perex at perex.cz>
> ---
> Applies on v3.13-rc3.  See also:
> 
> http://marc.info/?l=linux-arm-kernel&m=138542591313620&w=2

Is the behavior "returning zero upon error" already in 3.13?  That is,
should this (and another) patch be taken as a 3.13-fix patch, or it's
for 3.14?


thanks,

Takashi


> 
>   sound/spi/at73c213.c |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/spi/at73c213.c b/sound/spi/at73c213.c
> index 8e3d9a6c7a3b..25c38afaee49 100644
> --- a/sound/spi/at73c213.c
> +++ b/sound/spi/at73c213.c
> @@ -174,7 +174,7 @@ static int snd_at73c213_set_bitrate(struct snd_at73c213 *chip)
>   		dac_rate_new = 8 * (ssc_rate / ssc_div);
> 
>   		status = clk_round_rate(chip->board->dac_clk, dac_rate_new);
> -		if (status < 0)
> +		if (status <= 0)
>   			return status;
> 
>   		/* Ignore difference smaller than 256 Hz. */
> 


More information about the Alsa-devel mailing list