Home | History | Annotate | Line # | Download | only in include
sb1250_ldt.h revision 1.3
      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     *  Author:  Mitch Lichtenberg (mpl (at) broadcom.com)
     12     *
     13     *********************************************************************
     14     *
     15     *  Copyright 2000,2001,2002,2003
     16     *  Broadcom Corporation. All rights reserved.
     17     *
     18     *  This software is furnished under license and may be used and
     19     *  copied only in accordance with the following terms and
     20     *  conditions.  Subject to these conditions, you may download,
     21     *  copy, install, use, modify and distribute modified or unmodified
     22     *  copies of this software in source and/or binary form.  No title
     23     *  or ownership is transferred hereby.
     24     *
     25     *  1) Any source code used, modified or distributed must reproduce
     26     *     and retain this copyright notice and list of conditions
     27     *     as they appear in the source file.
     28     *
     29     *  2) No right is granted to use any trade name, trademark, or
     30     *     logo of Broadcom Corporation.  The "Broadcom Corporation"
     31     *     name may not be used to endorse or promote products derived
     32     *     from this software without the prior written permission of
     33     *     Broadcom Corporation.
     34     *
     35     *  3) THIS SOFTWARE IS PROVIDED "AS-IS" AND ANY EXPRESS OR
     36     *     IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED
     37     *     WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
     38     *     PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT
     39     *     SHALL BROADCOM BE LIABLE FOR ANY DAMAGES WHATSOEVER, AND IN
     40     *     PARTICULAR, BROADCOM SHALL NOT BE LIABLE FOR DIRECT, INDIRECT,
     41     *     INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
     42     *     (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
     43     *     GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
     44     *     BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
     45     *     OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
     46     *     TORT (INCLUDING NEGLIGENCE OR OTHERWISE), EVEN IF ADVISED OF
     47     *     THE POSSIBILITY OF SUCH DAMAGE.
     48     ********************************************************************* */
     49 
     50 
     51 #ifndef _SB1250_LDT_H
     52 #define _SB1250_LDT_H
     53 
     54 #include "sb1250_defs.h"
     55 
     56 #define K_LDT_VENDOR_SIBYTE	0x166D
     57 #define K_LDT_DEVICE_SB1250	0x0002
     58 
     59 /*
     60  * LDT Interface Type 1 (bridge) configuration header
     61  */
     62 
     63 #define R_LDT_TYPE1_DEVICEID	0x0000
     64 #define R_LDT_TYPE1_CMDSTATUS	0x0004
     65 #define R_LDT_TYPE1_CLASSREV	0x0008
     66 #define R_LDT_TYPE1_DEVHDR	0x000C
     67 #define R_LDT_TYPE1_BAR0	0x0010	/* not used */
     68 #define R_LDT_TYPE1_BAR1	0x0014	/* not used */
     69 
     70 #define R_LDT_TYPE1_BUSID	0x0018	/* bus ID register */
     71 #define R_LDT_TYPE1_SECSTATUS	0x001C	/* secondary status / I/O base/limit */
     72 #define R_LDT_TYPE1_MEMLIMIT	0x0020
     73 #define R_LDT_TYPE1_PREFETCH	0x0024
     74 #define R_LDT_TYPE1_PREF_BASE	0x0028
     75 #define R_LDT_TYPE1_PREF_LIMIT	0x002C
     76 #define R_LDT_TYPE1_IOLIMIT	0x0030
     77 #define R_LDT_TYPE1_CAPPTR	0x0034
     78 #define R_LDT_TYPE1_ROMADDR	0x0038
     79 #define R_LDT_TYPE1_BRCTL	0x003C
     80 #define R_LDT_TYPE1_CMD		0x0040
     81 #define R_LDT_TYPE1_LINKCTRL	0x0044
     82 #define R_LDT_TYPE1_LINKFREQ	0x0048
     83 #define R_LDT_TYPE1_RESERVED1	0x004C
     84 #define R_LDT_TYPE1_SRICMD	0x0050
     85 #define R_LDT_TYPE1_SRITXNUM	0x0054
     86 #define R_LDT_TYPE1_SRIRXNUM	0x0058
     87 #define R_LDT_TYPE1_ERRSTATUS   0x0068
     88 #define R_LDT_TYPE1_SRICTRL	0x006C
     89 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
     90 #define R_LDT_TYPE1_ADDSTATUS	0x0070
     91 #endif /* 1250 PASS2 || 112x PASS1 */
     92 #define R_LDT_TYPE1_TXBUFCNT	0x00C8
     93 #define R_LDT_TYPE1_EXPCRC	0x00DC
     94 #define R_LDT_TYPE1_RXCRC	0x00F0
     95 
     96 
     97 /*
     98  * LDT Device ID register
     99  */
    100 
    101 #define S_LDT_DEVICEID_VENDOR		0
    102 #define M_LDT_DEVICEID_VENDOR		_SB_MAKEMASK_32(16,S_LDT_DEVICEID_VENDOR)
    103 #define V_LDT_DEVICEID_VENDOR(x)	_SB_MAKEVALUE_32(x,S_LDT_DEVICEID_VENDOR)
    104 #define G_LDT_DEVICEID_VENDOR(x)	_SB_GETVALUE_32(x,S_LDT_DEVICEID_VENDOR,M_LDT_DEVICEID_VENDOR)
    105 
    106 #define S_LDT_DEVICEID_DEVICEID		16
    107 #define M_LDT_DEVICEID_DEVICEID		_SB_MAKEMASK_32(16,S_LDT_DEVICEID_DEVICEID)
    108 #define V_LDT_DEVICEID_DEVICEID(x)	_SB_MAKEVALUE_32(x,S_LDT_DEVICEID_DEVICEID)
    109 #define G_LDT_DEVICEID_DEVICEID(x)	_SB_GETVALUE_32(x,S_LDT_DEVICEID_DEVICEID,M_LDT_DEVICEID_DEVICEID)
    110 
    111 
    112 /*
    113  * LDT Command Register (Table 8-13)
    114  */
    115 
    116 #define M_LDT_CMD_IOSPACE_EN		_SB_MAKEMASK1_32(0)
    117 #define M_LDT_CMD_MEMSPACE_EN		_SB_MAKEMASK1_32(1)
    118 #define M_LDT_CMD_MASTER_EN		_SB_MAKEMASK1_32(2)
    119 #define M_LDT_CMD_SPECCYC_EN		_SB_MAKEMASK1_32(3)
    120 #define M_LDT_CMD_MEMWRINV_EN		_SB_MAKEMASK1_32(4)
    121 #define M_LDT_CMD_VGAPALSNP_EN		_SB_MAKEMASK1_32(5)
    122 #define M_LDT_CMD_PARERRRESP		_SB_MAKEMASK1_32(6)
    123 #define M_LDT_CMD_WAITCYCCTRL		_SB_MAKEMASK1_32(7)
    124 #define M_LDT_CMD_SERR_EN		_SB_MAKEMASK1_32(8)
    125 #define M_LDT_CMD_FASTB2B_EN		_SB_MAKEMASK1_32(9)
    126 
    127 /*
    128  * LDT class and revision registers
    129  */
    130 
    131 #define S_LDT_CLASSREV_REV		0
    132 #define M_LDT_CLASSREV_REV		_SB_MAKEMASK_32(8,S_LDT_CLASSREV_REV)
    133 #define V_LDT_CLASSREV_REV(x)		_SB_MAKEVALUE_32(x,S_LDT_CLASSREV_REV)
    134 #define G_LDT_CLASSREV_REV(x)		_SB_GETVALUE_32(x,S_LDT_CLASSREV_REV,M_LDT_CLASSREV_REV)
    135 
    136 #define S_LDT_CLASSREV_CLASS		8
    137 #define M_LDT_CLASSREV_CLASS		_SB_MAKEMASK_32(24,S_LDT_CLASSREV_CLASS)
    138 #define V_LDT_CLASSREV_CLASS(x)		_SB_MAKEVALUE_32(x,S_LDT_CLASSREV_CLASS)
    139 #define G_LDT_CLASSREV_CLASS(x)		_SB_GETVALUE_32(x,S_LDT_CLASSREV_CLASS,M_LDT_CLASSREV_CLASS)
    140 
    141 #define K_LDT_REV			0x01
    142 #define K_LDT_CLASS			0x060000
    143 
    144 /*
    145  * Device Header (offset 0x0C)
    146  */
    147 
    148 #define S_LDT_DEVHDR_CLINESZ		0
    149 #define M_LDT_DEVHDR_CLINESZ		_SB_MAKEMASK_32(8,S_LDT_DEVHDR_CLINESZ)
    150 #define V_LDT_DEVHDR_CLINESZ(x)		_SB_MAKEVALUE_32(x,S_LDT_DEVHDR_CLINESZ)
    151 #define G_LDT_DEVHDR_CLINESZ(x)		_SB_GETVALUE_32(x,S_LDT_DEVHDR_CLINESZ,M_LDT_DEVHDR_CLINESZ)
    152 
    153 #define S_LDT_DEVHDR_LATTMR		8
    154 #define M_LDT_DEVHDR_LATTMR		_SB_MAKEMASK_32(8,S_LDT_DEVHDR_LATTMR)
    155 #define V_LDT_DEVHDR_LATTMR(x)		_SB_MAKEVALUE_32(x,S_LDT_DEVHDR_LATTMR)
    156 #define G_LDT_DEVHDR_LATTMR(x)		_SB_GETVALUE_32(x,S_LDT_DEVHDR_LATTMR,M_LDT_DEVHDR_LATTMR)
    157 
    158 #define S_LDT_DEVHDR_HDRTYPE		16
    159 #define M_LDT_DEVHDR_HDRTYPE		_SB_MAKEMASK_32(8,S_LDT_DEVHDR_HDRTYPE)
    160 #define V_LDT_DEVHDR_HDRTYPE(x)		_SB_MAKEVALUE_32(x,S_LDT_DEVHDR_HDRTYPE)
    161 #define G_LDT_DEVHDR_HDRTYPE(x)		_SB_GETVALUE_32(x,S_LDT_DEVHDR_HDRTYPE,M_LDT_DEVHDR_HDRTYPE)
    162 
    163 #define K_LDT_DEVHDR_HDRTYPE_TYPE1	1
    164 
    165 #define S_LDT_DEVHDR_BIST		24
    166 #define M_LDT_DEVHDR_BIST		_SB_MAKEMASK_32(8,S_LDT_DEVHDR_BIST)
    167 #define V_LDT_DEVHDR_BIST(x)		_SB_MAKEVALUE_32(x,S_LDT_DEVHDR_BIST)
    168 #define G_LDT_DEVHDR_BIST(x)		_SB_GETVALUE_32(x,S_LDT_DEVHDR_BIST,M_LDT_DEVHDR_BIST)
    169 
    170 
    171 
    172 /*
    173  * LDT Status Register (Table 8-14).  Note that these constants
    174  * assume you've read the command and status register
    175  * together (32-bit read at offset 0x04)
    176  *
    177  * These bits also apply to the secondary status
    178  * register (Table 8-15), offset 0x1C
    179  */
    180 
    181 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
    182 #define M_LDT_STATUS_VGAEN		_SB_MAKEMASK1_32(3)
    183 #endif /* 1250 PASS2 || 112x PASS1 */
    184 #define M_LDT_STATUS_CAPLIST		_SB_MAKEMASK1_32(20)
    185 #define M_LDT_STATUS_66MHZCAP		_SB_MAKEMASK1_32(21)
    186 #define M_LDT_STATUS_RESERVED2		_SB_MAKEMASK1_32(22)
    187 #define M_LDT_STATUS_FASTB2BCAP		_SB_MAKEMASK1_32(23)
    188 #define M_LDT_STATUS_MSTRDPARERR	_SB_MAKEMASK1_32(24)
    189 
    190 #define S_LDT_STATUS_DEVSELTIMING	25
    191 #define M_LDT_STATUS_DEVSELTIMING	_SB_MAKEMASK_32(2,S_LDT_STATUS_DEVSELTIMING)
    192 #define V_LDT_STATUS_DEVSELTIMING(x)	_SB_MAKEVALUE_32(x,S_LDT_STATUS_DEVSELTIMING)
    193 #define G_LDT_STATUS_DEVSELTIMING(x)	_SB_GETVALUE_32(x,S_LDT_STATUS_DEVSELTIMING,M_LDT_STATUS_DEVSELTIMING)
    194 
    195 #define M_LDT_STATUS_SIGDTGTABORT	_SB_MAKEMASK1_32(27)
    196 #define M_LDT_STATUS_RCVDTGTABORT	_SB_MAKEMASK1_32(28)
    197 #define M_LDT_STATUS_RCVDMSTRABORT	_SB_MAKEMASK1_32(29)
    198 #define M_LDT_STATUS_SIGDSERR		_SB_MAKEMASK1_32(30)
    199 #define M_LDT_STATUS_DETPARERR		_SB_MAKEMASK1_32(31)
    200 
    201 /*
    202  * Bridge Control Register (Table 8-16).  Note that these
    203  * constants assume you've read the register as a 32-bit
    204  * read (offset 0x3C)
    205  */
    206 
    207 #define M_LDT_BRCTL_PARERRRESP_EN	_SB_MAKEMASK1_32(16)
    208 #define M_LDT_BRCTL_SERR_EN		_SB_MAKEMASK1_32(17)
    209 #define M_LDT_BRCTL_ISA_EN		_SB_MAKEMASK1_32(18)
    210 #define M_LDT_BRCTL_VGA_EN		_SB_MAKEMASK1_32(19)
    211 #define M_LDT_BRCTL_MSTRABORTMODE	_SB_MAKEMASK1_32(21)
    212 #define M_LDT_BRCTL_SECBUSRESET		_SB_MAKEMASK1_32(22)
    213 #define M_LDT_BRCTL_FASTB2B_EN		_SB_MAKEMASK1_32(23)
    214 #define M_LDT_BRCTL_PRIDISCARD		_SB_MAKEMASK1_32(24)
    215 #define M_LDT_BRCTL_SECDISCARD		_SB_MAKEMASK1_32(25)
    216 #define M_LDT_BRCTL_DISCARDSTAT		_SB_MAKEMASK1_32(26)
    217 #define M_LDT_BRCTL_DISCARDSERR_EN	_SB_MAKEMASK1_32(27)
    218 
    219 /*
    220  * LDT Command Register (Table 8-17).  Note that these constants
    221  * assume you've read the command and status register together
    222  * 32-bit read at offset 0x40
    223  */
    224 
    225 #define M_LDT_CMD_WARMRESET		_SB_MAKEMASK1_32(16)
    226 #define M_LDT_CMD_DOUBLEENDED		_SB_MAKEMASK1_32(17)
    227 
    228 #define S_LDT_CMD_CAPTYPE		29
    229 #define M_LDT_CMD_CAPTYPE		_SB_MAKEMASK_32(3,S_LDT_CMD_CAPTYPE)
    230 #define V_LDT_CMD_CAPTYPE(x)		_SB_MAKEVALUE_32(x,S_LDT_CMD_CAPTYPE)
    231 #define G_LDT_CMD_CAPTYPE(x)		_SB_GETVALUE_32(x,S_LDT_CMD_CAPTYPE,M_LDT_CMD_CAPTYPE)
    232 
    233 /*
    234  * LDT link control register (Table 8-18), and (Table 8-19)
    235  */
    236 
    237 #define M_LDT_LINKCTRL_CAPSYNCFLOOD_EN	_SB_MAKEMASK1_32(1)
    238 #define M_LDT_LINKCTRL_CRCSTARTTEST	_SB_MAKEMASK1_32(2)
    239 #define M_LDT_LINKCTRL_CRCFORCEERR	_SB_MAKEMASK1_32(3)
    240 #define M_LDT_LINKCTRL_LINKFAIL		_SB_MAKEMASK1_32(4)
    241 #define M_LDT_LINKCTRL_INITDONE		_SB_MAKEMASK1_32(5)
    242 #define M_LDT_LINKCTRL_EOC		_SB_MAKEMASK1_32(6)
    243 #define M_LDT_LINKCTRL_XMITOFF		_SB_MAKEMASK1_32(7)
    244 
    245 #define S_LDT_LINKCTRL_CRCERR		8
    246 #define M_LDT_LINKCTRL_CRCERR		_SB_MAKEMASK_32(4,S_LDT_LINKCTRL_CRCERR)
    247 #define V_LDT_LINKCTRL_CRCERR(x)	_SB_MAKEVALUE_32(x,S_LDT_LINKCTRL_CRCERR)
    248 #define G_LDT_LINKCTRL_CRCERR(x)	_SB_GETVALUE_32(x,S_LDT_LINKCTRL_CRCERR,M_LDT_LINKCTRL_CRCERR)
    249 
    250 #define S_LDT_LINKCTRL_MAXIN		16
    251 #define M_LDT_LINKCTRL_MAXIN		_SB_MAKEMASK_32(3,S_LDT_LINKCTRL_MAXIN)
    252 #define V_LDT_LINKCTRL_MAXIN(x)		_SB_MAKEVALUE_32(x,S_LDT_LINKCTRL_MAXIN)
    253 #define G_LDT_LINKCTRL_MAXIN(x)		_SB_GETVALUE_32(x,S_LDT_LINKCTRL_MAXIN,M_LDT_LINKCTRL_MAXIN)
    254 
    255 #define M_LDT_LINKCTRL_DWFCLN		_SB_MAKEMASK1_32(19)
    256 
    257 #define S_LDT_LINKCTRL_MAXOUT		20
    258 #define M_LDT_LINKCTRL_MAXOUT		_SB_MAKEMASK_32(3,S_LDT_LINKCTRL_MAXOUT)
    259 #define V_LDT_LINKCTRL_MAXOUT(x)	_SB_MAKEVALUE_32(x,S_LDT_LINKCTRL_MAXOUT)
    260 #define G_LDT_LINKCTRL_MAXOUT(x)	_SB_GETVALUE_32(x,S_LDT_LINKCTRL_MAXOUT,M_LDT_LINKCTRL_MAXOUT)
    261 
    262 #define M_LDT_LINKCTRL_DWFCOUT		_SB_MAKEMASK1_32(23)
    263 
    264 #define S_LDT_LINKCTRL_WIDTHIN		24
    265 #define M_LDT_LINKCTRL_WIDTHIN		_SB_MAKEMASK_32(3,S_LDT_LINKCTRL_WIDTHIN)
    266 #define V_LDT_LINKCTRL_WIDTHIN(x)	_SB_MAKEVALUE_32(x,S_LDT_LINKCTRL_WIDTHIN)
    267 #define G_LDT_LINKCTRL_WIDTHIN(x)	_SB_GETVALUE_32(x,S_LDT_LINKCTRL_WIDTHIN,M_LDT_LINKCTRL_WIDTHIN)
    268 
    269 #define M_LDT_LINKCTRL_DWFCLIN_EN	_SB_MAKEMASK1_32(27)
    270 
    271 #define S_LDT_LINKCTRL_WIDTHOUT		28
    272 #define M_LDT_LINKCTRL_WIDTHOUT		_SB_MAKEMASK_32(3,S_LDT_LINKCTRL_WIDTHOUT)
    273 #define V_LDT_LINKCTRL_WIDTHOUT(x)	_SB_MAKEVALUE_32(x,S_LDT_LINKCTRL_WIDTHOUT)
    274 #define G_LDT_LINKCTRL_WIDTHOUT(x)	_SB_GETVALUE_32(x,S_LDT_LINKCTRL_WIDTHOUT,M_LDT_LINKCTRL_WIDTHOUT)
    275 
    276 #define M_LDT_LINKCTRL_DWFCOUT_EN	_SB_MAKEMASK1_32(31)
    277 
    278 /*
    279  * LDT Link frequency register  (Table 8-20) offset 0x48
    280  */
    281 
    282 #define S_LDT_LINKFREQ_FREQ		8
    283 #define M_LDT_LINKFREQ_FREQ		_SB_MAKEMASK_32(4,S_LDT_LINKFREQ_FREQ)
    284 #define V_LDT_LINKFREQ_FREQ(x)		_SB_MAKEVALUE_32(x,S_LDT_LINKFREQ_FREQ)
    285 #define G_LDT_LINKFREQ_FREQ(x)		_SB_GETVALUE_32(x,S_LDT_LINKFREQ_FREQ,M_LDT_LINKFREQ_FREQ)
    286 
    287 #define K_LDT_LINKFREQ_200MHZ		0
    288 #define K_LDT_LINKFREQ_300MHZ		1
    289 #define K_LDT_LINKFREQ_400MHZ		2
    290 #define K_LDT_LINKFREQ_500MHZ		3
    291 #define K_LDT_LINKFREQ_600MHZ		4
    292 #define K_LDT_LINKFREQ_800MHZ		5
    293 #define K_LDT_LINKFREQ_1000MHZ		6
    294 
    295 /*
    296  * LDT SRI Command Register (Table 8-21).  Note that these constants
    297  * assume you've read the command and status register together
    298  * 32-bit read at offset 0x50
    299  */
    300 
    301 #define M_LDT_SRICMD_SIPREADY		_SB_MAKEMASK1_32(16)
    302 #define M_LDT_SRICMD_SYNCPTRCTL		_SB_MAKEMASK1_32(17)
    303 #define M_LDT_SRICMD_REDUCESYNCZERO	_SB_MAKEMASK1_32(18)
    304 #if SIBYTE_HDR_FEATURE_UP_TO(1250, PASS1)
    305 #define M_LDT_SRICMD_DISSTARVATIONCNT	_SB_MAKEMASK1_32(19)	/* PASS1 */
    306 #endif /* up to 1250 PASS1 */
    307 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
    308 #define M_LDT_SRICMD_DISMULTTXVLD	_SB_MAKEMASK1_32(19)
    309 #define M_LDT_SRICMD_EXPENDIAN		_SB_MAKEMASK1_32(26)
    310 #endif /* 1250 PASS2 || 112x PASS1 */
    311 
    312 
    313 #define S_LDT_SRICMD_RXMARGIN		20
    314 #define M_LDT_SRICMD_RXMARGIN		_SB_MAKEMASK_32(5,S_LDT_SRICMD_RXMARGIN)
    315 #define V_LDT_SRICMD_RXMARGIN(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICMD_RXMARGIN)
    316 #define G_LDT_SRICMD_RXMARGIN(x)	_SB_GETVALUE_32(x,S_LDT_SRICMD_RXMARGIN,M_LDT_SRICMD_RXMARGIN)
    317 
    318 #define M_LDT_SRICMD_LDTPLLCOMPAT	_SB_MAKEMASK1_32(25)
    319 
    320 #define S_LDT_SRICMD_TXINITIALOFFSET	28
    321 #define M_LDT_SRICMD_TXINITIALOFFSET	_SB_MAKEMASK_32(3,S_LDT_SRICMD_TXINITIALOFFSET)
    322 #define V_LDT_SRICMD_TXINITIALOFFSET(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICMD_TXINITIALOFFSET)
    323 #define G_LDT_SRICMD_TXINITIALOFFSET(x)	_SB_GETVALUE_32(x,S_LDT_SRICMD_TXINITIALOFFSET,M_LDT_SRICMD_TXINITIALOFFSET)
    324 
    325 #define M_LDT_SRICMD_LINKFREQDIRECT	_SB_MAKEMASK1_32(31)
    326 
    327 /*
    328  * LDT Error control and status register (Table 8-22) (Table 8-23)
    329  */
    330 
    331 #define M_LDT_ERRCTL_PROTFATAL_EN	_SB_MAKEMASK1_32(0)
    332 #define M_LDT_ERRCTL_PROTNONFATAL_EN	_SB_MAKEMASK1_32(1)
    333 #define M_LDT_ERRCTL_PROTSYNCFLOOD_EN	_SB_MAKEMASK1_32(2)
    334 #define M_LDT_ERRCTL_OVFFATAL_EN	_SB_MAKEMASK1_32(3)
    335 #define M_LDT_ERRCTL_OVFNONFATAL_EN	_SB_MAKEMASK1_32(4)
    336 #define M_LDT_ERRCTL_OVFSYNCFLOOD_EN	_SB_MAKEMASK1_32(5)
    337 #define M_LDT_ERRCTL_EOCNXAFATAL_EN	_SB_MAKEMASK1_32(6)
    338 #define M_LDT_ERRCTL_EOCNXANONFATAL_EN	_SB_MAKEMASK1_32(7)
    339 #define M_LDT_ERRCTL_EOCNXASYNCFLOOD_EN	_SB_MAKEMASK1_32(8)
    340 #define M_LDT_ERRCTL_CRCFATAL_EN	_SB_MAKEMASK1_32(9)
    341 #define M_LDT_ERRCTL_CRCNONFATAL_EN	_SB_MAKEMASK1_32(10)
    342 #define M_LDT_ERRCTL_SERRFATAL_EN	_SB_MAKEMASK1_32(11)
    343 #define M_LDT_ERRCTL_SRCTAGFATAL_EN	_SB_MAKEMASK1_32(12)
    344 #define M_LDT_ERRCTL_SRCTAGNONFATAL_EN	_SB_MAKEMASK1_32(13)
    345 #define M_LDT_ERRCTL_SRCTAGSYNCFLOOD_EN	_SB_MAKEMASK1_32(14)
    346 #define M_LDT_ERRCTL_MAPNXAFATAL_EN	_SB_MAKEMASK1_32(15)
    347 #define M_LDT_ERRCTL_MAPNXANONFATAL_EN	_SB_MAKEMASK1_32(16)
    348 #define M_LDT_ERRCTL_MAPNXASYNCFLOOD_EN	_SB_MAKEMASK1_32(17)
    349 
    350 #define M_LDT_ERRCTL_PROTOERR		_SB_MAKEMASK1_32(24)
    351 #define M_LDT_ERRCTL_OVFERR		_SB_MAKEMASK1_32(25)
    352 #define M_LDT_ERRCTL_EOCNXAERR		_SB_MAKEMASK1_32(26)
    353 #define M_LDT_ERRCTL_SRCTAGERR		_SB_MAKEMASK1_32(27)
    354 #define M_LDT_ERRCTL_MAPNXAERR		_SB_MAKEMASK1_32(28)
    355 
    356 /*
    357  * SRI Control register (Table 8-24, 8-25)  Offset 0x6C
    358  */
    359 
    360 #define S_LDT_SRICTRL_NEEDRESP		0
    361 #define M_LDT_SRICTRL_NEEDRESP		_SB_MAKEMASK_32(2,S_LDT_SRICTRL_NEEDRESP)
    362 #define V_LDT_SRICTRL_NEEDRESP(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_NEEDRESP)
    363 #define G_LDT_SRICTRL_NEEDRESP(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_NEEDRESP,M_LDT_SRICTRL_NEEDRESP)
    364 
    365 #define S_LDT_SRICTRL_NEEDNPREQ		2
    366 #define M_LDT_SRICTRL_NEEDNPREQ		_SB_MAKEMASK_32(2,S_LDT_SRICTRL_NEEDNPREQ)
    367 #define V_LDT_SRICTRL_NEEDNPREQ(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_NEEDNPREQ)
    368 #define G_LDT_SRICTRL_NEEDNPREQ(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_NEEDNPREQ,M_LDT_SRICTRL_NEEDNPREQ)
    369 
    370 #define S_LDT_SRICTRL_NEEDPREQ		4
    371 #define M_LDT_SRICTRL_NEEDPREQ		_SB_MAKEMASK_32(2,S_LDT_SRICTRL_NEEDPREQ)
    372 #define V_LDT_SRICTRL_NEEDPREQ(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_NEEDPREQ)
    373 #define G_LDT_SRICTRL_NEEDPREQ(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_NEEDPREQ,M_LDT_SRICTRL_NEEDPREQ)
    374 
    375 #define S_LDT_SRICTRL_WANTRESP		8
    376 #define M_LDT_SRICTRL_WANTRESP		_SB_MAKEMASK_32(2,S_LDT_SRICTRL_WANTRESP)
    377 #define V_LDT_SRICTRL_WANTRESP(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_WANTRESP)
    378 #define G_LDT_SRICTRL_WANTRESP(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_WANTRESP,M_LDT_SRICTRL_WANTRESP)
    379 
    380 #define S_LDT_SRICTRL_WANTNPREQ		10
    381 #define M_LDT_SRICTRL_WANTNPREQ		_SB_MAKEMASK_32(2,S_LDT_SRICTRL_WANTNPREQ)
    382 #define V_LDT_SRICTRL_WANTNPREQ(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_WANTNPREQ)
    383 #define G_LDT_SRICTRL_WANTNPREQ(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_WANTNPREQ,M_LDT_SRICTRL_WANTNPREQ)
    384 
    385 #define S_LDT_SRICTRL_WANTPREQ		12
    386 #define M_LDT_SRICTRL_WANTPREQ		_SB_MAKEMASK_32(2,S_LDT_SRICTRL_WANTPREQ)
    387 #define V_LDT_SRICTRL_WANTPREQ(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_WANTPREQ)
    388 #define G_LDT_SRICTRL_WANTPREQ(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_WANTPREQ,M_LDT_SRICTRL_WANTPREQ)
    389 
    390 #define S_LDT_SRICTRL_BUFRELSPACE	16
    391 #define M_LDT_SRICTRL_BUFRELSPACE	_SB_MAKEMASK_32(4,S_LDT_SRICTRL_BUFRELSPACE)
    392 #define V_LDT_SRICTRL_BUFRELSPACE(x)	_SB_MAKEVALUE_32(x,S_LDT_SRICTRL_BUFRELSPACE)
    393 #define G_LDT_SRICTRL_BUFRELSPACE(x)	_SB_GETVALUE_32(x,S_LDT_SRICTRL_BUFRELSPACE,M_LDT_SRICTRL_BUFRELSPACE)
    394 
    395 /*
    396  * LDT SRI Transmit Buffer Count register (Table 8-26)
    397  */
    398 
    399 #define S_LDT_TXBUFCNT_PCMD		0
    400 #define M_LDT_TXBUFCNT_PCMD		_SB_MAKEMASK_32(4,S_LDT_TXBUFCNT_PCMD)
    401 #define V_LDT_TXBUFCNT_PCMD(x)		_SB_MAKEVALUE_32(x,S_LDT_TXBUFCNT_PCMD)
    402 #define G_LDT_TXBUFCNT_PCMD(x)		_SB_GETVALUE_32(x,S_LDT_TXBUFCNT_PCMD,M_LDT_TXBUFCNT_PCMD)
    403 
    404 #define S_LDT_TXBUFCNT_PDATA		4
    405 #define M_LDT_TXBUFCNT_PDATA		_SB_MAKEMASK_32(4,S_LDT_TXBUFCNT_PDATA)
    406 #define V_LDT_TXBUFCNT_PDATA(x)		_SB_MAKEVALUE_32(x,S_LDT_TXBUFCNT_PDATA)
    407 #define G_LDT_TXBUFCNT_PDATA(x)		_SB_GETVALUE_32(x,S_LDT_TXBUFCNT_PDATA,M_LDT_TXBUFCNT_PDATA)
    408 
    409 #define S_LDT_TXBUFCNT_NPCMD		8
    410 #define M_LDT_TXBUFCNT_NPCMD		_SB_MAKEMASK_32(4,S_LDT_TXBUFCNT_NPCMD)
    411 #define V_LDT_TXBUFCNT_NPCMD(x)		_SB_MAKEVALUE_32(x,S_LDT_TXBUFCNT_NPCMD)
    412 #define G_LDT_TXBUFCNT_NPCMD(x)		_SB_GETVALUE_32(x,S_LDT_TXBUFCNT_NPCMD,M_LDT_TXBUFCNT_NPCMD)
    413 
    414 #define S_LDT_TXBUFCNT_NPDATA		12
    415 #define M_LDT_TXBUFCNT_NPDATA		_SB_MAKEMASK_32(4,S_LDT_TXBUFCNT_NPDATA)
    416 #define V_LDT_TXBUFCNT_NPDATA(x)	_SB_MAKEVALUE_32(x,S_LDT_TXBUFCNT_NPDATA)
    417 #define G_LDT_TXBUFCNT_NPDATA(x)	_SB_GETVALUE_32(x,S_LDT_TXBUFCNT_NPDATA,M_LDT_TXBUFCNT_NPDATA)
    418 
    419 #define S_LDT_TXBUFCNT_RCMD		16
    420 #define M_LDT_TXBUFCNT_RCMD		_SB_MAKEMASK_32(4,S_LDT_TXBUFCNT_RCMD)
    421 #define V_LDT_TXBUFCNT_RCMD(x)		_SB_MAKEVALUE_32(x,S_LDT_TXBUFCNT_RCMD)
    422 #define G_LDT_TXBUFCNT_RCMD(x)		_SB_GETVALUE_32(x,S_LDT_TXBUFCNT_RCMD,M_LDT_TXBUFCNT_RCMD)
    423 
    424 #define S_LDT_TXBUFCNT_RDATA		20
    425 #define M_LDT_TXBUFCNT_RDATA		_SB_MAKEMASK_32(4,S_LDT_TXBUFCNT_RDATA)
    426 #define V_LDT_TXBUFCNT_RDATA(x)		_SB_MAKEVALUE_32(x,S_LDT_TXBUFCNT_RDATA)
    427 #define G_LDT_TXBUFCNT_RDATA(x)		_SB_GETVALUE_32(x,S_LDT_TXBUFCNT_RDATA,M_LDT_TXBUFCNT_RDATA)
    428 
    429 #if SIBYTE_HDR_FEATURE(1250, PASS2) || SIBYTE_HDR_FEATURE(112x, PASS1)
    430 /*
    431  * Additional Status Register
    432  */
    433 
    434 #define S_LDT_ADDSTATUS_TGTDONE		0
    435 #define M_LDT_ADDSTATUS_TGTDONE		_SB_MAKEMASK_32(8,S_LDT_ADDSTATUS_TGTDONE)
    436 #define V_LDT_ADDSTATUS_TGTDONE(x)	_SB_MAKEVALUE_32(x,S_LDT_ADDSTATUS_TGTDONE)
    437 #define G_LDT_ADDSTATUS_TGTDONE(x)	_SB_GETVALUE_32(x,S_LDT_ADDSTATUS_TGTDONE,M_LDT_ADDSTATUS_TGTDONE)
    438 #endif /* 1250 PASS2 || 112x PASS1 */
    439 
    440 #endif
    441 
    442