1*fa5ef511Skettenis /* $OpenBSD: fhcreg.h,v 1.4 2007/05/01 19:44:56 kettenis Exp $ */ 235a7963cSjason 335a7963cSjason /* 435a7963cSjason * Copyright (c) 2004 Jason L. Wright (jason@thought.net). 535a7963cSjason * All rights reserved. 635a7963cSjason * 735a7963cSjason * Redistribution and use in source and binary forms, with or without 835a7963cSjason * modification, are permitted provided that the following conditions 935a7963cSjason * are met: 1035a7963cSjason * 1. Redistributions of source code must retain the above copyright 1135a7963cSjason * notice, this list of conditions and the following disclaimer. 1235a7963cSjason * 2. Redistributions in binary form must reproduce the above copyright 1335a7963cSjason * notice, this list of conditions and the following disclaimer in the 1435a7963cSjason * documentation and/or other materials provided with the distribution. 1535a7963cSjason * 1635a7963cSjason * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 1735a7963cSjason * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 1835a7963cSjason * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 1935a7963cSjason * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, 2035a7963cSjason * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 2135a7963cSjason * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 2235a7963cSjason * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2335a7963cSjason * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 2435a7963cSjason * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 2535a7963cSjason * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2635a7963cSjason * POSSIBILITY OF SUCH DAMAGE. 2735a7963cSjason */ 2835a7963cSjason 2935a7963cSjason #define FHC_P_ID 0x00000000 /* ID */ 3035a7963cSjason #define FHC_P_RCS 0x00000010 /* reset ctrl/status */ 3135a7963cSjason #define FHC_P_CTRL 0x00000020 /* control */ 3235a7963cSjason #define FHC_P_BSR 0x00000030 /* board status */ 3335a7963cSjason #define FHC_P_ECC 0x00000040 /* ECC control */ 3435a7963cSjason #define FHC_P_JCTRL 0x000000f0 /* JTAG control */ 3535a7963cSjason 36c7a321c7Sjason #define FHC_P_CTRL_ICS 0x00100000 /* ignore centerplane sigs */ 37c7a321c7Sjason #define FHC_P_CTRL_FRST 0x00080000 /* fatal error reset enable */ 38c7a321c7Sjason #define FHC_P_CTRL_LFAT 0x00080000 /* AC/DC local error */ 39c7a321c7Sjason #define FHC_P_CTRL_SLINE 0x00010000 /* firmware sync line */ 40c7a321c7Sjason #define FHC_P_CTRL_DCD 0x00008000 /* DC/DC converter disable */ 41c7a321c7Sjason #define FHC_P_CTRL_POFF 0x00004000 /* AC/DC ctlr PLL disable */ 42c7a321c7Sjason #define FHC_P_CTRL_FOFF 0x00002000 /* FHC ctlr PLL disable */ 43c7a321c7Sjason #define FHC_P_CTRL_AOFF 0x00001000 /* cpu a sram low pwr mode */ 44c7a321c7Sjason #define FHC_P_CTRL_BOFF 0x00000800 /* cpu b sram low pwr mode */ 45c7a321c7Sjason #define FHC_P_CTRL_PSOFF 0x00000400 /* disable fhc power supply */ 46c7a321c7Sjason #define FHC_P_CTRL_IXIST 0x00000200 /* fhc notifies clock-board */ 47c7a321c7Sjason #define FHC_P_CTRL_XMSTR 0x00000100 /* xir master enable */ 48c7a321c7Sjason #define FHC_P_CTRL_LLED 0x00000040 /* left led (reversed) */ 49c7a321c7Sjason #define FHC_P_CTRL_MLED 0x00000020 /* middle led */ 50c7a321c7Sjason #define FHC_P_CTRL_RLED 0x00000010 /* right led */ 51c7a321c7Sjason #define FHC_P_CTRL_BPINS 0x00000003 /* spare bidir pins */ 52c7a321c7Sjason 5335a7963cSjason #define FHC_I_IGN 0x00000000 /* IGN register */ 5435a7963cSjason 5535a7963cSjason #define FHC_F_IMAP 0x00000000 /* fanfail intr map */ 5635a7963cSjason #define FHC_F_ICLR 0x00000010 /* fanfail intr clr */ 5735a7963cSjason 5835a7963cSjason #define FHC_S_IMAP 0x00000000 /* system intr map */ 5935a7963cSjason #define FHC_S_ICLR 0x00000010 /* system intr clr */ 6035a7963cSjason 6135a7963cSjason #define FHC_U_IMAP 0x00000000 /* uart intr map */ 6235a7963cSjason #define FHC_U_ICLR 0x00000010 /* uart intr clr */ 6335a7963cSjason 6435a7963cSjason #define FHC_T_IMAP 0x00000000 /* tod intr map */ 6535a7963cSjason #define FHC_T_ICLR 0x00000010 /* tod intr clr */ 6635a7963cSjason 6735a7963cSjason struct fhc_intr_reg { 6835a7963cSjason u_int64_t imap; 69564beac2Sjason u_int64_t unused_0; 7035a7963cSjason u_int64_t iclr; 71564beac2Sjason u_int64_t unused_1; 7235a7963cSjason }; 7335a7963cSjason 74*fa5ef511Skettenis #define FHC_INO(ino) ((ino) & 0x7) 75*fa5ef511Skettenis #define FHC_S_INO 0 76*fa5ef511Skettenis #define FHC_U_INO 1 77*fa5ef511Skettenis #define FHC_T_INO 2 78*fa5ef511Skettenis #define FHC_F_INO 3 79