[PATCH 3/3] RISC-V: drop old timer handling code
Antony Pavlov
antonynpavlov at gmail.com
Mon Mar 29 23:31:20 BST 2021
Use drivers/clocksource/timer-riscv.c driver introduced in
'2ee369dcf7a5 ("clocksource: add driver for RISC-V and CLINT
timers")' instead.
Signed-off-by: Antony Pavlov <antonynpavlov at gmail.com>
---
arch/riscv/lib/Makefile | 2 +-
arch/riscv/lib/riscv_timer.c | 63 ------------------------------------
2 files changed, 1 insertion(+), 64 deletions(-)
diff --git a/arch/riscv/lib/Makefile b/arch/riscv/lib/Makefile
index a9bf68bca5..a4eaa1005d 100644
--- a/arch/riscv/lib/Makefile
+++ b/arch/riscv/lib/Makefile
@@ -2,7 +2,7 @@
extra-y += barebox.lds
-obj-y += riscv_timer.o dtb.o
+obj-y += dtb.o
obj-pbl-y += sections.o setupc.o reloc.o sections.o runtime-offset.o
obj-$(CONFIG_HAS_ARCH_SJLJ) += setjmp.o longjmp.o
obj-$(CONFIG_RISCV_OPTIMZED_STRING_FUNCTIONS) += memcpy.o memset.o memmove.o
diff --git a/arch/riscv/lib/riscv_timer.c b/arch/riscv/lib/riscv_timer.c
deleted file mode 100644
index 919d77d4b5..0000000000
--- a/arch/riscv/lib/riscv_timer.c
+++ /dev/null
@@ -1,63 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * Copyright (C) 2017 Antony Pavlov <antonynpavlov at gmail.com>
- *
- * This file is part of barebox.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-/**
- * @file
- * @brief Clocksource based on RISC-V cycle CSR timer
- */
-
-#include <init.h>
-#include <of.h>
-#include <linux/clk.h>
-#include <clock.h>
-
-static uint64_t rdcycle_read(void)
-{
- register unsigned long __v;
-
- __asm__ __volatile__ ("rdcycle %0" : "=r" (__v));
-
- return __v;
-}
-
-static struct clocksource rdcycle_cs = {
- .read = rdcycle_read,
- .mask = CLOCKSOURCE_MASK(32),
-};
-
-static int rdcycle_cs_init(void)
-{
- unsigned int cycle_frequency;
-
- /* default rate: 100 MHz */
- cycle_frequency = 100000000;
-
- if (IS_ENABLED(CONFIG_OFTREE)) {
- struct device_node *np;
- struct clk *clk;
-
- np = of_get_cpu_node(0, NULL);
- if (np) {
- clk = of_clk_get(np, 0);
- if (!IS_ERR(clk)) {
- cycle_frequency = clk_get_rate(clk);
- }
- }
- }
-
- clocks_calc_mult_shift(&rdcycle_cs.mult, &rdcycle_cs.shift,
- cycle_frequency, NSEC_PER_SEC, 10);
-
- return init_clock(&rdcycle_cs);
-}
-postcore_initcall(rdcycle_cs_init);
--
2.30.1
More information about the barebox
mailing list