1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 1999,2000 MIPS Technologies, Inc.  All rights reserved.
4 *
5 * ########################################################################
6 *
7 *  This program is free software; you can distribute it and/or modify it
8 *  under the terms of the GNU General Public License (Version 2) as
9 *  published by the Free Software Foundation.
10 *
11 *  This program is distributed in the hope it will be useful, but WITHOUT
12 *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 *  for more details.
15 *
16 *  You should have received a copy of the GNU General Public License along
17 *  with this program; if not, write to the Free Software Foundation, Inc.,
18 *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * RTC routines for Atlas style attached Dallas chip.
23 *
24 */
25#include <linux/mc146818rtc.h>
26#include <asm/mips-boards/atlas.h>
27
28
29static unsigned char atlas_rtc_read_data(unsigned long addr)
30{
31	volatile unsigned int *rtc_adr_reg = (void *)ATLAS_RTC_ADR_REG;
32	volatile unsigned int *rtc_dat_reg = (void *)ATLAS_RTC_DAT_REG;
33
34	*rtc_adr_reg = addr;
35
36	return *rtc_dat_reg;
37}
38
39static void atlas_rtc_write_data(unsigned char data, unsigned long addr)
40{
41	volatile unsigned int *rtc_adr_reg = (void *)ATLAS_RTC_ADR_REG;
42	volatile unsigned int *rtc_dat_reg = (void *)ATLAS_RTC_DAT_REG;
43
44	*rtc_adr_reg = addr;
45	*rtc_dat_reg = data;
46}
47
48static int atlas_rtc_bcd_mode(void)
49{
50	return 0;
51}
52
53struct rtc_ops atlas_rtc_ops = {
54	&atlas_rtc_read_data,
55	&atlas_rtc_write_data,
56	&atlas_rtc_bcd_mode
57};
58