1 /* $NetBSD: octeon_gmxreg.h,v 1.1 2015/04/29 08:32:01 hikaru Exp $ */ 2 3 /* 4 * Copyright (c) 2007 Internet Initiative Japan, Inc. 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions 9 * are met: 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 * SUCH DAMAGE. 27 */ 28 29 /* 30 * GMX Registers 31 */ 32 33 #ifndef _OCTEON_GMXREG_H_ 34 #define _OCTEON_GMXREG_H_ 35 36 #define GMX0_RX0_INT_REG 0x000 37 #define GMX0_RX0_INT_EN 0x008 38 #define GMX0_PRT0_CFG 0x010 39 #define GMX0_RX0_FRM_CTL 0x018 40 #define GMX0_RX0_FRM_CHK 0x020 41 #define GMX0_RX0_FRM_MIN 0x028 42 #define GMX0_RX0_FRM_MAX 0x030 43 #define GMX0_RX0_JABBER 0x038 44 #define GMX0_RX0_DECISION 0x040 45 #define GMX0_RX0_UDD_SKP 0x048 46 #define GMX0_RX0_STATS_CTL 0x050 47 #define GMX0_RX0_IFG 0x058 48 #define GMX0_RX0_RX_INBND 0x060 49 #define GMX0_RX0_STATS_PKTS 0x080 50 #define GMX0_RX0_STATS_OCTS 0x088 51 #define GMX0_RX0_STATS_PKTS_CTL 0x090 52 #define GMX0_RX0_STATS_OCTS_CTL 0x098 53 #define GMX0_RX0_STATS_PKTS_DMAC 0x0a0 54 #define GMX0_RX0_STATS_OCTS_DMAC 0x0a8 55 #define GMX0_RX0_STATS_PKTS_DRP 0x0b0 56 #define GMX0_RX0_STATS_OCTS_DRP 0x0b8 57 #define GMX0_RX0_STATS_PKTS_BAD 0x0c0 58 #define GMX0_RX0_ADR_CTL 0x100 59 #define GMX0_RX0_ADR_CAM_EN 0x108 60 #define GMX0_RX0_ADR_CAM0 0x180 61 #define GMX0_RX0_ADR_CAM1 0x188 62 #define GMX0_RX0_ADR_CAM2 0x190 63 #define GMX0_RX0_ADR_CAM3 0x198 64 #define GMX0_RX0_ADR_CAM4 0x1a0 65 #define GMX0_RX0_ADR_CAM5 0x1a8 66 #define GMX0_TX0_CLK 0x208 67 #define GMX0_TX0_THRESH 0x210 68 #define GMX0_TX0_APPEND 0x218 69 #define GMX0_TX0_SLOT 0x220 70 #define GMX0_TX0_BURST 0x228 71 #define GMX0_SMAC0 0x230 72 #define GMX0_TX0_PAUSE_PKT_TIME 0x238 73 #define GMX0_TX0_MIN_PKT 0x240 74 #define GMX0_TX0_PAUSE_PKT_INTERVAL 0x248 75 #define GMX0_TX0_SOFT_PAUSE 0x250 76 #define GMX0_TX0_PAUSE_TOGO 0x258 77 #define GMX0_TX0_PAUSE_ZERO 0x260 78 #define GMX0_TX0_STATS_CTL 0x268 79 #define GMX0_TX0_CTL 0x270 80 #define GMX0_TX0_STAT0 0x280 81 #define GMX0_TX0_STAT1 0x288 82 #define GMX0_TX0_STAT2 0x290 83 #define GMX0_TX0_STAT3 0x298 84 #define GMX0_TX0_STAT4 0x2a0 85 #define GMX0_TX0_STAT5 0x2a8 86 #define GMX0_TX0_STAT6 0x2b0 87 #define GMX0_TX0_STAT7 0x2b8 88 #define GMX0_TX0_STAT8 0x2c0 89 #define GMX0_TX0_STAT9 0x2c8 90 #define GMX0_BIST0 0x400 91 #define GMX0_RX_PRTS 0x410 92 #define GMX0_RX_BP_DROP0 0x420 93 #define GMX0_RX_BP_DROP1 0x428 94 #define GMX0_RX_BP_DROP2 0x430 95 #define GMX0_RX_BP_ON0 0x440 96 #define GMX0_RX_BP_ON1 0x448 97 #define GMX0_RX_BP_ON2 0x450 98 #define GMX0_RX_BP_OFF0 0x460 99 #define GMX0_RX_BP_OFF1 0x468 100 #define GMX0_RX_BP_OFF2 0x470 101 #define GMX0_TX_PRTS 0x480 102 #define GMX0_TX_IFG 0x488 103 #define GMX0_TX_JAM 0x490 104 #define GMX0_TX_COL_ATTEMPT 0x498 105 #define GMX0_TX_PAUSE_PKT_DMAC 0x4a0 106 #define GMX0_TX_PAUSE_PKT_TYPE 0x4a8 107 #define GMX0_TX_OVR_BP 0x4c8 108 #define GMX0_TX_BP 0x4d0 109 #define GMX0_TX_CORRUPT 0x4d8 110 #define GMX0_RX_PRT_INFO 0x4e8 111 #define GMX0_TX_LFSR 0x4f8 112 #define GMX0_TX_INT_REG 0x500 113 #define GMX0_TX_INT_EN 0x508 114 #define GMX0_NXA_ADR 0x510 115 #define GMX0_BAD_REG 0x518 116 #define GMX0_STAT_BP 0x520 117 #define GMX0_TX_CLK_MSK0 0x780 118 #define GMX0_TX_CLK_MSK1 0x788 119 #define GMX0_RX_TX_STATUS 0x7e8 120 #define GMX0_INF_MODE 0x7f8 121 122 /* -------------------------------------------------------------------------- */ 123 124 /* GMX Interrupt Registers */ 125 126 #define RXN_INT_REG_XXX_63_19 UINT64_C(0xfffffffffff80000) 127 #define RXN_INT_REG_PHY_DUPX UINT64_C(0x0000000000040000) 128 #define RXN_INT_REG_PHY_SPD UINT64_C(0x0000000000020000) 129 #define RXN_INT_REG_PHY_LINK UINT64_C(0x0000000000010000) 130 #define RXN_INT_REG_IFGERR UINT64_C(0x0000000000008000) 131 #define RXN_INT_REG_COLDET UINT64_C(0x0000000000004000) 132 #define RXN_INT_REG_FALERR UINT64_C(0x0000000000002000) 133 #define RXN_INT_REG_RSVERR UINT64_C(0x0000000000001000) 134 #define RXN_INT_REG_PCTERR UINT64_C(0x0000000000000800) 135 #define RXN_INT_REG_OVRERR UINT64_C(0x0000000000000400) 136 #define RXN_INT_REG_NIBERR UINT64_C(0x0000000000000200) 137 #define RXN_INT_REG_SKPERR UINT64_C(0x0000000000000100) 138 #define RXN_INT_REG_RCVERR UINT64_C(0x0000000000000080) 139 #define RXN_INT_REG_LENERR UINT64_C(0x0000000000000040) 140 #define RXN_INT_REG_ALNERR UINT64_C(0x0000000000000020) 141 #define RXN_INT_REG_FCSERR UINT64_C(0x0000000000000010) 142 #define RXN_INT_REG_JABBER UINT64_C(0x0000000000000008) 143 #define RXN_INT_REG_MAXERR UINT64_C(0x0000000000000004) 144 #define RXN_INT_REG_CAREXT UINT64_C(0x0000000000000002) 145 #define RXN_INT_REG_MINERR UINT64_C(0x0000000000000001) 146 147 /* GMX Interrupt-Enable Registers */ 148 149 #define RXN_INT_EN_XXX_63_19 UINT64_C(0xfffffffffff80000) 150 #define RXN_INT_EN_PHY_DUPX UINT64_C(0x0000000000040000) 151 #define RXN_INT_EN_PHY_SPD UINT64_C(0x0000000000020000) 152 #define RXN_INT_EN_PHY_LINK UINT64_C(0x0000000000010000) 153 #define RXN_INT_EN_IFGERR UINT64_C(0x0000000000008000) 154 #define RXN_INT_EN_COLDET UINT64_C(0x0000000000004000) 155 #define RXN_INT_EN_FALERR UINT64_C(0x0000000000002000) 156 #define RXN_INT_EN_RSVERR UINT64_C(0x0000000000001000) 157 #define RXN_INT_EN_PCTERR UINT64_C(0x0000000000000800) 158 #define RXN_INT_EN_OVRERR UINT64_C(0x0000000000000400) 159 #define RXN_INT_EN_NIBERR UINT64_C(0x0000000000000200) 160 #define RXN_INT_EN_SKPERR UINT64_C(0x0000000000000100) 161 #define RXN_INT_EN_RCVERR UINT64_C(0x0000000000000080) 162 #define RXN_INT_EN_LENERR UINT64_C(0x0000000000000040) 163 #define RXN_INT_EN_ALNERR UINT64_C(0x0000000000000020) 164 #define RXN_INT_EN_FCSERR UINT64_C(0x0000000000000010) 165 #define RXN_INT_EN_JABBER UINT64_C(0x0000000000000008) 166 #define RXN_INT_EN_MAXERR UINT64_C(0x0000000000000004) 167 #define RXN_INT_EN_CAREXT UINT64_C(0x0000000000000002) 168 #define RXN_INT_EN_MINERR UINT64_C(0x0000000000000001) 169 170 /* GMX Port Configuration Registers */ 171 172 #define PRTN_CFG_XXX_63_4 UINT64_C(0xfffffffffffffff0) 173 #define PRTN_CFG_SLOTTIME UINT64_C(0x0000000000000008) 174 #define PRTN_CFG_DUPLEX UINT64_C(0x0000000000000004) 175 #define PRTN_CFG_SPEED UINT64_C(0x0000000000000002) 176 #define PRTN_CFG_EN UINT64_C(0x0000000000000001) 177 178 /* Frame Control Registers */ 179 180 #define RXN_FRM_CTL_XXX_63_11 UINT64_C(0xfffffffffffff800) 181 #define RXN_FRM_CTL_NULL_DIS UINT64_C(0x0000000000000400) 182 #define RXN_FRM_CTL_PRE_ALIGN UINT64_C(0x0000000000000200) 183 #define RXN_FRM_CTL_PAD_LEN UINT64_C(0x0000000000000100) 184 #define RXN_FRM_CTL_VLAN_LEN UINT64_C(0x0000000000000080) 185 #define RXN_FRM_CTL_PRE_FREE UINT64_C(0x0000000000000040) 186 #define RXN_FRM_CTL_CTL_SMAC UINT64_C(0x0000000000000020) 187 #define RXN_FRM_CTL_CTL_MCST UINT64_C(0x0000000000000010) 188 #define RXN_FRM_CTL_CTL_BCK UINT64_C(0x0000000000000008) 189 #define RXN_FRM_CTL_CTL_DRP UINT64_C(0x0000000000000004) 190 #define RXN_FRM_CTL_PRE_STRP UINT64_C(0x0000000000000002) 191 #define RXN_FRM_CTL_PRE_CHK UINT64_C(0x0000000000000001) 192 193 /* Frame Check Registers */ 194 195 #define RXN_FRM_CKK_XXX_63_10 UINT64_C(0xfffffffffffffc00) 196 #define RXN_FRM_CHK_NIBERR UINT64_C(0x0000000000000200) 197 #define RXN_FRM_CHK_SKPERR UINT64_C(0x0000000000000100) 198 #define RXN_FRM_CHK_RCVERR UINT64_C(0x0000000000000080) 199 #define RXN_FRM_CHK_LENERR UINT64_C(0x0000000000000040) 200 #define RXN_FRM_CHK_ALNERR UINT64_C(0x0000000000000020) 201 #define RXN_FRM_CHK_FCSERR UINT64_C(0x0000000000000010) 202 #define RXN_FRM_CHK_JABBER UINT64_C(0x0000000000000008) 203 #define RXN_FRM_CHK_MAXERR UINT64_C(0x0000000000000004) 204 #define RXN_FRM_CHK_CAREXT UINT64_C(0x0000000000000002) 205 #define RXN_FRM_CHK_MINERR UINT64_C(0x0000000000000001) 206 207 /* Frame Minimum-Length Registers */ 208 209 #define RXN_RRM_MIN_XXX_63_16 UINT64_C(0xffffffffffff0000) 210 #define RXN_RRM_MIN_LEN UINT64_C(0x000000000000ffff) 211 212 /* Frame Maximun-Length Registers */ 213 214 #define RXN_RRM_MAX_XXX_63_16 UINT64_C(0xffffffffffff0000) 215 #define RXN_RRM_MAX_LEN UINT64_C(0x000000000000ffff) 216 217 /* GMX Maximun Packet-Size Registers */ 218 219 #define RXN_JABBER_XXX_63_16 UINT64_C(0xffffffffffff0000) 220 #define RXN_JABBER_CNT UINT64_C(0x000000000000ffff) 221 222 /* GMX Packet Decision Registers */ 223 224 #define RXN_DECISION_XXX_63_5 UINT64_C(0xffffffffffffffe0) 225 #define RXN_DECISION_CNT UINT64_C(0x000000000000001f) 226 227 /* GMX User-Defined Data Skip Registers */ 228 229 #define RXN_UDD_SKP_XXX_63_9 UINT64_C(0xfffffffffffffe00) 230 #define RXN_UDD_SKP_FCSSEL UINT64_C(0x0000000000000100) 231 #define RXN_UDD_SKP_XXX_7 UINT64_C(0x0000000000000080) 232 #define RXN_UDD_SKP_LEN UINT64_C(0x000000000000007f) 233 234 /* GMX RX Statistics Control Registers */ 235 236 #define RXN_STATS_CTL_XXX_63_1 UINT64_C(0xfffffffffffffffe) 237 #define RXN_STATS_CTL_RD_CLR UINT64_C(0x0000000000000001) 238 239 /* GMX Minimun Interface-Gap Cycles Registers */ 240 241 #define RXN_IFG_XXX_63_4 UINT64_C(0xfffffffffffffff0) 242 #define RXN_IFG_IFG UINT64_C(0x000000000000000f) 243 244 /* InBand Link Status Registers */ 245 246 #define RXN_RX_INBND_XXX_63_4 UINT64_C(0xfffffffffffffff0) 247 #define RXN_RX_INBND_DUPLEX UINT64_C(0x0000000000000008) 248 #define RXN_RX_INBND_DUPLEX_SHIFT 3 249 #define RXN_RX_INBND_DUPLEX_HALF (0ULL << RXN_RX_INBND_DUPLEX_SHIFT) 250 #define RXN_RX_INBND_DUPLEX_FULL (1ULL << RXN_RX_INBND_DUPLEX_SHIFT) 251 #define RXN_RX_INBND_SPEED UINT64_C(0x0000000000000006) 252 #define RXN_RX_INBND_SPEED_SHIFT 1 253 #define RXN_RX_INBND_SPEED_2_5 (0ULL << RXN_RX_INBND_SPEED_SHIFT) 254 #define RXN_RX_INBND_SPEED_25 (1ULL << RXN_RX_INBND_SPEED_SHIFT) 255 #define RXN_RX_INBND_SPEED_125 (2ULL << RXN_RX_INBND_SPEED_SHIFT) 256 #define RXN_RX_INBND_SPEED_XXX_3 (3ULL << RXN_RX_INBND_SPEED_SHIFT) 257 #define RXN_RX_INBND_STATUS UINT64_C(0x0000000000000001) 258 259 /* GMX RX Good Packets Registers */ 260 261 #define RXN_STATS_PKTS_XXX_63_32 UINT64_C(0xffffffff00000000) 262 #define RXN_STATS_PKTS_CNT UINT64_C(0x00000000ffffffff) 263 264 /* GMX RX Good Packets Octet Registers */ 265 266 #define RXN_STATS_OCTS_XXX_63_48 UINT64_C(0xffff000000000000) 267 #define RXN_STATS_OCTS_CNT UINT64_C(0x0000ffffffffffff) 268 269 /* GMX RX Pause Packets Registers */ 270 271 #define RXN_STATS_PKTS_CTL_XXX_63_32 UINT64_C(0xffffffff00000000) 272 #define RXN_STATS_PKTS_CTL_CNT UINT64_C(0x00000000ffffffff) 273 274 /* GMX RX Pause Packets Octet Registers */ 275 276 #define RXN_STATS_OCTS_CTL_XXX_63_48 UINT64_C(0xffff000000000000) 277 #define RXN_STATS_OCTS_CTL_CNT UINT64_C(0x0000ffffffffffff) 278 279 /* GMX RX DMAC Packets Registers */ 280 281 #define RXN_STATS_PKTS_DMAC_XXX_63_32 UINT64_C(0xffffffff00000000) 282 #define RXN_STATS_PKTS_DMAC_CNT UINT64_C(0x00000000ffffffff) 283 284 /* GMX RX DMAC Packets Octet Registers */ 285 286 #define RXN_STATS_OCTS_DMAC_XXX_63_48 UINT64_C(0xffff000000000000) 287 #define RXN_STATS_OCTS_DMAC_CNT UINT64_C(0x0000ffffffffffff) 288 289 /* GMX RX Overflow Packets Registers */ 290 291 #define RXN_STATS_PKTS_DRP_XXX_63_48 UINT64_C(0xffffffff00000000) 292 #define RXN_STATS_PKTS_DRP_CNT UINT64_C(0x00000000ffffffff) 293 294 /* GMX RX Overflow Packets Octet Registers */ 295 296 #define RXN_STATS_OCTS_DRP_XXX_63_48 UINT64_C(0xffff000000000000) 297 #define RXN_STATS_OCTS_DRP_CNT UINT64_C(0x0000ffffffffffff) 298 299 /* GMX RX Bad Packets Registers */ 300 301 #define RXN_STATS_PKTS_BAD_XXX_63_48 UINT64_C(0xffffffff00000000) 302 #define RXN_STATS_PKTS_BAD_CNT UINT64_C(0x00000000ffffffff) 303 304 /* Address-Filtering Control Registers */ 305 306 #define RXN_ADR_CTL_XXX_63_4 UINT64_C(0xfffffffffffffff0) 307 #define RXN_ADR_CTL_CAM_MODE UINT64_C(0x0000000000000008) 308 #define RXN_ADR_CTL_CAM_MODE_SHIFT 3 309 #define RXN_ADR_CTL_CAM_MODE_REJECT (0ULL << RXN_ADR_CTL_CAM_MODE_SHIFT) 310 #define RXN_ADR_CTL_CAM_MODE_ACCEPT (1ULL << RXN_ADR_CTL_CAM_MODE_SHIFT) 311 #define RXN_ADR_CTL_MCST UINT64_C(0x0000000000000006) 312 #define RXN_ADR_CTL_MCST_SHIFT 1 313 #define RXN_ADR_CTL_MCST_AFCAM (0ULL << RXN_ADR_CTL_MCST_SHIFT) 314 #define RXN_ADR_CTL_MCST_REJECT (1ULL << RXN_ADR_CTL_MCST_SHIFT) 315 #define RXN_ADR_CTL_MCST_ACCEPT (2ULL << RXN_ADR_CTL_MCST_SHIFT) 316 #define RXN_ADR_CTL_MCST_XXX_3 (3ULL << RXN_ADR_CTL_MCST_SHIFT) 317 #define RXN_ADR_CTL_BCST UINT64_C(0x0000000000000001) 318 319 /* Address-Filtering Control Enable Registers */ 320 321 #define RXN_ADR_CAM_EN_XXX_63_8 UINT64_C(0xffffffffffffff00) 322 #define RXN_ADR_CAM_EN_EN UINT64_C(0x00000000000000ff) 323 324 /* Address-Filtering CAM Control Registers */ 325 #define RXN_ADR_CAMN_ADR UINT64_C(0xffffffffffffffff) 326 327 /* GMX TX Clock Generation Registers */ 328 329 #define TXN_CLK_XXX_63_6 UINT64_C(0xffffffffffffffc0) 330 #define TXN_CLK_CLK_CNT UINT64_C(0x000000000000003f) 331 332 /* TX Threshold Registers */ 333 334 #define TXN_THRESH_XXX_63_6 UINT64_C(0xffffffffffffffc0) 335 #define TXN_THRESH_CNT UINT64_C(0x000000000000003f) 336 337 /* TX Append Control Registers */ 338 339 #define TXN_APPEND_XXX_63_4 UINT64_C(0xfffffffffffffff0) 340 #define TXN_APPEND_FORCE_FCS UINT64_C(0x0000000000000008) 341 #define TXN_APPEND_FCS UINT64_C(0x0000000000000004) 342 #define TXN_APPEND_PAD UINT64_C(0x0000000000000002) 343 #define TXN_APPEND_PREAMBLE UINT64_C(0x0000000000000001) 344 345 /* TX Slottime Counter Registers */ 346 347 #define TXN_SLOT_XXX_63_10 UINT64_C(0xfffffffffffffc00) 348 #define TXN_SLOT_SLOT UINT64_C(0x00000000000003ff) 349 350 /* TX Burst-Counter Registers */ 351 352 #define TXN_BURST_XXX_63_16 UINT64_C(0xffffffffffff0000) 353 #define TXN_BURST_BURST UINT64_C(0x000000000000ffff) 354 355 /* RGMII SMAC Registers */ 356 357 #define SMACN_XXX_63_48 UINT64_C(0xffff000000000000) 358 #define SMACN_SMAC UINT64_C(0x0000ffffffffffff) 359 360 /* TX Pause Packet Pause-Time Registers */ 361 362 #define TXN_PAUSE_PKT_TIME_XXX_63_16 UINT64_C(0xffffffffffff0000) 363 #define TXN_PAUSE_PKT_TIME_TIME UINT64_C(0x000000000000ffff) 364 365 /* RGMII TX Minimum-Size-Packet Registers */ 366 367 #define TXN_MIN_PKT_XXX_63_8 UINT64_C(0xffffffffffffff00) 368 #define TXN_MIN_PKT_MIN_SIZE UINT64_C(0x00000000000000ff) 369 370 /* TX Pause-Packet Transmission-Interval Registers */ 371 372 #define TXN_PAUSE_PKT_INTERVAL_XXX_63_16 UINT64_C(0xffffffffffff0000) 373 #define TXN_PAUSE_PKT_INTERVAL_INTERVAL UINT64_C(0x000000000000ffff) 374 375 /* TX Software-Pause Registers */ 376 377 #define TXN_SOFT_PAUSE_XXX_63_16 UINT64_C(0xffffffffffff0000) 378 #define TXN_SOFT_PAUSE_TIME UINT64_C(0x000000000000ffff) 379 380 /* TX Time-to-Backpressure Registers */ 381 382 #define TXN_PAUSE_TOGO_XXX_63_16 UINT64_C(0xffffffffffff0000) 383 #define TXN_PAUSE_TOGO_TIME UINT64_C(0x000000000000ffff) 384 385 /* TX Pause-Zero-Enable Registers */ 386 387 #define TXN_PAUSE_ZERO_XXX_63_1 UINT64_C(0xfffffffffffffffe) 388 #define TXN_PAUSE_ZERO_SEND UINT64_C(0x0000000000000001) 389 390 /* GMX TX Statistics Control Registers */ 391 392 #define TXN_STATS_CTL_XXX_63_1 UINT64_C(0xfffffffffffffffe) 393 #define TXN_STATS_CTL_RD_CLR UINT64_C(0x0000000000000001) 394 395 /* GMX TX Transmit Control Registers */ 396 397 #define TXN_CTL_XXX_63_2 UINT64_C(0xfffffffffffffffc) 398 #define TXN_CTL_XSDEF_EN UINT64_C(0x0000000000000002) 399 #define TXN_CTL_XSCOL_EN UINT64_C(0x0000000000000001) 400 401 /* Transmit Statistics Registers 0 */ 402 403 #define TXN_STAT0_XSDEF UINT64_C(0xffffffff00000000) 404 #define TXN_STAT0_XSCOL UINT64_C(0x00000000ffffffff) 405 406 /* Transmit Statistics Registers 1 */ 407 408 #define TXN_STAT1_SCOL UINT64_C(0xffffffff00000000) 409 #define TXN_STAT1_MSCOL UINT64_C(0x00000000ffffffff) 410 411 /* Transmit Statistics Registers 2 */ 412 413 #define TXN_STAT2_XXX_63_48 UINT64_C(0xffff000000000000) 414 #define TXN_STAT2_OCTS UINT64_C(0x0000ffffffffffff) 415 416 /* Transmit Statistics Registers 3 */ 417 418 #define TXN_STAT3_XXX_63_48 UINT64_C(0xffffffff00000000) 419 #define TXN_STAT3_PKTS UINT64_C(0x00000000ffffffff) 420 421 /* Transmit Statistics Registers 4 */ 422 423 #define TXN_STAT4_HIST1 UINT64_C(0xffffffff00000000) 424 #define TXN_STAT4_HIST0 UINT64_C(0x00000000ffffffff) 425 426 /* Transmit Statistics Registers 5 */ 427 428 #define TXN_STAT5_HIST3 UINT64_C(0xffffffff00000000) 429 #define TXN_STAT5_HIST2 UINT64_C(0x00000000ffffffff) 430 431 /* Transmit Statistics Registers 6 */ 432 433 #define TXN_STAT6_HIST5 UINT64_C(0xffffffff00000000) 434 #define TXN_STAT6_HIST4 UINT64_C(0x00000000ffffffff) 435 436 /* Transmit Statistics Registers 7 */ 437 438 #define TXN_STAT7_HIST7 UINT64_C(0xffffffff00000000) 439 #define TXN_STAT7_HIST6 UINT64_C(0x00000000ffffffff) 440 441 /* Transmit Statistics Registers 8 */ 442 443 #define TXN_STAT8_MCST UINT64_C(0xffffffff00000000) 444 #define TXN_STAT8_BCST UINT64_C(0x00000000ffffffff) 445 446 /* Transmit Statistics Register 9 */ 447 448 #define TXN_STAT9_UNDFLW UINT64_C(0xffffffff00000000) 449 #define TXN_STAT9_CTL UINT64_C(0x00000000ffffffff) 450 451 /* BMX BIST Results Register */ 452 453 #define BIST_XXX_63_10 UINT64_C(0xfffffffffffffc00) 454 #define BIST_STATUS UINT64_C(0x00000000000003ff) 455 456 /* RX Ports Register */ 457 458 #define RX_PRTS_XXX_63_3 UINT64_C(0xfffffffffffffff8) 459 #define RX_PRTS_PRTS UINT64_C(0x0000000000000007) 460 461 /* RX FIFO Packet-Drop Registers */ 462 463 #define RX_BP_DROPN_XXX_63_6 UINT64_C(0xffffffffffffffc0) 464 #define RX_BP_DROPN_MARK UINT64_C(0x000000000000003f) 465 466 /* RX Backpressure On Registers */ 467 468 #define RX_BP_ONN_XXX_63_9 UINT64_C(0xfffffffffffffe00) 469 #define RX_BP_ONN_MARK UINT64_C(0x00000000000001ff) 470 471 /* RX Backpressure Off Registers */ 472 473 #define RX_BP_OFFN_XXX_63_6 UINT64_C(0xffffffffffffffc0) 474 #define RX_BP_OFFN_MARK UINT64_C(0x000000000000003f) 475 476 /* TX Ports Register */ 477 478 #define TX_PRTS_XXX_63_5 UINT64_C(0xffffffffffffffe0) 479 #define TX_PRTS_PRTS UINT64_C(0x000000000000001f) 480 481 /* TX Interframe Gap Register */ 482 483 #define TX_IFG_XXX_63_8 UINT64_C(0xffffffffffffff00) 484 #define TX_IFG_IFG2 UINT64_C(0x00000000000000f0) 485 #define TX_IFG_IFG1 UINT64_C(0x000000000000000f) 486 487 /* TX Jam Pattern Register */ 488 489 #define TX_JAM_XXX_63_8 UINT64_C(0xffffffffffffff00) 490 #define TX_JAM_JAM UINT64_C(0x00000000000000ff) 491 492 /* TX Collision Attempts Before Dropping Frame Register */ 493 494 #define TX_COL_ATTEMPT_XXX_63_5 UINT64_C(0xffffffffffffffe0) 495 #define TX_COL_ATTEMPT_LIMIT UINT64_C(0x000000000000001f) 496 497 /* TX Pause-Packet DMAC-Field Register */ 498 499 #define TX_PAUSE_PKT_DMAC_XXX_63_48 UINT64_C(0xffff000000000000) 500 #define TX_PAUSE_PKT_DMAC_DMAC UINT64_C(0x0000ffffffffffff) 501 502 /* TX Pause Packet Type Field Register */ 503 504 #define TX_PAUSE_PKT_TYPE_XXX_63_16 UINT64_C(0xffffffffffff0000) 505 #define TX_PAUSE_PKT_TYPE_TYPE UINT64_C(0x000000000000ffff) 506 507 /* TX Override Backpressure Register */ 508 509 #define TX_OVR_BP_XXX_63_12 UINT64_C(0xfffffffffffff000) 510 #define TX_OVR_BP_XXX_11 UINT64_C(0x0000000000000800) 511 #define TX_OVR_BP_EN UINT64_C(0x0000000000000700) 512 #define TX_OVR_BP_EN_SHIFT 8 513 #define TX_OVR_BP_XXX_7 UINT64_C(0x0000000000000080) 514 #define TX_OVR_BP_BP UINT64_C(0x0000000000000070) 515 #define TX_OVR_BP_BP_SHIFT 4 516 #define TX_OVR_BP_XXX_3 UINT64_C(0x0000000000000008) 517 #define TX_OVR_BP_IGN_FULL UINT64_C(0x0000000000000007) 518 #define TX_OVR_BP_IGN_FULL_SHIFT 0 519 520 /* TX Override Backpressure Register */ 521 522 #define TX_OVR_BP_XXX_63_12 UINT64_C(0xfffffffffffff000) 523 #define TX_OVR_BP_XXX_11 UINT64_C(0x0000000000000800) 524 #define TX_OVR_BP_EN UINT64_C(0x0000000000000700) 525 #define TX_OVR_BP_XXX_7 UINT64_C(0x0000000000000080) 526 #define TX_OVR_BP_BP UINT64_C(0x0000000000000070) 527 #define TX_OVR_BP_XXX_3 UINT64_C(0x0000000000000008) 528 #define TX_OVR_BP_IGN_FULL UINT64_C(0x0000000000000007) 529 530 /* TX Backpressure Status Register */ 531 532 #define TX_BP_SR_XXX_63_3 UINT64_C(0xfffffffffffffff8) 533 #define TX_BP_SR_BP UINT64_C(0x0000000000000007) 534 535 /* TX Corrupt Packets Register */ 536 537 #define TX_CORRUPT_XXX_63_3 UINT64_C(0xfffffffffffffff8) 538 #define TX_CORRUPT_CORRUPT UINT64_C(0x0000000000000007) 539 540 /* RX Port State Information Register */ 541 542 #define RX_PRT_INFO_XXX_63_19 UINT64_C(0xfffffffffff80000) 543 #define RX_PRT_INFO_DROP UINT64_C(0x0000000000070000) 544 #define RX_PRT_INFO_XXX_15_3 UINT64_C(0x000000000000fff8) 545 #define RX_PRT_INFO_COMMIT UINT64_C(0x0000000000000007) 546 547 /* TX LFSR Register */ 548 549 #define TX_LFSR_XXX_63_16 UINT64_C(0xffffffffffff0000) 550 #define TX_LFSR_LFSR UINT64_C(0x000000000000ffff) 551 552 /* TX Interrupt Register */ 553 554 #define TX_INT_REG_XXX_63_20 UINT64_C(0xfffffffffff00000) 555 #define TX_INT_REG_XXX_19 UINT64_C(0x0000000000080000) 556 #define TX_INT_REG_LATE_COL UINT64_C(0x0000000000070000) 557 #define TX_INT_REG_XXX_15 UINT64_C(0x0000000000008000) 558 #define TX_INT_REG_XSDEF UINT64_C(0x0000000000007000) 559 #define TX_INT_REG_XXX_11 UINT64_C(0x0000000000000800) 560 #define TX_INT_REG_XSCOL UINT64_C(0x0000000000000700) 561 #define TX_INT_REG_XXX_7_5 UINT64_C(0x00000000000000e0) 562 #define TX_INT_REG_UNDFLW UINT64_C(0x000000000000001c) 563 #define TX_INT_REG_XXX_1 UINT64_C(0x0000000000000002) 564 #define TX_INT_REG_PKO_NXA UINT64_C(0x0000000000000001) 565 566 /* TX Interrupt Register */ 567 568 #define TX_INT_EN_XXX_63_20 UINT64_C(0xfffffffffff00000) 569 #define TX_INT_EN_XXX_19 UINT64_C(0x0000000000080000) 570 #define TX_INT_EN_LATE_COL UINT64_C(0x0000000000070000) 571 #define TX_INT_EN_XXX_15 UINT64_C(0x0000000000008000) 572 #define TX_INT_EN_XSDEF UINT64_C(0x0000000000007000) 573 #define TX_INT_EN_XXX_11 UINT64_C(0x0000000000000800) 574 #define TX_INT_EN_XSCOL UINT64_C(0x0000000000000700) 575 #define TX_INT_EN_XXX_7_5 UINT64_C(0x00000000000000e0) 576 #define TX_INT_EN_UNDFLW UINT64_C(0x000000000000001c) 577 #define TX_INT_EN_XXX_1 UINT64_C(0x0000000000000002) 578 #define TX_INT_EN_PKO_NXA UINT64_C(0x0000000000000001) 579 580 /* Address-out-of-Range Error Register */ 581 582 #define NXA_ADR_XXX_63_6 UINT64_C(0xffffffffffffffc0) 583 #define NXA_ADR_PRT UINT64_C(0x000000000000003f) 584 585 /* GMX Miscellaneous Error Register */ 586 587 #define BAD_REG_XXX_63_31 UINT64_C(0xffffffff80000000) 588 #define BAD_REG_INB_NXA UINT64_C(0x0000000078000000) 589 #define BAD_REG_STATOVR UINT64_C(0x0000000004000000) 590 #define BAD_REG_XXX_25 UINT64_C(0x0000000002000000) 591 #define BAD_REG_LOSTSTAT UINT64_C(0x0000000001c00000) 592 #define BAD_REG_XXX_21_18 UINT64_C(0x00000000003c0000) 593 #define BAD_REG_XXX_17_5 UINT64_C(0x000000000003ffe0) 594 #define BAD_REG_OUT_OVR UINT64_C(0x000000000000001c) 595 #define BAD_REG_XXX_1_0 UINT64_C(0x0000000000000003) 596 597 /* GMX Backpressure Statistics Register */ 598 599 #define STAT_BP_XXX_63_17 UINT64_C(0xfffffffffffe0000) 600 #define STAT_BP_BP UINT64_C(0x0000000000010000) 601 #define STAT_BP_CNT UINT64_C(0x000000000000ffff) 602 603 /* Mode Change Mask Registers */ 604 605 #define TX_CLK_MSKN_XXX_63_1 UINT64_C(0xfffffffffffffffe) 606 #define TX_CLK_MSKN_MSK UINT64_C(0x0000000000000001) 607 608 /* GMX RX/TX Status Register */ 609 610 #define RX_TX_STATUS_XXX_63_7 UINT64_C(0xffffffffffffff80) 611 #define RX_TX_STATUS_TX UINT64_C(0x0000000000000070) 612 #define RX_TX_STATUS_XXX_3 UINT64_C(0x0000000000000008) 613 #define RX_TX_STATUS_RX UINT64_C(0x0000000000000007) 614 615 /* Interface Mode Register */ 616 617 #define INF_MODE_XXX_63_3 UINT64_C(0xfffffffffffffff8) 618 #define INF_MODE_P0MII UINT64_C(0x0000000000000004) 619 #define INF_MODE_EN UINT64_C(0x0000000000000002) 620 #define INF_MODE_TYPE UINT64_C(0x0000000000000001) 621 622 /* -------------------------------------------------------------------------- */ 623 624 /* for bus_space(9) */ 625 626 #define GMX_IF_NUNITS 1 627 #define GMX_PORT_NUNITS 3 628 629 #define GMX0_BASE_PORT0 0x0001180008000000ULL 630 #define GMX0_BASE_PORT1 0x0001180008000800ULL 631 #define GMX0_BASE_PORT2 0x0001180008001000ULL 632 #define GMX0_BASE_PORT_SIZE 0x00800 633 #define GMX0_BASE_IF0 0x0001180008000000ULL 634 #define GMX0_BASE_IF_SIZE (GMX0_BASE_PORT_SIZE * GMX_PORT_NUNITS) 635 636 /* for snprintb(9) */ 637 638 #define RXN_INT_REG_BITS \ 639 "\177" /* new format */ \ 640 "\020" /* hex display */ \ 641 "\020" /* %016x format */ \ 642 "b\x12" "PHY_DUPX\0" \ 643 "b\x11" "PHY_SPD\0" \ 644 "b\x10" "PHY_LINK\0" \ 645 "b\x0f" "IFGERR\0" \ 646 "b\x0e" "COLDET\0" \ 647 "b\x0d" "FALERR\0" \ 648 "b\x0c" "RSVERR\0" \ 649 "b\x0b" "PCTERR\0" \ 650 "b\x0a" "OVRERR\0" \ 651 "b\x09" "NIBERR\0" \ 652 "b\x08" "SKPERR\0" \ 653 "b\x07" "RCVERR\0" \ 654 "b\x06" "LENERR\0" \ 655 "b\x05" "ALNERR\0" \ 656 "b\x04" "FCSERR\0" \ 657 "b\x03" "JABBER\0" \ 658 "b\x02" "MAXERR\0" \ 659 "b\x01" "CAREXT\0" \ 660 "b\x00" "MINERR\0" 661 #define RXN_INT_EN_BITS \ 662 "\177" /* new format */ \ 663 "\020" /* hex display */ \ 664 "\020" /* %016x format */ \ 665 "b\x12" "PHY_DUPX\0" \ 666 "b\x11" "PHY_SPD\0" \ 667 "b\x10" "PHY_LINK\0" \ 668 "b\x0f" "IFGERR\0" \ 669 "b\x0e" "COLDET\0" \ 670 "b\x0d" "FALERR\0" \ 671 "b\x0c" "RSVERR\0" \ 672 "b\x0b" "PCTERR\0" \ 673 "b\x0a" "OVRERR\0" \ 674 "b\x09" "NIBERR\0" \ 675 "b\x08" "SKPERR\0" \ 676 "b\x07" "RCVERR\0" \ 677 "b\x06" "LENERR\0" \ 678 "b\x05" "ALNERR\0" \ 679 "b\x04" "FCSERR\0" \ 680 "b\x03" "JABBER\0" \ 681 "b\x02" "MAXERR\0" \ 682 "b\x01" "CAREXT\0" \ 683 "b\x00" "MINERR\0" 684 #define PRTN_CFG_BITS \ 685 "\177" /* new format */ \ 686 "\020" /* hex display */ \ 687 "\020" /* %016x format */ \ 688 "b\x03" "SLOTTIME\0" \ 689 "b\x02" "DUPLEX\0" \ 690 "b\x01" "SPEED\0" \ 691 "b\x00" "EN\0" 692 #define RXN_FRM_CTL_BITS \ 693 "\177" /* new format */ \ 694 "\020" /* hex display */ \ 695 "\020" /* %016x format */ \ 696 "b\x0a" "NULL_DIS\0" \ 697 "b\x09" "PRE_ALIGN\0" \ 698 "b\x08" "PAD_LEN\0" \ 699 "b\x07" "VLAN_LEN\0" \ 700 "b\x06" "PRE_FREE\0" \ 701 "b\x05" "CTL_SMAC\0" \ 702 "b\x04" "CTL_MCST\0" \ 703 "b\x03" "CTL_BCK\0" \ 704 "b\x02" "CTL_DRP\0" \ 705 "b\x01" "PRE_STRP\0" \ 706 "b\x00" "PRE_CHK\0" 707 #define RXN_FRM_CHK_BITS \ 708 "\177" /* new format */ \ 709 "\020" /* hex display */ \ 710 "\020" /* %016x format */ \ 711 "b\x09" "NIBERR\0" \ 712 "b\x08" "SKPERR\0" \ 713 "b\x07" "RCVERR\0" \ 714 "b\x06" "LENERR\0" \ 715 "b\x05" "ALNERR\0" \ 716 "b\x04" "FCSERR\0" \ 717 "b\x03" "JABBER\0" \ 718 "b\x02" "MAXERR\0" \ 719 "b\x01" "CAREXT\0" \ 720 "b\x00" "MINERR\0" 721 /* RXN_FRM_MIN */ 722 /* RXN_FRM_MAX */ 723 #define RXN_JABBER_BITS \ 724 "\177" /* new format */ \ 725 "\020" /* hex display */ \ 726 "\020" /* %016x format */ \ 727 "f\x00\x10" "CNT\0" 728 #define RXN_DECISION_BITS \ 729 "\177" /* new format */ \ 730 "\020" /* hex display */ \ 731 "\020" /* %016x format */ \ 732 "f\x00\x05" "CNT\0" 733 #define RXN_UDD_SKP_BITS \ 734 "\177" /* new format */ \ 735 "\020" /* hex display */ \ 736 "\020" /* %016x format */ \ 737 "b\x08" "FCSSEL\0" \ 738 "f\x00\x07" "LEN\0" 739 #define RXN_STATS_CTL_BITS \ 740 "\177" /* new format */ \ 741 "\020" /* hex display */ \ 742 "\020" /* %016x format */ \ 743 "b\x00" "RD_CLR\0" 744 #define RXN_IFG_BITS \ 745 "\177" /* new format */ \ 746 "\020" /* hex display */ \ 747 "\020" /* %016x format */ \ 748 "f\x00\x04" "IFG\0" 749 #define RXN_RX_INBND_BITS \ 750 "\177" /* new format */ \ 751 "\020" /* hex display */ \ 752 "\020" /* %016x format */ \ 753 "b\x03" "DUPLEX\0" \ 754 "f\x01\x02" "SPEED\0" \ 755 "b\x00" "STATUS\0" 756 #define RXN_STATS_PKTS_BITS \ 757 "\177" /* new format */ \ 758 "\020" /* hex display */ \ 759 "\020" /* %016x format */ \ 760 "f\x00\x20" "CNT\0" 761 #define RXN_STATS_OCTS_BITS \ 762 "\177" /* new format */ \ 763 "\020" /* hex display */ \ 764 "\020" /* %016x format */ \ 765 "f\x00\x30" "CNT\0" 766 #define RXN_STATS_PKTS_CTL_BITS \ 767 "\177" /* new format */ \ 768 "\020" /* hex display */ \ 769 "\020" /* %016x format */ \ 770 "f\x00\x20" "CNT\0" 771 #define RXN_STATS_OCTS_CTL_BITS \ 772 "\177" /* new format */ \ 773 "\020" /* hex display */ \ 774 "\020" /* %016x format */ \ 775 "f\x00\x30" "CNT\0" 776 #define RXN_STATS_PKTS_DMAC_BITS \ 777 "\177" /* new format */ \ 778 "\020" /* hex display */ \ 779 "\020" /* %016x format */ \ 780 "f\x00\x20" "CNT\0" 781 #define RXN_STATS_OCTS_DMAC_BITS \ 782 "\177" /* new format */ \ 783 "\020" /* hex display */ \ 784 "\020" /* %016x format */ \ 785 "f\x00\x30" "CNT\0" 786 #define RXN_STATS_PKTS_DRP_BITS \ 787 "\177" /* new format */ \ 788 "\020" /* hex display */ \ 789 "\020" /* %016x format */ \ 790 "f\x00\x20" "CNT\0" 791 #define RXN_STATS_OCTS_DRP_BITS \ 792 "\177" /* new format */ \ 793 "\020" /* hex display */ \ 794 "\020" /* %016x format */ \ 795 "f\x00\x30" "CNT\0" 796 #define RXN_STATS_PKTS_BAD_BITS \ 797 "\177" /* new format */ \ 798 "\020" /* hex display */ \ 799 "\020" /* %016x format */ \ 800 "f\x00\x20" "CNT\0" 801 #define RXN_ADR_CTL_BITS \ 802 "\177" /* new format */ \ 803 "\020" /* hex display */ \ 804 "\020" /* %016x format */ \ 805 "b\x03" "CAM_MODE\0" \ 806 "f\x01\x02" "MCST\0" \ 807 "b\x00" "BCST\0" 808 #define RXN_ADR_CAM_EN_BITS \ 809 "\177" /* new format */ \ 810 "\020" /* hex display */ \ 811 "\020" /* %016x format */ \ 812 "f\x00\x08" "EN\0" 813 /* RXN_ADR_CAM0 */ 814 /* RXN_ADR_CAM1 */ 815 /* RXN_ADR_CAM2 */ 816 /* RXN_ADR_CAM3 */ 817 /* RXN_ADR_CAM4 */ 818 /* RXN_ADR_CAM5 */ 819 #define TXN_CLK_BITS \ 820 "\177" /* new format */ \ 821 "\020" /* hex display */ \ 822 "\020" /* %016x format */ \ 823 "f\x00\x06" "CLK_CNT\0" 824 #define TXN_THRESH_BITS \ 825 "\177" /* new format */ \ 826 "\020" /* hex display */ \ 827 "\020" /* %016x format */ \ 828 "f\x00\x06" "CNT\0" 829 #define TXN_APPEND_BITS \ 830 "\177" /* new format */ \ 831 "\020" /* hex display */ \ 832 "\020" /* %016x format */ \ 833 "b\x03" "FORCE_FCS\0" \ 834 "b\x02" "FCS\0" \ 835 "b\x01" "PAD\0" \ 836 "b\x00" "PREAMBLE\0" 837 #define TXN_SLOT_BITS \ 838 "\177" /* new format */ \ 839 "\020" /* hex display */ \ 840 "\020" /* %016x format */ \ 841 "f\x00\x0a" "SLOT\0" 842 #define TXN_BURST_BITS \ 843 "\177" /* new format */ \ 844 "\020" /* hex display */ \ 845 "\020" /* %016x format */ \ 846 "f\x00\x10" "BURST\0" 847 /* SMAC0 */ 848 #define TXN_PAUSE_PKT_TIME_BITS \ 849 "\177" /* new format */ \ 850 "\020" /* hex display */ \ 851 "\020" /* %016x format */ \ 852 "f\x00\x10" "TIME\0" 853 #define TXN_MIN_PKT_BITS \ 854 "\177" /* new format */ \ 855 "\020" /* hex display */ \ 856 "\020" /* %016x format */ \ 857 "f\x00\x08" "MIN_SIZE\0" 858 #define TXN_PAUSE_PKT_INTERVAL_BITS \ 859 "\177" /* new format */ \ 860 "\020" /* hex display */ \ 861 "\020" /* %016x format */ \ 862 "f\x00\x10" "INTERVAL\0" 863 #define TXN_SOFT_PAUSE_BITS \ 864 "\177" /* new format */ \ 865 "\020" /* hex display */ \ 866 "\020" /* %016x format */ \ 867 "f\x00\x10" "TIME\0" 868 #define TXN_PAUSE_TOGO_BITS \ 869 "\177" /* new format */ \ 870 "\020" /* hex display */ \ 871 "\020" /* %016x format */ \ 872 "f\x00\x10" "TIME\0" 873 #define TXN_PAUSE_ZERO_BITS \ 874 "\177" /* new format */ \ 875 "\020" /* hex display */ \ 876 "\020" /* %016x format */ \ 877 "b\x00" "SEND\0" 878 #define TXN_STATS_CTL_BITS \ 879 "\177" /* new format */ \ 880 "\020" /* hex display */ \ 881 "\020" /* %016x format */ \ 882 "b\x00" "RD_CLR\0" 883 #define TXN_CTL_BITS \ 884 "\177" /* new format */ \ 885 "\020" /* hex display */ \ 886 "\020" /* %016x format */ \ 887 "b\x01" "XSDEF_EN\0" \ 888 "b\x00" "XSCOL_EN\0" 889 #define TXN_STAT0_BITS \ 890 "\177" /* new format */ \ 891 "\020" /* hex display */ \ 892 "\020" /* %016x format */ \ 893 "f\x20\x20" "XSDEF\0" \ 894 "f\x00\x20" "XSCOL\0" 895 #define TXN_STAT1_BITS \ 896 "\177" /* new format */ \ 897 "\020" /* hex display */ \ 898 "\020" /* %016x format */ \ 899 "f\x20\x20" "SCOL\0" \ 900 "f\x00\x20" "MSCOL\0" 901 #define TXN_STAT2_BITS \ 902 "\177" /* new format */ \ 903 "\020" /* hex display */ \ 904 "\020" /* %016x format */ \ 905 "f\x00\x30" "OCTS\0" 906 #define TXN_STAT3_BITS \ 907 "\177" /* new format */ \ 908 "\020" /* hex display */ \ 909 "\020" /* %016x format */ \ 910 "f\x00\x20" "PKTS\0" 911 #define TXN_STAT4_BITS \ 912 "\177" /* new format */ \ 913 "\020" /* hex display */ \ 914 "\020" /* %016x format */ \ 915 "f\x20\x20" "HIST1\0" \ 916 "f\x00\x20" "HIST0\0" 917 #define TXN_STAT5_BITS \ 918 "\177" /* new format */ \ 919 "\020" /* hex display */ \ 920 "\020" /* %016x format */ \ 921 "f\x20\x20" "HIST3\0" \ 922 "f\x00\x20" "HIST2\0" 923 #define TXN_STAT6_BITS \ 924 "\177" /* new format */ \ 925 "\020" /* hex display */ \ 926 "\020" /* %016x format */ \ 927 "f\x20\x20" "HIST5\0" \ 928 "f\x00\x20" "HIST4\0" 929 #define TXN_STAT7_BITS \ 930 "\177" /* new format */ \ 931 "\020" /* hex display */ \ 932 "\020" /* %016x format */ \ 933 "f\x20\x20" "HIST7\0" \ 934 "f\x00\x20" "HIST6\0" 935 #define TXN_STAT8_BITS \ 936 "\177" /* new format */ \ 937 "\020" /* hex display */ \ 938 "\020" /* %016x format */ \ 939 "f\x20\x20" "MCST\0" \ 940 "f\x00\x20" "BCST\0" 941 #define TXN_STAT9_BITS \ 942 "\177" /* new format */ \ 943 "\020" /* hex display */ \ 944 "\020" /* %016x format */ \ 945 "f\x20\x20" "UNDFLW\0" \ 946 "f\x00\x20" "CTL\0" 947 /* BIST0 */ 948 #define RX_PRTS_BITS \ 949 "\177" /* new format */ \ 950 "\020" /* hex display */ \ 951 "\020" /* %016x format */ \ 952 "f\x00\x03" "PRTS\0" 953 #define RX_BP_DROPN_BITS \ 954 "\177" /* new format */ \ 955 "\020" /* hex display */ \ 956 "\020" /* %016x format */ \ 957 "f\x00\x06" "MARK\0" 958 #define RX_BP_ONN_BITS \ 959 "\177" /* new format */ \ 960 "\020" /* hex display */ \ 961 "\020" /* %016x format */ \ 962 "f\x00\x09" "MARK\0" 963 #define RX_BP_OFFN_BITS \ 964 "\177" /* new format */ \ 965 "\020" /* hex display */ \ 966 "\020" /* %016x format */ \ 967 "f\x00\x06" "MARK\0" 968 #define TX_PRTS_BITS \ 969 "\177" /* new format */ \ 970 "\020" /* hex display */ \ 971 "\020" /* %016x format */ \ 972 "f\x00\x05" "PRTS\0" 973 #define TX_IFG_BITS \ 974 "\177" /* new format */ \ 975 "\020" /* hex display */ \ 976 "\020" /* %016x format */ \ 977 "f\x04\x04" "IFG2\0" \ 978 "f\x00\x04" "IFG1\0" 979 #define TX_JAM_BITS \ 980 "\177" /* new format */ \ 981 "\020" /* hex display */ \ 982 "\020" /* %016x format */ \ 983 "f\x00\x08" "JAM\0" 984 #define TX_COL_ATTEMPT_BITS \ 985 "\177" /* new format */ \ 986 "\020" /* hex display */ \ 987 "\020" /* %016x format */ \ 988 "f\x00\x05" "LIMIT\0" 989 #define TX_PAUSE_PKT_DMAC_BITS \ 990 "\177" /* new format */ \ 991 "\020" /* hex display */ \ 992 "\020" /* %016x format */ \ 993 "f\x00\x30" "DMAC\0" 994 #define TX_PAUSE_PKT_TYPE_BITS \ 995 "\177" /* new format */ \ 996 "\020" /* hex display */ \ 997 "\020" /* %016x format */ \ 998 "f\x00\x10" "TYPE\0" 999 #define TX_OVR_BP_BITS \ 1000 "\177" /* new format */ \ 1001 "\020" /* hex display */ \ 1002 "\020" /* %016x format */ \ 1003 "f\x08\x03" "EN\0" \ 1004 "f\x04\x03" "BP\0" \ 1005 "f\x00\x03" "IGN_FULL\0" 1006 #define TX_BP_BITS \ 1007 "\177" /* new format */ \ 1008 "\020" /* hex display */ \ 1009 "\020" /* %016x format */ \ 1010 "f\x00\x03" "SR_BP\0" 1011 #define TX_CORRUPT_BITS \ 1012 "\177" /* new format */ \ 1013 "\020" /* hex display */ \ 1014 "\020" /* %016x format */ \ 1015 "f\x00\x03" "CORRUPT\0" 1016 #define RX_PRT_INFO_BITS \ 1017 "\177" /* new format */ \ 1018 "\020" /* hex display */ \ 1019 "\020" /* %016x format */ \ 1020 "f\x10\x03" "DROP\0" \ 1021 "f\x00\x03" "COMMIT\0" 1022 #define TX_LFSR_BITS \ 1023 "\177" /* new format */ \ 1024 "\020" /* hex display */ \ 1025 "\020" /* %016x format */ \ 1026 "f\x00\x10" "LFSR\0" 1027 #define TX_INT_REG_BITS \ 1028 "\177" /* new format */ \ 1029 "\020" /* hex display */ \ 1030 "\020" /* %016x format */ \ 1031 "f\x10\x03" "LATE_COL\0" \ 1032 "f\x0c\x03" "XSDEF\0" \ 1033 "f\x08\x03" "XSCOL\0" \ 1034 "f\x02\x03" "UNDFLW\0" \ 1035 "b\x00" "PKO_NXA\0" 1036 #define TX_INT_EN_BITS \ 1037 "\177" /* new format */ \ 1038 "\020" /* hex display */ \ 1039 "\020" /* %016x format */ \ 1040 "f\x10\x03" "LATE_COL\0" \ 1041 "f\x0c\x03" "XSDEF\0" \ 1042 "f\x08\x03" "XSCOL\0" \ 1043 "f\x02\x03" "UNDFLW\0" \ 1044 "b\x00" "PKO_NXA\0" 1045 #define NXA_ADR_BITS \ 1046 "\177" /* new format */ \ 1047 "\020" /* hex display */ \ 1048 "\020" /* %016x format */ \ 1049 "f\x00\x06" "PRT\0" 1050 #define BAD_REG_BITS \ 1051 "\177" /* new format */ \ 1052 "\020" /* hex display */ \ 1053 "\020" /* %016x format */ \ 1054 "f\x1b\x04" "INB_NXA\0" \ 1055 "b\x1a" "STATOVR\0" \ 1056 "f\x16\x03" "LOSTSTAT\0" \ 1057 "f\x02\x03" "OUT_OVR\0" 1058 #define STAT_BP_BITS \ 1059 "\177" /* new format */ \ 1060 "\020" /* hex display */ \ 1061 "\020" /* %016x format */ \ 1062 "b\x10" "BP\0" \ 1063 "f\x00\x10" "CNT\0" 1064 #define TX_CLK_MSKN_BITS \ 1065 "\177" /* new format */ \ 1066 "\020" /* hex display */ \ 1067 "\020" /* %016x format */ \ 1068 "b\x00" "MSK\0" 1069 #define RX_TX_STATUS_BITS \ 1070 "\177" /* new format */ \ 1071 "\020" /* hex display */ \ 1072 "\020" /* %016x format */ \ 1073 "f\x04\x03" "TX\0" \ 1074 "f\x00\x03" "RX\0" 1075 #define INF_MODE_BITS \ 1076 "\177" /* new format */ \ 1077 "\020" /* hex display */ \ 1078 "\020" /* %016x format */ \ 1079 "b\x02" "P0MII\0" \ 1080 "b\x01" "EN\0" \ 1081 "b\x00" "TYPE\0" 1082 1083 #define GMX0_RX0_INT_REG_BITS RXN_INT_REG_BITS 1084 #define GMX0_RX0_INT_EN_BITS RXN_INT_EN_BITS 1085 #define GMX0_PRT0_CFG_BITS PRTN_CFG_BITS 1086 #define GMX0_RX0_FRM_CTL_BITS RXN_FRM_CTL_BITS 1087 #define GMX0_RX0_FRM_CHK_BITS RXN_FRM_CHK_BITS 1088 #define GMX0_RX0_FRM_MIN_BITS NULL//RXN_FRM_MIN_BITS 1089 #define GMX0_RX0_FRM_MAX_BITS NULL//RXN_FRM_MAX_BITS 1090 #define GMX0_RX0_JABBER_BITS RXN_JABBER_BITS 1091 #define GMX0_RX0_DECISION_BITS RXN_DECISION_BITS 1092 #define GMX0_RX0_UDD_SKP_BITS RXN_UDD_SKP_BITS 1093 #define GMX0_RX0_STATS_CTL_BITS RXN_STATS_CTL_BITS 1094 #define GMX0_RX0_IFG_BITS RXN_IFG_BITS 1095 #define GMX0_RX0_RX_INBND_BITS RXN_RX_INBND_BITS 1096 #define GMX0_RX0_STATS_PKTS_BITS RXN_STATS_PKTS_BITS 1097 #define GMX0_RX0_STATS_OCTS_BITS RXN_STATS_OCTS_BITS 1098 #define GMX0_RX0_STATS_PKTS_CTL_BITS RXN_STATS_PKTS_CTL_BITS 1099 #define GMX0_RX0_STATS_OCTS_CTL_BITS RXN_STATS_OCTS_CTL_BITS 1100 #define GMX0_RX0_STATS_PKTS_DMAC_BITS RXN_STATS_PKTS_DMAC_BITS 1101 #define GMX0_RX0_STATS_OCTS_DMAC_BITS RXN_STATS_OCTS_DMAC_BITS 1102 #define GMX0_RX0_STATS_PKTS_DRP_BITS RXN_STATS_PKTS_DRP_BITS 1103 #define GMX0_RX0_STATS_OCTS_DRP_BITS RXN_STATS_OCTS_DRP_BITS 1104 #define GMX0_RX0_STATS_PKTS_BAD_BITS RXN_STATS_PKTS_BAD_BITS 1105 #define GMX0_RX0_ADR_CTL_BITS RXN_ADR_CTL_BITS 1106 #define GMX0_RX0_ADR_CAM_EN_BITS RXN_ADR_CAM_EN_BITS 1107 #define GMX0_RX0_ADR_CAM0_BITS NULL//RXN_ADR_CAM0_BITS 1108 #define GMX0_RX0_ADR_CAM1_BITS NULL//RXN_ADR_CAM1_BITS 1109 #define GMX0_RX0_ADR_CAM2_BITS NULL//RXN_ADR_CAM2_BITS 1110 #define GMX0_RX0_ADR_CAM3_BITS NULL//RXN_ADR_CAM3_BITS 1111 #define GMX0_RX0_ADR_CAM4_BITS NULL//RXN_ADR_CAM4_BITS 1112 #define GMX0_RX0_ADR_CAM5_BITS NULL//RXN_ADR_CAM5_BITS 1113 #define GMX0_TX0_CLK_BITS TXN_CLK_BITS 1114 #define GMX0_TX0_THRESH_BITS TXN_THRESH_BITS 1115 #define GMX0_TX0_APPEND_BITS TXN_APPEND_BITS 1116 #define GMX0_TX0_SLOT_BITS TXN_SLOT_BITS 1117 #define GMX0_TX0_BURST_BITS TXN_BURST_BITS 1118 #define GMX0_SMAC0_BITS NULL//SMAC0_BITS 1119 #define GMX0_TX0_PAUSE_PKT_TIME_BITS TXN_PAUSE_PKT_TIME_BITS 1120 #define GMX0_TX0_MIN_PKT_BITS TXN_MIN_PKT_BITS 1121 #define GMX0_TX0_PAUSE_PKT_INTERVAL_BITS TXN_PAUSE_PKT_INTERVAL_BITS 1122 #define GMX0_TX0_SOFT_PAUSE_BITS TXN_SOFT_PAUSE_BITS 1123 #define GMX0_TX0_PAUSE_TOGO_BITS TXN_PAUSE_TOGO_BITS 1124 #define GMX0_TX0_PAUSE_ZERO_BITS TXN_PAUSE_ZERO_BITS 1125 #define GMX0_TX0_STATS_CTL_BITS TXN_STATS_CTL_BITS 1126 #define GMX0_TX0_CTL_BITS TXN_CTL_BITS 1127 #define GMX0_TX0_STAT0_BITS TXN_STAT0_BITS 1128 #define GMX0_TX0_STAT1_BITS TXN_STAT1_BITS 1129 #define GMX0_TX0_STAT2_BITS TXN_STAT2_BITS 1130 #define GMX0_TX0_STAT3_BITS TXN_STAT3_BITS 1131 #define GMX0_TX0_STAT4_BITS TXN_STAT4_BITS 1132 #define GMX0_TX0_STAT5_BITS TXN_STAT5_BITS 1133 #define GMX0_TX0_STAT6_BITS TXN_STAT6_BITS 1134 #define GMX0_TX0_STAT7_BITS TXN_STAT7_BITS 1135 #define GMX0_TX0_STAT8_BITS TXN_STAT8_BITS 1136 #define GMX0_TX0_STAT9_BITS TXN_STAT9_BITS 1137 #define GMX0_BIST0_BITS NULL//BIST0_BITS 1138 #define GMX0_RX_PRTS_BITS RX_PRTS_BITS 1139 #define GMX0_RX_BP_DROP0_BITS RX_BP_DROPN_BITS 1140 #define GMX0_RX_BP_ON0_BITS RX_BP_ONN_BITS 1141 #define GMX0_RX_BP_OFF0_BITS RX_BP_OFFN_BITS 1142 #define GMX0_RX_BP_DROP1_BITS RX_BP_DROPN_BITS 1143 #define GMX0_RX_BP_ON1_BITS RX_BP_ONN_BITS 1144 #define GMX0_RX_BP_OFF1_BITS RX_BP_OFFN_BITS 1145 #define GMX0_RX_BP_DROP2_BITS RX_BP_DROPN_BITS 1146 #define GMX0_RX_BP_ON2_BITS RX_BP_ONN_BITS 1147 #define GMX0_RX_BP_OFF2_BITS RX_BP_OFFN_BITS 1148 #define GMX0_TX_PRTS_BITS TX_PRTS_BITS 1149 #define GMX0_TX_IFG_BITS TX_IFG_BITS 1150 #define GMX0_TX_JAM_BITS TX_JAM_BITS 1151 #define GMX0_TX_COL_ATTEMPT_BITS TX_COL_ATTEMPT_BITS 1152 #define GMX0_TX_PAUSE_PKT_DMAC_BITS TX_PAUSE_PKT_DMAC_BITS 1153 #define GMX0_TX_PAUSE_PKT_TYPE_BITS TX_PAUSE_PKT_TYPE_BITS 1154 #define GMX0_TX_OVR_BP_BITS TX_OVR_BP_BITS 1155 #define GMX0_TX_BP_BITS TX_BP_BITS 1156 #define GMX0_TX_CORRUPT_BITS TX_CORRUPT_BITS 1157 #define GMX0_RX_PRT_INFO_BITS RX_PRT_INFO_BITS 1158 #define GMX0_TX_LFSR_BITS TX_LFSR_BITS 1159 #define GMX0_TX_INT_REG_BITS TX_INT_REG_BITS 1160 #define GMX0_TX_INT_EN_BITS TX_INT_EN_BITS 1161 #define GMX0_NXA_ADR_BITS NXA_ADR_BITS 1162 #define GMX0_BAD_REG_BITS BAD_REG_BITS 1163 #define GMX0_STAT_BP_BITS STAT_BP_BITS 1164 #define GMX0_TX_CLK_MSK0_BITS TX_CLK_MSKN_BITS 1165 #define GMX0_TX_CLK_MSK1_BITS TX_CLK_MSKN_BITS 1166 #define GMX0_TX_CLK_MSK2_BITS TX_CLK_MSKN_BITS 1167 #define GMX0_RX_TX_STATUS_BITS RX_TX_STATUS_BITS 1168 #define GMX0_INF_MODE_BITS INF_MODE_BITS 1169 1170 #endif /* _OCTEON_GMXREG_H_ */ 1171