ds1286.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:2k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /* $Id: ds1286.h,v 1.1 1998/07/10 01:14:55 ralf Exp $
  2.  *
  3.  * This file is subject to the terms and conditions of the GNU General Public
  4.  * License.  See the file "COPYING" in the main directory of this archive
  5.  * for more details.
  6.  *
  7.  * mc146818rtc.h - register definitions for the Real-Time-Clock / CMOS RAM
  8.  * Copyright Torsten Duwe <duwe@informatik.uni-erlangen.de> 1993
  9.  * derived from Data Sheet, Copyright Motorola 1984 (!).
  10.  * It was written to be part of the Linux operating system.
  11.  *
  12.  * Copyright (C) 1998, 1999 Ralf Baechle
  13.  */
  14. #ifndef _ASM_DS1286_h
  15. #define _ASM_DS1286_h
  16. #include <asm/mc146818rtc.h>
  17. /**********************************************************************
  18.  * register summary
  19.  **********************************************************************/
  20. #define RTC_HUNDREDTH_SECOND 0
  21. #define RTC_SECONDS 1
  22. #define RTC_MINUTES 2
  23. #define RTC_MINUTES_ALARM 3
  24. #define RTC_HOURS 4
  25. #define RTC_HOURS_ALARM 5
  26. #define RTC_DAY 6
  27. #define RTC_DAY_ALARM 7
  28. #define RTC_DATE 8
  29. #define RTC_MONTH 9
  30. #define RTC_YEAR 10
  31. #define RTC_CMD 11
  32. #define RTC_WHSEC 12
  33. #define RTC_WSEC 13
  34. #define RTC_UNUSED 14
  35. /* RTC_*_alarm is always true if 2 MSBs are set */
  36. # define RTC_ALARM_DONT_CARE  0xC0
  37. /*
  38.  * Bits in the month register
  39.  */
  40. #define RTC_EOSC 0x80
  41. #define RTC_ESQW 0x40
  42. /*
  43.  * Bits in the Command register
  44.  */
  45. #define RTC_TDF 0x01
  46. #define RTC_WAF 0x02
  47. #define RTC_TDM 0x04
  48. #define RTC_WAM 0x08
  49. #define RTC_PU_LVL 0x10
  50. #define RTC_IBH_LO 0x20
  51. #define RTC_IPSW 0x40
  52. #define RTC_TE 0x80
  53. /*
  54.  * Conversion between binary and BCD.
  55.  */
  56. #ifndef BCD_TO_BIN
  57. #define BCD_TO_BIN(val) ((val)=((val)&15) + ((val)>>4)*10)
  58. #endif
  59. #ifndef BIN_TO_BCD
  60. #define BIN_TO_BCD(val) ((val)=(((val)/10)<<4) + (val)%10)
  61. #endif
  62. #endif /* _ASM_DS1286_h */