12874c5fdSThomas Gleixner // SPDX-License-Identifier: GPL-2.0-or-later 230ad29bbSHuacai Chen /* 330ad29bbSHuacai Chen * Copyright (c) 2014 Zhang, Keguang <keguang.zhang@gmail.com> 430ad29bbSHuacai Chen */ 530ad29bbSHuacai Chen 630ad29bbSHuacai Chen #include <linux/clk.h> 7*b927c76cSKeguang Zhang #include <linux/of_clk.h> 830ad29bbSHuacai Chen #include <asm/time.h> 930ad29bbSHuacai Chen plat_time_init(void)1030ad29bbSHuacai Chenvoid __init plat_time_init(void) 1130ad29bbSHuacai Chen { 1230ad29bbSHuacai Chen struct clk *clk = NULL; 1330ad29bbSHuacai Chen 1430ad29bbSHuacai Chen /* initialize LS1X clocks */ 15*b927c76cSKeguang Zhang of_clk_init(NULL); 1630ad29bbSHuacai Chen 1730ad29bbSHuacai Chen /* setup mips r4k timer */ 1830ad29bbSHuacai Chen clk = clk_get(NULL, "cpu_clk"); 1930ad29bbSHuacai Chen if (IS_ERR(clk)) 2030ad29bbSHuacai Chen panic("unable to get cpu clock, err=%ld", PTR_ERR(clk)); 2130ad29bbSHuacai Chen 2230ad29bbSHuacai Chen mips_hpt_frequency = clk_get_rate(clk) / 2; 2330ad29bbSHuacai Chen } 24