linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents
@ 2013-04-30 12:45 Fabio Baltieri
  2013-05-03  8:51 ` Ulf Hansson
  0 siblings, 1 reply; 5+ messages in thread
From: Fabio Baltieri @ 2013-04-30 12:45 UTC (permalink / raw)
  To: linux-arm-kernel

Fix clk_reg_sysctrl() to set main clock registers of new struct
clk_sysctrl even if the registered clock has no parents.

This fixes an issue where "ulpclk" was registered with all clk->reg_*
fields uninitialized, causing a -EINVAL error from clk_prepare().

Cc: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
---
 drivers/clk/ux500/clk-sysctrl.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/clk/ux500/clk-sysctrl.c b/drivers/clk/ux500/clk-sysctrl.c
index bc7e9bd..e364c9d 100644
--- a/drivers/clk/ux500/clk-sysctrl.c
+++ b/drivers/clk/ux500/clk-sysctrl.c
@@ -145,7 +145,13 @@ static struct clk *clk_reg_sysctrl(struct device *dev,
 		return ERR_PTR(-ENOMEM);
 	}
 
-	for (i = 0; i < num_parents; i++) {
+	/* set main clock registers */
+	clk->reg_sel[0] = reg_sel[0];
+	clk->reg_bits[0] = reg_bits[0];
+	clk->reg_mask[0] = reg_mask[0];
+
+	/* handle clocks with more than one parent */
+	for (i = 1; i < num_parents; i++) {
 		clk->reg_sel[i] = reg_sel[i];
 		clk->reg_bits[i] = reg_bits[i];
 		clk->reg_mask[i] = reg_mask[i];
-- 
1.8.2

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

* [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents
  2013-04-30 12:45 [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents Fabio Baltieri
@ 2013-05-03  8:51 ` Ulf Hansson
  2013-05-03  8:54   ` Ulf Hansson
  0 siblings, 1 reply; 5+ messages in thread
From: Ulf Hansson @ 2013-05-03  8:51 UTC (permalink / raw)
  To: linux-arm-kernel

On 30 April 2013 14:45, Fabio Baltieri <fabio.baltieri@linaro.org> wrote:
> Fix clk_reg_sysctrl() to set main clock registers of new struct
> clk_sysctrl even if the registered clock has no parents.
>
> This fixes an issue where "ulpclk" was registered with all clk->reg_*
> fields uninitialized, causing a -EINVAL error from clk_prepare().
>
> Cc: Ulf Hansson <ulf.hansson@linaro.org>
> Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
> ---
>  drivers/clk/ux500/clk-sysctrl.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/ux500/clk-sysctrl.c b/drivers/clk/ux500/clk-sysctrl.c
> index bc7e9bd..e364c9d 100644
> --- a/drivers/clk/ux500/clk-sysctrl.c
> +++ b/drivers/clk/ux500/clk-sysctrl.c
> @@ -145,7 +145,13 @@ static struct clk *clk_reg_sysctrl(struct device *dev,
>                 return ERR_PTR(-ENOMEM);
>         }
>
> -       for (i = 0; i < num_parents; i++) {
> +       /* set main clock registers */
> +       clk->reg_sel[0] = reg_sel[0];
> +       clk->reg_bits[0] = reg_bits[0];
> +       clk->reg_mask[0] = reg_mask[0];
> +
> +       /* handle clocks with more than one parent */
> +       for (i = 1; i < num_parents; i++) {
>                 clk->reg_sel[i] = reg_sel[i];
>                 clk->reg_bits[i] = reg_bits[i];
>                 clk->reg_mask[i] = reg_mask[i];
> --
> 1.8.2
>

Acked-by: Ulf Hansson <ulf.hansson@linaro.org>

This is bugfix, should go "stable" as well?

Kind regards
Ulf Hansson

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

* [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents
  2013-05-03  8:51 ` Ulf Hansson
@ 2013-05-03  8:54   ` Ulf Hansson
  2013-05-03  9:03     ` Fabio Baltieri
  0 siblings, 1 reply; 5+ messages in thread
From: Ulf Hansson @ 2013-05-03  8:54 UTC (permalink / raw)
  To: linux-arm-kernel

On 3 May 2013 10:51, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> On 30 April 2013 14:45, Fabio Baltieri <fabio.baltieri@linaro.org> wrote:
>> Fix clk_reg_sysctrl() to set main clock registers of new struct
>> clk_sysctrl even if the registered clock has no parents.
>>
>> This fixes an issue where "ulpclk" was registered with all clk->reg_*
>> fields uninitialized, causing a -EINVAL error from clk_prepare().
>>
>> Cc: Ulf Hansson <ulf.hansson@linaro.org>
>> Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
>> ---
>>  drivers/clk/ux500/clk-sysctrl.c | 8 +++++++-
>>  1 file changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/clk/ux500/clk-sysctrl.c b/drivers/clk/ux500/clk-sysctrl.c
>> index bc7e9bd..e364c9d 100644
>> --- a/drivers/clk/ux500/clk-sysctrl.c
>> +++ b/drivers/clk/ux500/clk-sysctrl.c
>> @@ -145,7 +145,13 @@ static struct clk *clk_reg_sysctrl(struct device *dev,
>>                 return ERR_PTR(-ENOMEM);
>>         }
>>
>> -       for (i = 0; i < num_parents; i++) {
>> +       /* set main clock registers */
>> +       clk->reg_sel[0] = reg_sel[0];
>> +       clk->reg_bits[0] = reg_bits[0];
>> +       clk->reg_mask[0] = reg_mask[0];
>> +
>> +       /* handle clocks with more than one parent */
>> +       for (i = 1; i < num_parents; i++) {
>>                 clk->reg_sel[i] = reg_sel[i];
>>                 clk->reg_bits[i] = reg_bits[i];
>>                 clk->reg_mask[i] = reg_mask[i];
>> --
>> 1.8.2
>>
>
> Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
>
> This is bugfix, should go "stable" as well?

Stable means 3.10 rcs, since the abx500 clk tree was added for 3.10.

>
> Kind regards
> Ulf Hansson

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

* [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents
  2013-05-03  8:54   ` Ulf Hansson
@ 2013-05-03  9:03     ` Fabio Baltieri
  2013-05-14 19:06       ` Mike Turquette
  0 siblings, 1 reply; 5+ messages in thread
From: Fabio Baltieri @ 2013-05-03  9:03 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, May 03, 2013 at 10:54:09AM +0200, Ulf Hansson wrote:
> On 3 May 2013 10:51, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > On 30 April 2013 14:45, Fabio Baltieri <fabio.baltieri@linaro.org> wrote:
> >> Fix clk_reg_sysctrl() to set main clock registers of new struct
> >> clk_sysctrl even if the registered clock has no parents.
> >>
> >> This fixes an issue where "ulpclk" was registered with all clk->reg_*
> >> fields uninitialized, causing a -EINVAL error from clk_prepare().
> >>
> >> Cc: Ulf Hansson <ulf.hansson@linaro.org>
> >> Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
> >> ---
> >>  drivers/clk/ux500/clk-sysctrl.c | 8 +++++++-
> >>  1 file changed, 7 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/clk/ux500/clk-sysctrl.c b/drivers/clk/ux500/clk-sysctrl.c
> >> index bc7e9bd..e364c9d 100644
> >> --- a/drivers/clk/ux500/clk-sysctrl.c
> >> +++ b/drivers/clk/ux500/clk-sysctrl.c
> >> @@ -145,7 +145,13 @@ static struct clk *clk_reg_sysctrl(struct device *dev,
> >>                 return ERR_PTR(-ENOMEM);
> >>         }
> >>
> >> -       for (i = 0; i < num_parents; i++) {
> >> +       /* set main clock registers */
> >> +       clk->reg_sel[0] = reg_sel[0];
> >> +       clk->reg_bits[0] = reg_bits[0];
> >> +       clk->reg_mask[0] = reg_mask[0];
> >> +
> >> +       /* handle clocks with more than one parent */
> >> +       for (i = 1; i < num_parents; i++) {
> >>                 clk->reg_sel[i] = reg_sel[i];
> >>                 clk->reg_bits[i] = reg_bits[i];
> >>                 clk->reg_mask[i] = reg_mask[i];
> >> --
> >> 1.8.2
> >>
> >
> > Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
> >
> > This is bugfix, should go "stable" as well?
> 
> Stable means 3.10 rcs, since the abx500 clk tree was added for 3.10.

Thanks!  Yes, it would be great if this could be queued up for an -rc.

Fabio

-- 
Fabio Baltieri

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

* [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents
  2013-05-03  9:03     ` Fabio Baltieri
@ 2013-05-14 19:06       ` Mike Turquette
  0 siblings, 0 replies; 5+ messages in thread
From: Mike Turquette @ 2013-05-14 19:06 UTC (permalink / raw)
  To: linux-arm-kernel

Quoting Fabio Baltieri (2013-05-03 02:03:05)
> On Fri, May 03, 2013 at 10:54:09AM +0200, Ulf Hansson wrote:
> > On 3 May 2013 10:51, Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > > On 30 April 2013 14:45, Fabio Baltieri <fabio.baltieri@linaro.org> wrote:
> > >> Fix clk_reg_sysctrl() to set main clock registers of new struct
> > >> clk_sysctrl even if the registered clock has no parents.
> > >>
> > >> This fixes an issue where "ulpclk" was registered with all clk->reg_*
> > >> fields uninitialized, causing a -EINVAL error from clk_prepare().
> > >>
> > >> Cc: Ulf Hansson <ulf.hansson@linaro.org>
> > >> Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org>
> > >> ---
> > >>  drivers/clk/ux500/clk-sysctrl.c | 8 +++++++-
> > >>  1 file changed, 7 insertions(+), 1 deletion(-)
> > >>
> > >> diff --git a/drivers/clk/ux500/clk-sysctrl.c b/drivers/clk/ux500/clk-sysctrl.c
> > >> index bc7e9bd..e364c9d 100644
> > >> --- a/drivers/clk/ux500/clk-sysctrl.c
> > >> +++ b/drivers/clk/ux500/clk-sysctrl.c
> > >> @@ -145,7 +145,13 @@ static struct clk *clk_reg_sysctrl(struct device *dev,
> > >>                 return ERR_PTR(-ENOMEM);
> > >>         }
> > >>
> > >> -       for (i = 0; i < num_parents; i++) {
> > >> +       /* set main clock registers */
> > >> +       clk->reg_sel[0] = reg_sel[0];
> > >> +       clk->reg_bits[0] = reg_bits[0];
> > >> +       clk->reg_mask[0] = reg_mask[0];
> > >> +
> > >> +       /* handle clocks with more than one parent */
> > >> +       for (i = 1; i < num_parents; i++) {
> > >>                 clk->reg_sel[i] = reg_sel[i];
> > >>                 clk->reg_bits[i] = reg_bits[i];
> > >>                 clk->reg_mask[i] = reg_mask[i];
> > >> --
> > >> 1.8.2
> > >>
> > >
> > > Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
> > >
> > > This is bugfix, should go "stable" as well?
> > 
> > Stable means 3.10 rcs, since the abx500 clk tree was added for 3.10.
> 
> Thanks!  Yes, it would be great if this could be queued up for an -rc.
> 

Taken into clk-fixes.

Thanks!
Mike

> Fabio
> 
> -- 
> Fabio Baltieri

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

end of thread, other threads:[~2013-05-14 19:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-30 12:45 [PATCH] clk: ux500: clk-sysctrl: handle clocks with no parents Fabio Baltieri
2013-05-03  8:51 ` Ulf Hansson
2013-05-03  8:54   ` Ulf Hansson
2013-05-03  9:03     ` Fabio Baltieri
2013-05-14 19:06       ` Mike Turquette

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).