Patchwork rtc: rtc-s3c: use clk_prepare_enable and clk_disable_unprepare

login
register
mail settings
Submitter Vivek Gautam
Date April 9, 2013, 2:27 p.m.
Message ID <1365517660-9322-1-git-send-email-gautam.vivek@samsung.com>
Download mbox | patch
Permalink /patch/235100/
State New
Headers show

Comments

Vivek Gautam - April 9, 2013, 2:27 p.m.
From: Thomas Abraham <thomas.abraham@linaro.org>

Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare
calls as required by common clock framework.

Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
---

The v1 of this patch is pretty old, but the change needs to be merged to
avoid getting those needless WARN_ON() dumps on console.

Changes from v1:
 - Not using clk_disable_unprepare() at the end of s3c_rtc_probe(), since
   this will unprepare the rtc clock which is again getting used in other
   funtions later.
 - Using clk_unprepare() at the remove() instead to fix things up.

 drivers/rtc/rtc-s3c.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
Sylwester Nawrocki - April 10, 2013, 9:50 a.m.
On 04/09/2013 04:27 PM, Vivek Gautam wrote:
> From: Thomas Abraham <thomas.abraham@linaro.org>
> 
> Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare
> calls as required by common clock framework.
> 
> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
> Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>

Thanks Vivek.

Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

> ---
> 
> The v1 of this patch is pretty old, but the change needs to be merged to
> avoid getting those needless WARN_ON() dumps on console.
> 
> Changes from v1:
>  - Not using clk_disable_unprepare() at the end of s3c_rtc_probe(), since
>    this will unprepare the rtc clock which is again getting used in other
>    funtions later.
>  - Using clk_unprepare() at the remove() instead to fix things up.
> 
>  drivers/rtc/rtc-s3c.c |    5 +++--
>  1 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c
> index fb994e9..e3528c9 100644
> --- a/drivers/rtc/rtc-s3c.c
> +++ b/drivers/rtc/rtc-s3c.c
> @@ -430,6 +430,7 @@ static int s3c_rtc_remove(struct platform_device *dev)
>  
>  	s3c_rtc_setaie(&dev->dev, 0);
>  
> +	clk_unprepare(rtc_clk);
>  	rtc_clk = NULL;
>  
>  	return 0;
> @@ -498,7 +499,7 @@ static int s3c_rtc_probe(struct platform_device *pdev)
>  		return ret;
>  	}
>  
> -	clk_enable(rtc_clk);
> +	clk_prepare_enable(rtc_clk);
>  
>  	/* check to see if everything is setup correctly */
>  
> @@ -578,7 +579,7 @@ static int s3c_rtc_probe(struct platform_device *pdev)
>  
>   err_nortc:
>  	s3c_rtc_enable(pdev, 0);
> -	clk_disable(rtc_clk);
> +	clk_disable_unprepare(rtc_clk);
>  
>  	return ret;
>  }
Vivek Gautam - April 10, 2013, 11:39 a.m.
On Wed, Apr 10, 2013 at 3:20 PM, Sylwester Nawrocki
<s.nawrocki@samsung.com> wrote:
> On 04/09/2013 04:27 PM, Vivek Gautam wrote:
>> From: Thomas Abraham <thomas.abraham@linaro.org>
>>
>> Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare
>> calls as required by common clock framework.
>>
>> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
>> Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
>
> Thanks Vivek.

your welcome  :-)

>
> Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
>
Jingoo Han - April 11, 2013, 4:09 a.m.
On Wednesday, April 10, 2013 6:50 PM, Sylwester Nawrocki wrote:
> On 04/09/2013 04:27 PM, Vivek Gautam wrote:
> > From: Thomas Abraham <thomas.abraham@linaro.org>
> >
> > Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare
> > calls as required by common clock framework.
> >
> > Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
> > Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
> 
> Thanks Vivek.
> 
> Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

CC'ed Andrew Morton

It looks good.
Reviewed-by: Jingoo Han <jg1.han@samsung.com>

> 
> > ---
> >
> > The v1 of this patch is pretty old, but the change needs to be merged to
> > avoid getting those needless WARN_ON() dumps on console.
> >
> > Changes from v1:
> >  - Not using clk_disable_unprepare() at the end of s3c_rtc_probe(), since
> >    this will unprepare the rtc clock which is again getting used in other
> >    funtions later.
> >  - Using clk_unprepare() at the remove() instead to fix things up.
> >
> >  drivers/rtc/rtc-s3c.c |    5 +++--
> >  1 files changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c
> > index fb994e9..e3528c9 100644
> > --- a/drivers/rtc/rtc-s3c.c
> > +++ b/drivers/rtc/rtc-s3c.c
> > @@ -430,6 +430,7 @@ static int s3c_rtc_remove(struct platform_device *dev)
> >
> >  	s3c_rtc_setaie(&dev->dev, 0);
> >
> > +	clk_unprepare(rtc_clk);
> >  	rtc_clk = NULL;
> >
> >  	return 0;
> > @@ -498,7 +499,7 @@ static int s3c_rtc_probe(struct platform_device *pdev)
> >  		return ret;
> >  	}
> >
> > -	clk_enable(rtc_clk);
> > +	clk_prepare_enable(rtc_clk);
> >
> >  	/* check to see if everything is setup correctly */
> >
> > @@ -578,7 +579,7 @@ static int s3c_rtc_probe(struct platform_device *pdev)
> >
> >   err_nortc:
> >  	s3c_rtc_enable(pdev, 0);
> > -	clk_disable(rtc_clk);
> > +	clk_disable_unprepare(rtc_clk);
> >
> >  	return ret;
> >  }
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Kukjin Kim - April 22, 2013, 5:10 p.m.
On 04/11/13 13:09, Jingoo Han wrote:
> On Wednesday, April 10, 2013 6:50 PM, Sylwester Nawrocki wrote:
>> On 04/09/2013 04:27 PM, Vivek Gautam wrote:
>>> From: Thomas Abraham<thomas.abraham@linaro.org>
>>>
>>> Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare
>>> calls as required by common clock framework.
>>>
>>> Signed-off-by: Thomas Abraham<thomas.abraham@linaro.org>
>>> Signed-off-by: Vivek Gautam<gautam.vivek@samsung.com>

Acked-by: Kukjin Kim <kgene.kim@samsung.com>

>>
>> Thanks Vivek.
>>
>> Reviewed-by: Sylwester Nawrocki<s.nawrocki@samsung.com>
>
> CC'ed Andrew Morton
>
> It looks good.
> Reviewed-by: Jingoo Han<jg1.han@samsung.com>
>
>>
>>> ---
>>>
>>> The v1 of this patch is pretty old, but the change needs to be merged to
>>> avoid getting those needless WARN_ON() dumps on console.
>>>
>>> Changes from v1:
>>>   - Not using clk_disable_unprepare() at the end of s3c_rtc_probe(), since
>>>     this will unprepare the rtc clock which is again getting used in other
>>>     funtions later.
>>>   - Using clk_unprepare() at the remove() instead to fix things up.
>>>
>>>   drivers/rtc/rtc-s3c.c |    5 +++--
>>>   1 files changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c
>>> index fb994e9..e3528c9 100644
>>> --- a/drivers/rtc/rtc-s3c.c
>>> +++ b/drivers/rtc/rtc-s3c.c
>>> @@ -430,6 +430,7 @@ static int s3c_rtc_remove(struct platform_device *dev)
>>>
>>>   	s3c_rtc_setaie(&dev->dev, 0);
>>>
>>> +	clk_unprepare(rtc_clk);
>>>   	rtc_clk = NULL;
>>>
>>>   	return 0;
>>> @@ -498,7 +499,7 @@ static int s3c_rtc_probe(struct platform_device *pdev)
>>>   		return ret;
>>>   	}
>>>
>>> -	clk_enable(rtc_clk);
>>> +	clk_prepare_enable(rtc_clk);
>>>
>>>   	/* check to see if everything is setup correctly */
>>>
>>> @@ -578,7 +579,7 @@ static int s3c_rtc_probe(struct platform_device *pdev)
>>>
>>>    err_nortc:
>>>   	s3c_rtc_enable(pdev, 0);
>>> -	clk_disable(rtc_clk);
>>> +	clk_disable_unprepare(rtc_clk);
>>>
>>>   	return ret;
>>>   }

Patch

diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c
index fb994e9..e3528c9 100644
--- a/drivers/rtc/rtc-s3c.c
+++ b/drivers/rtc/rtc-s3c.c
@@ -430,6 +430,7 @@  static int s3c_rtc_remove(struct platform_device *dev)
 
 	s3c_rtc_setaie(&dev->dev, 0);
 
+	clk_unprepare(rtc_clk);
 	rtc_clk = NULL;
 
 	return 0;
@@ -498,7 +499,7 @@  static int s3c_rtc_probe(struct platform_device *pdev)
 		return ret;
 	}
 
-	clk_enable(rtc_clk);
+	clk_prepare_enable(rtc_clk);
 
 	/* check to see if everything is setup correctly */
 
@@ -578,7 +579,7 @@  static int s3c_rtc_probe(struct platform_device *pdev)
 
  err_nortc:
 	s3c_rtc_enable(pdev, 0);
-	clk_disable(rtc_clk);
+	clk_disable_unprepare(rtc_clk);
 
 	return ret;
 }