17ca5dc14SFlorian Fainelli /* 27ca5dc14SFlorian Fainelli * Carsten Langgaard, carstenl@mips.com 37ca5dc14SFlorian Fainelli * Copyright (C) 1999,2000 MIPS Technologies, Inc. All rights reserved. 47ca5dc14SFlorian Fainelli * 57ca5dc14SFlorian Fainelli * This program is free software; you can distribute it and/or modify it 67ca5dc14SFlorian Fainelli * under the terms of the GNU General Public License (Version 2) as 77ca5dc14SFlorian Fainelli * published by the Free Software Foundation. 87ca5dc14SFlorian Fainelli * 97ca5dc14SFlorian Fainelli * This program is distributed in the hope it will be useful, but WITHOUT 107ca5dc14SFlorian Fainelli * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 117ca5dc14SFlorian Fainelli * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 127ca5dc14SFlorian Fainelli * for more details. 137ca5dc14SFlorian Fainelli * 147ca5dc14SFlorian Fainelli * You should have received a copy of the GNU General Public License along 157ca5dc14SFlorian Fainelli * with this program; if not, write to the Free Software Foundation, Inc., 167ca5dc14SFlorian Fainelli * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. 177ca5dc14SFlorian Fainelli * 187ca5dc14SFlorian Fainelli * Setting up the clock on the MIPS boards. 197ca5dc14SFlorian Fainelli */ 207ca5dc14SFlorian Fainelli 217ca5dc14SFlorian Fainelli #include <linux/init.h> 227ca5dc14SFlorian Fainelli #include <linux/time.h> 23780019ddSFlorian Fainelli #include <linux/err.h> 24780019ddSFlorian Fainelli #include <linux/clk.h> 257ca5dc14SFlorian Fainelli 267ca5dc14SFlorian Fainelli #include <asm/time.h> 277ca5dc14SFlorian Fainelli #include <asm/mach-ar7/ar7.h> 287ca5dc14SFlorian Fainelli 297ca5dc14SFlorian Fainelli void __init plat_time_init(void) 307ca5dc14SFlorian Fainelli { 31780019ddSFlorian Fainelli struct clk *cpu_clk; 32780019ddSFlorian Fainelli 33*0bc67917SFlorian Fainelli /* Initialize ar7 clocks so the CPU clock frequency is correct */ 34*0bc67917SFlorian Fainelli ar7_init_clocks(); 35*0bc67917SFlorian Fainelli 36780019ddSFlorian Fainelli cpu_clk = clk_get(NULL, "cpu"); 37780019ddSFlorian Fainelli if (IS_ERR(cpu_clk)) { 38780019ddSFlorian Fainelli printk(KERN_ERR "unable to get cpu clock\n"); 39780019ddSFlorian Fainelli return; 40780019ddSFlorian Fainelli } 41780019ddSFlorian Fainelli 42780019ddSFlorian Fainelli mips_hpt_frequency = clk_get_rate(cpu_clk) / 2; 437ca5dc14SFlorian Fainelli } 44