We need to call clk_put on display clock, in the same way as functional clock.
Signed-off-by: Julien CHAUVEAU <[email protected]>
---
drivers/gpu/drm/tilcdc/tilcdc_drv.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
index 79a34cb..ccc1cdb 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
@@ -136,6 +136,9 @@ static int tilcdc_unload(struct drm_device *dev)
CPUFREQ_TRANSITION_NOTIFIER);
#endif
+ if (priv->disp_clk)
+ clk_put(priv->disp_clk);
+
if (priv->clk)
clk_put(priv->clk);
--
2.1.0
On Wed, Nov 19, 2014 at 03:13:20PM +0100, Julien CHAUVEAU wrote:
> We need to call clk_put on display clock, in the same way as functional clock.
>
> Signed-off-by: Julien CHAUVEAU <[email protected]>
> ---
> drivers/gpu/drm/tilcdc/tilcdc_drv.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> index 79a34cb..ccc1cdb 100644
> --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> @@ -136,6 +136,9 @@ static int tilcdc_unload(struct drm_device *dev)
> CPUFREQ_TRANSITION_NOTIFIER);
> #endif
>
> + if (priv->disp_clk)
> + clk_put(priv->disp_clk);
> +
> if (priv->clk)
> clk_put(priv->clk);
we should actually remove the priv->$clk check. clk_put() is safe
against NULL pointers.
--
balbi
We need to call clk_put on display clock, in the same way as functional clock.
Also remove the check for priv->clk, since clk_put() is safe against NULL pointers.
Signed-off-by: Julien CHAUVEAU <[email protected]>
---
Changes since v1:
- remove the check for priv->clk, as suggested by Felipe Balbi
drivers/gpu/drm/tilcdc/tilcdc_drv.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
index 79a34cb..b0c9687 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
@@ -136,8 +136,8 @@ static int tilcdc_unload(struct drm_device *dev)
CPUFREQ_TRANSITION_NOTIFIER);
#endif
- if (priv->clk)
- clk_put(priv->clk);
+ clk_put(priv->disp_clk);
+ clk_put(priv->clk);
if (priv->mmio)
iounmap(priv->mmio);
--
2.1.0