drivers/rtc/rtc-hym8563.c: return clock rate even when clock is disabled
authorHeiko Stuebner <heiko@sntech.de>
Thu, 16 Apr 2015 19:45:34 +0000 (12:45 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 17 Apr 2015 13:04:01 +0000 (09:04 -0400)
When the clock is disabled, do not return a rate of 0 but instead return
the rate the clock will be running at after it gets enabled.  This
prevents problems when the core clock code is trying to determine a
suitable rate, while the clock is still off.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/rtc/rtc-hym8563.c

index b936bb4096b5003900987b41d19e7d3c147f802a..d4a65619ef14347ca57aca37db62bd52545920f8 100644 (file)
@@ -309,7 +309,7 @@ static unsigned long hym8563_clkout_recalc_rate(struct clk_hw *hw,
        struct i2c_client *client = hym8563->client;
        int ret = i2c_smbus_read_byte_data(client, HYM8563_CLKOUT);
 
-       if (ret < 0 || ret & HYM8563_CLKOUT_DISABLE)
+       if (ret < 0)
                return 0;
 
        ret &= HYM8563_CLKOUT_MASK;