From 535b9e1da1046014dba1bf13ff61ffacde800c4d Mon Sep 17 00:00:00 2001 From: Heiko Stuebner Date: Fri, 3 Jan 2014 14:10:23 +1100 Subject: [PATCH] rtc: hym8563: include clkout code only if COMMON_CLK active The contents of clk-provide.h, struct clk_hw etc, are only available if CONFIG_COMMON_CLK is selected. Therefore IS_ENABLED(COMMON_CLK) is not sufficient and real preprocessor conditions are necessary to keep the code in question from being compiled on non-COMMON_CLK systems. Signed-off-by: Heiko Stuebner Cc: Stephen Rothwell Reported-by: Wu Fengguang Signed-off-by: Andrew Morton --- drivers/rtc/rtc-hym8563.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/rtc/rtc-hym8563.c b/drivers/rtc/rtc-hym8563.c index 841392cb2e42..b56e3d3fbfd3 100644 --- a/drivers/rtc/rtc-hym8563.c +++ b/drivers/rtc/rtc-hym8563.c @@ -87,7 +87,9 @@ struct hym8563 { struct i2c_client *client; struct rtc_device *rtc; bool valid; +#ifdef CONFIG_COMMON_CLK struct clk_hw clkout_hw; +#endif }; /* @@ -290,6 +292,7 @@ static const struct rtc_class_ops hym8563_rtc_ops = { * Handling of the clkout */ +#ifdef CONFIG_COMMON_CLK #define clkout_hw_to_hym8563(_hw) container_of(_hw, struct hym8563, clkout_hw) static int clkout_rates[] = { @@ -423,6 +426,7 @@ static struct clk *hym8563_clkout_register_clk(struct hym8563 *hym8563) return clk; } +#endif /* * The alarm interrupt is implemented as a level-low interrupt in the @@ -565,8 +569,9 @@ static int hym8563_probe(struct i2c_client *client, if (IS_ERR(hym8563->rtc)) return PTR_ERR(hym8563->rtc); - if (IS_ENABLED(CONFIG_COMMON_CLK)) - hym8563_clkout_register_clk(hym8563); +#ifdef CONFIG_COMMON_CLK + hym8563_clkout_register_clk(hym8563); +#endif return 0; } -- 2.39.5