diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2016-02-26 18:59:44 +0900 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2016-03-01 00:33:24 +0900 |
commit | fe5ea57bdbdeb8429793faaca2d6bd5f38218fe3 (patch) | |
tree | 9d438a0865a464935e49f0eec198904a3dfd2cd8 /arch/arm/mach-uniphier/timer.c | |
parent | 2247c332db395ef87a0e2f6ed16a9de6959fe204 (diff) | |
download | talos-obmc-uboot-fe5ea57bdbdeb8429793faaca2d6bd5f38218fe3.tar.gz talos-obmc-uboot-fe5ea57bdbdeb8429793faaca2d6bd5f38218fe3.zip |
ARM: uniphier: prepare directory structure for ARMv8 SoC support
Before adding ARMv8 support, this commit refactors the directory
structure. Move ARMv7 specific files to arch/arm/mach-uniphier/arm32
to avoid a mess by mixture of ARMv7 and ARMv8 code. Also move the
"select CPU_V7" to the lower-level menu because we will have to
select ARM64 instead of CPU_V7 for ARMv8 SoCs.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'arch/arm/mach-uniphier/timer.c')
-rw-r--r-- | arch/arm/mach-uniphier/timer.c | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/arch/arm/mach-uniphier/timer.c b/arch/arm/mach-uniphier/timer.c deleted file mode 100644 index a34e30b72b..0000000000 --- a/arch/arm/mach-uniphier/timer.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (C) 2012-2015 Masahiro Yamada <yamada.masahiro@socionext.com> - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include <common.h> -#include <linux/io.h> - -#include "arm-mpcore.h" - -#define PERIPHCLK (50 * 1000 * 1000) /* 50 MHz */ -#define PRESCALER ((PERIPHCLK) / (CONFIG_SYS_TIMER_RATE) - 1) - -static void *get_global_timer_base(void) -{ - void *val; - - asm("mrc p15, 4, %0, c15, c0, 0" : "=r" (val) : : "memory"); - - return val + GLOBAL_TIMER_OFFSET; -} - -unsigned long timer_read_counter(void) -{ - /* - * ARM 64bit Global Timer is too much for our purpose. - * We use only lower 32 bit of the timer counter. - */ - return readl(get_global_timer_base() + GTIMER_CNT_L); -} - -int timer_init(void) -{ - /* enable timer */ - writel(PRESCALER << 8 | 1, get_global_timer_base() + GTIMER_CTRL); - - return 0; -} |