Annotation of sys/dev/ic/slireg.h, Revision 1.1
1.1 ! nbrk 1: /* $OpenBSD: slireg.h,v 1.4 2007/05/19 10:24:18 dlg Exp $ */
! 2:
! 3: /*
! 4: * Copyright (c) 2007 David Gwynne <dlg@openbsd.org>
! 5: *
! 6: * Permission to use, copy, modify, and distribute this software for any
! 7: * purpose with or without fee is hereby granted, provided that the above
! 8: * copyright notice and this permission notice appear in all copies.
! 9: *
! 10: * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
! 11: * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
! 12: * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
! 13: * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
! 14: * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
! 15: * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
! 16: * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
! 17: */
! 18:
! 19: /*
! 20: * PCI BARs
! 21: */
! 22: #define SLI_PCI_BAR_SLIM 0x10
! 23: #define SLI_PCI_BAR_REGISTER 0x18
! 24: #define SLI_PCI_BAR_BIU 0x20
! 25: #define SLI_PCI_BAR_REGISTER_IO 0x24
! 26:
! 27: /*
! 28: * Registers in the REGISTER BAR
! 29: */
! 30: #define SLI_REG_HA 0x0 /* Host Attention */
! 31: #define SLI_REG_HA_ERATT (1<<31)
! 32: #define SLI_REG_HA_MBATT (1<<30)
! 33: #define SLI_REG_HA_LATT (1<<29)
! 34: #define SLI_REG_HA_R3ATT (1<<15)
! 35: #define SLI_REG_HA_R3CE_RSP (1<<13)
! 36: #define SLI_REG_HA_R3RE_REQ (1<<12)
! 37: #define SLI_REG_HA_R2ATT (1<<11)
! 38: #define SLI_REG_HA_R2CE_RSP (1<<9)
! 39: #define SLI_REG_HA_R2RE_REQ (1<<8)
! 40: #define SLI_REG_HA_R1ATT (1<<7)
! 41: #define SLI_REG_HA_R1CE_RSP (1<<5)
! 42: #define SLI_REG_HA_R1RE_REQ (1<<4)
! 43: #define SLI_REG_HA_R0ATT (1<<3)
! 44: #define SLI_REG_HA_R0CE_RSP (1<<1)
! 45: #define SLI_REG_HA_R0RE_REQ (1<<0)
! 46: #define SLI_FMT_HA "\020" "\040ERATT" "\037MBATT" "\036LATT" \
! 47: "\020R3ATT" "\016R3CE_RSP" "\015R3RE_REQ" \
! 48: "\014R3ATT" "\012R3CE_RSP" "\011R3RE_REQ" \
! 49: "\010R3ATT" "\006R3CE_RSP" "\005R3RE_REQ" \
! 50: "\040R3ATT" "\002R3CE_RSP" "\001R3RE_REQ"
! 51: #define SLI_REG_CA 0x4 /* Chip Attention */
! 52: #define SLI_REG_CA_MBATT (1<<30)
! 53: #define SLI_REG_CA_R3ATT (1<<15)
! 54: #define SLI_REG_CA_R3RE_RSP (1<<13)
! 55: #define SLI_REG_CA_R3CE_REQ (1<<12)
! 56: #define SLI_REG_CA_R2ATT (1<<11)
! 57: #define SLI_REG_CA_R2RE_RSP (1<<9)
! 58: #define SLI_REG_CA_R2CE_REQ (1<<8)
! 59: #define SLI_REG_CA_R1ATT (1<<7)
! 60: #define SLI_REG_CA_R1RE_RSP (1<<5)
! 61: #define SLI_REG_CA_R1CE_REQ (1<<4)
! 62: #define SLI_REG_CA_R0ATT (1<<3)
! 63: #define SLI_REG_CA_R0RE_RSP (1<<1)
! 64: #define SLI_REG_CA_R0CE_REQ (1<<0)
! 65: #define SLI_FMT_CA "\020" "\037MBATT" \
! 66: "\020R3ATT" "\016R3RE_RSP" "\015R3CE_REQ" \
! 67: "\014R3ATT" "\012R3RE_RSP" "\011R3CE_REQ" \
! 68: "\010R3ATT" "\006R3RE_RSP" "\005R3CE_REQ" \
! 69: "\040R3ATT" "\002R3RE_RSP" "\001R3CE_REQ"
! 70: #define SLI_REG_HS 0x8 /* Host Status */
! 71: #define SLI_REG_HS_FFER_MASK (0xff000000)
! 72: #define SLI_REG_HS_FF1 (1<<31)
! 73: #define SLI_REG_HS_FF2 (1<<30)
! 74: #define SLI_REG_HS_FF3 (1<<29)
! 75: #define SLI_REG_HS_FF4 (1<<28)
! 76: #define SLI_REG_HS_FF5 (1<<27)
! 77: #define SLI_REG_HS_FF6 (1<<26)
! 78: #define SLI_REG_HS_FF7 (1<<25)
! 79: #define SLI_REG_HS_FF8 (1<<24)
! 80: #define SLI_REG_HS_FFRDY (1<<23)
! 81: #define SLI_REG_HS_MBRDY (1<<22)
! 82: #define SLI_FMT_HS "\020" "\040FF1" "\037FF2" "\036FF3" \
! 83: "\035FF4" "\034FF5" "\033FF6" "\032FF7" \
! 84: "\031FF8" "\030FFRDY" "\027MBRDY"
! 85: #define SLI_REG_HC 0xc /* Host Control */
! 86: #define SLI_REG_HC_ERINT (1<<31)
! 87: #define SLI_REG_HC_LAINT (1<<29)
! 88: #define SLI_REG_HC_INITFF (1<<27)
! 89: #define SLI_REG_HC_INITMB (1<<26)
! 90: #define SLI_REG_HC_INITHBI (1<<25)
! 91: #define SLI_REG_HC_R3INT (1<<4)
! 92: #define SLI_REG_HC_R2INT (1<<3)
! 93: #define SLI_REG_HC_R1INT (1<<2)
! 94: #define SLI_REG_HC_R0INT (1<<1)
! 95: #define SLI_REG_HC_MBINT (1<<0)
! 96: #define SLI_FMT_HC "\020" "\040ERINT" "\036LAINT" "\035INITFF" \
! 97: "\034INITMB" "\033INITHBI" "\005R3INT" \
! 98: "\004R2INT" "\003R1INT" "\002R0INT" \
! 99: "\001MBINT"
! 100:
! 101: /*
! 102: * Mailbox commands
! 103: */
! 104: #define SLI_CMD_SHUTDOWN 0x00
! 105: #define SLI_CMD_LOAD_SM 0x01
! 106: #define SLI_CMD_READ_NV 0x02
! 107: #define SLI_CMD_WRITE_NV 0x03
! 108: #define SLI_CMD_RUN_BIU_DIAG 0x04
! 109: #define SLI_CMD_INIT_LINK 0x05
! 110: #define SLI_CMD_DOWN_LINK 0x06
! 111: #define SLI_CMD_CONFIG_LINK 0x07
! 112: #define SLI_CMD_CONFIG_RING 0x09
! 113: #define SLI_CMD_RESET_RING 0x0a
! 114: #define SLI_CMD_READ_CONFIG 0x0b
! 115: #define SLI_CMD_READ_RCONFIG 0x0c
! 116: #define SLI_CMD_READ_SPARM 0x0d
! 117: #define SLI_CMD_READ_STATUS 0x0e
! 118: #define SLI_CMD_READ_RPI 0x0f
! 119: #define SLI_CMD_READ_XRI 0x10
! 120: #define SLI_CMD_READ_REV 0x11
! 121: #define SLI_CMD_READ_LNK_STAT 0x12
! 122: #define SLI_CMD_REG_LOGIN 0x13
! 123: #define SLI_CMD_UNREG_LOGIN 0x14
! 124: #define SLI_CMD_READ_LA 0x15
! 125: #define SLI_CMD_CLEAR_LA 0x16
! 126: #define SLI_CMD_DUMP_MEMORY 0x17
! 127: #define SLI_CMD_DUMP_CONTEXT 0x18
! 128: #define SLI_CMD_RUN_DIAGS 0x19
! 129: #define SLI_CMD_RESTART 0x1a
! 130: #define SLI_CMD_UPDATE_CFG 0x1b
! 131: #define SLI_CMD_DOWN_LOAD 0x1c
! 132: #define SLI_CMD_DEL_LD_ENTRY 0x1d
! 133: #define SLI_CMD_RUN_PROGRAM 0x1e
! 134: #define SLI_CMD_SET_MASK 0x20
! 135: #define SLI_CMD_SEL_SLIM 0x21
! 136: #define SLI_CMD_UNREG_D_ID 0x23
! 137: #define SLI_CMD_KILL_BOARD 0x24
! 138: #define SLI_CMD_CONFIG_FARP 0x25
! 139: #define SLI_CMD_LOAD_AREA 0x81
! 140: #define SLI_CMD_RUN_BIU_DIAG64 0x84
! 141: #define SLI_CMD_CONFIG_PORT 0x88
! 142: #define SLI_CMD_READ_SPARM64 0x8d
! 143: #define SLI_CMD_READ_RPI64 0x8f
! 144: #define SLI_CMD_REG_LOGIN64 0x93
! 145: #define SLI_CMD_READ_LA64 0x95
! 146: #define SLI_CMD_FLAGS_WR_ULA 0x98
! 147: #define SLI_CMD_FLSET_DEBUG 0x99
! 148: #define SLI_CMD_LOAD_EXP_ROM 0x9c
! 149: #define SLI_CMD_MAX_CMDS 0x9d
CVSweb