blob: 9fdd01f6c56a008eb7af3110100fe0b5b84b8486 [file] [log] [blame]
Wu Zhangjinbd92aa02009-07-02 23:22:36 +08001/*
2 * Copyright (C) 2007 Lemote, Inc. & Institute of Computing Technology
3 * Author: Fuxin Zhang, zhangfx@lemote.com
4 *
Wu Zhangjinf7a904d2010-01-04 17:16:51 +08005 * Copyright (C) 2009 Lemote Inc.
6 * Author: Wu Zhangjin, wuzhangjin@gmail.com
Wu Zhangjinbd92aa02009-07-02 23:22:36 +08007 *
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU General Public License as published by the
10 * Free Software Foundation; either version 2 of the License, or (at your
11 * option) any later version.
12 */
Wu Zhangjinbd92aa02009-07-02 23:22:36 +080013#include <asm/mc146818-time.h>
14#include <asm/time.h>
15
Wu Zhangjin5e983ff2009-07-02 23:23:03 +080016#include <loongson.h>
Wu Zhangjin916daba2009-11-17 01:32:57 +080017#include <cs5536/cs5536_mfgpt.h>
Wu Zhangjinbd92aa02009-07-02 23:22:36 +080018
19void __init plat_time_init(void)
20{
21 /* setup mips r4k timer */
22 mips_hpt_frequency = cpu_clock_freq / 2;
Wu Zhangjin916daba2009-11-17 01:32:57 +080023
24 setup_mfgpt0_timer();
Wu Zhangjinbd92aa02009-07-02 23:22:36 +080025}
26
Linus Torvaldsa03fdb72009-09-18 09:15:24 -070027void read_persistent_clock(struct timespec *ts)
Wu Zhangjinbd92aa02009-07-02 23:22:36 +080028{
Linus Torvaldsdcbb5592009-09-20 15:57:28 -070029 ts->tv_sec = mc146818_get_cmos_time();
Linus Torvaldsa03fdb72009-09-18 09:15:24 -070030 ts->tv_nsec = 0;
Wu Zhangjinbd92aa02009-07-02 23:22:36 +080031}