linux/arch/mips/include/asm/sibyte/sb1250_ldt.h
<<
>>
Prefs
   1/*  *********************************************************************
   2    *  SB1250 Board Support Package
   3    *
   4    *  LDT constants                            File: sb1250_ldt.h
   5    *
   6    *  This module contains constants and macros to describe
   7    *  the LDT interface on the SB1250.
   8    *
   9    *  SB1250 specification level:  User's manual 1/02/02
  10    *
  11    *********************************************************************
  12    *
  13    *  Copyright 2000, 2001, 2002, 2003
  14    *  Broadcom Corporation. All rights reserved.
  15    *
  16    *  This program is free software; you can redistribute it and/or
  17    *  modify it under the terms of the GNU General Public License as
  18    *  published by the Free Software Foundation; either version 2 of
  19    *  the License, or (at your option) any later version.
  20    *
  21    *  This program is distributed in the hope that it will be useful,
  22    *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  23    *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  24    *  GNU General Public License for more details.
  25    *
  26    *  You should have received a copy of the GNU General Public License
  27    *  along with this program; if not, write to the Free Software
  28    *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  29    *  MA 02111-1307 USA
  30    ********************************************************************* */
  31
  32
  33#ifndef _SB1250_LDT_H
  34#define _SB1250_LDT_H
  35
  36#include <asm/sibyte/sb1250_defs.h>
  37
  38#define K_LDT_VENDOR_SIBYTE     0x166D
  39#define K_LDT_DEVICE_SB1250     0x0002
  40
  41/*
  42 * LDT Interface Type 1 (bridge) configuration header
  43 */
  44
  45#define R_LDT_TYPE1_DEVICEID    0x0000
  46#define R_LDT_TYPE1_CMDSTATUS   0x0004
  47#define R_LDT_TYPE1_CLASSREV    0x0008
  48#define R_LDT_TYPE1_DEVHDR      0x000C
  49#define R_LDT_TYPE1_BAR0        0x0010  /* not used */
  50#define R_LDT_TYPE1_BAR1        0x0014  /* not used */
  51
  52#define R_LDT_TYPE1_BUSID       0x0018  /* bus ID register */
  53#define R_LDT_TYPE1_SECSTATUS   0x001C  /* secondary status / I/O base/limit */
  54#define R_LDT_TYPE1_MEMLIMIT    0x0020
  55#define R_LDT_TYPE1_PREFETCH    0x0024
  56#define R_LDT_TYPE1_PREF_BASE   0x0028
  57#define R_LDT_TYPE1_PREF_LIMIT  0x002C
  58#define R_LDT_TYPE1_IOLIMIT     0x0030
  59#define R_LDT_TYPE1_CAPPTR      0x0034
  60#define R_LDT_TYPE1_ROMADDR     0x0038
  61#define R_LDT_TYPE1_BRCTL       0x003C
  62#define R_LDT_TYPE1_CMD         0x0040
  63#define R_LDT_TYPE1_LINKCTRL    0x0044
  64#define R_LDT_TYPE1_LINKFREQ    0x0048
  65#define R_LDT_TYPE1_RESERVED1   0x004C
  66#define R_LDT_TYPE1_SRICMD      0x0050
  67#define R_LDT_TYPE1_SRITXNUM    0x0054
  68#define R_LDT_TYPE1_SRIRXNUM    0x0058
  69#define R_LDT_TYPE1_ERRSTATUS   0x0068
  70#define R_LDT_TYPE1_SRICTRL     0x006C
  71#if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
  72#define R_LDT_TYPE1_ADDSTATUS   0x0070
  73#endif /* 1250 PASS2 || 112x PASS1 */
  74#define R_LDT_TYPE1_TXBUFCNT    0x00C8
  75#define R_LDT_TYPE1_EXPCRC      0x00DC
  76#define R_LDT_TYPE1_RXCRC       0x00F0
  77
  78
  79/*
  80 * LDT Device ID register
  81 */
  82
  83#define S_LDT_DEVICEID_VENDOR           0
  84#define M_LDT_DEVICEID_VENDOR           _SB_MAKEMASK_32(16, S_LDT_DEVICEID_VENDOR)
  85#define V_LDT_DEVICEID_VENDOR(x)        _SB_MAKEVALUE_32(x, S_LDT_DEVICEID_VENDOR)
  86#define G_LDT_DEVICEID_VENDOR(x)        _SB_GETVALUE_32(x, S_LDT_DEVICEID_VENDOR, M_LDT_DEVICEID_VENDOR)
  87
  88#define S_LDT_DEVICEID_DEVICEID         16
  89#define M_LDT_DEVICEID_DEVICEID         _SB_MAKEMASK_32(16, S_LDT_DEVICEID_DEVICEID)
  90#define V_LDT_DEVICEID_DEVICEID(x)      _SB_MAKEVALUE_32(x, S_LDT_DEVICEID_DEVICEID)
  91#define G_LDT_DEVICEID_DEVICEID(x)      _SB_GETVALUE_32(x, S_LDT_DEVICEID_DEVICEID, M_LDT_DEVICEID_DEVICEID)
  92
  93
  94/*
  95 * LDT Command Register (Table 8-13)
  96 */
  97
  98#define M_LDT_CMD_IOSPACE_EN            _SB_MAKEMASK1_32(0)
  99#define M_LDT_CMD_MEMSPACE_EN           _SB_MAKEMASK1_32(1)
 100#define M_LDT_CMD_MASTER_EN             _SB_MAKEMASK1_32(2)
 101#define M_LDT_CMD_SPECCYC_EN            _SB_MAKEMASK1_32(3)
 102#define M_LDT_CMD_MEMWRINV_EN           _SB_MAKEMASK1_32(4)
 103#define M_LDT_CMD_VGAPALSNP_EN          _SB_MAKEMASK1_32(5)
 104#define M_LDT_CMD_PARERRRESP            _SB_MAKEMASK1_32(6)
 105#define M_LDT_CMD_WAITCYCCTRL           _SB_MAKEMASK1_32(7)
 106#define M_LDT_CMD_SERR_EN               _SB_MAKEMASK1_32(8)
 107#define M_LDT_CMD_FASTB2B_EN            _SB_MAKEMASK1_32(9)
 108
 109/*
 110 * LDT class and revision registers
 111 */
 112
 113#define S_LDT_CLASSREV_REV              0
 114#define M_LDT_CLASSREV_REV              _SB_MAKEMASK_32(8, S_LDT_CLASSREV_REV)
 115#define V_LDT_CLASSREV_REV(x)           _SB_MAKEVALUE_32(x, S_LDT_CLASSREV_REV)
 116#define G_LDT_CLASSREV_REV(x)           _SB_GETVALUE_32(x, S_LDT_CLASSREV_REV, M_LDT_CLASSREV_REV)
 117
 118#define S_LDT_CLASSREV_CLASS            8
 119#define M_LDT_CLASSREV_CLASS            _SB_MAKEMASK_32(24, S_LDT_CLASSREV_CLASS)
 120#define V_LDT_CLASSREV_CLASS(x)         _SB_MAKEVALUE_32(x, S_LDT_CLASSREV_CLASS)
 121#define G_LDT_CLASSREV_CLASS(x)         _SB_GETVALUE_32(x, S_LDT_CLASSREV_CLASS, M_LDT_CLASSREV_CLASS)
 122
 123#define K_LDT_REV                       0x01
 124#define K_LDT_CLASS                     0x060000
 125
 126/*
 127 * Device Header (offset 0x0C)
 128 */
 129
 130#define S_LDT_DEVHDR_CLINESZ            0
 131#define M_LDT_DEVHDR_CLINESZ            _SB_MAKEMASK_32(8, S_LDT_DEVHDR_CLINESZ)
 132#define V_LDT_DEVHDR_CLINESZ(x)         _SB_MAKEVALUE_32(x, S_LDT_DEVHDR_CLINESZ)
 133#define G_LDT_DEVHDR_CLINESZ(x)         _SB_GETVALUE_32(x, S_LDT_DEVHDR_CLINESZ, M_LDT_DEVHDR_CLINESZ)
 134
 135#define S_LDT_DEVHDR_LATTMR             8
 136#define M_LDT_DEVHDR_LATTMR             _SB_MAKEMASK_32(8, S_LDT_DEVHDR_LATTMR)
 137#define V_LDT_DEVHDR_LATTMR(x)          _SB_MAKEVALUE_32(x, S_LDT_DEVHDR_LATTMR)
 138#define G_LDT_DEVHDR_LATTMR(x)          _SB_GETVALUE_32(x, S_LDT_DEVHDR_LATTMR, M_LDT_DEVHDR_LATTMR)
 139
 140#define S_LDT_DEVHDR_HDRTYPE            16
 141#define M_LDT_DEVHDR_HDRTYPE            _SB_MAKEMASK_32(8, S_LDT_DEVHDR_HDRTYPE)
 142#define V_LDT_DEVHDR_HDRTYPE(x)         _SB_MAKEVALUE_32(x, S_LDT_DEVHDR_HDRTYPE)
 143#define G_LDT_DEVHDR_HDRTYPE(x)         _SB_GETVALUE_32(x, S_LDT_DEVHDR_HDRTYPE, M_LDT_DEVHDR_HDRTYPE)
 144
 145#define K_LDT_DEVHDR_HDRTYPE_TYPE1      1
 146
 147#define S_LDT_DEVHDR_BIST               24
 148#define M_LDT_DEVHDR_BIST               _SB_MAKEMASK_32(8, S_LDT_DEVHDR_BIST)
 149#define V_LDT_DEVHDR_BIST(x)            _SB_MAKEVALUE_32(x, S_LDT_DEVHDR_BIST)
 150#define G_LDT_DEVHDR_BIST(x)            _SB_GETVALUE_32(x, S_LDT_DEVHDR_BIST, M_LDT_DEVHDR_BIST)
 151
 152
 153
 154/*
 155 * LDT Status Register (Table 8-14).  Note that these constants
 156 * assume you've read the command and status register
 157 * together (32-bit read at offset 0x04)
 158 *
 159 * These bits also apply to the secondary status
 160 * register (Table 8-15), offset 0x1C
 161 */
 162
 163#if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
 164#define M_LDT_STATUS_VGAEN              _SB_MAKEMASK1_32(3)
 165#endif /* 1250 PASS2 || 112x PASS1 */
 166#define M_LDT_STATUS_CAPLIST            _SB_MAKEMASK1_32(20)
 167#define M_LDT_STATUS_66MHZCAP           _SB_MAKEMASK1_32(21)
 168#define M_LDT_STATUS_RESERVED2          _SB_MAKEMASK1_32(22)
 169#define M_LDT_STATUS_FASTB2BCAP         _SB_MAKEMASK1_32(23)
 170#define M_LDT_STATUS_MSTRDPARERR        _SB_MAKEMASK1_32(24)
 171
 172#define S_LDT_STATUS_DEVSELTIMING       25
 173#define M_LDT_STATUS_DEVSELTIMING       _SB_MAKEMASK_32(2, S_LDT_STATUS_DEVSELTIMING)
 174#define V_LDT_STATUS_DEVSELTIMING(x)    _SB_MAKEVALUE_32(x, S_LDT_STATUS_DEVSELTIMING)
 175#define G_LDT_STATUS_DEVSELTIMING(x)    _SB_GETVALUE_32(x, S_LDT_STATUS_DEVSELTIMING, M_LDT_STATUS_DEVSELTIMING)
 176
 177#define M_LDT_STATUS_SIGDTGTABORT       _SB_MAKEMASK1_32(27)
 178#define M_LDT_STATUS_RCVDTGTABORT       _SB_MAKEMASK1_32(28)
 179#define M_LDT_STATUS_RCVDMSTRABORT      _SB_MAKEMASK1_32(29)
 180#define M_LDT_STATUS_SIGDSERR           _SB_MAKEMASK1_32(30)
 181#define M_LDT_STATUS_DETPARERR          _SB_MAKEMASK1_32(31)
 182
 183/*
 184 * Bridge Control Register (Table 8-16).  Note that these
 185 * constants assume you've read the register as a 32-bit
 186 * read (offset 0x3C)
 187 */
 188
 189#define M_LDT_BRCTL_PARERRRESP_EN       _SB_MAKEMASK1_32(16)
 190#define M_LDT_BRCTL_SERR_EN             _SB_MAKEMASK1_32(17)
 191#define M_LDT_BRCTL_ISA_EN              _SB_MAKEMASK1_32(18)
 192#define M_LDT_BRCTL_VGA_EN              _SB_MAKEMASK1_32(19)
 193#define M_LDT_BRCTL_MSTRABORTMODE       _SB_MAKEMASK1_32(21)
 194#define M_LDT_BRCTL_SECBUSRESET         _SB_MAKEMASK1_32(22)
 195#define M_LDT_BRCTL_FASTB2B_EN          _SB_MAKEMASK1_32(23)
 196#define M_LDT_BRCTL_PRIDISCARD          _SB_MAKEMASK1_32(24)
 197#define M_LDT_BRCTL_SECDISCARD          _SB_MAKEMASK1_32(25)
 198#define M_LDT_BRCTL_DISCARDSTAT         _SB_MAKEMASK1_32(26)
 199#define M_LDT_BRCTL_DISCARDSERR_EN      _SB_MAKEMASK1_32(27)
 200
 201/*
 202 * LDT Command Register (Table 8-17).  Note that these constants
 203 * assume you've read the command and status register together
 204 * 32-bit read at offset 0x40
 205 */
 206
 207#define M_LDT_CMD_WARMRESET             _SB_MAKEMASK1_32(16)
 208#define M_LDT_CMD_DOUBLEENDED           _SB_MAKEMASK1_32(17)
 209
 210#define S_LDT_CMD_CAPTYPE               29
 211#define M_LDT_CMD_CAPTYPE               _SB_MAKEMASK_32(3, S_LDT_CMD_CAPTYPE)
 212#define V_LDT_CMD_CAPTYPE(x)            _SB_MAKEVALUE_32(x, S_LDT_CMD_CAPTYPE)
 213#define G_LDT_CMD_CAPTYPE(x)            _SB_GETVALUE_32(x, S_LDT_CMD_CAPTYPE, M_LDT_CMD_CAPTYPE)
 214
 215/*
 216 * LDT link control register (Table 8-18), and (Table 8-19)
 217 */
 218
 219#define M_LDT_LINKCTRL_CAPSYNCFLOOD_EN  _SB_MAKEMASK1_32(1)
 220#define M_LDT_LINKCTRL_CRCSTARTTEST     _SB_MAKEMASK1_32(2)
 221#define M_LDT_LINKCTRL_CRCFORCEERR      _SB_MAKEMASK1_32(3)
 222#define M_LDT_LINKCTRL_LINKFAIL         _SB_MAKEMASK1_32(4)
 223#define M_LDT_LINKCTRL_INITDONE         _SB_MAKEMASK1_32(5)
 224#define M_LDT_LINKCTRL_EOC              _SB_MAKEMASK1_32(6)
 225#define M_LDT_LINKCTRL_XMITOFF          _SB_MAKEMASK1_32(7)
 226
 227#define S_LDT_LINKCTRL_CRCERR           8
 228#define M_LDT_LINKCTRL_CRCERR           _SB_MAKEMASK_32(4, S_LDT_LINKCTRL_CRCERR)
 229#define V_LDT_LINKCTRL_CRCERR(x)        _SB_MAKEVALUE_32(x, S_LDT_LINKCTRL_CRCERR)
 230#define G_LDT_LINKCTRL_CRCERR(x)        _SB_GETVALUE_32(x, S_LDT_LINKCTRL_CRCERR, M_LDT_LINKCTRL_CRCERR)
 231
 232#define S_LDT_LINKCTRL_MAXIN            16
 233#define M_LDT_LINKCTRL_MAXIN            _SB_MAKEMASK_32(3, S_LDT_LINKCTRL_MAXIN)
 234#define V_LDT_LINKCTRL_MAXIN(x)         _SB_MAKEVALUE_32(x, S_LDT_LINKCTRL_MAXIN)
 235#define G_LDT_LINKCTRL_MAXIN(x)         _SB_GETVALUE_32(x, S_LDT_LINKCTRL_MAXIN, M_LDT_LINKCTRL_MAXIN)
 236
 237#define M_LDT_LINKCTRL_DWFCLN           _SB_MAKEMASK1_32(19)
 238
 239#define S_LDT_LINKCTRL_MAXOUT           20
 240#define M_LDT_LINKCTRL_MAXOUT           _SB_MAKEMASK_32(3, S_LDT_LINKCTRL_MAXOUT)
 241#define V_LDT_LINKCTRL_MAXOUT(x)        _SB_MAKEVALUE_32(x, S_LDT_LINKCTRL_MAXOUT)
 242#define G_LDT_LINKCTRL_MAXOUT(x)        _SB_GETVALUE_32(x, S_LDT_LINKCTRL_MAXOUT, M_LDT_LINKCTRL_MAXOUT)
 243
 244#define M_LDT_LINKCTRL_DWFCOUT          _SB_MAKEMASK1_32(23)
 245
 246#define S_LDT_LINKCTRL_WIDTHIN          24
 247#define M_LDT_LINKCTRL_WIDTHIN          _SB_MAKEMASK_32(3, S_LDT_LINKCTRL_WIDTHIN)
 248#define V_LDT_LINKCTRL_WIDTHIN(x)       _SB_MAKEVALUE_32(x, S_LDT_LINKCTRL_WIDTHIN)
 249#define G_LDT_LINKCTRL_WIDTHIN(x)       _SB_GETVALUE_32(x, S_LDT_LINKCTRL_WIDTHIN, M_LDT_LINKCTRL_WIDTHIN)
 250
 251#define M_LDT_LINKCTRL_DWFCLIN_EN       _SB_MAKEMASK1_32(27)
 252
 253#define S_LDT_LINKCTRL_WIDTHOUT         28
 254#define M_LDT_LINKCTRL_WIDTHOUT         _SB_MAKEMASK_32(3, S_LDT_LINKCTRL_WIDTHOUT)
 255#define V_LDT_LINKCTRL_WIDTHOUT(x)      _SB_MAKEVALUE_32(x, S_LDT_LINKCTRL_WIDTHOUT)
 256#define G_LDT_LINKCTRL_WIDTHOUT(x)      _SB_GETVALUE_32(x, S_LDT_LINKCTRL_WIDTHOUT, M_LDT_LINKCTRL_WIDTHOUT)
 257
 258#define M_LDT_LINKCTRL_DWFCOUT_EN       _SB_MAKEMASK1_32(31)
 259
 260/*
 261 * LDT Link frequency register  (Table 8-20) offset 0x48
 262 */
 263
 264#define S_LDT_LINKFREQ_FREQ             8
 265#define M_LDT_LINKFREQ_FREQ             _SB_MAKEMASK_32(4, S_LDT_LINKFREQ_FREQ)
 266#define V_LDT_LINKFREQ_FREQ(x)          _SB_MAKEVALUE_32(x, S_LDT_LINKFREQ_FREQ)
 267#define G_LDT_LINKFREQ_FREQ(x)          _SB_GETVALUE_32(x, S_LDT_LINKFREQ_FREQ, M_LDT_LINKFREQ_FREQ)
 268
 269#define K_LDT_LINKFREQ_200MHZ           0
 270#define K_LDT_LINKFREQ_300MHZ           1
 271#define K_LDT_LINKFREQ_400MHZ           2
 272#define K_LDT_LINKFREQ_500MHZ           3
 273#define K_LDT_LINKFREQ_600MHZ           4
 274#define K_LDT_LINKFREQ_800MHZ           5
 275#define K_LDT_LINKFREQ_1000MHZ          6
 276
 277/*
 278 * LDT SRI Command Register (Table 8-21).  Note that these constants
 279 * assume you've read the command and status register together
 280 * 32-bit read at offset 0x50
 281 */
 282
 283#define M_LDT_SRICMD_SIPREADY           _SB_MAKEMASK1_32(16)
 284#define M_LDT_SRICMD_SYNCPTRCTL         _SB_MAKEMASK1_32(17)
 285#define M_LDT_SRICMD_REDUCESYNCZERO     _SB_MAKEMASK1_32(18)
 286#if SIBYTE_HDR_FEATURE_UP_TO(1250, PASS1)
 287#define M_LDT_SRICMD_DISSTARVATIONCNT   _SB_MAKEMASK1_32(19)    /* PASS1 */
 288#endif /* up to 1250 PASS1 */
 289#if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
 290#define M_LDT_SRICMD_DISMULTTXVLD       _SB_MAKEMASK1_32(19)
 291#define M_LDT_SRICMD_EXPENDIAN          _SB_MAKEMASK1_32(26)
 292#endif /* 1250 PASS2 || 112x PASS1 */
 293
 294
 295#define S_LDT_SRICMD_RXMARGIN           20
 296#define M_LDT_SRICMD_RXMARGIN           _SB_MAKEMASK_32(5, S_LDT_SRICMD_RXMARGIN)
 297#define V_LDT_SRICMD_RXMARGIN(x)        _SB_MAKEVALUE_32(x, S_LDT_SRICMD_RXMARGIN)
 298#define G_LDT_SRICMD_RXMARGIN(x)        _SB_GETVALUE_32(x, S_LDT_SRICMD_RXMARGIN, M_LDT_SRICMD_RXMARGIN)
 299
 300#define M_LDT_SRICMD_LDTPLLCOMPAT       _SB_MAKEMASK1_32(25)
 301
 302#define S_LDT_SRICMD_TXINITIALOFFSET    28
 303#define M_LDT_SRICMD_TXINITIALOFFSET    _SB_MAKEMASK_32(3, S_LDT_SRICMD_TXINITIALOFFSET)
 304#define V_LDT_SRICMD_TXINITIALOFFSET(x) _SB_MAKEVALUE_32(x, S_LDT_SRICMD_TXINITIALOFFSET)
 305#define G_LDT_SRICMD_TXINITIALOFFSET(x) _SB_GETVALUE_32(x, S_LDT_SRICMD_TXINITIALOFFSET, M_LDT_SRICMD_TXINITIALOFFSET)
 306
 307#define M_LDT_SRICMD_LINKFREQDIRECT     _SB_MAKEMASK1_32(31)
 308
 309/*
 310 * LDT Error control and status register (Table 8-22) (Table 8-23)
 311 */
 312
 313#define M_LDT_ERRCTL_PROTFATAL_EN       _SB_MAKEMASK1_32(0)
 314#define M_LDT_ERRCTL_PROTNONFATAL_EN    _SB_MAKEMASK1_32(1)
 315#define M_LDT_ERRCTL_PROTSYNCFLOOD_EN   _SB_MAKEMASK1_32(2)
 316#define M_LDT_ERRCTL_OVFFATAL_EN        _SB_MAKEMASK1_32(3)
 317#define M_LDT_ERRCTL_OVFNONFATAL_EN     _SB_MAKEMASK1_32(4)
 318#define M_LDT_ERRCTL_OVFSYNCFLOOD_EN    _SB_MAKEMASK1_32(5)
 319#define M_LDT_ERRCTL_EOCNXAFATAL_EN     _SB_MAKEMASK1_32(6)
 320#define M_LDT_ERRCTL_EOCNXANONFATAL_EN  _SB_MAKEMASK1_32(7)
 321#define M_LDT_ERRCTL_EOCNXASYNCFLOOD_EN _SB_MAKEMASK1_32(8)
 322#define M_LDT_ERRCTL_CRCFATAL_EN        _SB_MAKEMASK1_32(9)
 323#define M_LDT_ERRCTL_CRCNONFATAL_EN     _SB_MAKEMASK1_32(10)
 324#define M_LDT_ERRCTL_SERRFATAL_EN       _SB_MAKEMASK1_32(11)
 325#define M_LDT_ERRCTL_SRCTAGFATAL_EN     _SB_MAKEMASK1_32(12)
 326#define M_LDT_ERRCTL_SRCTAGNONFATAL_EN  _SB_MAKEMASK1_32(13)
 327#define M_LDT_ERRCTL_SRCTAGSYNCFLOOD_EN _SB_MAKEMASK1_32(14)
 328#define M_LDT_ERRCTL_MAPNXAFATAL_EN     _SB_MAKEMASK1_32(15)
 329#define M_LDT_ERRCTL_MAPNXANONFATAL_EN  _SB_MAKEMASK1_32(16)
 330#define M_LDT_ERRCTL_MAPNXASYNCFLOOD_EN _SB_MAKEMASK1_32(17)
 331
 332#define M_LDT_ERRCTL_PROTOERR           _SB_MAKEMASK1_32(24)
 333#define M_LDT_ERRCTL_OVFERR             _SB_MAKEMASK1_32(25)
 334#define M_LDT_ERRCTL_EOCNXAERR          _SB_MAKEMASK1_32(26)
 335#define M_LDT_ERRCTL_SRCTAGERR          _SB_MAKEMASK1_32(27)
 336#define M_LDT_ERRCTL_MAPNXAERR          _SB_MAKEMASK1_32(28)
 337
 338/*
 339 * SRI Control register (Table 8-24, 8-25)  Offset 0x6C
 340 */
 341
 342#define S_LDT_SRICTRL_NEEDRESP          0
 343#define M_LDT_SRICTRL_NEEDRESP          _SB_MAKEMASK_32(2, S_LDT_SRICTRL_NEEDRESP)
 344#define V_LDT_SRICTRL_NEEDRESP(x)       _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_NEEDRESP)
 345#define G_LDT_SRICTRL_NEEDRESP(x)       _SB_GETVALUE_32(x, S_LDT_SRICTRL_NEEDRESP, M_LDT_SRICTRL_NEEDRESP)
 346
 347#define S_LDT_SRICTRL_NEEDNPREQ         2
 348#define M_LDT_SRICTRL_NEEDNPREQ         _SB_MAKEMASK_32(2, S_LDT_SRICTRL_NEEDNPREQ)
 349#define V_LDT_SRICTRL_NEEDNPREQ(x)      _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_NEEDNPREQ)
 350#define G_LDT_SRICTRL_NEEDNPREQ(x)      _SB_GETVALUE_32(x, S_LDT_SRICTRL_NEEDNPREQ, M_LDT_SRICTRL_NEEDNPREQ)
 351
 352#define S_LDT_SRICTRL_NEEDPREQ          4
 353#define M_LDT_SRICTRL_NEEDPREQ          _SB_MAKEMASK_32(2, S_LDT_SRICTRL_NEEDPREQ)
 354#define V_LDT_SRICTRL_NEEDPREQ(x)       _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_NEEDPREQ)
 355#define G_LDT_SRICTRL_NEEDPREQ(x)       _SB_GETVALUE_32(x, S_LDT_SRICTRL_NEEDPREQ, M_LDT_SRICTRL_NEEDPREQ)
 356
 357#define S_LDT_SRICTRL_WANTRESP          8
 358#define M_LDT_SRICTRL_WANTRESP          _SB_MAKEMASK_32(2, S_LDT_SRICTRL_WANTRESP)
 359#define V_LDT_SRICTRL_WANTRESP(x)       _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_WANTRESP)
 360#define G_LDT_SRICTRL_WANTRESP(x)       _SB_GETVALUE_32(x, S_LDT_SRICTRL_WANTRESP, M_LDT_SRICTRL_WANTRESP)
 361
 362#define S_LDT_SRICTRL_WANTNPREQ         10
 363#define M_LDT_SRICTRL_WANTNPREQ         _SB_MAKEMASK_32(2, S_LDT_SRICTRL_WANTNPREQ)
 364#define V_LDT_SRICTRL_WANTNPREQ(x)      _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_WANTNPREQ)
 365#define G_LDT_SRICTRL_WANTNPREQ(x)      _SB_GETVALUE_32(x, S_LDT_SRICTRL_WANTNPREQ, M_LDT_SRICTRL_WANTNPREQ)
 366
 367#define S_LDT_SRICTRL_WANTPREQ          12
 368#define M_LDT_SRICTRL_WANTPREQ          _SB_MAKEMASK_32(2, S_LDT_SRICTRL_WANTPREQ)
 369#define V_LDT_SRICTRL_WANTPREQ(x)       _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_WANTPREQ)
 370#define G_LDT_SRICTRL_WANTPREQ(x)       _SB_GETVALUE_32(x, S_LDT_SRICTRL_WANTPREQ, M_LDT_SRICTRL_WANTPREQ)
 371
 372#define S_LDT_SRICTRL_BUFRELSPACE       16
 373#define M_LDT_SRICTRL_BUFRELSPACE       _SB_MAKEMASK_32(4, S_LDT_SRICTRL_BUFRELSPACE)
 374#define V_LDT_SRICTRL_BUFRELSPACE(x)    _SB_MAKEVALUE_32(x, S_LDT_SRICTRL_BUFRELSPACE)
 375#define G_LDT_SRICTRL_BUFRELSPACE(x)    _SB_GETVALUE_32(x, S_LDT_SRICTRL_BUFRELSPACE, M_LDT_SRICTRL_BUFRELSPACE)
 376
 377/*
 378 * LDT SRI Transmit Buffer Count register (Table 8-26)
 379 */
 380
 381#define S_LDT_TXBUFCNT_PCMD             0
 382#define M_LDT_TXBUFCNT_PCMD             _SB_MAKEMASK_32(4, S_LDT_TXBUFCNT_PCMD)
 383#define V_LDT_TXBUFCNT_PCMD(x)          _SB_MAKEVALUE_32(x, S_LDT_TXBUFCNT_PCMD)
 384#define G_LDT_TXBUFCNT_PCMD(x)          _SB_GETVALUE_32(x, S_LDT_TXBUFCNT_PCMD, M_LDT_TXBUFCNT_PCMD)
 385
 386#define S_LDT_TXBUFCNT_PDATA            4
 387#define M_LDT_TXBUFCNT_PDATA            _SB_MAKEMASK_32(4, S_LDT_TXBUFCNT_PDATA)
 388#define V_LDT_TXBUFCNT_PDATA(x)         _SB_MAKEVALUE_32(x, S_LDT_TXBUFCNT_PDATA)
 389#define G_LDT_TXBUFCNT_PDATA(x)         _SB_GETVALUE_32(x, S_LDT_TXBUFCNT_PDATA, M_LDT_TXBUFCNT_PDATA)
 390
 391#define S_LDT_TXBUFCNT_NPCMD            8
 392#define M_LDT_TXBUFCNT_NPCMD            _SB_MAKEMASK_32(4, S_LDT_TXBUFCNT_NPCMD)
 393#define V_LDT_TXBUFCNT_NPCMD(x)         _SB_MAKEVALUE_32(x, S_LDT_TXBUFCNT_NPCMD)
 394#define G_LDT_TXBUFCNT_NPCMD(x)         _SB_GETVALUE_32(x, S_LDT_TXBUFCNT_NPCMD, M_LDT_TXBUFCNT_NPCMD)
 395
 396#define S_LDT_TXBUFCNT_NPDATA           12
 397#define M_LDT_TXBUFCNT_NPDATA           _SB_MAKEMASK_32(4, S_LDT_TXBUFCNT_NPDATA)
 398#define V_LDT_TXBUFCNT_NPDATA(x)        _SB_MAKEVALUE_32(x, S_LDT_TXBUFCNT_NPDATA)
 399#define G_LDT_TXBUFCNT_NPDATA(x)        _SB_GETVALUE_32(x, S_LDT_TXBUFCNT_NPDATA, M_LDT_TXBUFCNT_NPDATA)
 400
 401#define S_LDT_TXBUFCNT_RCMD             16
 402#define M_LDT_TXBUFCNT_RCMD             _SB_MAKEMASK_32(4, S_LDT_TXBUFCNT_RCMD)
 403#define V_LDT_TXBUFCNT_RCMD(x)          _SB_MAKEVALUE_32(x, S_LDT_TXBUFCNT_RCMD)
 404#define G_LDT_TXBUFCNT_RCMD(x)          _SB_GETVALUE_32(x, S_LDT_TXBUFCNT_RCMD, M_LDT_TXBUFCNT_RCMD)
 405
 406#define S_LDT_TXBUFCNT_RDATA            20
 407#define M_LDT_TXBUFCNT_RDATA            _SB_MAKEMASK_32(4, S_LDT_TXBUFCNT_RDATA)
 408#define V_LDT_TXBUFCNT_RDATA(x)         _SB_MAKEVALUE_32(x, S_LDT_TXBUFCNT_RDATA)
 409#define G_LDT_TXBUFCNT_RDATA(x)         _SB_GETVALUE_32(x, S_LDT_TXBUFCNT_RDATA, M_LDT_TXBUFCNT_RDATA)
 410
 411#if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
 412/*
 413 * Additional Status Register
 414 */
 415
 416#define S_LDT_ADDSTATUS_TGTDONE         0
 417#define M_LDT_ADDSTATUS_TGTDONE         _SB_MAKEMASK_32(8, S_LDT_ADDSTATUS_TGTDONE)
 418#define V_LDT_ADDSTATUS_TGTDONE(x)      _SB_MAKEVALUE_32(x, S_LDT_ADDSTATUS_TGTDONE)
 419#define G_LDT_ADDSTATUS_TGTDONE(x)      _SB_GETVALUE_32(x, S_LDT_ADDSTATUS_TGTDONE, M_LDT_ADDSTATUS_TGTDONE)
 420#endif /* 1250 PASS2 || 112x PASS1 */
 421
 422#endif
 423