| Submitter | Prafulla Wadaskar |
|---|---|
| Date | Feb. 8, 2012, 8:49 a.m. |
| Message ID | <1328690999-16077-1-git-send-email-prafulla@marvell.com> |
| Download | mbox | patch |
| Permalink | /patch/140058/ |
| State | Superseded |
| Headers | show |
Comments
> -----Original Message----- > From: Graeme Russ [mailto:graeme.russ@gmail.com] > Sent: 08 February 2012 11:00 > To: Prafulla Wadaskar > Cc: u-boot@lists.denx.de; Ashish Karkare; Prabhanjan Sarnaik > Subject: Re: [U-Boot] [PATCH] bugfix: all Marvell specific build fails > due to undefined reference to `get_ticks' > > Hi Prafulla, > > On Wed, Feb 8, 2012 at 7:49 PM, Prafulla Wadaskar > <prafulla@marvell.com> wrote: > > after http://patchwork.ozlabs.org/patch/136415/ was applied. All > Marvell > > build fails with below error > > > > common/libcommon.o: In function `cread_line': > > /home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to > `get_ticks' > > /home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to > `get_tbclk' > > /home/uboot/src/u-boot-arm/common/main.c:720: undefined reference to > `get_ticks' > > > > The same is fixed for Kirkwood, ARMADA100, pantheon and orion5x SoCs > > > > Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> > > > +ulong get_tbclk (void) > > +{ > > + ulong tbclk; > > + > > + tbclk = CONFIG_SYS_HZ; > > + return tbclk; > > +} > > Why not "return CONFIG_SYS_HZ;'" or "return (ulong)CONFIG_SYS_HZ;" ? Thanks, good idea, actually the code was simply copy paste from other ARM implementation :) I will do it for v2 Regards.. Prafulla . . .
after http://patchwork.ozlabs.org/patch/136415/ was applied. All Marvell
build fails with below error
common/libcommon.o: In function `cread_line':
/home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to `get_ticks'
/home/uboot/src/u-boot-arm/common/main.c:717: undefined reference to `get_tbclk'
/home/uboot/src/u-boot-arm/common/main.c:720: undefined reference to `get_ticks'
The same is fixed for Kirkwood, ARMADA100, pantheon and orion5x SoCs
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
---
arch/arm/cpu/arm926ejs/armada100/timer.c | 21 +++++++++++++++++++++
arch/arm/cpu/arm926ejs/kirkwood/timer.c | 21 +++++++++++++++++++++
arch/arm/cpu/arm926ejs/orion5x/timer.c | 21 +++++++++++++++++++++
arch/arm/cpu/arm926ejs/pantheon/timer.c | 21 +++++++++++++++++++++
4 files changed, 84 insertions(+), 0 deletions(-)
Patch
diff --git a/arch/arm/cpu/arm926ejs/armada100/timer.c b/arch/arm/cpu/arm926ejs/armada100/timer.c index fbade4b..0cafb57 100644 --- a/arch/arm/cpu/arm926ejs/armada100/timer.c +++ b/arch/arm/cpu/arm926ejs/armada100/timer.c @@ -190,3 +190,24 @@ void reset_cpu (unsigned long ignored) while(1); } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + ulong tbclk; + + tbclk = CONFIG_SYS_HZ; + return tbclk; +} diff --git a/arch/arm/cpu/arm926ejs/kirkwood/timer.c b/arch/arm/cpu/arm926ejs/kirkwood/timer.c index a98f54c..45f4af1 100644 --- a/arch/arm/cpu/arm926ejs/kirkwood/timer.c +++ b/arch/arm/cpu/arm926ejs/kirkwood/timer.c @@ -153,3 +153,24 @@ int timer_init(void) return 0; } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + ulong tbclk; + + tbclk = CONFIG_SYS_HZ; + return tbclk; +} diff --git a/arch/arm/cpu/arm926ejs/orion5x/timer.c b/arch/arm/cpu/arm926ejs/orion5x/timer.c index e39ecc2..dc1211e 100644 --- a/arch/arm/cpu/arm926ejs/orion5x/timer.c +++ b/arch/arm/cpu/arm926ejs/orion5x/timer.c @@ -167,3 +167,24 @@ void timer_init_r(void) lastdec = read_timer(); timestamp = 0; } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + ulong tbclk; + + tbclk = CONFIG_SYS_HZ; + return tbclk; +} diff --git a/arch/arm/cpu/arm926ejs/pantheon/timer.c b/arch/arm/cpu/arm926ejs/pantheon/timer.c index 17045b1..65966b8 100644 --- a/arch/arm/cpu/arm926ejs/pantheon/timer.c +++ b/arch/arm/cpu/arm926ejs/pantheon/timer.c @@ -197,3 +197,24 @@ void reset_cpu (unsigned long ignored) /*enable functional WDT clock */ writel(APBC_APBCLK | APBC_FNCLK, &mpmu->wdtpcr); } + +/* + * This function is derived from PowerPC code (read timebase as long long). + * On ARM it just returns the timer value. + */ +unsigned long long get_ticks(void) +{ + return get_timer(0); +} + +/* + * This function is derived from PowerPC code (timebase clock frequency). + * On ARM it returns the number of timer ticks per second. + */ +ulong get_tbclk (void) +{ + ulong tbclk; + + tbclk = CONFIG_SYS_HZ; + return tbclk; +}