1*012771d8Swdenk /* 2*012771d8Swdenk * (C) Copyright 2001 Sysgo Real-Time Solutions, GmbH <www.elinos.com> 3*012771d8Swdenk * Andreas Heppel <aheppel@sysgo.de> 4*012771d8Swdenk * 5*012771d8Swdenk * See file CREDITS for list of people who contributed to this 6*012771d8Swdenk * project. 7*012771d8Swdenk * 8*012771d8Swdenk * This program is free software; you can redistribute it and/or 9*012771d8Swdenk * modify it under the terms of the GNU General Public License as 10*012771d8Swdenk * published by the Free Software Foundation; either version 2 of 11*012771d8Swdenk * the License, or (at your option) any later version. 12*012771d8Swdenk * 13*012771d8Swdenk * This program is distributed in the hope that it will be useful, 14*012771d8Swdenk * but WITHOUT ANY WARRANTY; without even the implied warranty of 15*012771d8Swdenk * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16*012771d8Swdenk * GNU General Public License for more details. 17*012771d8Swdenk * 18*012771d8Swdenk * You should have received a copy of the GNU General Public License 19*012771d8Swdenk * along with this program; if not, write to the Free Software 20*012771d8Swdenk * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21*012771d8Swdenk * MA 02111-1307 USA 22*012771d8Swdenk */ 23*012771d8Swdenk 24*012771d8Swdenk /* 25*012771d8Swdenk * Date & Time support for the MK48T59 RTC 26*012771d8Swdenk */ 27*012771d8Swdenk 28*012771d8Swdenk 29*012771d8Swdenk #if defined(CONFIG_RTC_MK48T59) && (CONFIG_COMMANDS & CFG_CMD_DATE) 30*012771d8Swdenk 31*012771d8Swdenk #define RTC_PORT_ADDR0 CFG_ISA_IO + 0x70 32*012771d8Swdenk #define RTC_PORT_ADDR1 RTC_PORT_ADDR0 + 0x1 33*012771d8Swdenk #define RTC_PORT_DATA CFG_ISA_IO + 0x76 34*012771d8Swdenk 35*012771d8Swdenk /* RTC Offsets */ 36*012771d8Swdenk #define RTC_SECONDS 0x1FF9 37*012771d8Swdenk #define RTC_MINUTES 0x1FFA 38*012771d8Swdenk #define RTC_HOURS 0x1FFB 39*012771d8Swdenk #define RTC_DAY_OF_WEEK 0x1FFC 40*012771d8Swdenk #define RTC_DAY_OF_MONTH 0x1FFD 41*012771d8Swdenk #define RTC_MONTH 0x1FFE 42*012771d8Swdenk #define RTC_YEAR 0x1FFF 43*012771d8Swdenk 44*012771d8Swdenk #define RTC_CONTROLA 0x1FF8 45*012771d8Swdenk #define RTC_CA_WRITE 0x80 46*012771d8Swdenk #define RTC_CA_READ 0x40 47*012771d8Swdenk #define RTC_CA_CALIB_SIGN 0x20 48*012771d8Swdenk #define RTC_CA_CALIB_MASK 0x1f 49*012771d8Swdenk 50*012771d8Swdenk #define RTC_CONTROLB 0x1FF9 51*012771d8Swdenk #define RTC_CB_STOP 0x80 52*012771d8Swdenk 53*012771d8Swdenk #define RTC_WATCHDOG 0x1FF7 54*012771d8Swdenk #define RTC_WDS 0x80 55*012771d8Swdenk #define RTC_WD_RB_16TH 0x0 56*012771d8Swdenk #define RTC_WD_RB_4TH 0x1 57*012771d8Swdenk #define RTC_WD_RB_1 0x2 58*012771d8Swdenk #define RTC_WD_RB_4 0x3 59*012771d8Swdenk 60*012771d8Swdenk void rtc_set_watchdog(short multi, short res); 61*012771d8Swdenk void *nvram_read(void *dest, const short src, size_t count); 62*012771d8Swdenk void nvram_write(short dest, const void *src, size_t count); 63*012771d8Swdenk 64*012771d8Swdenk #endif 65