All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
@ 2010-01-18  2:40 Thomas Abraham
  2010-01-18  3:21 ` Ben Dooks
  0 siblings, 1 reply; 11+ messages in thread
From: Thomas Abraham @ 2010-01-18  2:40 UTC (permalink / raw)
  To: linux-samsung-soc; +Cc: ben-linux, Thomas Abraham

This patch adds a additional check in s3c_set_clksrc function to ensure
that the clksrc_clk does have a choice of multiple clock sources. In addition
to this, a check is added to ensure that a parent is assigned to the clksrc_clk 
in case it does not have a choice of parent clocks.

Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
---
 arch/arm/plat-samsung/clock-clksrc.c |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
index 33c633a..835921d 100644
--- a/arch/arm/plat-samsung/clock-clksrc.c
+++ b/arch/arm/plat-samsung/clock-clksrc.c
@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
 {
 	struct clksrc_sources *srcs = clk->sources;
 	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
-	u32 clksrc = 0;
-
-	if (clk->reg_src.reg)
-		clksrc = __raw_readl(clk->reg_src.reg);
+	u32 clksrc;
 
+	if (!clk->reg_src.reg) {
+		if (!clk->clk.parent)
+		       printk(KERN_ERR "%s: no parent clock specified\n",
+				clk->clk.name);
+ 		return;		
+	}
+	
+	clksrc = __raw_readl(clk->reg_src.reg);
 	clksrc &= mask;
 	clksrc >>= clk->reg_src.shift;
 
-- 
1.6.3.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
  2010-01-18  2:40 Thomas Abraham
@ 2010-01-18  3:21 ` Ben Dooks
  2010-01-18  4:23   ` Thomas Abraham
  0 siblings, 1 reply; 11+ messages in thread
From: Ben Dooks @ 2010-01-18  3:21 UTC (permalink / raw)
  To: Thomas Abraham; +Cc: linux-samsung-soc, ben-linux

On Mon, Jan 18, 2010 at 11:40:04AM +0900, Thomas Abraham wrote:
> This patch adds a additional check in s3c_set_clksrc function to ensure
> that the clksrc_clk does have a choice of multiple clock sources. In addition
> to this, a check is added to ensure that a parent is assigned to the clksrc_clk 
> in case it does not have a choice of parent clocks.

'This patch' is redudnant in this case, so how about Add an additional check...

I assume as we're not getting a pile of s3c6410 reports that this isn't
an urgent fix and that we can add this to the next-samsung series.
 
> Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
> ---
>  arch/arm/plat-samsung/clock-clksrc.c |   13 +++++++++----
>  1 files changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
> index 33c633a..835921d 100644
> --- a/arch/arm/plat-samsung/clock-clksrc.c
> +++ b/arch/arm/plat-samsung/clock-clksrc.c
> @@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
>  {
>  	struct clksrc_sources *srcs = clk->sources;
>  	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
> -	u32 clksrc = 0;
> -
> -	if (clk->reg_src.reg)
> -		clksrc = __raw_readl(clk->reg_src.reg);
> +	u32 clksrc;
>  
> +	if (!clk->reg_src.reg) {
> +		if (!clk->clk.parent)
> +		       printk(KERN_ERR "%s: no parent clock specified\n",
> +				clk->clk.name);
> + 		return;		
> +	}
> +	
> +	clksrc = __raw_readl(clk->reg_src.reg);
>  	clksrc &= mask;
>  	clksrc >>= clk->reg_src.shift;
>  
> -- 
> 1.6.3.3
> 

 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
  2010-01-18  3:21 ` Ben Dooks
@ 2010-01-18  4:23   ` Thomas Abraham
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Abraham @ 2010-01-18  4:23 UTC (permalink / raw)
  To: Ben Dooks; +Cc: linux-samsung-soc

Hi Ben,

On Mon, Jan 18, 2010 at 12:21 PM, Ben Dooks <ben-linux@fluff.org> wrote:
> On Mon, Jan 18, 2010 at 11:40:04AM +0900, Thomas Abraham wrote:
>> This patch adds a additional check in s3c_set_clksrc function to ensure
>> that the clksrc_clk does have a choice of multiple clock sources. In addition
>> to this, a check is added to ensure that a parent is assigned to the clksrc_clk
>> in case it does not have a choice of parent clocks.
>
> 'This patch' is redudnant in this case, so how about Add an additional check...

Ok. I will remove 'This patch' phrase from the description and resend the patch.

>
> I assume as we're not getting a pile of s3c6410 reports that this isn't
> an urgent fix and that we can add this to the next-samsung series.

It is fine to add this to next-samsung. This patch is required for
V210 patch series.

>
>> Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
>> ---
>>  arch/arm/plat-samsung/clock-clksrc.c |   13 +++++++++----
>>  1 files changed, 9 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
>> index 33c633a..835921d 100644
>> --- a/arch/arm/plat-samsung/clock-clksrc.c
>> +++ b/arch/arm/plat-samsung/clock-clksrc.c
>> @@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
>>  {
>>       struct clksrc_sources *srcs = clk->sources;
>>       u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
>> -     u32 clksrc = 0;
>> -
>> -     if (clk->reg_src.reg)
>> -             clksrc = __raw_readl(clk->reg_src.reg);
>> +     u32 clksrc;
>>
>> +     if (!clk->reg_src.reg) {
>> +             if (!clk->clk.parent)
>> +                    printk(KERN_ERR "%s: no parent clock specified\n",
>> +                             clk->clk.name);
>> +             return;
>> +     }
>> +
>> +     clksrc = __raw_readl(clk->reg_src.reg);
>>       clksrc &= mask;
>>       clksrc >>= clk->reg_src.shift;
>>
>> --
>> 1.6.3.3
>>
>
>
> --
> Ben
>
> Q:      What's a light-year?
> A:      One-third less calories than a regular year.
>
> --
> 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
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
@ 2010-01-18  4:32 Thomas Abraham
  2010-01-18  4:49 ` Ben Dooks
  0 siblings, 1 reply; 11+ messages in thread
From: Thomas Abraham @ 2010-01-18  4:32 UTC (permalink / raw)
  To: linux-samsung-soc; +Cc: ben-linux, Thomas Abraham

Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk 
does have a choice of multiple clock sources. In addition to this, a check is 
added to ensure that a parent is assigned to the clksrc_clk in case it does not 
have a choice of parent clocks.

Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
---
 arch/arm/plat-samsung/clock-clksrc.c |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
index 33c633a..835921d 100644
--- a/arch/arm/plat-samsung/clock-clksrc.c
+++ b/arch/arm/plat-samsung/clock-clksrc.c
@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
 {
 	struct clksrc_sources *srcs = clk->sources;
 	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
-	u32 clksrc = 0;
-
-	if (clk->reg_src.reg)
-		clksrc = __raw_readl(clk->reg_src.reg);
+	u32 clksrc;
 
+	if (!clk->reg_src.reg) {
+		if (!clk->clk.parent)
+		       printk(KERN_ERR "%s: no parent clock specified\n",
+				clk->clk.name);
+ 		return;		
+	}
+	
+	clksrc = __raw_readl(clk->reg_src.reg);
 	clksrc &= mask;
 	clksrc >>= clk->reg_src.shift;
 
-- 
1.6.3.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
  2010-01-18  4:32 Thomas Abraham
@ 2010-01-18  4:49 ` Ben Dooks
  0 siblings, 0 replies; 11+ messages in thread
From: Ben Dooks @ 2010-01-18  4:49 UTC (permalink / raw)
  To: Thomas Abraham; +Cc: linux-samsung-soc, ben-linux

On Mon, Jan 18, 2010 at 01:32:23PM +0900, Thomas Abraham wrote:
> Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk 
> does have a choice of multiple clock sources. In addition to this, a check is 
> added to ensure that a parent is assigned to the clksrc_clk in case it does not 
> have a choice of parent clocks.

$ git am -s  tab-clk-fix
Applying: ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
/home/linux/bjd.git/.git/rebase-apply/patch:23: trailing whitespace, space before tab in indent.
                return;
/home/linux/bjd.git/.git/rebase-apply/patch:25: trailing whitespace.

warning: 2 lines add whitespace errors.

Please fix
Please also send with cc: to linux-arm-kernel list as well.
 
> Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
> ---
>  arch/arm/plat-samsung/clock-clksrc.c |   13 +++++++++----
>  1 files changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
> index 33c633a..835921d 100644
> --- a/arch/arm/plat-samsung/clock-clksrc.c
> +++ b/arch/arm/plat-samsung/clock-clksrc.c
> @@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
>  {
>  	struct clksrc_sources *srcs = clk->sources;
>  	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
> -	u32 clksrc = 0;
> -
> -	if (clk->reg_src.reg)
> -		clksrc = __raw_readl(clk->reg_src.reg);
> +	u32 clksrc;
>  
> +	if (!clk->reg_src.reg) {
> +		if (!clk->clk.parent)
> +		       printk(KERN_ERR "%s: no parent clock specified\n",
> +				clk->clk.name);
> + 		return;		
> +	}
> +	
> +	clksrc = __raw_readl(clk->reg_src.reg);
>  	clksrc &= mask;
>  	clksrc >>= clk->reg_src.shift;
>  
> -- 
> 1.6.3.3
> 

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
@ 2010-01-18  5:30 ` Thomas Abraham
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Abraham @ 2010-01-18  5:30 UTC (permalink / raw)
  To: linux-samsung-soc; +Cc: linux-arm-kernel, ben-linux

Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
does have a choice of multiple clock sources. In addition to this, a check is
added to ensure that a parent is assigned to the clksrc_clk in case it does not
have a choice of parent clocks.

Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
---
 arch/arm/plat-samsung/clock-clksrc.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
index 33c633a..98c6b88 100644
--- a/arch/arm/plat-samsung/clock-clksrc.c
+++ b/arch/arm/plat-samsung/clock-clksrc.c
@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
 {
 	struct clksrc_sources *srcs = clk->sources;
 	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
-	u32 clksrc = 0;
+	u32 clksrc;
 
-	if (clk->reg_src.reg)
-		clksrc = __raw_readl(clk->reg_src.reg);
+	if (!clk->reg_src.reg) {
+		if (!clk->clk.parent)
+			printk(KERN_ERR "%s: no parent clock specified\n",
+				clk->clk.name);
+		return;
+	}
 
+	clksrc = __raw_readl(clk->reg_src.reg);
 	clksrc &= mask;
 	clksrc >>= clk->reg_src.shift;
 
-- 
1.6.3.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
@ 2010-01-18  5:30 ` Thomas Abraham
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Abraham @ 2010-01-18  5:30 UTC (permalink / raw)
  To: linux-arm-kernel

Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
does have a choice of multiple clock sources. In addition to this, a check is
added to ensure that a parent is assigned to the clksrc_clk in case it does not
have a choice of parent clocks.

Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
---
 arch/arm/plat-samsung/clock-clksrc.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
index 33c633a..98c6b88 100644
--- a/arch/arm/plat-samsung/clock-clksrc.c
+++ b/arch/arm/plat-samsung/clock-clksrc.c
@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
 {
 	struct clksrc_sources *srcs = clk->sources;
 	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
-	u32 clksrc = 0;
+	u32 clksrc;
 
-	if (clk->reg_src.reg)
-		clksrc = __raw_readl(clk->reg_src.reg);
+	if (!clk->reg_src.reg) {
+		if (!clk->clk.parent)
+			printk(KERN_ERR "%s: no parent clock specified\n",
+				clk->clk.name);
+		return;
+	}
 
+	clksrc = __raw_readl(clk->reg_src.reg);
 	clksrc &= mask;
 	clksrc >>= clk->reg_src.shift;
 
-- 
1.6.3.3

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
  2010-01-18  5:30 ` Thomas Abraham
@ 2010-01-18  6:33   ` Ben Dooks
  -1 siblings, 0 replies; 11+ messages in thread
From: Ben Dooks @ 2010-01-18  6:33 UTC (permalink / raw)
  To: Thomas Abraham; +Cc: linux-samsung-soc, linux-arm-kernel, ben-linux

On Mon, Jan 18, 2010 at 02:30:16PM +0900, Thomas Abraham wrote:
> Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
> does have a choice of multiple clock sources. In addition to this, a check is
> added to ensure that a parent is assigned to the clksrc_clk in case it does not
> have a choice of parent clocks.

Applied to next-samsung-clock2.
 
> Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
> ---
>  arch/arm/plat-samsung/clock-clksrc.c |   11 ++++++++---
>  1 files changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
> index 33c633a..98c6b88 100644
> --- a/arch/arm/plat-samsung/clock-clksrc.c
> +++ b/arch/arm/plat-samsung/clock-clksrc.c
> @@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
>  {
>  	struct clksrc_sources *srcs = clk->sources;
>  	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
> -	u32 clksrc = 0;
> +	u32 clksrc;
>  
> -	if (clk->reg_src.reg)
> -		clksrc = __raw_readl(clk->reg_src.reg);
> +	if (!clk->reg_src.reg) {
> +		if (!clk->clk.parent)
> +			printk(KERN_ERR "%s: no parent clock specified\n",
> +				clk->clk.name);
> +		return;
> +	}
>  
> +	clksrc = __raw_readl(clk->reg_src.reg);
>  	clksrc &= mask;
>  	clksrc >>= clk->reg_src.shift;
>  
> -- 
> 1.6.3.3
> 
> --
> 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

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
@ 2010-01-18  6:33   ` Ben Dooks
  0 siblings, 0 replies; 11+ messages in thread
From: Ben Dooks @ 2010-01-18  6:33 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jan 18, 2010 at 02:30:16PM +0900, Thomas Abraham wrote:
> Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
> does have a choice of multiple clock sources. In addition to this, a check is
> added to ensure that a parent is assigned to the clksrc_clk in case it does not
> have a choice of parent clocks.

Applied to next-samsung-clock2.
 
> Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
> ---
>  arch/arm/plat-samsung/clock-clksrc.c |   11 ++++++++---
>  1 files changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
> index 33c633a..98c6b88 100644
> --- a/arch/arm/plat-samsung/clock-clksrc.c
> +++ b/arch/arm/plat-samsung/clock-clksrc.c
> @@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
>  {
>  	struct clksrc_sources *srcs = clk->sources;
>  	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
> -	u32 clksrc = 0;
> +	u32 clksrc;
>  
> -	if (clk->reg_src.reg)
> -		clksrc = __raw_readl(clk->reg_src.reg);
> +	if (!clk->reg_src.reg) {
> +		if (!clk->clk.parent)
> +			printk(KERN_ERR "%s: no parent clock specified\n",
> +				clk->clk.name);
> +		return;
> +	}
>  
> +	clksrc = __raw_readl(clk->reg_src.reg);
>  	clksrc &= mask;
>  	clksrc >>= clk->reg_src.shift;
>  
> -- 
> 1.6.3.3
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
  2010-01-18  8:42 Samsung Clock updates #2 Ben Dooks
@ 2010-01-18  8:42   ` Ben Dooks
  0 siblings, 0 replies; 11+ messages in thread
From: Ben Dooks @ 2010-01-18  8:42 UTC (permalink / raw)
  To: linux-samsung-soc, linux-arm-kernel; +Cc: Thomas Abraham, Ben Dooks

From: Thomas Abraham <thomas.ab@samsung.com>

Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
does have a choice of multiple clock sources. In addition to this, a check is
added to ensure that a parent is assigned to the clksrc_clk in case it does not
have a choice of parent clocks.

Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-samsung/clock-clksrc.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
index 33c633a..98c6b88 100644
--- a/arch/arm/plat-samsung/clock-clksrc.c
+++ b/arch/arm/plat-samsung/clock-clksrc.c
@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
 {
 	struct clksrc_sources *srcs = clk->sources;
 	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
-	u32 clksrc = 0;
+	u32 clksrc;
 
-	if (clk->reg_src.reg)
-		clksrc = __raw_readl(clk->reg_src.reg);
+	if (!clk->reg_src.reg) {
+		if (!clk->clk.parent)
+			printk(KERN_ERR "%s: no parent clock specified\n",
+				clk->clk.name);
+		return;
+	}
 
+	clksrc = __raw_readl(clk->reg_src.reg);
 	clksrc &= mask;
 	clksrc >>= clk->reg_src.shift;
 
-- 
1.6.0.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources
@ 2010-01-18  8:42   ` Ben Dooks
  0 siblings, 0 replies; 11+ messages in thread
From: Ben Dooks @ 2010-01-18  8:42 UTC (permalink / raw)
  To: linux-arm-kernel

From: Thomas Abraham <thomas.ab@samsung.com>

Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
does have a choice of multiple clock sources. In addition to this, a check is
added to ensure that a parent is assigned to the clksrc_clk in case it does not
have a choice of parent clocks.

Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-samsung/clock-clksrc.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/arch/arm/plat-samsung/clock-clksrc.c b/arch/arm/plat-samsung/clock-clksrc.c
index 33c633a..98c6b88 100644
--- a/arch/arm/plat-samsung/clock-clksrc.c
+++ b/arch/arm/plat-samsung/clock-clksrc.c
@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
 {
 	struct clksrc_sources *srcs = clk->sources;
 	u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
-	u32 clksrc = 0;
+	u32 clksrc;
 
-	if (clk->reg_src.reg)
-		clksrc = __raw_readl(clk->reg_src.reg);
+	if (!clk->reg_src.reg) {
+		if (!clk->clk.parent)
+			printk(KERN_ERR "%s: no parent clock specified\n",
+				clk->clk.name);
+		return;
+	}
 
+	clksrc = __raw_readl(clk->reg_src.reg);
 	clksrc &= mask;
 	clksrc >>= clk->reg_src.shift;
 
-- 
1.6.0.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2010-01-18  8:42 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-18  5:30 [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources Thomas Abraham
2010-01-18  5:30 ` Thomas Abraham
2010-01-18  6:33 ` Ben Dooks
2010-01-18  6:33   ` Ben Dooks
  -- strict thread matches above, loose matches on Subject: below --
2010-01-18  8:42 Samsung Clock updates #2 Ben Dooks
2010-01-18  8:42 ` [PATCH] ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources Ben Dooks
2010-01-18  8:42   ` Ben Dooks
2010-01-18  4:32 Thomas Abraham
2010-01-18  4:49 ` Ben Dooks
2010-01-18  2:40 Thomas Abraham
2010-01-18  3:21 ` Ben Dooks
2010-01-18  4:23   ` Thomas Abraham

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.