Message ID | 20210811114853.159298-2-nuno.sa@analog.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | AXI FAN new features and improvements | expand |
On Wed, Aug 11, 2021 at 01:48:51PM +0200, Nuno Sá wrote: > The core will only work if it's clock is enabled. This patch is a > minor enhancement to make sure that's the case. > > Signed-off-by: Nuno Sá <nuno.sa@analog.com> Applied. Thanks, Guenter > --- > drivers/hwmon/axi-fan-control.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/drivers/hwmon/axi-fan-control.c b/drivers/hwmon/axi-fan-control.c > index e3f6b03e6764..901d1588234d 100644 > --- a/drivers/hwmon/axi-fan-control.c > +++ b/drivers/hwmon/axi-fan-control.c > @@ -351,6 +351,11 @@ static int axi_fan_control_init(struct axi_fan_control_data *ctl, > return ret; > } > > +static void axi_fan_control_clk_disable(void *clk) > +{ > + clk_disable_unprepare(clk); > +} > + > static const struct hwmon_channel_info *axi_fan_control_info[] = { > HWMON_CHANNEL_INFO(pwm, HWMON_PWM_INPUT), > HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_FAULT | HWMON_F_LABEL), > @@ -406,6 +411,14 @@ static int axi_fan_control_probe(struct platform_device *pdev) > return PTR_ERR(clk); > } > > + ret = clk_prepare_enable(clk); > + if (ret) > + return ret; > + > + ret = devm_add_action_or_reset(&pdev->dev, axi_fan_control_clk_disable, clk); > + if (ret) > + return ret; > + > ctl->clk_rate = clk_get_rate(clk); > if (!ctl->clk_rate) > return -EINVAL;
diff --git a/drivers/hwmon/axi-fan-control.c b/drivers/hwmon/axi-fan-control.c index e3f6b03e6764..901d1588234d 100644 --- a/drivers/hwmon/axi-fan-control.c +++ b/drivers/hwmon/axi-fan-control.c @@ -351,6 +351,11 @@ static int axi_fan_control_init(struct axi_fan_control_data *ctl, return ret; } +static void axi_fan_control_clk_disable(void *clk) +{ + clk_disable_unprepare(clk); +} + static const struct hwmon_channel_info *axi_fan_control_info[] = { HWMON_CHANNEL_INFO(pwm, HWMON_PWM_INPUT), HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_FAULT | HWMON_F_LABEL), @@ -406,6 +411,14 @@ static int axi_fan_control_probe(struct platform_device *pdev) return PTR_ERR(clk); } + ret = clk_prepare_enable(clk); + if (ret) + return ret; + + ret = devm_add_action_or_reset(&pdev->dev, axi_fan_control_clk_disable, clk); + if (ret) + return ret; + ctl->clk_rate = clk_get_rate(clk); if (!ctl->clk_rate) return -EINVAL;
The core will only work if it's clock is enabled. This patch is a minor enhancement to make sure that's the case. Signed-off-by: Nuno Sá <nuno.sa@analog.com> --- drivers/hwmon/axi-fan-control.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)