12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #ifndef _SUN3_INTERSIL_H
- #define _SUN3_INTERSIL_H
- /* bits 0 and 1 */
- #define INTERSIL_FREQ_32K 0x00
- #define INTERSIL_FREQ_1M 0x01
- #define INTERSIL_FREQ_2M 0x02
- #define INTERSIL_FREQ_4M 0x03
- /* bit 2 */
- #define INTERSIL_12H_MODE 0x00
- #define INTERSIL_24H_MODE 0x04
- /* bit 3 */
- #define INTERSIL_STOP 0x00
- #define INTERSIL_RUN 0x08
- /* bit 4 */
- #define INTERSIL_INT_ENABLE 0x10
- #define INTERSIL_INT_DISABLE 0x00
- /* bit 5 */
- #define INTERSIL_MODE_NORMAL 0x00
- #define INTERSIL_MODE_TEST 0x20
- #define INTERSIL_HZ_100_MASK 0x02
- struct intersil_dt {
- unsigned char csec;
- unsigned char hour;
- unsigned char minute;
- unsigned char second;
- unsigned char month;
- unsigned char day;
- unsigned char year;
- unsigned char weekday;
- };
- struct intersil_7170 {
- struct intersil_dt counter;
- struct intersil_dt alarm;
- unsigned char int_reg;
- unsigned char cmd_reg;
- };
- extern volatile char* clock_va;
- #define intersil_clock ((volatile struct intersil_7170 *) clock_va)
- #define intersil_clear() (void)intersil_clock->int_reg
- #endif
|