1 /* $NetBSD: ixp12x0_clkreg.h,v 1.4 2009/10/21 14:15:50 rmind Exp $ */ 2 3 /* 4 * Copyright (c) 2002 5 * Ichiro FUKUHARA <ichiro@ichiro.org>. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY ICHIRO FUKUHARA AND CONTRIBUTORS ``AS IS'' 17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19 * ARE DISCLAIMED. IN NO EVENT SHALL ICHIRO FUKUHARA OR THE VOICES IN HIS 20 * HEAD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, 21 * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 26 * THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 /* 30 * IXP12X0 TIMER registers 31 * TIMER_1 v0xf0010300 p0x42000300 32 * TIMER_2 v0xf0010320 p0x42000320 33 * TIMER_3 v0xf0010340 p0x42000340 34 * TIMER_4 v0xf0010360 p0x42000360 35 */ 36 37 #ifndef _IXP12X0_CLKREG_H_ 38 #define _IXP12X0_CLKREG_H_ 39 40 #include <arm/ixp12x0/ixp12x0reg.h> 41 42 #define IXPCLK_PLL_CFG_OFFSET (0x90000c00U - 0x42000300U) 43 #define IXPCLK_PLL_CFG_SIZE 0x04 44 45 /* timer load register */ 46 #define IXPCLK_LOAD 0x00000000 47 #define IXPCL_ITV 0x00ffffff 48 49 /* timer value register */ 50 #define IXPCLK_VALUE 0x00000004 51 #define IXPCL_CTV 0x00ffffff 52 53 /* timer control register */ 54 #define IXPCLK_CONTROL 0x00000008 55 #define IXPCL_STP 0x0c 56 #define IXPCL_STP_CORE 0x00 57 #define IXPCL_STP_DIV16 0x04 58 #define IXPCL_STP_DIV256 0x08 59 #define IXPCL_MODE 0x40 60 #define IXPCL_FREERUN 0x00 61 #define IXPCL_PERIODIC 0x40 62 #define IXPCL_EN 0x80 63 #define IXPCL_DISABLE 0x00 64 #define IXPCL_ENABLE 0x80 65 66 /* timer clear register */ 67 #define IXPCLK_CLEAR 0x0000000c 68 #define IXPT_CLEAR 0 69 70 /* 71 * IXP12X0 real time clock registers 72 * RTC_DIV 0x90002000 73 * RTC_TINT 0x90002400 74 * RTC_TVAL 0x90002800 75 * RTC_CNTR 0x90002c00 76 * RTC_ALM 0x90003000 77 */ 78 79 /* RTC_DIV register */ 80 #define RTC_DIV 0x90002000 81 #define RTC_RDIV 0x0000ffff 82 #define RTC_WEN 0x00010000 83 #define RTC_WDIVISER 0x00000000 84 #define RTC_WINTONLY 0x00010000 85 #define RTC_IEN 0x00020000 86 #define RTC_IEN_E 0x00020000 87 #define RTC_IEN_D 0x00000000 88 #define RTC_IRST 0x00040000 89 #define RTC_IRST_NOCLR 0x00040000 90 #define RTC_IRST_CLR 0x00000000 91 #define RTC_IRQS 0x00080000 92 #define RTC_IRQS_IRQ 0x00080000 93 #define RTC_IRQS_FIQ 0x00000000 94 95 96 /* RTC_TINT register */ 97 #define RTC_TINT 0x90002400 98 #define RTC_RTINT 0x0000ffff 99 100 /* RTC_TVAL register */ 101 #define RTC_TVAL 0x90002800 102 #define RTC_TVAL_TVAL 0x0000ffff 103 #define RTC_LD 0x00010000 104 #define RTC_LD_LOAD 0x00010000 105 #define RTC_LD_NOLOAD 0x00000000 106 #define RTC_PRE 0x00020000 107 #define RTC_PRE_SYSCLK 0x00020000 108 #define RTC_PRE_DIV128 0x00000000 109 110 /* RTC_CNTR register */ 111 #define RTC_CNTR 0x90002c00 112 #define RTC_RCN_COUNT 0xffffffff 113 114 /* RTC_ALM register */ 115 #define RTC_ALM 0x90003000 116 #define RTC_RTC_ALARM 0xffffffff 117 118 #endif /* _IXP12X0_CLKREG_H_ */ 119