Patchwork [U-Boot,1/1] Fix hang when entering udelay after GPTIMER2 overflows (about 22 minutes on AM37x)

login
register
mail settings
Submitter rick@efn.org
Date May 16, 2011, 9:52 p.m.
Message ID <2e14176d1c18d2db92ae34bd35764e9c.squirrel@webmail.efn.org>
Download mbox | patch
Permalink /patch/95839/
State Rejected
Headers show

Comments

rick@efn.org - May 16, 2011, 9:52 p.m.
Signed-off-by: Rick Bronson <rick@efn.org>
---
 arch/arm/cpu/armv7/omap-common/timer.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

 {
Igor Grinberg - June 16, 2011, 4:43 p.m.
On 05/17/11 00:52, rick@efn.org wrote:

> Signed-off-by: Rick Bronson <rick@efn.org>
> ---
>  arch/arm/cpu/armv7/omap-common/timer.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/cpu/armv7/omap-common/timer.c
> b/arch/arm/cpu/armv7/omap-common/timer.c
> index 9beebb1..3c9d488 100644
> --- a/arch/arm/cpu/armv7/omap-common/timer.c
> +++ b/arch/arm/cpu/armv7/omap-common/timer.c
> @@ -44,7 +44,7 @@ static struct gptimer *timer_base = (struct gptimer
> *)CONFIG_SYS_TIMERBASE;
>   */
>
>  #define TIMER_CLOCK	(V_SCLK / (2 << CONFIG_SYS_PTV))
> -#define TIMER_LOAD_VAL	0xffffffff
> +#define TIMER_LOAD_VAL	0  /* counter starts from 0 on reload */

Has this been tested?
If yes, then on what hardware (board)?
Is it only AM SoCs or DM too?
Rick Bronson - June 16, 2011, 7:52 p.m.
Hi Igor,

  Yes, I have tested this on the AM3715 but not on any other parts.

  Cheers,

  Rick

> On 05/17/11 00:52, rick@efn.org wrote:
> 
> > Signed-off-by: Rick Bronson <rick@efn.org>
> > ---
> >  arch/arm/cpu/armv7/omap-common/timer.c |    2 +-
> >  1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/arch/arm/cpu/armv7/omap-common/timer.c
> > b/arch/arm/cpu/armv7/omap-common/timer.c
> > index 9beebb1..3c9d488 100644
> > --- a/arch/arm/cpu/armv7/omap-common/timer.c
> > +++ b/arch/arm/cpu/armv7/omap-common/timer.c
> > @@ -44,7 +44,7 @@ static struct gptimer *timer_base = (struct gptimer
> > *)CONFIG_SYS_TIMERBASE;
> >   */
> >
> >  #define TIMER_CLOCK	(V_SCLK / (2 << CONFIG_SYS_PTV))
> > -#define TIMER_LOAD_VAL	0xffffffff
> > +#define TIMER_LOAD_VAL	0  /* counter starts from 0 on reload */
> 
> Has this been tested?
> If yes, then on what hardware (board)?
> Is it only AM SoCs or DM too?
> 
> 
> -- 
> Regards,
> Igor.
> 
> 
>
Igor Grinberg - June 17, 2011, 3:40 p.m.
Hi Rick,

I've been browsing through the mailing list and found a similar patch [1]
sent about a half a year ago by: John Rigby <john.rigby@linaro.org>
It has neither been accepted, nor rejected.

It looks like John's patch is a bit cleaner and has a more complete
commit message. I can test it on DM3730/AM3703/OMAP3530
and some time later on AM3517.
Can you please, also test it on your available hardware?

Sandeep,
can you please, take a look at this?

[1] http://patchwork.ozlabs.org/patch/76803/


On 06/16/11 22:52, Rick Bronson wrote:
> Hi Igor,
>
>   Yes, I have tested this on the AM3715 but not on any other parts.
>
>   Cheers,
>
>   Rick
>
>> On 05/17/11 00:52, rick@efn.org wrote:
>>
>>> Signed-off-by: Rick Bronson <rick@efn.org>
>>> ---
>>>  arch/arm/cpu/armv7/omap-common/timer.c |    2 +-
>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/arch/arm/cpu/armv7/omap-common/timer.c
>>> b/arch/arm/cpu/armv7/omap-common/timer.c
>>> index 9beebb1..3c9d488 100644
>>> --- a/arch/arm/cpu/armv7/omap-common/timer.c
>>> +++ b/arch/arm/cpu/armv7/omap-common/timer.c
>>> @@ -44,7 +44,7 @@ static struct gptimer *timer_base = (struct gptimer
>>> *)CONFIG_SYS_TIMERBASE;
>>>   */
>>>
>>>  #define TIMER_CLOCK	(V_SCLK / (2 << CONFIG_SYS_PTV))
>>> -#define TIMER_LOAD_VAL	0xffffffff
>>> +#define TIMER_LOAD_VAL	0  /* counter starts from 0 on reload */
>> Has this been tested?
>> If yes, then on what hardware (board)?
>> Is it only AM SoCs or DM too?
>>
>>
>> -- 
>> Regards,
>> Igor.
>>
>>
>>
Rick Bronson - June 17, 2011, 4:34 p.m.
Hi Igor,

  Yes, I agree.  John's patch is better.

  I'll try to test it this weekend.

  If you don't hear from me, ping me on Monday.

 Thanks,

 Rick

> Hi Rick,
> 
> I've been browsing through the mailing list and found a similar patch [1]
> sent about a half a year ago by: John Rigby <john.rigby@linaro.org>
> It has neither been accepted, nor rejected.
> 
> It looks like John's patch is a bit cleaner and has a more complete
> commit message. I can test it on DM3730/AM3703/OMAP3530
> and some time later on AM3517.
> Can you please, also test it on your available hardware?
> 
> Sandeep,
> can you please, take a look at this?
> 
> [1] http://patchwork.ozlabs.org/patch/76803/
> 
> 
> On 06/16/11 22:52, Rick Bronson wrote:
> > Hi Igor,
> >
> >   Yes, I have tested this on the AM3715 but not on any other parts.
> >
> >   Cheers,
> >
> >   Rick
> >
> >> On 05/17/11 00:52, rick@efn.org wrote:
> >>
> >>> Signed-off-by: Rick Bronson <rick@efn.org>
> >>> ---
> >>>  arch/arm/cpu/armv7/omap-common/timer.c |    2 +-
> >>>  1 files changed, 1 insertions(+), 1 deletions(-)
> >>>
> >>> diff --git a/arch/arm/cpu/armv7/omap-common/timer.c
> >>> b/arch/arm/cpu/armv7/omap-common/timer.c
> >>> index 9beebb1..3c9d488 100644
> >>> --- a/arch/arm/cpu/armv7/omap-common/timer.c
> >>> +++ b/arch/arm/cpu/armv7/omap-common/timer.c
> >>> @@ -44,7 +44,7 @@ static struct gptimer *timer_base = (struct gptimer
> >>> *)CONFIG_SYS_TIMERBASE;
> >>>   */
> >>>
> >>>  #define TIMER_CLOCK	(V_SCLK / (2 << CONFIG_SYS_PTV))
> >>> -#define TIMER_LOAD_VAL	0xffffffff
> >>> +#define TIMER_LOAD_VAL	0  /* counter starts from 0 on reload */
> >> Has this been tested?
> >> If yes, then on what hardware (board)?
> >> Is it only AM SoCs or DM too?
> >>
> >>
> >> -- 
> >> Regards,
> >> Igor.
> >>
> >>
> >>
> 
> -- 
> Regards,
> Igor.

Patch

diff --git a/arch/arm/cpu/armv7/omap-common/timer.c
b/arch/arm/cpu/armv7/omap-common/timer.c
index 9beebb1..3c9d488 100644
--- a/arch/arm/cpu/armv7/omap-common/timer.c
+++ b/arch/arm/cpu/armv7/omap-common/timer.c
@@ -44,7 +44,7 @@  static struct gptimer *timer_base = (struct gptimer
*)CONFIG_SYS_TIMERBASE;
  */

 #define TIMER_CLOCK	(V_SCLK / (2 << CONFIG_SYS_PTV))
-#define TIMER_LOAD_VAL	0xffffffff
+#define TIMER_LOAD_VAL	0  /* counter starts from 0 on reload */

 int timer_init(void)