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

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 */
int timer_init(void) {

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?

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.

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.

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.
participants (3)
-
Igor Grinberg
-
Rick Bronson
-
rick@efn.org