1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1996, 2001 Silicon Graphics, Inc. All rights reserved. 7 * Copyright (C) 2001 by Ralf Baechle 8 */ 9#ifndef _ASM_IA64_SN_KLCLOCK_H 10#define _ASM_IA64_SN_KLCLOCK_H 11 12#include <asm/sn/ioc3.h> 13 14#define RTC_BASE_ADDR (unsigned char *)(nvram_base) 15 16/* Defines for the SGS-Thomson M48T35 clock */ 17#define RTC_SGS_WRITE_ENABLE 0x80 18#define RTC_SGS_READ_PROTECT 0x40 19#define RTC_SGS_YEAR_ADDR (RTC_BASE_ADDR + 0x7fffL) 20#define RTC_SGS_MONTH_ADDR (RTC_BASE_ADDR + 0x7ffeL) 21#define RTC_SGS_DATE_ADDR (RTC_BASE_ADDR + 0x7ffdL) 22#define RTC_SGS_DAY_ADDR (RTC_BASE_ADDR + 0x7ffcL) 23#define RTC_SGS_HOUR_ADDR (RTC_BASE_ADDR + 0x7ffbL) 24#define RTC_SGS_MIN_ADDR (RTC_BASE_ADDR + 0x7ffaL) 25#define RTC_SGS_SEC_ADDR (RTC_BASE_ADDR + 0x7ff9L) 26#define RTC_SGS_CONTROL_ADDR (RTC_BASE_ADDR + 0x7ff8L) 27 28/* Defines for the Dallas DS1386 */ 29#define RTC_DAL_UPDATE_ENABLE 0x80 30#define RTC_DAL_UPDATE_DISABLE 0x00 31#define RTC_DAL_YEAR_ADDR (RTC_BASE_ADDR + 0xaL) 32#define RTC_DAL_MONTH_ADDR (RTC_BASE_ADDR + 0x9L) 33#define RTC_DAL_DATE_ADDR (RTC_BASE_ADDR + 0x8L) 34#define RTC_DAL_DAY_ADDR (RTC_BASE_ADDR + 0x6L) 35#define RTC_DAL_HOUR_ADDR (RTC_BASE_ADDR + 0x4L) 36#define RTC_DAL_MIN_ADDR (RTC_BASE_ADDR + 0x2L) 37#define RTC_DAL_SEC_ADDR (RTC_BASE_ADDR + 0x1L) 38#define RTC_DAL_CONTROL_ADDR (RTC_BASE_ADDR + 0xbL) 39#define RTC_DAL_USER_ADDR (RTC_BASE_ADDR + 0xeL) 40 41/* Defines for the Dallas DS1742 */ 42#define RTC_DS1742_WRITE_ENABLE 0x80 43#define RTC_DS1742_READ_ENABLE 0x40 44#define RTC_DS1742_UPDATE_DISABLE 0x00 45#define RTC_DS1742_YEAR_ADDR (RTC_BASE_ADDR + 0x7ffL) 46#define RTC_DS1742_MONTH_ADDR (RTC_BASE_ADDR + 0x7feL) 47#define RTC_DS1742_DATE_ADDR (RTC_BASE_ADDR + 0x7fdL) 48#define RTC_DS1742_DAY_ADDR (RTC_BASE_ADDR + 0x7fcL) 49#define RTC_DS1742_HOUR_ADDR (RTC_BASE_ADDR + 0x7fbL) 50#define RTC_DS1742_MIN_ADDR (RTC_BASE_ADDR + 0x7faL) 51#define RTC_DS1742_SEC_ADDR (RTC_BASE_ADDR + 0x7f9L) 52#define RTC_DS1742_CONTROL_ADDR (RTC_BASE_ADDR + 0x7f8L) 53#define RTC_DS1742_USER_ADDR (RTC_BASE_ADDR + 0x0L) 54 55#define BCD_TO_INT(x) (((x>>4) * 10) + (x & 0xf)) 56#define INT_TO_BCD(x) (((x / 10)<<4) + (x % 10)) 57 58#define YRREF 1970 59 60#endif /* _ASM_IA64_SN_KLCLOCK_H */ 61