aboutsummaryrefslogtreecommitdiff
path: root/arch/sh
diff options
context:
space:
mode:
authorMarek Vasut <marek.vasut+renesas@gmail.com>2018-08-24 21:52:53 +0200
committerMarek Vasut <marex@denx.de>2018-09-15 03:19:07 +0200
commit0e286c529f395947dbb96da93081883aca40a57f (patch)
treee638fc09414f8a8124769966adc064a119e7ed2a /arch/sh
parentf02c1f695e13ee0ce01f111952ceaac094700de1 (diff)
downloadu-boot-0e286c529f395947dbb96da93081883aca40a57f.zip
u-boot-0e286c529f395947dbb96da93081883aca40a57f.tar.gz
u-boot-0e286c529f395947dbb96da93081883aca40a57f.tar.bz2
sh: tmu: Zap get_tbclk and timer_read_counter
Replace those two functions with generic ones by defining the timer macros in include/config/*.h . Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Diffstat (limited to 'arch/sh')
-rw-r--r--arch/sh/include/asm/config.h9
-rw-r--r--arch/sh/lib/time.c16
2 files changed, 9 insertions, 16 deletions
diff --git a/arch/sh/include/asm/config.h b/arch/sh/include/asm/config.h
index bad0026..d2862df 100644
--- a/arch/sh/include/asm/config.h
+++ b/arch/sh/include/asm/config.h
@@ -6,4 +6,13 @@
#ifndef _ASM_CONFIG_H_
#define _ASM_CONFIG_H_
+#if !defined(CONFIG_CPU_SH2)
+#include <asm/processor.h>
+
+/* Timer */
+#define CONFIG_SYS_TIMER_COUNTS_DOWN
+#define CONFIG_SYS_TIMER_COUNTER (TMU_BASE + 0x8) /* TCNT0 */
+#define CONFIG_SYS_TIMER_RATE (CONFIG_SYS_CLK_FREQ / 4)
+#endif
+
#endif
diff --git a/arch/sh/lib/time.c b/arch/sh/lib/time.c
index d531a49..fb317f9 100644
--- a/arch/sh/lib/time.c
+++ b/arch/sh/lib/time.c
@@ -16,33 +16,17 @@
#if defined(CONFIG_CPU_SH3)
#define TSTR 0x2
-#define TCNT0 0x8
#define TCR0 0xc
#endif /* CONFIG_CPU_SH3 */
#if defined(CONFIG_CPU_SH4) || defined(CONFIG_ARCH_RMOBILE)
#define TSTR 0x4
-#define TCNT0 0xc
#define TCR0 0x10
#endif /* CONFIG_CPU_SH4 */
#define TCR_TPSC 0x07
#define TSTR_STR0 BIT(0)
-unsigned long get_tbclk(void)
-{
-#ifdef CONFIG_RCAR_GEN2
- return CONFIG_SYS_CLK_FREQ / 8;
-#else
- return CONFIG_SYS_CLK_FREQ / 4;
-#endif
-}
-
-unsigned long timer_read_counter(void)
-{
- return ~readl(TMU_BASE + TCNT0);
-}
-
int timer_init(void)
{
writew(readw(TMU_BASE + TCR0) & ~TCR_TPSC, TMU_BASE + TCR0);