ALSA: at73c213: clk_round_rate() can return a zero upon error
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@nvidia.com> Acked-by: Hans-Christian Egtvedt <egtvedt@samfundet.no> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Родитель
ed326363d7
Коммит
f62438ac53
|
@ -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. */
|
||||
|
|
Загрузка…
Ссылка в новой задаче