[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.02.1312091827300.4127@tamien>
Date: Mon, 9 Dec 2013 18:35:24 -0800
From: Paul Walmsley <pwalmsley@...dia.com>
To: Nicolas Ferre <nicolas.ferre@...el.com>,
Håvard Skinnemoen <hskinnemoen@...il.com>,
Hans-Christian Egtvedt <egtvedt@...fundet.no>,
Jean-Christophe PLAGNIOL-VILLARD <plagnioj@...osoft.com>
CC: <linux-kernel@...r.kernel.org>
Subject: [PATCH] avr32: favr-32: 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 <paul@...an.com>
Cc: Nicolas Ferre <nicolas.ferre@...el.com>
Cc: Håvard Skinnemoen <hskinnemoen@...il.com>
Cc: Hans-Christian Egtvedt <egtvedt@...fundet.no>
Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@...osoft.com>
---
Applies on v3.13-rc3. See also:
http://marc.info/?l=linux-arm-kernel&m=138542591313620&w=2
arch/avr32/boards/favr-32/setup.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/avr32/boards/favr-32/setup.c b/arch/avr32/boards/favr-32/setup.c
index 7b1f2cd85400..1f121497b517 100644
--- a/arch/avr32/boards/favr-32/setup.c
+++ b/arch/avr32/boards/favr-32/setup.c
@@ -298,8 +298,10 @@ static int __init set_abdac_rate(struct platform_device *pdev)
*/
retval = clk_round_rate(pll1,
CONFIG_BOARD_FAVR32_ABDAC_RATE * 256 * 16);
- if (retval < 0)
+ if (retval <= 0) {
+ retval = -EINVAL;
goto out_abdac;
+ }
retval = clk_set_rate(pll1, retval);
if (retval != 0)
Powered by blists - more mailing lists