1 /* $NetBSD: clockreg.h,v 1.6 2001/06/05 05:19:16 thorpej Exp $ */ 2 3 /*- 4 * Copyright (C) 1993 Allen K. Briggs, Chris P. Caputo, 5 * Michael L. Finch, Bradley A. Grantham, and 6 * Lawrence A. Kesteloot 7 * All rights reserved. 8 * 9 * Redistribution and use in source and binary forms, with or without 10 * modification, are permitted provided that the following conditions 11 * are met: 12 * 1. Redistributions of source code must retain the above copyright 13 * notice, this list of conditions and the following disclaimer. 14 * 2. Redistributions in binary form must reproduce the above copyright 15 * notice, this list of conditions and the following disclaimer in the 16 * documentation and/or other materials provided with the distribution. 17 * 3. All advertising materials mentioning features or use of this software 18 * must display the following acknowledgement: 19 * This product includes software developed by the Alice Group. 20 * 4. The names of the Alice Group or any of its members may not be used 21 * to endorse or promote products derived from this software without 22 * specific prior written permission. 23 * 24 * THIS SOFTWARE IS PROVIDED BY THE ALICE GROUP ``AS IS'' AND ANY EXPRESS OR 25 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 26 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 27 * IN NO EVENT SHALL THE ALICE GROUP BE LIABLE FOR ANY DIRECT, INDIRECT, 28 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 29 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 30 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 31 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 32 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 34 * 35 */ 36 /* 37 * Clock defines and things. 38 * MacII clock characteristics used. 39 */ 40 41 42 #define CLK_SPEED 0.0000012766 /* time to complete a clock (3 MHz) */ 43 44 /* 45 * Calculate clocks needed to hit HZ ticks/sec. 46 * 47 * The VIA clock speed is 1.2766us, so the timer value needed is: 48 * 49 * 1 1,000,000us 1 50 * CLK_INTERVAL = -------- * ----------- * ------ 51 * 1.2766us 1s HZ 52 * 53 * While it may be tempting to simplify the following further, we can run 54 * into integer overflow problems. Also note: do *not* define HZ to be 55 * less than 12; overflow will occur, yielding invalid results. 56 */ 57 #define CLK_INTERVAL ((int)((((100000000L / hz) * 100) / 12766))) 58 59 #define CLK_INTH ((CLK_INTERVAL >> 8) & 0xff) /* high byte */ 60 #define CLK_INTL (CLK_INTERVAL & 0xff) /* low byte */ 61 62 #if !defined(PRF_INTERVAL) 63 #define PRF_INTERVAL CLK_INTERVAL 64 #endif 65 66 #define SECYR 31536000 67