1/* SPDX-License-Identifier: GPL-2.0-only */ 2/***************************************************************************** 3 * * 4 * File: suni1x10gexp_regs.h * 5 * $Revision: 1.9 $ * 6 * $Date: 2005/06/22 00:17:04 $ * 7 * Description: * 8 * PMC/SIERRA (pm3393) MAC-PHY functionality. * 9 * part of the Chelsio 10Gb Ethernet Driver. * 10 * * 11 * * 12 * http://www.chelsio.com * 13 * * 14 * Maintainers: maintainers@chelsio.com * 15 * * 16 * Authors: PMC/SIERRA * 17 * * 18 * History: * 19 * * 20 ****************************************************************************/ 21 22#ifndef _CXGB_SUNI1x10GEXP_REGS_H_ 23#define _CXGB_SUNI1x10GEXP_REGS_H_ 24 25/* 26** Space allocated for each Exact Match Filter 27** There are 8 filter configurations 28*/ 29#define SUNI1x10GEXP_REG_SIZEOF_MAC_FILTER 0x0003 30 31#define mSUNI1x10GEXP_MAC_FILTER_OFFSET(filterId) ( (filterId) * SUNI1x10GEXP_REG_SIZEOF_MAC_FILTER ) 32 33/* 34** Space allocated for VLAN-Id Filter 35** There are 8 filter configurations 36*/ 37#define SUNI1x10GEXP_REG_SIZEOF_MAC_VID_FILTER 0x0001 38 39#define mSUNI1x10GEXP_MAC_VID_FILTER_OFFSET(filterId) ( (filterId) * SUNI1x10GEXP_REG_SIZEOF_MAC_VID_FILTER ) 40 41/* 42** Space allocated for each MSTAT Counter 43*/ 44#define SUNI1x10GEXP_REG_SIZEOF_MSTAT_COUNT 0x0004 45 46#define mSUNI1x10GEXP_MSTAT_COUNT_OFFSET(countId) ( (countId) * SUNI1x10GEXP_REG_SIZEOF_MSTAT_COUNT ) 47 48 49/******************************************************************************/ 50/** S/UNI-1x10GE-XP REGISTER ADDRESS MAP **/ 51/******************************************************************************/ 52/* Refer to the Register Bit Masks bellow for the naming of each register and */ 53/* to the S/UNI-1x10GE-XP Data Sheet for the signification of each bit */ 54/******************************************************************************/ 55 56 57#define SUNI1x10GEXP_REG_IDENTIFICATION 0x0000 58#define SUNI1x10GEXP_REG_PRODUCT_REVISION 0x0001 59#define SUNI1x10GEXP_REG_CONFIG_AND_RESET_CONTROL 0x0002 60#define SUNI1x10GEXP_REG_LOOPBACK_MISC_CTRL 0x0003 61#define SUNI1x10GEXP_REG_DEVICE_STATUS 0x0004 62#define SUNI1x10GEXP_REG_GLOBAL_PERFORMANCE_MONITOR_UPDATE 0x0005 63 64#define SUNI1x10GEXP_REG_MDIO_COMMAND 0x0006 65#define SUNI1x10GEXP_REG_MDIO_INTERRUPT_ENABLE 0x0007 66#define SUNI1x10GEXP_REG_MDIO_INTERRUPT_STATUS 0x0008 67#define SUNI1x10GEXP_REG_MMD_PHY_ADDRESS 0x0009 68#define SUNI1x10GEXP_REG_MMD_CONTROL_ADDRESS_DATA 0x000A 69#define SUNI1x10GEXP_REG_MDIO_READ_STATUS_DATA 0x000B 70 71#define SUNI1x10GEXP_REG_OAM_INTF_CTRL 0x000C 72#define SUNI1x10GEXP_REG_MASTER_INTERRUPT_STATUS 0x000D 73#define SUNI1x10GEXP_REG_GLOBAL_INTERRUPT_ENABLE 0x000E 74#define SUNI1x10GEXP_REG_FREE 0x000F 75 76#define SUNI1x10GEXP_REG_XTEF_MISC_CTRL 0x0010 77#define SUNI1x10GEXP_REG_XRF_MISC_CTRL 0x0011 78 79#define SUNI1x10GEXP_REG_SERDES_3125_CONFIG_1 0x0100 80#define SUNI1x10GEXP_REG_SERDES_3125_CONFIG_2 0x0101 81#define SUNI1x10GEXP_REG_SERDES_3125_INTERRUPT_ENABLE 0x0102 82#define SUNI1x10GEXP_REG_SERDES_3125_INTERRUPT_VISIBLE 0x0103 83#define SUNI1x10GEXP_REG_SERDES_3125_INTERRUPT_STATUS 0x0104 84#define SUNI1x10GEXP_REG_SERDES_3125_TEST_CONFIG 0x0107 85 86#define SUNI1x10GEXP_REG_RXXG_CONFIG_1 0x2040 87#define SUNI1x10GEXP_REG_RXXG_CONFIG_2 0x2041 88#define SUNI1x10GEXP_REG_RXXG_CONFIG_3 0x2042 89#define SUNI1x10GEXP_REG_RXXG_INTERRUPT 0x2043 90#define SUNI1x10GEXP_REG_RXXG_MAX_FRAME_LENGTH 0x2045 91#define SUNI1x10GEXP_REG_RXXG_SA_15_0 0x2046 92#define SUNI1x10GEXP_REG_RXXG_SA_31_16 0x2047 93#define SUNI1x10GEXP_REG_RXXG_SA_47_32 0x2048 94#define SUNI1x10GEXP_REG_RXXG_RECEIVE_FIFO_THRESHOLD 0x2049 95#define mSUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_LOW(filterId) (0x204A + mSUNI1x10GEXP_MAC_FILTER_OFFSET(filterId)) 96#define mSUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_MID(filterId) (0x204B + mSUNI1x10GEXP_MAC_FILTER_OFFSET(filterId)) 97#define mSUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_HIGH(filterId)(0x204C + mSUNI1x10GEXP_MAC_FILTER_OFFSET(filterId)) 98#define mSUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID(filterId) (0x2062 + mSUNI1x10GEXP_MAC_VID_FILTER_OFFSET(filterId)) 99#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_0_LOW 0x204A 100#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_0_MID 0x204B 101#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_0_HIGH 0x204C 102#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_1_LOW 0x204D 103#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_1_MID 0x204E 104#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_1_HIGH 0x204F 105#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_2_LOW 0x2050 106#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_2_MID 0x2051 107#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_2_HIGH 0x2052 108#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_3_LOW 0x2053 109#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_3_MID 0x2054 110#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_3_HIGH 0x2055 111#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_4_LOW 0x2056 112#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_4_MID 0x2057 113#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_4_HIGH 0x2058 114#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_5_LOW 0x2059 115#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_5_MID 0x205A 116#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_5_HIGH 0x205B 117#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_6_LOW 0x205C 118#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_6_MID 0x205D 119#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_6_HIGH 0x205E 120#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_7_LOW 0x205F 121#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_7_MID 0x2060 122#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_ADDR_7_HIGH 0x2061 123#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_0 0x2062 124#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_1 0x2063 125#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_2 0x2064 126#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_3 0x2065 127#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_4 0x2066 128#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_5 0x2067 129#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_6 0x2068 130#define SUNI1x10GEXP_REG_RXXG_EXACT_MATCH_VID_7 0x2069 131#define SUNI1x10GEXP_REG_RXXG_MULTICAST_HASH_LOW 0x206A 132#define SUNI1x10GEXP_REG_RXXG_MULTICAST_HASH_MIDLOW 0x206B 133#define SUNI1x10GEXP_REG_RXXG_MULTICAST_HASH_MIDHIGH 0x206C 134#define SUNI1x10GEXP_REG_RXXG_MULTICAST_HASH_HIGH 0x206D 135#define SUNI1x10GEXP_REG_RXXG_ADDRESS_FILTER_CONTROL_0 0x206E 136#define SUNI1x10GEXP_REG_RXXG_ADDRESS_FILTER_CONTROL_1 0x206F 137#define SUNI1x10GEXP_REG_RXXG_ADDRESS_FILTER_CONTROL_2 0x2070 138 139#define SUNI1x10GEXP_REG_XRF_PATTERN_GEN_CTRL 0x2081 140#define SUNI1x10GEXP_REG_XRF_8BTB_ERR_COUNT_LANE_0 0x2084 141#define SUNI1x10GEXP_REG_XRF_8BTB_ERR_COUNT_LANE_1 0x2085 142#define SUNI1x10GEXP_REG_XRF_8BTB_ERR_COUNT_LANE_2 0x2086 143#define SUNI1x10GEXP_REG_XRF_8BTB_ERR_COUNT_LANE_3 0x2087 144#define SUNI1x10GEXP_REG_XRF_INTERRUPT_ENABLE 0x2088 145#define SUNI1x10GEXP_REG_XRF_INTERRUPT_STATUS 0x2089 146#define SUNI1x10GEXP_REG_XRF_ERR_STATUS 0x208A 147#define SUNI1x10GEXP_REG_XRF_DIAG_INTERRUPT_ENABLE 0x208B 148#define SUNI1x10GEXP_REG_XRF_DIAG_INTERRUPT_STATUS 0x208C 149#define SUNI1x10GEXP_REG_XRF_CODE_ERR_THRES 0x2092 150 151#define SUNI1x10GEXP_REG_RXOAM_CONFIG 0x20C0 152#define SUNI1x10GEXP_REG_RXOAM_FILTER_1_CONFIG 0x20C1 153#define SUNI1x10GEXP_REG_RXOAM_FILTER_2_CONFIG 0x20C2 154#define SUNI1x10GEXP_REG_RXOAM_CONFIG_2 0x20C3 155#define SUNI1x10GEXP_REG_RXOAM_HEC_CONFIG 0x20C4 156#define SUNI1x10GEXP_REG_RXOAM_HEC_ERR_THRES 0x20C5 157#define SUNI1x10GEXP_REG_RXOAM_INTERRUPT_ENABLE 0x20C7 158#define SUNI1x10GEXP_REG_RXOAM_INTERRUPT_STATUS 0x20C8 159#define SUNI1x10GEXP_REG_RXOAM_STATUS 0x20C9 160#define SUNI1x10GEXP_REG_RXOAM_HEC_ERR_COUNT 0x20CA 161#define SUNI1x10GEXP_REG_RXOAM_FIFO_OVERFLOW_COUNT 0x20CB 162#define SUNI1x10GEXP_REG_RXOAM_FILTER_MISMATCH_COUNT_LSB 0x20CC 163#define SUNI1x10GEXP_REG_RXOAM_FILTER_MISMATCH_COUNT_MSB 0x20CD 164#define SUNI1x10GEXP_REG_RXOAM_FILTER_1_MISMATCH_COUNT_LSB 0x20CE 165#define SUNI1x10GEXP_REG_RXOAM_FILTER_1_MISMATCH_COUNT_MSB 0x20CF 166#define SUNI1x10GEXP_REG_RXOAM_FILTER_2_MISMATCH_COUNT_LSB 0x20D0 167#define SUNI1x10GEXP_REG_RXOAM_FILTER_2_MISMATCH_COUNT_MSB 0x20D1 168#define SUNI1x10GEXP_REG_RXOAM_OAM_EXTRACT_COUNT_LSB 0x20D2 169#define SUNI1x10GEXP_REG_RXOAM_OAM_EXTRACT_COUNT_MSB 0x20D3 170#define SUNI1x10GEXP_REG_RXOAM_MINI_PACKET_COUNT_LSB 0x20D4 171#define SUNI1x10GEXP_REG_RXOAM_MINI_PACKET_COUNT_MSB 0x20D5 172#define SUNI1x10GEXP_REG_RXOAM_FILTER_MISMATCH_THRES_LSB 0x20D6 173#define SUNI1x10GEXP_REG_RXOAM_FILTER_MISMATCH_THRES_MSB 0x20D7 174 175#define SUNI1x10GEXP_REG_MSTAT_CONTROL 0x2100 176#define SUNI1x10GEXP_REG_MSTAT_COUNTER_ROLLOVER_0 0x2101 177#define SUNI1x10GEXP_REG_MSTAT_COUNTER_ROLLOVER_1 0x2102 178#define SUNI1x10GEXP_REG_MSTAT_COUNTER_ROLLOVER_2 0x2103 179#define SUNI1x10GEXP_REG_MSTAT_COUNTER_ROLLOVER_3 0x2104 180#define SUNI1x10GEXP_REG_MSTAT_INTERRUPT_MASK_0 0x2105 181#define SUNI1x10GEXP_REG_MSTAT_INTERRUPT_MASK_1 0x2106 182#define SUNI1x10GEXP_REG_MSTAT_INTERRUPT_MASK_2 0x2107 183#define SUNI1x10GEXP_REG_MSTAT_INTERRUPT_MASK_3 0x2108 184#define SUNI1x10GEXP_REG_MSTAT_COUNTER_WRITE_ADDRESS 0x2109 185#define SUNI1x10GEXP_REG_MSTAT_COUNTER_WRITE_DATA_LOW 0x210A 186#define SUNI1x10GEXP_REG_MSTAT_COUNTER_WRITE_DATA_MIDDLE 0x210B 187#define SUNI1x10GEXP_REG_MSTAT_COUNTER_WRITE_DATA_HIGH 0x210C 188#define mSUNI1x10GEXP_REG_MSTAT_COUNTER_LOW(countId) (0x2110 + mSUNI1x10GEXP_MSTAT_COUNT_OFFSET(countId)) 189#define mSUNI1x10GEXP_REG_MSTAT_COUNTER_MID(countId) (0x2111 + mSUNI1x10GEXP_MSTAT_COUNT_OFFSET(countId)) 190#define mSUNI1x10GEXP_REG_MSTAT_COUNTER_HIGH(countId) (0x2112 + mSUNI1x10GEXP_MSTAT_COUNT_OFFSET(countId)) 191#define SUNI1x10GEXP_REG_MSTAT_COUNTER_0_LOW 0x2110 192#define SUNI1x10GEXP_REG_MSTAT_COUNTER_0_MID 0x2111 193#define SUNI1x10GEXP_REG_MSTAT_COUNTER_0_HIGH 0x2112 194#define SUNI1x10GEXP_REG_MSTAT_COUNTER_0_RESVD 0x2113 195#define SUNI1x10GEXP_REG_MSTAT_COUNTER_1_LOW 0x2114 196#define SUNI1x10GEXP_REG_MSTAT_COUNTER_1_MID 0x2115 197#define SUNI1x10GEXP_REG_MSTAT_COUNTER_1_HIGH 0x2116 198#define SUNI1x10GEXP_REG_MSTAT_COUNTER_1_RESVD 0x2117 199#define SUNI1x10GEXP_REG_MSTAT_COUNTER_2_LOW 0x2118 200#define SUNI1x10GEXP_REG_MSTAT_COUNTER_2_MID 0x2119 201#define SUNI1x10GEXP_REG_MSTAT_COUNTER_2_HIGH 0x211A 202#define SUNI1x10GEXP_REG_MSTAT_COUNTER_2_RESVD 0x211B 203#define SUNI1x10GEXP_REG_MSTAT_COUNTER_3_LOW 0x211C 204#define SUNI1x10GEXP_REG_MSTAT_COUNTER_3_MID 0x211D 205#define SUNI1x10GEXP_REG_MSTAT_COUNTER_3_HIGH 0x211E 206#define SUNI1x10GEXP_REG_MSTAT_COUNTER_3_RESVD 0x211F 207#define SUNI1x10GEXP_REG_MSTAT_COUNTER_4_LOW 0x2120 208#define SUNI1x10GEXP_REG_MSTAT_COUNTER_4_MID 0x2121 209#define SUNI1x10GEXP_REG_MSTAT_COUNTER_4_HIGH 0x2122 210#define SUNI1x10GEXP_REG_MSTAT_COUNTER_4_RESVD 0x2123 211#define SUNI1x10GEXP_REG_MSTAT_COUNTER_5_LOW 0x2124 212#define SUNI1x10GEXP_REG_MSTAT_COUNTER_5_MID 0x2125 213#define SUNI1x10GEXP_REG_MSTAT_COUNTER_5_HIGH 0x2126 214#define SUNI1x10GEXP_REG_MSTAT_COUNTER_5_RESVD 0x2127 215#define SUNI1x10GEXP_REG_MSTAT_COUNTER_6_LOW 0x2128 216#define SUNI1x10GEXP_REG_MSTAT_COUNTER_6_MID 0x2129 217#define SUNI1x10GEXP_REG_MSTAT_COUNTER_6_HIGH 0x212A 218#define SUNI1x10GEXP_REG_MSTAT_COUNTER_6_RESVD 0x212B 219#define SUNI1x10GEXP_REG_MSTAT_COUNTER_7_LOW 0x212C 220#define SUNI1x10GEXP_REG_MSTAT_COUNTER_7_MID 0x212D 221#define SUNI1x10GEXP_REG_MSTAT_COUNTER_7_HIGH 0x212E 222#define SUNI1x10GEXP_REG_MSTAT_COUNTER_7_RESVD 0x212F 223#define SUNI1x10GEXP_REG_MSTAT_COUNTER_8_LOW 0x2130 224#define SUNI1x10GEXP_REG_MSTAT_COUNTER_8_MID 0x2131 225#define SUNI1x10GEXP_REG_MSTAT_COUNTER_8_HIGH 0x2132 226#define SUNI1x10GEXP_REG_MSTAT_COUNTER_8_RESVD 0x2133 227#define SUNI1x10GEXP_REG_MSTAT_COUNTER_9_LOW 0x2134 228#define SUNI1x10GEXP_REG_MSTAT_COUNTER_9_MID 0x2135 229#define SUNI1x10GEXP_REG_MSTAT_COUNTER_9_HIGH 0x2136 230#define SUNI1x10GEXP_REG_MSTAT_COUNTER_9_RESVD 0x2137 231#define SUNI1x10GEXP_REG_MSTAT_COUNTER_10_LOW 0x2138 232#define SUNI1x10GEXP_REG_MSTAT_COUNTER_10_MID 0x2139 233#define SUNI1x10GEXP_REG_MSTAT_COUNTER_10_HIGH 0x213A 234#define SUNI1x10GEXP_REG_MSTAT_COUNTER_10_RESVD 0x213B 235#define SUNI1x10GEXP_REG_MSTAT_COUNTER_11_LOW 0x213C 236#define SUNI1x10GEXP_REG_MSTAT_COUNTER_11_MID 0x213D 237#define SUNI1x10GEXP_REG_MSTAT_COUNTER_11_HIGH 0x213E 238#define SUNI1x10GEXP_REG_MSTAT_COUNTER_11_RESVD 0x213F 239#define SUNI1x10GEXP_REG_MSTAT_COUNTER_12_LOW 0x2140 240#define SUNI1x10GEXP_REG_MSTAT_COUNTER_12_MID 0x2141 241#define SUNI1x10GEXP_REG_MSTAT_COUNTER_12_HIGH 0x2142 242#define SUNI1x10GEXP_REG_MSTAT_COUNTER_12_RESVD 0x2143 243#define SUNI1x10GEXP_REG_MSTAT_COUNTER_13_LOW 0x2144 244#define SUNI1x10GEXP_REG_MSTAT_COUNTER_13_MID 0x2145 245#define SUNI1x10GEXP_REG_MSTAT_COUNTER_13_HIGH 0x2146 246#define SUNI1x10GEXP_REG_MSTAT_COUNTER_13_RESVD 0x2147 247#define SUNI1x10GEXP_REG_MSTAT_COUNTER_14_LOW 0x2148 248#define SUNI1x10GEXP_REG_MSTAT_COUNTER_14_MID 0x2149 249#define SUNI1x10GEXP_REG_MSTAT_COUNTER_14_HIGH 0x214A 250#define SUNI1x10GEXP_REG_MSTAT_COUNTER_14_RESVD 0x214B 251#define SUNI1x10GEXP_REG_MSTAT_COUNTER_15_LOW 0x214C 252#define SUNI1x10GEXP_REG_MSTAT_COUNTER_15_MID 0x214D 253#define SUNI1x10GEXP_REG_MSTAT_COUNTER_15_HIGH 0x214E 254#define SUNI1x10GEXP_REG_MSTAT_COUNTER_15_RESVD 0x214F 255#define SUNI1x10GEXP_REG_MSTAT_COUNTER_16_LOW 0x2150 256#define SUNI1x10GEXP_REG_MSTAT_COUNTER_16_MID 0x2151 257#define SUNI1x10GEXP_REG_MSTAT_COUNTER_16_HIGH 0x2152 258#define SUNI1x10GEXP_REG_MSTAT_COUNTER_16_RESVD 0x2153 259#define SUNI1x10GEXP_REG_MSTAT_COUNTER_17_LOW 0x2154 260#define SUNI1x10GEXP_REG_MSTAT_COUNTER_17_MID 0x2155 261#define SUNI1x10GEXP_REG_MSTAT_COUNTER_17_HIGH 0x2156 262#define SUNI1x10GEXP_REG_MSTAT_COUNTER_17_RESVD 0x2157 263#define SUNI1x10GEXP_REG_MSTAT_COUNTER_18_LOW 0x2158 264#define SUNI1x10GEXP_REG_MSTAT_COUNTER_18_MID 0x2159 265#define SUNI1x10GEXP_REG_MSTAT_COUNTER_18_HIGH 0x215A 266#define SUNI1x10GEXP_REG_MSTAT_COUNTER_18_RESVD 0x215B 267#define SUNI1x10GEXP_REG_MSTAT_COUNTER_19_LOW 0x215C 268#define SUNI1x10GEXP_REG_MSTAT_COUNTER_19_MID 0x215D 269#define SUNI1x10GEXP_REG_MSTAT_COUNTER_19_HIGH 0x215E 270#define SUNI1x10GEXP_REG_MSTAT_COUNTER_19_RESVD 0x215F 271#define SUNI1x10GEXP_REG_MSTAT_COUNTER_20_LOW 0x2160 272#define SUNI1x10GEXP_REG_MSTAT_COUNTER_20_MID 0x2161 273#define SUNI1x10GEXP_REG_MSTAT_COUNTER_20_HIGH 0x2162 274#define SUNI1x10GEXP_REG_MSTAT_COUNTER_20_RESVD 0x2163 275#define SUNI1x10GEXP_REG_MSTAT_COUNTER_21_LOW 0x2164 276#define SUNI1x10GEXP_REG_MSTAT_COUNTER_21_MID 0x2165 277#define SUNI1x10GEXP_REG_MSTAT_COUNTER_21_HIGH 0x2166 278#define SUNI1x10GEXP_REG_MSTAT_COUNTER_21_RESVD 0x2167 279#define SUNI1x10GEXP_REG_MSTAT_COUNTER_22_LOW 0x2168 280#define SUNI1x10GEXP_REG_MSTAT_COUNTER_22_MID 0x2169 281#define SUNI1x10GEXP_REG_MSTAT_COUNTER_22_HIGH 0x216A 282#define SUNI1x10GEXP_REG_MSTAT_COUNTER_22_RESVD 0x216B 283#define SUNI1x10GEXP_REG_MSTAT_COUNTER_23_LOW 0x216C 284#define SUNI1x10GEXP_REG_MSTAT_COUNTER_23_MID 0x216D 285#define SUNI1x10GEXP_REG_MSTAT_COUNTER_23_HIGH 0x216E 286#define SUNI1x10GEXP_REG_MSTAT_COUNTER_23_RESVD 0x216F 287#define SUNI1x10GEXP_REG_MSTAT_COUNTER_24_LOW 0x2170 288#define SUNI1x10GEXP_REG_MSTAT_COUNTER_24_MID 0x2171 289#define SUNI1x10GEXP_REG_MSTAT_COUNTER_24_HIGH 0x2172 290#define SUNI1x10GEXP_REG_MSTAT_COUNTER_24_RESVD 0x2173 291#define SUNI1x10GEXP_REG_MSTAT_COUNTER_25_LOW 0x2174 292#define SUNI1x10GEXP_REG_MSTAT_COUNTER_25_MID 0x2175 293#define SUNI1x10GEXP_REG_MSTAT_COUNTER_25_HIGH 0x2176 294#define SUNI1x10GEXP_REG_MSTAT_COUNTER_25_RESVD 0x2177 295#define SUNI1x10GEXP_REG_MSTAT_COUNTER_26_LOW 0x2178 296#define SUNI1x10GEXP_REG_MSTAT_COUNTER_26_MID 0x2179 297#define SUNI1x10GEXP_REG_MSTAT_COUNTER_26_HIGH 0x217a 298#define SUNI1x10GEXP_REG_MSTAT_COUNTER_26_RESVD 0x217b 299#define SUNI1x10GEXP_REG_MSTAT_COUNTER_27_LOW 0x217c 300#define SUNI1x10GEXP_REG_MSTAT_COUNTER_27_MID 0x217d 301#define SUNI1x10GEXP_REG_MSTAT_COUNTER_27_HIGH 0x217e 302#define SUNI1x10GEXP_REG_MSTAT_COUNTER_27_RESVD 0x217f 303#define SUNI1x10GEXP_REG_MSTAT_COUNTER_28_LOW 0x2180 304#define SUNI1x10GEXP_REG_MSTAT_COUNTER_28_MID 0x2181 305#define SUNI1x10GEXP_REG_MSTAT_COUNTER_28_HIGH 0x2182 306#define SUNI1x10GEXP_REG_MSTAT_COUNTER_28_RESVD 0x2183 307#define SUNI1x10GEXP_REG_MSTAT_COUNTER_29_LOW 0x2184 308#define SUNI1x10GEXP_REG_MSTAT_COUNTER_29_MID 0x2185 309#define SUNI1x10GEXP_REG_MSTAT_COUNTER_29_HIGH 0x2186 310#define SUNI1x10GEXP_REG_MSTAT_COUNTER_29_RESVD 0x2187 311#define SUNI1x10GEXP_REG_MSTAT_COUNTER_30_LOW 0x2188 312#define SUNI1x10GEXP_REG_MSTAT_COUNTER_30_MID 0x2189 313#define SUNI1x10GEXP_REG_MSTAT_COUNTER_30_HIGH 0x218A 314#define SUNI1x10GEXP_REG_MSTAT_COUNTER_30_RESVD 0x218B 315#define SUNI1x10GEXP_REG_MSTAT_COUNTER_31_LOW 0x218C 316#define SUNI1x10GEXP_REG_MSTAT_COUNTER_31_MID 0x218D 317#define SUNI1x10GEXP_REG_MSTAT_COUNTER_31_HIGH 0x218E 318#define SUNI1x10GEXP_REG_MSTAT_COUNTER_31_RESVD 0x218F 319#define SUNI1x10GEXP_REG_MSTAT_COUNTER_32_LOW 0x2190 320#define SUNI1x10GEXP_REG_MSTAT_COUNTER_32_MID 0x2191 321#define SUNI1x10GEXP_REG_MSTAT_COUNTER_32_HIGH 0x2192 322#define SUNI1x10GEXP_REG_MSTAT_COUNTER_32_RESVD 0x2193 323#define SUNI1x10GEXP_REG_MSTAT_COUNTER_33_LOW 0x2194 324#define SUNI1x10GEXP_REG_MSTAT_COUNTER_33_MID 0x2195 325#define SUNI1x10GEXP_REG_MSTAT_COUNTER_33_HIGH 0x2196 326#define SUNI1x10GEXP_REG_MSTAT_COUNTER_33_RESVD 0x2197 327#define SUNI1x10GEXP_REG_MSTAT_COUNTER_34_LOW 0x2198 328#define SUNI1x10GEXP_REG_MSTAT_COUNTER_34_MID 0x2199 329#define SUNI1x10GEXP_REG_MSTAT_COUNTER_34_HIGH 0x219A 330#define SUNI1x10GEXP_REG_MSTAT_COUNTER_34_RESVD 0x219B 331#define SUNI1x10GEXP_REG_MSTAT_COUNTER_35_LOW 0x219C 332#define SUNI1x10GEXP_REG_MSTAT_COUNTER_35_MID 0x219D 333#define SUNI1x10GEXP_REG_MSTAT_COUNTER_35_HIGH 0x219E 334#define SUNI1x10GEXP_REG_MSTAT_COUNTER_35_RESVD 0x219F 335#define SUNI1x10GEXP_REG_MSTAT_COUNTER_36_LOW 0x21A0 336#define SUNI1x10GEXP_REG_MSTAT_COUNTER_36_MID 0x21A1 337#define SUNI1x10GEXP_REG_MSTAT_COUNTER_36_HIGH 0x21A2 338#define SUNI1x10GEXP_REG_MSTAT_COUNTER_36_RESVD 0x21A3 339#define SUNI1x10GEXP_REG_MSTAT_COUNTER_37_LOW 0x21A4 340#define SUNI1x10GEXP_REG_MSTAT_COUNTER_37_MID 0x21A5 341#define SUNI1x10GEXP_REG_MSTAT_COUNTER_37_HIGH 0x21A6 342#define SUNI1x10GEXP_REG_MSTAT_COUNTER_37_RESVD 0x21A7 343#define SUNI1x10GEXP_REG_MSTAT_COUNTER_38_LOW 0x21A8 344#define SUNI1x10GEXP_REG_MSTAT_COUNTER_38_MID 0x21A9 345#define SUNI1x10GEXP_REG_MSTAT_COUNTER_38_HIGH 0x21AA 346#define SUNI1x10GEXP_REG_MSTAT_COUNTER_38_RESVD 0x21AB 347#define SUNI1x10GEXP_REG_MSTAT_COUNTER_39_LOW 0x21AC 348#define SUNI1x10GEXP_REG_MSTAT_COUNTER_39_MID 0x21AD 349#define SUNI1x10GEXP_REG_MSTAT_COUNTER_39_HIGH 0x21AE 350#define SUNI1x10GEXP_REG_MSTAT_COUNTER_39_RESVD 0x21AF 351#define SUNI1x10GEXP_REG_MSTAT_COUNTER_40_LOW 0x21B0 352#define SUNI1x10GEXP_REG_MSTAT_COUNTER_40_MID 0x21B1 353#define SUNI1x10GEXP_REG_MSTAT_COUNTER_40_HIGH 0x21B2 354#define SUNI1x10GEXP_REG_MSTAT_COUNTER_40_RESVD 0x21B3 355#define SUNI1x10GEXP_REG_MSTAT_COUNTER_41_LOW 0x21B4 356#define SUNI1x10GEXP_REG_MSTAT_COUNTER_41_MID 0x21B5 357#define SUNI1x10GEXP_REG_MSTAT_COUNTER_41_HIGH 0x21B6 358#define SUNI1x10GEXP_REG_MSTAT_COUNTER_41_RESVD 0x21B7 359#define SUNI1x10GEXP_REG_MSTAT_COUNTER_42_LOW 0x21B8 360#define SUNI1x10GEXP_REG_MSTAT_COUNTER_42_MID 0x21B9 361#define SUNI1x10GEXP_REG_MSTAT_COUNTER_42_HIGH 0x21BA 362#define SUNI1x10GEXP_REG_MSTAT_COUNTER_42_RESVD 0x21BB 363#define SUNI1x10GEXP_REG_MSTAT_COUNTER_43_LOW 0x21BC 364#define SUNI1x10GEXP_REG_MSTAT_COUNTER_43_MID 0x21BD 365#define SUNI1x10GEXP_REG_MSTAT_COUNTER_43_HIGH 0x21BE 366#define SUNI1x10GEXP_REG_MSTAT_COUNTER_43_RESVD 0x21BF 367#define SUNI1x10GEXP_REG_MSTAT_COUNTER_44_LOW 0x21C0 368#define SUNI1x10GEXP_REG_MSTAT_COUNTER_44_MID 0x21C1 369#define SUNI1x10GEXP_REG_MSTAT_COUNTER_44_HIGH 0x21C2 370#define SUNI1x10GEXP_REG_MSTAT_COUNTER_44_RESVD 0x21C3 371#define SUNI1x10GEXP_REG_MSTAT_COUNTER_45_LOW 0x21C4 372#define SUNI1x10GEXP_REG_MSTAT_COUNTER_45_MID 0x21C5 373#define SUNI1x10GEXP_REG_MSTAT_COUNTER_45_HIGH 0x21C6 374#define SUNI1x10GEXP_REG_MSTAT_COUNTER_45_RESVD 0x21C7 375#define SUNI1x10GEXP_REG_MSTAT_COUNTER_46_LOW 0x21C8 376#define SUNI1x10GEXP_REG_MSTAT_COUNTER_46_MID 0x21C9 377#define SUNI1x10GEXP_REG_MSTAT_COUNTER_46_HIGH 0x21CA 378#define SUNI1x10GEXP_REG_MSTAT_COUNTER_46_RESVD 0x21CB 379#define SUNI1x10GEXP_REG_MSTAT_COUNTER_47_LOW 0x21CC 380#define SUNI1x10GEXP_REG_MSTAT_COUNTER_47_MID 0x21CD 381#define SUNI1x10GEXP_REG_MSTAT_COUNTER_47_HIGH 0x21CE 382#define SUNI1x10GEXP_REG_MSTAT_COUNTER_47_RESVD 0x21CF 383#define SUNI1x10GEXP_REG_MSTAT_COUNTER_48_LOW 0x21D0 384#define SUNI1x10GEXP_REG_MSTAT_COUNTER_48_MID 0x21D1 385#define SUNI1x10GEXP_REG_MSTAT_COUNTER_48_HIGH 0x21D2 386#define SUNI1x10GEXP_REG_MSTAT_COUNTER_48_RESVD 0x21D3 387#define SUNI1x10GEXP_REG_MSTAT_COUNTER_49_LOW 0x21D4 388#define SUNI1x10GEXP_REG_MSTAT_COUNTER_49_MID 0x21D5 389#define SUNI1x10GEXP_REG_MSTAT_COUNTER_49_HIGH 0x21D6 390#define SUNI1x10GEXP_REG_MSTAT_COUNTER_49_RESVD 0x21D7 391#define SUNI1x10GEXP_REG_MSTAT_COUNTER_50_LOW 0x21D8 392#define SUNI1x10GEXP_REG_MSTAT_COUNTER_50_MID 0x21D9 393#define SUNI1x10GEXP_REG_MSTAT_COUNTER_50_HIGH 0x21DA 394#define SUNI1x10GEXP_REG_MSTAT_COUNTER_50_RESVD 0x21DB 395#define SUNI1x10GEXP_REG_MSTAT_COUNTER_51_LOW 0x21DC 396#define SUNI1x10GEXP_REG_MSTAT_COUNTER_51_MID 0x21DD 397#define SUNI1x10GEXP_REG_MSTAT_COUNTER_51_HIGH 0x21DE 398#define SUNI1x10GEXP_REG_MSTAT_COUNTER_51_RESVD 0x21DF 399#define SUNI1x10GEXP_REG_MSTAT_COUNTER_52_LOW 0x21E0 400#define SUNI1x10GEXP_REG_MSTAT_COUNTER_52_MID 0x21E1 401#define SUNI1x10GEXP_REG_MSTAT_COUNTER_52_HIGH 0x21E2 402#define SUNI1x10GEXP_REG_MSTAT_COUNTER_52_RESVD 0x21E3 403#define SUNI1x10GEXP_REG_MSTAT_COUNTER_53_LOW 0x21E4 404#define SUNI1x10GEXP_REG_MSTAT_COUNTER_53_MID 0x21E5 405#define SUNI1x10GEXP_REG_MSTAT_COUNTER_53_HIGH 0x21E6 406#define SUNI1x10GEXP_CNTR_MAC_ETHERNET_NUM 51 407 408#define SUNI1x10GEXP_REG_IFLX_GLOBAL_CONFIG 0x2200 409#define SUNI1x10GEXP_REG_IFLX_CHANNEL_PROVISION 0x2201 410#define SUNI1x10GEXP_REG_IFLX_FIFO_OVERFLOW_ENABLE 0x2209 411#define SUNI1x10GEXP_REG_IFLX_FIFO_OVERFLOW_INTERRUPT 0x220A 412#define SUNI1x10GEXP_REG_IFLX_INDIR_CHANNEL_ADDRESS 0x220D 413#define SUNI1x10GEXP_REG_IFLX_INDIR_LOGICAL_FIFO_LOW_LIMIT_PROVISION 0x220E 414#define SUNI1x10GEXP_REG_IFLX_INDIR_LOGICAL_FIFO_HIGH_LIMIT 0x220F 415#define SUNI1x10GEXP_REG_IFLX_INDIR_FULL_ALMOST_FULL_STATUS_LIMIT 0x2210 416#define SUNI1x10GEXP_REG_IFLX_INDIR_EMPTY_ALMOST_EMPTY_STATUS_LIMIT 0x2211 417 418#define SUNI1x10GEXP_REG_PL4MOS_CONFIG 0x2240 419#define SUNI1x10GEXP_REG_PL4MOS_MASK 0x2241 420#define SUNI1x10GEXP_REG_PL4MOS_FAIRNESS_MASKING 0x2242 421#define SUNI1x10GEXP_REG_PL4MOS_MAXBURST1 0x2243 422#define SUNI1x10GEXP_REG_PL4MOS_MAXBURST2 0x2244 423#define SUNI1x10GEXP_REG_PL4MOS_TRANSFER_SIZE 0x2245 424 425#define SUNI1x10GEXP_REG_PL4ODP_CONFIG 0x2280 426#define SUNI1x10GEXP_REG_PL4ODP_INTERRUPT_MASK 0x2282 427#define SUNI1x10GEXP_REG_PL4ODP_INTERRUPT 0x2283 428#define SUNI1x10GEXP_REG_PL4ODP_CONFIG_MAX_T 0x2284 429 430#define SUNI1x10GEXP_REG_PL4IO_LOCK_DETECT_STATUS 0x2300 431#define SUNI1x10GEXP_REG_PL4IO_LOCK_DETECT_CHANGE 0x2301 432#define SUNI1x10GEXP_REG_PL4IO_LOCK_DETECT_MASK 0x2302 433#define SUNI1x10GEXP_REG_PL4IO_LOCK_DETECT_LIMITS 0x2303 434#define SUNI1x10GEXP_REG_PL4IO_CALENDAR_REPETITIONS 0x2304 435#define SUNI1x10GEXP_REG_PL4IO_CONFIG 0x2305 436 437#define SUNI1x10GEXP_REG_TXXG_CONFIG_1 0x3040 438#define SUNI1x10GEXP_REG_TXXG_CONFIG_2 0x3041 439#define SUNI1x10GEXP_REG_TXXG_CONFIG_3 0x3042 440#define SUNI1x10GEXP_REG_TXXG_INTERRUPT 0x3043 441#define SUNI1x10GEXP_REG_TXXG_STATUS 0x3044 442#define SUNI1x10GEXP_REG_TXXG_MAX_FRAME_SIZE 0x3045 443#define SUNI1x10GEXP_REG_TXXG_MIN_FRAME_SIZE 0x3046 444#define SUNI1x10GEXP_REG_TXXG_SA_15_0 0x3047 445#define SUNI1x10GEXP_REG_TXXG_SA_31_16 0x3048 446#define SUNI1x10GEXP_REG_TXXG_SA_47_32 0x3049 447#define SUNI1x10GEXP_REG_TXXG_PAUSE_TIMER 0x304D 448#define SUNI1x10GEXP_REG_TXXG_PAUSE_TIMER_INTERVAL 0x304E 449#define SUNI1x10GEXP_REG_TXXG_FILTER_ERROR_COUNTER 0x3051 450#define SUNI1x10GEXP_REG_TXXG_PAUSE_QUANTUM_CONFIG 0x3052 451 452#define SUNI1x10GEXP_REG_XTEF_CTRL 0x3080 453#define SUNI1x10GEXP_REG_XTEF_INTERRUPT_STATUS 0x3084 454#define SUNI1x10GEXP_REG_XTEF_INTERRUPT_ENABLE 0x3085 455#define SUNI1x10GEXP_REG_XTEF_VISIBILITY 0x3086 456 457#define SUNI1x10GEXP_REG_TXOAM_OAM_CONFIG 0x30C0 458#define SUNI1x10GEXP_REG_TXOAM_MINI_RATE_CONFIG 0x30C1 459#define SUNI1x10GEXP_REG_TXOAM_MINI_GAP_FIFO_CONFIG 0x30C2 460#define SUNI1x10GEXP_REG_TXOAM_P1P2_STATIC_VALUES 0x30C3 461#define SUNI1x10GEXP_REG_TXOAM_P3P4_STATIC_VALUES 0x30C4 462#define SUNI1x10GEXP_REG_TXOAM_P5P6_STATIC_VALUES 0x30C5 463#define SUNI1x10GEXP_REG_TXOAM_INTERRUPT_ENABLE 0x30C6 464#define SUNI1x10GEXP_REG_TXOAM_INTERRUPT_STATUS 0x30C7 465#define SUNI1x10GEXP_REG_TXOAM_INSERT_COUNT_LSB 0x30C8 466#define SUNI1x10GEXP_REG_TXOAM_INSERT_COUNT_MSB 0x30C9 467#define SUNI1x10GEXP_REG_TXOAM_OAM_MINI_COUNT_LSB 0x30CA 468#define SUNI1x10GEXP_REG_TXOAM_OAM_MINI_COUNT_MSB 0x30CB 469#define SUNI1x10GEXP_REG_TXOAM_P1P2_MINI_MASK 0x30CC 470#define SUNI1x10GEXP_REG_TXOAM_P3P4_MINI_MASK 0x30CD 471#define SUNI1x10GEXP_REG_TXOAM_P5P6_MINI_MASK 0x30CE 472#define SUNI1x10GEXP_REG_TXOAM_COSET 0x30CF 473#define SUNI1x10GEXP_REG_TXOAM_EMPTY_FIFO_INS_OP_CNT_LSB 0x30D0 474#define SUNI1x10GEXP_REG_TXOAM_EMPTY_FIFO_INS_OP_CNT_MSB 0x30D1 475#define SUNI1x10GEXP_REG_TXOAM_STATIC_VALUE_MINI_COUNT_LSB 0x30D2 476#define SUNI1x10GEXP_REG_TXOAM_STATIC_VALUE_MINI_COUNT_MSB 0x30D3 477 478 479#define SUNI1x10GEXP_REG_EFLX_GLOBAL_CONFIG 0x3200 480#define SUNI1x10GEXP_REG_EFLX_ERCU_GLOBAL_STATUS 0x3201 481#define SUNI1x10GEXP_REG_EFLX_INDIR_CHANNEL_ADDRESS 0x3202 482#define SUNI1x10GEXP_REG_EFLX_INDIR_FIFO_LOW_LIMIT 0x3203 483#define SUNI1x10GEXP_REG_EFLX_INDIR_FIFO_HIGH_LIMIT 0x3204 484#define SUNI1x10GEXP_REG_EFLX_INDIR_FULL_ALMOST_FULL_STATUS_AND_LIMIT 0x3205 485#define SUNI1x10GEXP_REG_EFLX_INDIR_EMPTY_ALMOST_EMPTY_STATUS_AND_LIMIT 0x3206 486#define SUNI1x10GEXP_REG_EFLX_INDIR_FIFO_CUT_THROUGH_THRESHOLD 0x3207 487#define SUNI1x10GEXP_REG_EFLX_FIFO_OVERFLOW_ERROR_ENABLE 0x320C 488#define SUNI1x10GEXP_REG_EFLX_FIFO_OVERFLOW_ERROR_INDICATION 0x320D 489#define SUNI1x10GEXP_REG_EFLX_CHANNEL_PROVISION 0x3210 490 491#define SUNI1x10GEXP_REG_PL4IDU_CONFIG 0x3280 492#define SUNI1x10GEXP_REG_PL4IDU_INTERRUPT_MASK 0x3282 493#define SUNI1x10GEXP_REG_PL4IDU_INTERRUPT 0x3283 494 495 496/*----------------------------------------*/ 497#define SUNI1x10GEXP_REG_MAX_OFFSET 0x3480 498 499/******************************************************************************/ 500/* -- End register offset definitions -- */ 501/******************************************************************************/ 502 503/******************************************************************************/ 504/** SUNI-1x10GE-XP REGISTER BIT MASKS **/ 505/******************************************************************************/ 506 507#define SUNI1x10GEXP_BITMSK_BITS_1 0x00001 508#define SUNI1x10GEXP_BITMSK_BITS_2 0x00003 509#define SUNI1x10GEXP_BITMSK_BITS_3 0x00007 510#define SUNI1x10GEXP_BITMSK_BITS_4 0x0000f 511#define SUNI1x10GEXP_BITMSK_BITS_5 0x0001f 512#define SUNI1x10GEXP_BITMSK_BITS_6 0x0003f 513#define SUNI1x10GEXP_BITMSK_BITS_7 0x0007f 514#define SUNI1x10GEXP_BITMSK_BITS_8 0x000ff 515#define SUNI1x10GEXP_BITMSK_BITS_9 0x001ff 516#define SUNI1x10GEXP_BITMSK_BITS_10 0x003ff 517#define SUNI1x10GEXP_BITMSK_BITS_11 0x007ff 518#define SUNI1x10GEXP_BITMSK_BITS_12 0x00fff 519#define SUNI1x10GEXP_BITMSK_BITS_13 0x01fff 520#define SUNI1x10GEXP_BITMSK_BITS_14 0x03fff 521#define SUNI1x10GEXP_BITMSK_BITS_15 0x07fff 522#define SUNI1x10GEXP_BITMSK_BITS_16 0x0ffff 523 524#define mSUNI1x10GEXP_CLR_MSBITS_1(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_15) 525#define mSUNI1x10GEXP_CLR_MSBITS_2(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_14) 526#define mSUNI1x10GEXP_CLR_MSBITS_3(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_13) 527#define mSUNI1x10GEXP_CLR_MSBITS_4(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_12) 528#define mSUNI1x10GEXP_CLR_MSBITS_5(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_11) 529#define mSUNI1x10GEXP_CLR_MSBITS_6(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_10) 530#define mSUNI1x10GEXP_CLR_MSBITS_7(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_9) 531#define mSUNI1x10GEXP_CLR_MSBITS_8(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_8) 532#define mSUNI1x10GEXP_CLR_MSBITS_9(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_7) 533#define mSUNI1x10GEXP_CLR_MSBITS_10(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_6) 534#define mSUNI1x10GEXP_CLR_MSBITS_11(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_5) 535#define mSUNI1x10GEXP_CLR_MSBITS_12(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_4) 536#define mSUNI1x10GEXP_CLR_MSBITS_13(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_3) 537#define mSUNI1x10GEXP_CLR_MSBITS_14(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_2) 538#define mSUNI1x10GEXP_CLR_MSBITS_15(v) ((v) & SUNI1x10GEXP_BITMSK_BITS_1) 539 540#define mSUNI1x10GEXP_GET_BIT(val, bitMsk) (((val)&(bitMsk)) ? 1:0) 541 542 543 544/*---------------------------------------------------------------------------- 545 * Register 0x0001: S/UNI-1x10GE-XP Product Revision 546 * Bit 3-0 REVISION 547 *----------------------------------------------------------------------------*/ 548#define SUNI1x10GEXP_BITMSK_REVISION 0x000F 549 550/*---------------------------------------------------------------------------- 551 * Register 0x0002: S/UNI-1x10GE-XP Configuration and Reset Control 552 * Bit 2 XAUI_ARESETB 553 * Bit 1 PL4_ARESETB 554 * Bit 0 DRESETB 555 *----------------------------------------------------------------------------*/ 556#define SUNI1x10GEXP_BITMSK_XAUI_ARESET 0x0004 557#define SUNI1x10GEXP_BITMSK_PL4_ARESET 0x0002 558#define SUNI1x10GEXP_BITMSK_DRESETB 0x0001 559 560/*---------------------------------------------------------------------------- 561 * Register 0x0003: S/UNI-1x10GE-XP Loop Back and Miscellaneous Control 562 * Bit 11 PL4IO_OUTCLKSEL 563 * Bit 9 SYSPCSLB 564 * Bit 8 LINEPCSLB 565 * Bit 7 MSTAT_BYPASS 566 * Bit 6 RXXG_BYPASS 567 * Bit 5 TXXG_BYPASS 568 * Bit 4 SOP_PAD_EN 569 * Bit 1 LOS_INV 570 * Bit 0 OVERRIDE_LOS 571 *----------------------------------------------------------------------------*/ 572#define SUNI1x10GEXP_BITMSK_PL4IO_OUTCLKSEL 0x0800 573#define SUNI1x10GEXP_BITMSK_SYSPCSLB 0x0200 574#define SUNI1x10GEXP_BITMSK_LINEPCSLB 0x0100 575#define SUNI1x10GEXP_BITMSK_MSTAT_BYPASS 0x0080 576#define SUNI1x10GEXP_BITMSK_RXXG_BYPASS 0x0040 577#define SUNI1x10GEXP_BITMSK_TXXG_BYPASS 0x0020 578#define SUNI1x10GEXP_BITMSK_SOP_PAD_EN 0x0010 579#define SUNI1x10GEXP_BITMSK_LOS_INV 0x0002 580#define SUNI1x10GEXP_BITMSK_OVERRIDE_LOS 0x0001 581 582/*---------------------------------------------------------------------------- 583 * Register 0x0004: S/UNI-1x10GE-XP Device Status 584 * Bit 9 TOP_SXRA_EXPIRED 585 * Bit 8 TOP_MDIO_BUSY 586 * Bit 7 TOP_DTRB 587 * Bit 6 TOP_EXPIRED 588 * Bit 5 TOP_PAUSED 589 * Bit 4 TOP_PL4_ID_DOOL 590 * Bit 3 TOP_PL4_IS_DOOL 591 * Bit 2 TOP_PL4_ID_ROOL 592 * Bit 1 TOP_PL4_IS_ROOL 593 * Bit 0 TOP_PL4_OUT_ROOL 594 *----------------------------------------------------------------------------*/ 595#define SUNI1x10GEXP_BITMSK_TOP_SXRA_EXPIRED 0x0200 596#define SUNI1x10GEXP_BITMSK_TOP_MDIO_BUSY 0x0100 597#define SUNI1x10GEXP_BITMSK_TOP_DTRB 0x0080 598#define SUNI1x10GEXP_BITMSK_TOP_EXPIRED 0x0040 599#define SUNI1x10GEXP_BITMSK_TOP_PAUSED 0x0020 600#define SUNI1x10GEXP_BITMSK_TOP_PL4_ID_DOOL 0x0010 601#define SUNI1x10GEXP_BITMSK_TOP_PL4_IS_DOOL 0x0008 602#define SUNI1x10GEXP_BITMSK_TOP_PL4_ID_ROOL 0x0004 603#define SUNI1x10GEXP_BITMSK_TOP_PL4_IS_ROOL 0x0002 604#define SUNI1x10GEXP_BITMSK_TOP_PL4_OUT_ROOL 0x0001 605 606/*---------------------------------------------------------------------------- 607 * Register 0x0005: Global Performance Update and Clock Monitors 608 * Bit 15 TIP 609 * Bit 8 XAUI_REF_CLKA 610 * Bit 7 RXLANE3CLKA 611 * Bit 6 RXLANE2CLKA 612 * Bit 5 RXLANE1CLKA 613 * Bit 4 RXLANE0CLKA 614 * Bit 3 CSUCLKA 615 * Bit 2 TDCLKA 616 * Bit 1 RSCLKA 617 * Bit 0 RDCLKA 618 *----------------------------------------------------------------------------*/ 619#define SUNI1x10GEXP_BITMSK_TIP 0x8000 620#define SUNI1x10GEXP_BITMSK_XAUI_REF_CLKA 0x0100 621#define SUNI1x10GEXP_BITMSK_RXLANE3CLKA 0x0080 622#define SUNI1x10GEXP_BITMSK_RXLANE2CLKA 0x0040 623#define SUNI1x10GEXP_BITMSK_RXLANE1CLKA 0x0020 624#define SUNI1x10GEXP_BITMSK_RXLANE0CLKA 0x0010 625#define SUNI1x10GEXP_BITMSK_CSUCLKA 0x0008 626#define SUNI1x10GEXP_BITMSK_TDCLKA 0x0004 627#define SUNI1x10GEXP_BITMSK_RSCLKA 0x0002 628#define SUNI1x10GEXP_BITMSK_RDCLKA 0x0001 629 630/*---------------------------------------------------------------------------- 631 * Register 0x0006: MDIO Command 632 * Bit 4 MDIO_RDINC 633 * Bit 3 MDIO_RSTAT 634 * Bit 2 MDIO_LCTLD 635 * Bit 1 MDIO_LCTLA 636 * Bit 0 MDIO_SPRE 637 *----------------------------------------------------------------------------*/ 638#define SUNI1x10GEXP_BITMSK_MDIO_RDINC 0x0010 639#define SUNI1x10GEXP_BITMSK_MDIO_RSTAT 0x0008 640#define SUNI1x10GEXP_BITMSK_MDIO_LCTLD 0x0004 641#define SUNI1x10GEXP_BITMSK_MDIO_LCTLA 0x0002 642#define SUNI1x10GEXP_BITMSK_MDIO_SPRE 0x0001 643 644/*---------------------------------------------------------------------------- 645 * Register 0x0007: MDIO Interrupt Enable 646 * Bit 0 MDIO_BUSY_EN 647 *----------------------------------------------------------------------------*/ 648#define SUNI1x10GEXP_BITMSK_MDIO_BUSY_EN 0x0001 649 650/*---------------------------------------------------------------------------- 651 * Register 0x0008: MDIO Interrupt Status 652 * Bit 0 MDIO_BUSYI 653 *----------------------------------------------------------------------------*/ 654#define SUNI1x10GEXP_BITMSK_MDIO_BUSYI 0x0001 655 656/*---------------------------------------------------------------------------- 657 * Register 0x0009: MMD PHY Address 658 * Bit 12-8 MDIO_DEVADR 659 * Bit 4-0 MDIO_PRTADR 660 *----------------------------------------------------------------------------*/ 661#define SUNI1x10GEXP_BITMSK_MDIO_DEVADR 0x1F00 662#define SUNI1x10GEXP_BITOFF_MDIO_DEVADR 8 663#define SUNI1x10GEXP_BITMSK_MDIO_PRTADR 0x001F 664#define SUNI1x10GEXP_BITOFF_MDIO_PRTADR 0 665 666/*---------------------------------------------------------------------------- 667 * Register 0x000C: OAM Interface Control 668 * Bit 6 MDO_OD_ENB 669 * Bit 5 MDI_INV 670 * Bit 4 MDI_SEL 671 * Bit 3 RXOAMEN 672 * Bit 2 RXOAMCLKEN 673 * Bit 1 TXOAMEN 674 * Bit 0 TXOAMCLKEN 675 *----------------------------------------------------------------------------*/ 676#define SUNI1x10GEXP_BITMSK_MDO_OD_ENB 0x0040 677#define SUNI1x10GEXP_BITMSK_MDI_INV 0x0020 678#define SUNI1x10GEXP_BITMSK_MDI_SEL 0x0010 679#define SUNI1x10GEXP_BITMSK_RXOAMEN 0x0008 680#define SUNI1x10GEXP_BITMSK_RXOAMCLKEN 0x0004 681#define SUNI1x10GEXP_BITMSK_TXOAMEN 0x0002 682#define SUNI1x10GEXP_BITMSK_TXOAMCLKEN 0x0001 683 684/*---------------------------------------------------------------------------- 685 * Register 0x000D: S/UNI-1x10GE-XP Master Interrupt Status 686 * Bit 15 TOP_PL4IO_INT 687 * Bit 14 TOP_IRAM_INT 688 * Bit 13 TOP_ERAM_INT 689 * Bit 12 TOP_XAUI_INT 690 * Bit 11 TOP_MSTAT_INT 691 * Bit 10 TOP_RXXG_INT 692 * Bit 9 TOP_TXXG_INT 693 * Bit 8 TOP_XRF_INT 694 * Bit 7 TOP_XTEF_INT 695 * Bit 6 TOP_MDIO_BUSY_INT 696 * Bit 5 TOP_RXOAM_INT 697 * Bit 4 TOP_TXOAM_INT 698 * Bit 3 TOP_IFLX_INT 699 * Bit 2 TOP_EFLX_INT 700 * Bit 1 TOP_PL4ODP_INT 701 * Bit 0 TOP_PL4IDU_INT 702 *----------------------------------------------------------------------------*/ 703#define SUNI1x10GEXP_BITMSK_TOP_PL4IO_INT 0x8000 704#define SUNI1x10GEXP_BITMSK_TOP_IRAM_INT 0x4000 705#define SUNI1x10GEXP_BITMSK_TOP_ERAM_INT 0x2000 706#define SUNI1x10GEXP_BITMSK_TOP_XAUI_INT 0x1000 707#define SUNI1x10GEXP_BITMSK_TOP_MSTAT_INT 0x0800 708#define SUNI1x10GEXP_BITMSK_TOP_RXXG_INT 0x0400 709#define SUNI1x10GEXP_BITMSK_TOP_TXXG_INT 0x0200 710#define SUNI1x10GEXP_BITMSK_TOP_XRF_INT 0x0100 711#define SUNI1x10GEXP_BITMSK_TOP_XTEF_INT 0x0080 712#define SUNI1x10GEXP_BITMSK_TOP_MDIO_BUSY_INT 0x0040 713#define SUNI1x10GEXP_BITMSK_TOP_RXOAM_INT 0x0020 714#define SUNI1x10GEXP_BITMSK_TOP_TXOAM_INT 0x0010 715#define SUNI1x10GEXP_BITMSK_TOP_IFLX_INT 0x0008 716#define SUNI1x10GEXP_BITMSK_TOP_EFLX_INT 0x0004 717#define SUNI1x10GEXP_BITMSK_TOP_PL4ODP_INT 0x0002 718#define SUNI1x10GEXP_BITMSK_TOP_PL4IDU_INT 0x0001 719 720/*---------------------------------------------------------------------------- 721 * Register 0x000E:PM3393 Global interrupt enable 722 * Bit 15 TOP_INTE 723 *----------------------------------------------------------------------------*/ 724#define SUNI1x10GEXP_BITMSK_TOP_INTE 0x8000 725 726/*---------------------------------------------------------------------------- 727 * Register 0x0010: XTEF Miscellaneous Control 728 * Bit 7 RF_VAL 729 * Bit 6 RF_OVERRIDE 730 * Bit 5 LF_VAL 731 * Bit 4 LF_OVERRIDE 732 *----------------------------------------------------------------------------*/ 733#define SUNI1x10GEXP_BITMSK_RF_VAL 0x0080 734#define SUNI1x10GEXP_BITMSK_RF_OVERRIDE 0x0040 735#define SUNI1x10GEXP_BITMSK_LF_VAL 0x0020 736#define SUNI1x10GEXP_BITMSK_LF_OVERRIDE 0x0010 737#define SUNI1x10GEXP_BITMSK_LFRF_OVERRIDE_VAL 0x00F0 738 739/*---------------------------------------------------------------------------- 740 * Register 0x0011: XRF Miscellaneous Control 741 * Bit 6-4 EN_IDLE_REP 742 *----------------------------------------------------------------------------*/ 743#define SUNI1x10GEXP_BITMSK_EN_IDLE_REP 0x0070 744 745/*---------------------------------------------------------------------------- 746 * Register 0x0100: SERDES 3125 Configuration Register 1 747 * Bit 10 RXEQB_3 748 * Bit 8 RXEQB_2 749 * Bit 6 RXEQB_1 750 * Bit 4 RXEQB_0 751 *----------------------------------------------------------------------------*/ 752#define SUNI1x10GEXP_BITMSK_RXEQB 0x0FF0 753#define SUNI1x10GEXP_BITOFF_RXEQB_3 10 754#define SUNI1x10GEXP_BITOFF_RXEQB_2 8 755#define SUNI1x10GEXP_BITOFF_RXEQB_1 6 756#define SUNI1x10GEXP_BITOFF_RXEQB_0 4 757 758/*---------------------------------------------------------------------------- 759 * Register 0x0101: SERDES 3125 Configuration Register 2 760 * Bit 12 YSEL 761 * Bit 7 PRE_EMPH_3 762 * Bit 6 PRE_EMPH_2 763 * Bit 5 PRE_EMPH_1 764 * Bit 4 PRE_EMPH_0 765 *----------------------------------------------------------------------------*/ 766#define SUNI1x10GEXP_BITMSK_YSEL 0x1000 767#define SUNI1x10GEXP_BITMSK_PRE_EMPH 0x00F0 768#define SUNI1x10GEXP_BITMSK_PRE_EMPH_3 0x0080 769#define SUNI1x10GEXP_BITMSK_PRE_EMPH_2 0x0040 770#define SUNI1x10GEXP_BITMSK_PRE_EMPH_1 0x0020 771#define SUNI1x10GEXP_BITMSK_PRE_EMPH_0 0x0010 772 773/*---------------------------------------------------------------------------- 774 * Register 0x0102: SERDES 3125 Interrupt Enable Register 775 * Bit 3 LASIE 776 * Bit 2 SPLL_RAE 777 * Bit 1 MPLL_RAE 778 * Bit 0 PLL_LOCKE 779 *----------------------------------------------------------------------------*/ 780#define SUNI1x10GEXP_BITMSK_LASIE 0x0008 781#define SUNI1x10GEXP_BITMSK_SPLL_RAE 0x0004 782#define SUNI1x10GEXP_BITMSK_MPLL_RAE 0x0002 783#define SUNI1x10GEXP_BITMSK_PLL_LOCKE 0x0001 784 785/*---------------------------------------------------------------------------- 786 * Register 0x0103: SERDES 3125 Interrupt Visibility Register 787 * Bit 3 LASIV 788 * Bit 2 SPLL_RAV 789 * Bit 1 MPLL_RAV 790 * Bit 0 PLL_LOCKV 791 *----------------------------------------------------------------------------*/ 792#define SUNI1x10GEXP_BITMSK_LASIV 0x0008 793#define SUNI1x10GEXP_BITMSK_SPLL_RAV 0x0004 794#define SUNI1x10GEXP_BITMSK_MPLL_RAV 0x0002 795#define SUNI1x10GEXP_BITMSK_PLL_LOCKV 0x0001 796 797/*---------------------------------------------------------------------------- 798 * Register 0x0104: SERDES 3125 Interrupt Status Register 799 * Bit 3 LASII 800 * Bit 2 SPLL_RAI 801 * Bit 1 MPLL_RAI 802 * Bit 0 PLL_LOCKI 803 *----------------------------------------------------------------------------*/ 804#define SUNI1x10GEXP_BITMSK_LASII 0x0008 805#define SUNI1x10GEXP_BITMSK_SPLL_RAI 0x0004 806#define SUNI1x10GEXP_BITMSK_MPLL_RAI 0x0002 807#define SUNI1x10GEXP_BITMSK_PLL_LOCKI 0x0001 808 809/*---------------------------------------------------------------------------- 810 * Register 0x0107: SERDES 3125 Test Configuration 811 * Bit 12 DUALTX 812 * Bit 10 HC_1 813 * Bit 9 HC_0 814 *----------------------------------------------------------------------------*/ 815#define SUNI1x10GEXP_BITMSK_DUALTX 0x1000 816#define SUNI1x10GEXP_BITMSK_HC 0x0600 817#define SUNI1x10GEXP_BITOFF_HC_0 9 818 819/*---------------------------------------------------------------------------- 820 * Register 0x2040: RXXG Configuration 1 821 * Bit 15 RXXG_RXEN 822 * Bit 14 RXXG_ROCF 823 * Bit 13 RXXG_PAD_STRIP 824 * Bit 10 RXXG_PUREP 825 * Bit 9 RXXG_LONGP 826 * Bit 8 RXXG_PARF 827 * Bit 7 RXXG_FLCHK 828 * Bit 5 RXXG_PASS_CTRL 829 * Bit 3 RXXG_CRC_STRIP 830 * Bit 2-0 RXXG_MIFG 831 *----------------------------------------------------------------------------*/ 832#define SUNI1x10GEXP_BITMSK_RXXG_RXEN 0x8000 833#define SUNI1x10GEXP_BITMSK_RXXG_ROCF 0x4000 834#define SUNI1x10GEXP_BITMSK_RXXG_PAD_STRIP 0x2000 835#define SUNI1x10GEXP_BITMSK_RXXG_PUREP 0x0400 836#define SUNI1x10GEXP_BITMSK_RXXG_LONGP 0x0200 837#define SUNI1x10GEXP_BITMSK_RXXG_PARF 0x0100 838#define SUNI1x10GEXP_BITMSK_RXXG_FLCHK 0x0080 839#define SUNI1x10GEXP_BITMSK_RXXG_PASS_CTRL 0x0020 840#define SUNI1x10GEXP_BITMSK_RXXG_CRC_STRIP 0x0008 841 842/*---------------------------------------------------------------------------- 843 * Register 0x02041: RXXG Configuration 2 844 * Bit 7-0 RXXG_HDRSIZE 845 *----------------------------------------------------------------------------*/ 846#define SUNI1x10GEXP_BITMSK_RXXG_HDRSIZE 0x00FF 847 848/*---------------------------------------------------------------------------- 849 * Register 0x2042: RXXG Configuration 3 850 * Bit 15 RXXG_MIN_LERRE 851 * Bit 14 RXXG_MAX_LERRE 852 * Bit 12 RXXG_LINE_ERRE 853 * Bit 10 RXXG_RX_OVRE 854 * Bit 9 RXXG_ADR_FILTERE 855 * Bit 8 RXXG_ERR_FILTERE 856 * Bit 5 RXXG_PRMB_ERRE 857 *----------------------------------------------------------------------------*/ 858#define SUNI1x10GEXP_BITMSK_RXXG_MIN_LERRE 0x8000 859#define SUNI1x10GEXP_BITMSK_RXXG_MAX_LERRE 0x4000 860#define SUNI1x10GEXP_BITMSK_RXXG_LINE_ERRE 0x1000 861#define SUNI1x10GEXP_BITMSK_RXXG_RX_OVRE 0x0400 862#define SUNI1x10GEXP_BITMSK_RXXG_ADR_FILTERE 0x0200 863#define SUNI1x10GEXP_BITMSK_RXXG_ERR_FILTERRE 0x0100 864#define SUNI1x10GEXP_BITMSK_RXXG_PRMB_ERRE 0x0020 865 866/*---------------------------------------------------------------------------- 867 * Register 0x2043: RXXG Interrupt 868 * Bit 15 RXXG_MIN_LERRI 869 * Bit 14 RXXG_MAX_LERRI 870 * Bit 12 RXXG_LINE_ERRI 871 * Bit 10 RXXG_RX_OVRI 872 * Bit 9 RXXG_ADR_FILTERI 873 * Bit 8 RXXG_ERR_FILTERI 874 * Bit 5 RXXG_PRMB_ERRE 875 *----------------------------------------------------------------------------*/ 876#define SUNI1x10GEXP_BITMSK_RXXG_MIN_LERRI 0x8000 877#define SUNI1x10GEXP_BITMSK_RXXG_MAX_LERRI 0x4000 878#define SUNI1x10GEXP_BITMSK_RXXG_LINE_ERRI 0x1000 879#define SUNI1x10GEXP_BITMSK_RXXG_RX_OVRI 0x0400 880#define SUNI1x10GEXP_BITMSK_RXXG_ADR_FILTERI 0x0200 881#define SUNI1x10GEXP_BITMSK_RXXG_ERR_FILTERI 0x0100 882#define SUNI1x10GEXP_BITMSK_RXXG_PRMB_ERRE 0x0020 883 884/*---------------------------------------------------------------------------- 885 * Register 0x2049: RXXG Receive FIFO Threshold 886 * Bit 2-0 RXXG_CUT_THRU 887 *----------------------------------------------------------------------------*/ 888#define SUNI1x10GEXP_BITMSK_RXXG_CUT_THRU 0x0007 889#define SUNI1x10GEXP_BITOFF_RXXG_CUT_THRU 0 890 891/*---------------------------------------------------------------------------- 892 * Register 0x2062H - 0x2069: RXXG Exact Match VID 893 * Bit 11-0 RXXG_VID_MATCH 894 *----------------------------------------------------------------------------*/ 895#define SUNI1x10GEXP_BITMSK_RXXG_VID_MATCH 0x0FFF 896#define SUNI1x10GEXP_BITOFF_RXXG_VID_MATCH 0 897 898/*---------------------------------------------------------------------------- 899 * Register 0x206EH - 0x206F: RXXG Address Filter Control 900 * Bit 3 RXXG_FORWARD_ENABLE 901 * Bit 2 RXXG_VLAN_ENABLE 902 * Bit 1 RXXG_SRC_ADDR 903 * Bit 0 RXXG_MATCH_ENABLE 904 *----------------------------------------------------------------------------*/ 905#define SUNI1x10GEXP_BITMSK_RXXG_FORWARD_ENABLE 0x0008 906#define SUNI1x10GEXP_BITMSK_RXXG_VLAN_ENABLE 0x0004 907#define SUNI1x10GEXP_BITMSK_RXXG_SRC_ADDR 0x0002 908#define SUNI1x10GEXP_BITMSK_RXXG_MATCH_ENABLE 0x0001 909 910/*---------------------------------------------------------------------------- 911 * Register 0x2070: RXXG Address Filter Control 2 912 * Bit 1 RXXG_PMODE 913 * Bit 0 RXXG_MHASH_EN 914 *----------------------------------------------------------------------------*/ 915#define SUNI1x10GEXP_BITMSK_RXXG_PMODE 0x0002 916#define SUNI1x10GEXP_BITMSK_RXXG_MHASH_EN 0x0001 917 918/*---------------------------------------------------------------------------- 919 * Register 0x2081: XRF Control Register 2 920 * Bit 6 EN_PKT_GEN 921 * Bit 4-2 PATT 922 *----------------------------------------------------------------------------*/ 923#define SUNI1x10GEXP_BITMSK_EN_PKT_GEN 0x0040 924#define SUNI1x10GEXP_BITMSK_PATT 0x001C 925#define SUNI1x10GEXP_BITOFF_PATT 2 926 927/*---------------------------------------------------------------------------- 928 * Register 0x2088: XRF Interrupt Enable 929 * Bit 12-9 LANE_HICERE 930 * Bit 8-5 HS_SD_LANEE 931 * Bit 4 ALIGN_STATUS_ERRE 932 * Bit 3-0 LANE_SYNC_STAT_ERRE 933 *----------------------------------------------------------------------------*/ 934#define SUNI1x10GEXP_BITMSK_LANE_HICERE 0x1E00 935#define SUNI1x10GEXP_BITOFF_LANE_HICERE 9 936#define SUNI1x10GEXP_BITMSK_HS_SD_LANEE 0x01E0 937#define SUNI1x10GEXP_BITOFF_HS_SD_LANEE 5 938#define SUNI1x10GEXP_BITMSK_ALIGN_STATUS_ERRE 0x0010 939#define SUNI1x10GEXP_BITMSK_LANE_SYNC_STAT_ERRE 0x000F 940#define SUNI1x10GEXP_BITOFF_LANE_SYNC_STAT_ERRE 0 941 942/*---------------------------------------------------------------------------- 943 * Register 0x2089: XRF Interrupt Status 944 * Bit 12-9 LANE_HICERI 945 * Bit 8-5 HS_SD_LANEI 946 * Bit 4 ALIGN_STATUS_ERRI 947 * Bit 3-0 LANE_SYNC_STAT_ERRI 948 *----------------------------------------------------------------------------*/ 949#define SUNI1x10GEXP_BITMSK_LANE_HICERI 0x1E00 950#define SUNI1x10GEXP_BITOFF_LANE_HICERI 9 951#define SUNI1x10GEXP_BITMSK_HS_SD_LANEI 0x01E0 952#define SUNI1x10GEXP_BITOFF_HS_SD_LANEI 5 953#define SUNI1x10GEXP_BITMSK_ALIGN_STATUS_ERRI 0x0010 954#define SUNI1x10GEXP_BITMSK_LANE_SYNC_STAT_ERRI 0x000F 955#define SUNI1x10GEXP_BITOFF_LANE_SYNC_STAT_ERRI 0 956 957/*---------------------------------------------------------------------------- 958 * Register 0x208A: XRF Error Status 959 * Bit 8-5 HS_SD_LANE 960 * Bit 4 ALIGN_STATUS_ERR 961 * Bit 3-0 LANE_SYNC_STAT_ERR 962 *----------------------------------------------------------------------------*/ 963#define SUNI1x10GEXP_BITMSK_HS_SD_LANE3 0x0100 964#define SUNI1x10GEXP_BITMSK_HS_SD_LANE2 0x0080 965#define SUNI1x10GEXP_BITMSK_HS_SD_LANE1 0x0040 966#define SUNI1x10GEXP_BITMSK_HS_SD_LANE0 0x0020 967#define SUNI1x10GEXP_BITMSK_ALIGN_STATUS_ERR 0x0010 968#define SUNI1x10GEXP_BITMSK_LANE3_SYNC_STAT_ERR 0x0008 969#define SUNI1x10GEXP_BITMSK_LANE2_SYNC_STAT_ERR 0x0004 970#define SUNI1x10GEXP_BITMSK_LANE1_SYNC_STAT_ERR 0x0002 971#define SUNI1x10GEXP_BITMSK_LANE0_SYNC_STAT_ERR 0x0001 972 973/*---------------------------------------------------------------------------- 974 * Register 0x208B: XRF Diagnostic Interrupt Enable 975 * Bit 7-4 LANE_OVERRUNE 976 * Bit 3-0 LANE_UNDERRUNE 977 *----------------------------------------------------------------------------*/ 978#define SUNI1x10GEXP_BITMSK_LANE_OVERRUNE 0x00F0 979#define SUNI1x10GEXP_BITOFF_LANE_OVERRUNE 4 980#define SUNI1x10GEXP_BITMSK_LANE_UNDERRUNE 0x000F 981#define SUNI1x10GEXP_BITOFF_LANE_UNDERRUNE 0 982 983/*---------------------------------------------------------------------------- 984 * Register 0x208C: XRF Diagnostic Interrupt Status 985 * Bit 7-4 LANE_OVERRUNI 986 * Bit 3-0 LANE_UNDERRUNI 987 *----------------------------------------------------------------------------*/ 988#define SUNI1x10GEXP_BITMSK_LANE_OVERRUNI 0x00F0 989#define SUNI1x10GEXP_BITOFF_LANE_OVERRUNI 4 990#define SUNI1x10GEXP_BITMSK_LANE_UNDERRUNI 0x000F 991#define SUNI1x10GEXP_BITOFF_LANE_UNDERRUNI 0 992 993/*---------------------------------------------------------------------------- 994 * Register 0x20C0: RXOAM Configuration 995 * Bit 15 RXOAM_BUSY 996 * Bit 14-12 RXOAM_F2_SEL 997 * Bit 10-8 RXOAM_F1_SEL 998 * Bit 7-6 RXOAM_FILTER_CTRL 999 * Bit 5-0 RXOAM_PX_EN 1000 *----------------------------------------------------------------------------*/ 1001#define SUNI1x10GEXP_BITMSK_RXOAM_BUSY 0x8000 1002#define SUNI1x10GEXP_BITMSK_RXOAM_F2_SEL 0x7000 1003#define SUNI1x10GEXP_BITOFF_RXOAM_F2_SEL 12 1004#define SUNI1x10GEXP_BITMSK_RXOAM_F1_SEL 0x0700 1005#define SUNI1x10GEXP_BITOFF_RXOAM_F1_SEL 8 1006#define SUNI1x10GEXP_BITMSK_RXOAM_FILTER_CTRL 0x00C0 1007#define SUNI1x10GEXP_BITOFF_RXOAM_FILTER_CTRL 6 1008#define SUNI1x10GEXP_BITMSK_RXOAM_PX_EN 0x003F 1009#define SUNI1x10GEXP_BITOFF_RXOAM_PX_EN 0 1010 1011/*---------------------------------------------------------------------------- 1012 * Register 0x20C1,0x20C2: RXOAM Filter Configuration 1013 * Bit 15-8 RXOAM_FX_MASK 1014 * Bit 7-0 RXOAM_FX_VAL 1015 *----------------------------------------------------------------------------*/ 1016#define SUNI1x10GEXP_BITMSK_RXOAM_FX_MASK 0xFF00 1017#define SUNI1x10GEXP_BITOFF_RXOAM_FX_MASK 8 1018#define SUNI1x10GEXP_BITMSK_RXOAM_FX_VAL 0x00FF 1019#define SUNI1x10GEXP_BITOFF_RXOAM_FX_VAl 0 1020 1021/*---------------------------------------------------------------------------- 1022 * Register 0x20C3: RXOAM Configuration Register 2 1023 * Bit 13 RXOAM_REC_BYTE_VAL 1024 * Bit 11-10 RXOAM_BYPASS_MODE 1025 * Bit 5-0 RXOAM_PX_CLEAR 1026 *----------------------------------------------------------------------------*/ 1027#define SUNI1x10GEXP_BITMSK_RXOAM_REC_BYTE_VAL 0x2000 1028#define SUNI1x10GEXP_BITMSK_RXOAM_BYPASS_MODE 0x0C00 1029#define SUNI1x10GEXP_BITOFF_RXOAM_BYPASS_MODE 10 1030#define SUNI1x10GEXP_BITMSK_RXOAM_PX_CLEAR 0x003F 1031#define SUNI1x10GEXP_BITOFF_RXOAM_PX_CLEAR 0 1032 1033/*---------------------------------------------------------------------------- 1034 * Register 0x20C4: RXOAM HEC Configuration 1035 * Bit 15-8 RXOAM_COSET 1036 * Bit 2 RXOAM_HEC_ERR_PKT 1037 * Bit 0 RXOAM_HEC_EN 1038 *----------------------------------------------------------------------------*/ 1039#define SUNI1x10GEXP_BITMSK_RXOAM_COSET 0xFF00 1040#define SUNI1x10GEXP_BITOFF_RXOAM_COSET 8 1041#define SUNI1x10GEXP_BITMSK_RXOAM_HEC_ERR_PKT 0x0004 1042#define SUNI1x10GEXP_BITMSK_RXOAM_HEC_EN 0x0001 1043 1044/*---------------------------------------------------------------------------- 1045 * Register 0x20C7: RXOAM Interrupt Enable 1046 * Bit 10 RXOAM_FILTER_THRSHE 1047 * Bit 9 RXOAM_OAM_ERRE 1048 * Bit 8 RXOAM_HECE_THRSHE 1049 * Bit 7 RXOAM_SOPE 1050 * Bit 6 RXOAM_RFE 1051 * Bit 5 RXOAM_LFE 1052 * Bit 4 RXOAM_DV_ERRE 1053 * Bit 3 RXOAM_DATA_INVALIDE 1054 * Bit 2 RXOAM_FILTER_DROPE 1055 * Bit 1 RXOAM_HECE 1056 * Bit 0 RXOAM_OFLE 1057 *----------------------------------------------------------------------------*/ 1058#define SUNI1x10GEXP_BITMSK_RXOAM_FILTER_THRSHE 0x0400 1059#define SUNI1x10GEXP_BITMSK_RXOAM_OAM_ERRE 0x0200 1060#define SUNI1x10GEXP_BITMSK_RXOAM_HECE_THRSHE 0x0100 1061#define SUNI1x10GEXP_BITMSK_RXOAM_SOPE 0x0080 1062#define SUNI1x10GEXP_BITMSK_RXOAM_RFE 0x0040 1063#define SUNI1x10GEXP_BITMSK_RXOAM_LFE 0x0020 1064#define SUNI1x10GEXP_BITMSK_RXOAM_DV_ERRE 0x0010 1065#define SUNI1x10GEXP_BITMSK_RXOAM_DATA_INVALIDE 0x0008 1066#define SUNI1x10GEXP_BITMSK_RXOAM_FILTER_DROPE 0x0004 1067#define SUNI1x10GEXP_BITMSK_RXOAM_HECE 0x0002 1068#define SUNI1x10GEXP_BITMSK_RXOAM_OFLE 0x0001 1069 1070/*---------------------------------------------------------------------------- 1071 * Register 0x20C8: RXOAM Interrupt Status 1072 * Bit 10 RXOAM_FILTER_THRSHI 1073 * Bit 9 RXOAM_OAM_ERRI 1074 * Bit 8 RXOAM_HECE_THRSHI 1075 * Bit 7 RXOAM_SOPI 1076 * Bit 6 RXOAM_RFI 1077 * Bit 5 RXOAM_LFI 1078 * Bit 4 RXOAM_DV_ERRI 1079 * Bit 3 RXOAM_DATA_INVALIDI 1080 * Bit 2 RXOAM_FILTER_DROPI 1081 * Bit 1 RXOAM_HECI 1082 * Bit 0 RXOAM_OFLI 1083 *----------------------------------------------------------------------------*/ 1084#define SUNI1x10GEXP_BITMSK_RXOAM_FILTER_THRSHI 0x0400 1085#define SUNI1x10GEXP_BITMSK_RXOAM_OAM_ERRI 0x0200 1086#define SUNI1x10GEXP_BITMSK_RXOAM_HECE_THRSHI 0x0100 1087#define SUNI1x10GEXP_BITMSK_RXOAM_SOPI 0x0080 1088#define SUNI1x10GEXP_BITMSK_RXOAM_RFI 0x0040 1089#define SUNI1x10GEXP_BITMSK_RXOAM_LFI 0x0020 1090#define SUNI1x10GEXP_BITMSK_RXOAM_DV_ERRI 0x0010 1091#define SUNI1x10GEXP_BITMSK_RXOAM_DATA_INVALIDI 0x0008 1092#define SUNI1x10GEXP_BITMSK_RXOAM_FILTER_DROPI 0x0004 1093#define SUNI1x10GEXP_BITMSK_RXOAM_HECI 0x0002 1094#define SUNI1x10GEXP_BITMSK_RXOAM_OFLI 0x0001 1095 1096/*---------------------------------------------------------------------------- 1097 * Register 0x20C9: RXOAM Status 1098 * Bit 10 RXOAM_FILTER_THRSHV 1099 * Bit 8 RXOAM_HECE_THRSHV 1100 * Bit 6 RXOAM_RFV 1101 * Bit 5 RXOAM_LFV 1102 *----------------------------------------------------------------------------*/ 1103#define SUNI1x10GEXP_BITMSK_RXOAM_FILTER_THRSHV 0x0400 1104#define SUNI1x10GEXP_BITMSK_RXOAM_HECE_THRSHV 0x0100 1105#define SUNI1x10GEXP_BITMSK_RXOAM_RFV 0x0040 1106#define SUNI1x10GEXP_BITMSK_RXOAM_LFV 0x0020 1107 1108/*---------------------------------------------------------------------------- 1109 * Register 0x2100: MSTAT Control 1110 * Bit 2 MSTAT_WRITE 1111 * Bit 1 MSTAT_CLEAR 1112 * Bit 0 MSTAT_SNAP 1113 *----------------------------------------------------------------------------*/ 1114#define SUNI1x10GEXP_BITMSK_MSTAT_WRITE 0x0004 1115#define SUNI1x10GEXP_BITMSK_MSTAT_CLEAR 0x0002 1116#define SUNI1x10GEXP_BITMSK_MSTAT_SNAP 0x0001 1117 1118/*---------------------------------------------------------------------------- 1119 * Register 0x2109: MSTAT Counter Write Address 1120 * Bit 5-0 MSTAT_WRITE_ADDRESS 1121 *----------------------------------------------------------------------------*/ 1122#define SUNI1x10GEXP_BITMSK_MSTAT_WRITE_ADDRESS 0x003F 1123#define SUNI1x10GEXP_BITOFF_MSTAT_WRITE_ADDRESS 0 1124 1125/*---------------------------------------------------------------------------- 1126 * Register 0x2200: IFLX Global Configuration Register 1127 * Bit 15 IFLX_IRCU_ENABLE 1128 * Bit 14 IFLX_IDSWT_ENABLE 1129 * Bit 13-0 IFLX_IFD_CNT 1130 *----------------------------------------------------------------------------*/ 1131#define SUNI1x10GEXP_BITMSK_IFLX_IRCU_ENABLE 0x8000 1132#define SUNI1x10GEXP_BITMSK_IFLX_IDSWT_ENABLE 0x4000 1133#define SUNI1x10GEXP_BITMSK_IFLX_IFD_CNT 0x3FFF 1134#define SUNI1x10GEXP_BITOFF_IFLX_IFD_CNT 0 1135 1136/*---------------------------------------------------------------------------- 1137 * Register 0x2209: IFLX FIFO Overflow Enable 1138 * Bit 0 IFLX_OVFE 1139 *----------------------------------------------------------------------------*/ 1140#define SUNI1x10GEXP_BITMSK_IFLX_OVFE 0x0001 1141 1142/*---------------------------------------------------------------------------- 1143 * Register 0x220A: IFLX FIFO Overflow Interrupt 1144 * Bit 0 IFLX_OVFI 1145 *----------------------------------------------------------------------------*/ 1146#define SUNI1x10GEXP_BITMSK_IFLX_OVFI 0x0001 1147 1148/*---------------------------------------------------------------------------- 1149 * Register 0x220D: IFLX Indirect Channel Address 1150 * Bit 15 IFLX_BUSY 1151 * Bit 14 IFLX_RWB 1152 *----------------------------------------------------------------------------*/ 1153#define SUNI1x10GEXP_BITMSK_IFLX_BUSY 0x8000 1154#define SUNI1x10GEXP_BITMSK_IFLX_RWB 0x4000 1155 1156/*---------------------------------------------------------------------------- 1157 * Register 0x220E: IFLX Indirect Logical FIFO Low Limit & Provision 1158 * Bit 9-0 IFLX_LOLIM 1159 *----------------------------------------------------------------------------*/ 1160#define SUNI1x10GEXP_BITMSK_IFLX_LOLIM 0x03FF 1161#define SUNI1x10GEXP_BITOFF_IFLX_LOLIM 0 1162 1163/*---------------------------------------------------------------------------- 1164 * Register 0x220F: IFLX Indirect Logical FIFO High Limit 1165 * Bit 9-0 IFLX_HILIM 1166 *----------------------------------------------------------------------------*/ 1167#define SUNI1x10GEXP_BITMSK_IFLX_HILIM 0x03FF 1168#define SUNI1x10GEXP_BITOFF_IFLX_HILIM 0 1169 1170/*---------------------------------------------------------------------------- 1171 * Register 0x2210: IFLX Indirect Full/Almost Full Status & Limit 1172 * Bit 15 IFLX_FULL 1173 * Bit 14 IFLX_AFULL 1174 * Bit 13-0 IFLX_AFTH 1175 *----------------------------------------------------------------------------*/ 1176#define SUNI1x10GEXP_BITMSK_IFLX_FULL 0x8000 1177#define SUNI1x10GEXP_BITMSK_IFLX_AFULL 0x4000 1178#define SUNI1x10GEXP_BITMSK_IFLX_AFTH 0x3FFF 1179#define SUNI1x10GEXP_BITOFF_IFLX_AFTH 0 1180 1181/*---------------------------------------------------------------------------- 1182 * Register 0x2211: IFLX Indirect Empty/Almost Empty Status & Limit 1183 * Bit 15 IFLX_EMPTY 1184 * Bit 14 IFLX_AEMPTY 1185 * Bit 13-0 IFLX_AETH 1186 *----------------------------------------------------------------------------*/ 1187#define SUNI1x10GEXP_BITMSK_IFLX_EMPTY 0x8000 1188#define SUNI1x10GEXP_BITMSK_IFLX_AEMPTY 0x4000 1189#define SUNI1x10GEXP_BITMSK_IFLX_AETH 0x3FFF 1190#define SUNI1x10GEXP_BITOFF_IFLX_AETH 0 1191 1192/*---------------------------------------------------------------------------- 1193 * Register 0x2240: PL4MOS Configuration Register 1194 * Bit 3 PL4MOS_RE_INIT 1195 * Bit 2 PL4MOS_EN 1196 * Bit 1 PL4MOS_NO_STATUS 1197 *----------------------------------------------------------------------------*/ 1198#define SUNI1x10GEXP_BITMSK_PL4MOS_RE_INIT 0x0008 1199#define SUNI1x10GEXP_BITMSK_PL4MOS_EN 0x0004 1200#define SUNI1x10GEXP_BITMSK_PL4MOS_NO_STATUS 0x0002 1201 1202/*---------------------------------------------------------------------------- 1203 * Register 0x2243: PL4MOS MaxBurst1 Register 1204 * Bit 11-0 PL4MOS_MAX_BURST1 1205 *----------------------------------------------------------------------------*/ 1206#define SUNI1x10GEXP_BITMSK_PL4MOS_MAX_BURST1 0x0FFF 1207#define SUNI1x10GEXP_BITOFF_PL4MOS_MAX_BURST1 0 1208 1209/*---------------------------------------------------------------------------- 1210 * Register 0x2244: PL4MOS MaxBurst2 Register 1211 * Bit 11-0 PL4MOS_MAX_BURST2 1212 *----------------------------------------------------------------------------*/ 1213#define SUNI1x10GEXP_BITMSK_PL4MOS_MAX_BURST2 0x0FFF 1214#define SUNI1x10GEXP_BITOFF_PL4MOS_MAX_BURST2 0 1215 1216/*---------------------------------------------------------------------------- 1217 * Register 0x2245: PL4MOS Transfer Size Register 1218 * Bit 7-0 PL4MOS_MAX_TRANSFER 1219 *----------------------------------------------------------------------------*/ 1220#define SUNI1x10GEXP_BITMSK_PL4MOS_MAX_TRANSFER 0x00FF 1221#define SUNI1x10GEXP_BITOFF_PL4MOS_MAX_TRANSFER 0 1222 1223/*---------------------------------------------------------------------------- 1224 * Register 0x2280: PL4ODP Configuration 1225 * Bit 15-12 PL4ODP_REPEAT_T 1226 * Bit 8 PL4ODP_SOP_RULE 1227 * Bit 1 PL4ODP_EN_PORTS 1228 * Bit 0 PL4ODP_EN_DFWD 1229 *----------------------------------------------------------------------------*/ 1230#define SUNI1x10GEXP_BITMSK_PL4ODP_REPEAT_T 0xF000 1231#define SUNI1x10GEXP_BITOFF_PL4ODP_REPEAT_T 12 1232#define SUNI1x10GEXP_BITMSK_PL4ODP_SOP_RULE 0x0100 1233#define SUNI1x10GEXP_BITMSK_PL4ODP_EN_PORTS 0x0002 1234#define SUNI1x10GEXP_BITMSK_PL4ODP_EN_DFWD 0x0001 1235 1236/*---------------------------------------------------------------------------- 1237 * Register 0x2282: PL4ODP Interrupt Mask 1238 * Bit 0 PL4ODP_OUT_DISE 1239 *----------------------------------------------------------------------------*/ 1240#define SUNI1x10GEXP_BITMSK_PL4ODP_OUT_DISE 0x0001 1241 1242 1243 1244#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_EOPEOBE 0x0080 1245#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_ERREOPE 0x0040 1246#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_MEOPE 0x0008 1247#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_MSOPE 0x0004 1248#define SUNI1x10GEXP_BITMSK_PL4ODP_ES_OVRE 0x0002 1249 1250 1251/*---------------------------------------------------------------------------- 1252 * Register 0x2283: PL4ODP Interrupt 1253 * Bit 0 PL4ODP_OUT_DISI 1254 *----------------------------------------------------------------------------*/ 1255#define SUNI1x10GEXP_BITMSK_PL4ODP_OUT_DISI 0x0001 1256 1257 1258 1259#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_EOPEOBI 0x0080 1260#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_ERREOPI 0x0040 1261#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_MEOPI 0x0008 1262#define SUNI1x10GEXP_BITMSK_PL4ODP_PPE_MSOPI 0x0004 1263#define SUNI1x10GEXP_BITMSK_PL4ODP_ES_OVRI 0x0002 1264 1265/*---------------------------------------------------------------------------- 1266 * Register 0x2300: PL4IO Lock Detect Status 1267 * Bit 15 PL4IO_OUT_ROOLV 1268 * Bit 12 PL4IO_IS_ROOLV 1269 * Bit 11 PL4IO_DIP2_ERRV 1270 * Bit 8 PL4IO_ID_ROOLV 1271 * Bit 4 PL4IO_IS_DOOLV 1272 * Bit 0 PL4IO_ID_DOOLV 1273 *----------------------------------------------------------------------------*/ 1274#define SUNI1x10GEXP_BITMSK_PL4IO_OUT_ROOLV 0x8000 1275#define SUNI1x10GEXP_BITMSK_PL4IO_IS_ROOLV 0x1000 1276#define SUNI1x10GEXP_BITMSK_PL4IO_DIP2_ERRV 0x0800 1277#define SUNI1x10GEXP_BITMSK_PL4IO_ID_ROOLV 0x0100 1278#define SUNI1x10GEXP_BITMSK_PL4IO_IS_DOOLV 0x0010 1279#define SUNI1x10GEXP_BITMSK_PL4IO_ID_DOOLV 0x0001 1280 1281/*---------------------------------------------------------------------------- 1282 * Register 0x2301: PL4IO Lock Detect Change 1283 * Bit 15 PL4IO_OUT_ROOLI 1284 * Bit 12 PL4IO_IS_ROOLI 1285 * Bit 11 PL4IO_DIP2_ERRI 1286 * Bit 8 PL4IO_ID_ROOLI 1287 * Bit 4 PL4IO_IS_DOOLI 1288 * Bit 0 PL4IO_ID_DOOLI 1289 *----------------------------------------------------------------------------*/ 1290#define SUNI1x10GEXP_BITMSK_PL4IO_OUT_ROOLI 0x8000 1291#define SUNI1x10GEXP_BITMSK_PL4IO_IS_ROOLI 0x1000 1292#define SUNI1x10GEXP_BITMSK_PL4IO_DIP2_ERRI 0x0800 1293#define SUNI1x10GEXP_BITMSK_PL4IO_ID_ROOLI 0x0100 1294#define SUNI1x10GEXP_BITMSK_PL4IO_IS_DOOLI 0x0010 1295#define SUNI1x10GEXP_BITMSK_PL4IO_ID_DOOLI 0x0001 1296 1297/*---------------------------------------------------------------------------- 1298 * Register 0x2302: PL4IO Lock Detect Mask 1299 * Bit 15 PL4IO_OUT_ROOLE 1300 * Bit 12 PL4IO_IS_ROOLE 1301 * Bit 11 PL4IO_DIP2_ERRE 1302 * Bit 8 PL4IO_ID_ROOLE 1303 * Bit 4 PL4IO_IS_DOOLE 1304 * Bit 0 PL4IO_ID_DOOLE 1305 *----------------------------------------------------------------------------*/ 1306#define SUNI1x10GEXP_BITMSK_PL4IO_OUT_ROOLE 0x8000 1307#define SUNI1x10GEXP_BITMSK_PL4IO_IS_ROOLE 0x1000 1308#define SUNI1x10GEXP_BITMSK_PL4IO_DIP2_ERRE 0x0800 1309#define SUNI1x10GEXP_BITMSK_PL4IO_ID_ROOLE 0x0100 1310#define SUNI1x10GEXP_BITMSK_PL4IO_IS_DOOLE 0x0010 1311#define SUNI1x10GEXP_BITMSK_PL4IO_ID_DOOLE 0x0001 1312 1313/*---------------------------------------------------------------------------- 1314 * Register 0x2303: PL4IO Lock Detect Limits 1315 * Bit 15-8 PL4IO_REF_LIMIT 1316 * Bit 7-0 PL4IO_TRAN_LIMIT 1317 *----------------------------------------------------------------------------*/ 1318#define SUNI1x10GEXP_BITMSK_PL4IO_REF_LIMIT 0xFF00 1319#define SUNI1x10GEXP_BITOFF_PL4IO_REF_LIMIT 8 1320#define SUNI1x10GEXP_BITMSK_PL4IO_TRAN_LIMIT 0x00FF 1321#define SUNI1x10GEXP_BITOFF_PL4IO_TRAN_LIMIT 0 1322 1323/*---------------------------------------------------------------------------- 1324 * Register 0x2304: PL4IO Calendar Repetitions 1325 * Bit 15-8 PL4IO_IN_MUL 1326 * Bit 7-0 PL4IO_OUT_MUL 1327 *----------------------------------------------------------------------------*/ 1328#define SUNI1x10GEXP_BITMSK_PL4IO_IN_MUL 0xFF00 1329#define SUNI1x10GEXP_BITOFF_PL4IO_IN_MUL 8 1330#define SUNI1x10GEXP_BITMSK_PL4IO_OUT_MUL 0x00FF 1331#define SUNI1x10GEXP_BITOFF_PL4IO_OUT_MUL 0 1332 1333/*---------------------------------------------------------------------------- 1334 * Register 0x2305: PL4IO Configuration 1335 * Bit 15 PL4IO_DIP2_ERR_CHK 1336 * Bit 11 PL4IO_ODAT_DIS 1337 * Bit 10 PL4IO_TRAIN_DIS 1338 * Bit 9 PL4IO_OSTAT_DIS 1339 * Bit 8 PL4IO_ISTAT_DIS 1340 * Bit 7 PL4IO_NO_ISTAT 1341 * Bit 6 PL4IO_STAT_OUTSEL 1342 * Bit 5 PL4IO_INSEL 1343 * Bit 4 PL4IO_DLSEL 1344 * Bit 1-0 PL4IO_OUTSEL 1345 *----------------------------------------------------------------------------*/ 1346#define SUNI1x10GEXP_BITMSK_PL4IO_DIP2_ERR_CHK 0x8000 1347#define SUNI1x10GEXP_BITMSK_PL4IO_ODAT_DIS 0x0800 1348#define SUNI1x10GEXP_BITMSK_PL4IO_TRAIN_DIS 0x0400 1349#define SUNI1x10GEXP_BITMSK_PL4IO_OSTAT_DIS 0x0200 1350#define SUNI1x10GEXP_BITMSK_PL4IO_ISTAT_DIS 0x0100 1351#define SUNI1x10GEXP_BITMSK_PL4IO_NO_ISTAT 0x0080 1352#define SUNI1x10GEXP_BITMSK_PL4IO_STAT_OUTSEL 0x0040 1353#define SUNI1x10GEXP_BITMSK_PL4IO_INSEL 0x0020 1354#define SUNI1x10GEXP_BITMSK_PL4IO_DLSEL 0x0010 1355#define SUNI1x10GEXP_BITMSK_PL4IO_OUTSEL 0x0003 1356#define SUNI1x10GEXP_BITOFF_PL4IO_OUTSEL 0 1357 1358/*---------------------------------------------------------------------------- 1359 * Register 0x3040: TXXG Configuration Register 1 1360 * Bit 15 TXXG_TXEN0 1361 * Bit 13 TXXG_HOSTPAUSE 1362 * Bit 12-7 TXXG_IPGT 1363 * Bit 5 TXXG_32BIT_ALIGN 1364 * Bit 4 TXXG_CRCEN 1365 * Bit 3 TXXG_FCTX 1366 * Bit 2 TXXG_FCRX 1367 * Bit 1 TXXG_PADEN 1368 * Bit 0 TXXG_SPRE 1369 *----------------------------------------------------------------------------*/ 1370#define SUNI1x10GEXP_BITMSK_TXXG_TXEN0 0x8000 1371#define SUNI1x10GEXP_BITMSK_TXXG_HOSTPAUSE 0x2000 1372#define SUNI1x10GEXP_BITMSK_TXXG_IPGT 0x1F80 1373#define SUNI1x10GEXP_BITOFF_TXXG_IPGT 7 1374#define SUNI1x10GEXP_BITMSK_TXXG_32BIT_ALIGN 0x0020 1375#define SUNI1x10GEXP_BITMSK_TXXG_CRCEN 0x0010 1376#define SUNI1x10GEXP_BITMSK_TXXG_FCTX 0x0008 1377#define SUNI1x10GEXP_BITMSK_TXXG_FCRX 0x0004 1378#define SUNI1x10GEXP_BITMSK_TXXG_PADEN 0x0002 1379#define SUNI1x10GEXP_BITMSK_TXXG_SPRE 0x0001 1380 1381/*---------------------------------------------------------------------------- 1382 * Register 0x3041: TXXG Configuration Register 2 1383 * Bit 7-0 TXXG_HDRSIZE 1384 *----------------------------------------------------------------------------*/ 1385#define SUNI1x10GEXP_BITMSK_TXXG_HDRSIZE 0x00FF 1386 1387/*---------------------------------------------------------------------------- 1388 * Register 0x3042: TXXG Configuration Register 3 1389 * Bit 15 TXXG_FIFO_ERRE 1390 * Bit 14 TXXG_FIFO_UDRE 1391 * Bit 13 TXXG_MAX_LERRE 1392 * Bit 12 TXXG_MIN_LERRE 1393 * Bit 11 TXXG_XFERE 1394 *----------------------------------------------------------------------------*/ 1395#define SUNI1x10GEXP_BITMSK_TXXG_FIFO_ERRE 0x8000 1396#define SUNI1x10GEXP_BITMSK_TXXG_FIFO_UDRE 0x4000 1397#define SUNI1x10GEXP_BITMSK_TXXG_MAX_LERRE 0x2000 1398#define SUNI1x10GEXP_BITMSK_TXXG_MIN_LERRE 0x1000 1399#define SUNI1x10GEXP_BITMSK_TXXG_XFERE 0x0800 1400 1401/*---------------------------------------------------------------------------- 1402 * Register 0x3043: TXXG Interrupt 1403 * Bit 15 TXXG_FIFO_ERRI 1404 * Bit 14 TXXG_FIFO_UDRI 1405 * Bit 13 TXXG_MAX_LERRI 1406 * Bit 12 TXXG_MIN_LERRI 1407 * Bit 11 TXXG_XFERI 1408 *----------------------------------------------------------------------------*/ 1409#define SUNI1x10GEXP_BITMSK_TXXG_FIFO_ERRI 0x8000 1410#define SUNI1x10GEXP_BITMSK_TXXG_FIFO_UDRI 0x4000 1411#define SUNI1x10GEXP_BITMSK_TXXG_MAX_LERRI 0x2000 1412#define SUNI1x10GEXP_BITMSK_TXXG_MIN_LERRI 0x1000 1413#define SUNI1x10GEXP_BITMSK_TXXG_XFERI 0x0800 1414 1415/*---------------------------------------------------------------------------- 1416 * Register 0x3044: TXXG Status Register 1417 * Bit 1 TXXG_TXACTIVE 1418 * Bit 0 TXXG_PAUSED 1419 *----------------------------------------------------------------------------*/ 1420#define SUNI1x10GEXP_BITMSK_TXXG_TXACTIVE 0x0002 1421#define SUNI1x10GEXP_BITMSK_TXXG_PAUSED 0x0001 1422 1423/*---------------------------------------------------------------------------- 1424 * Register 0x3046: TXXG TX_MINFR - Transmit Min Frame Size Register 1425 * Bit 7-0 TXXG_TX_MINFR 1426 *----------------------------------------------------------------------------*/ 1427#define SUNI1x10GEXP_BITMSK_TXXG_TX_MINFR 0x00FF 1428#define SUNI1x10GEXP_BITOFF_TXXG_TX_MINFR 0 1429 1430/*---------------------------------------------------------------------------- 1431 * Register 0x3052: TXXG Pause Quantum Value Configuration Register 1432 * Bit 7-0 TXXG_FC_PAUSE_QNTM 1433 *----------------------------------------------------------------------------*/ 1434#define SUNI1x10GEXP_BITMSK_TXXG_FC_PAUSE_QNTM 0x00FF 1435#define SUNI1x10GEXP_BITOFF_TXXG_FC_PAUSE_QNTM 0 1436 1437/*---------------------------------------------------------------------------- 1438 * Register 0x3080: XTEF Control 1439 * Bit 3-0 XTEF_FORCE_PARITY_ERR 1440 *----------------------------------------------------------------------------*/ 1441#define SUNI1x10GEXP_BITMSK_XTEF_FORCE_PARITY_ERR 0x000F 1442#define SUNI1x10GEXP_BITOFF_XTEF_FORCE_PARITY_ERR 0 1443 1444/*---------------------------------------------------------------------------- 1445 * Register 0x3084: XTEF Interrupt Event Register 1446 * Bit 0 XTEF_LOST_SYNCI 1447 *----------------------------------------------------------------------------*/ 1448#define SUNI1x10GEXP_BITMSK_XTEF_LOST_SYNCI 0x0001 1449 1450/*---------------------------------------------------------------------------- 1451 * Register 0x3085: XTEF Interrupt Enable Register 1452 * Bit 0 XTEF_LOST_SYNCE 1453 *----------------------------------------------------------------------------*/ 1454#define SUNI1x10GEXP_BITMSK_XTEF_LOST_SYNCE 0x0001 1455 1456/*---------------------------------------------------------------------------- 1457 * Register 0x3086: XTEF Visibility Register 1458 * Bit 0 XTEF_LOST_SYNCV 1459 *----------------------------------------------------------------------------*/ 1460#define SUNI1x10GEXP_BITMSK_XTEF_LOST_SYNCV 0x0001 1461 1462/*---------------------------------------------------------------------------- 1463 * Register 0x30C0: TXOAM OAM Configuration 1464 * Bit 15 TXOAM_HEC_EN 1465 * Bit 14 TXOAM_EMPTYCODE_EN 1466 * Bit 13 TXOAM_FORCE_IDLE 1467 * Bit 12 TXOAM_IGNORE_IDLE 1468 * Bit 11-6 TXOAM_PX_OVERWRITE 1469 * Bit 5-0 TXOAM_PX_SEL 1470 *----------------------------------------------------------------------------*/ 1471#define SUNI1x10GEXP_BITMSK_TXOAM_HEC_EN 0x8000 1472#define SUNI1x10GEXP_BITMSK_TXOAM_EMPTYCODE_EN 0x4000 1473#define SUNI1x10GEXP_BITMSK_TXOAM_FORCE_IDLE 0x2000 1474#define SUNI1x10GEXP_BITMSK_TXOAM_IGNORE_IDLE 0x1000 1475#define SUNI1x10GEXP_BITMSK_TXOAM_PX_OVERWRITE 0x0FC0 1476#define SUNI1x10GEXP_BITOFF_TXOAM_PX_OVERWRITE 6 1477#define SUNI1x10GEXP_BITMSK_TXOAM_PX_SEL 0x003F 1478#define SUNI1x10GEXP_BITOFF_TXOAM_PX_SEL 0 1479 1480/*---------------------------------------------------------------------------- 1481 * Register 0x30C1: TXOAM Mini-Packet Rate Configuration 1482 * Bit 15 TXOAM_MINIDIS 1483 * Bit 14 TXOAM_BUSY 1484 * Bit 13 TXOAM_TRANS_EN 1485 * Bit 10-0 TXOAM_MINIRATE 1486 *----------------------------------------------------------------------------*/ 1487#define SUNI1x10GEXP_BITMSK_TXOAM_MINIDIS 0x8000 1488#define SUNI1x10GEXP_BITMSK_TXOAM_BUSY 0x4000 1489#define SUNI1x10GEXP_BITMSK_TXOAM_TRANS_EN 0x2000 1490#define SUNI1x10GEXP_BITMSK_TXOAM_MINIRATE 0x07FF 1491 1492/*---------------------------------------------------------------------------- 1493 * Register 0x30C2: TXOAM Mini-Packet Gap and FIFO Configuration 1494 * Bit 13-10 TXOAM_FTHRESH 1495 * Bit 9-6 TXOAM_MINIPOST 1496 * Bit 5-0 TXOAM_MINIPRE 1497 *----------------------------------------------------------------------------*/ 1498#define SUNI1x10GEXP_BITMSK_TXOAM_FTHRESH 0x3C00 1499#define SUNI1x10GEXP_BITOFF_TXOAM_FTHRESH 10 1500#define SUNI1x10GEXP_BITMSK_TXOAM_MINIPOST 0x03C0 1501#define SUNI1x10GEXP_BITOFF_TXOAM_MINIPOST 6 1502#define SUNI1x10GEXP_BITMSK_TXOAM_MINIPRE 0x003F 1503 1504/*---------------------------------------------------------------------------- 1505 * Register 0x30C6: TXOAM Interrupt Enable 1506 * Bit 2 TXOAM_SOP_ERRE 1507 * Bit 1 TXOAM_OFLE 1508 * Bit 0 TXOAM_ERRE 1509 *----------------------------------------------------------------------------*/ 1510#define SUNI1x10GEXP_BITMSK_TXOAM_SOP_ERRE 0x0004 1511#define SUNI1x10GEXP_BITMSK_TXOAM_OFLE 0x0002 1512#define SUNI1x10GEXP_BITMSK_TXOAM_ERRE 0x0001 1513 1514/*---------------------------------------------------------------------------- 1515 * Register 0x30C7: TXOAM Interrupt Status 1516 * Bit 2 TXOAM_SOP_ERRI 1517 * Bit 1 TXOAM_OFLI 1518 * Bit 0 TXOAM_ERRI 1519 *----------------------------------------------------------------------------*/ 1520#define SUNI1x10GEXP_BITMSK_TXOAM_SOP_ERRI 0x0004 1521#define SUNI1x10GEXP_BITMSK_TXOAM_OFLI 0x0002 1522#define SUNI1x10GEXP_BITMSK_TXOAM_ERRI 0x0001 1523 1524/*---------------------------------------------------------------------------- 1525 * Register 0x30CF: TXOAM Coset 1526 * Bit 7-0 TXOAM_COSET 1527 *----------------------------------------------------------------------------*/ 1528#define SUNI1x10GEXP_BITMSK_TXOAM_COSET 0x00FF 1529 1530/*---------------------------------------------------------------------------- 1531 * Register 0x3200: EFLX Global Configuration 1532 * Bit 15 EFLX_ERCU_EN 1533 * Bit 7 EFLX_EN_EDSWT 1534 *----------------------------------------------------------------------------*/ 1535#define SUNI1x10GEXP_BITMSK_EFLX_ERCU_EN 0x8000 1536#define SUNI1x10GEXP_BITMSK_EFLX_EN_EDSWT 0x0080 1537 1538/*---------------------------------------------------------------------------- 1539 * Register 0x3201: EFLX ERCU Global Status 1540 * Bit 13 EFLX_OVF_ERR 1541 *----------------------------------------------------------------------------*/ 1542#define SUNI1x10GEXP_BITMSK_EFLX_OVF_ERR 0x2000 1543 1544/*---------------------------------------------------------------------------- 1545 * Register 0x3202: EFLX Indirect Channel Address 1546 * Bit 15 EFLX_BUSY 1547 * Bit 14 EFLX_RDWRB 1548 *----------------------------------------------------------------------------*/ 1549#define SUNI1x10GEXP_BITMSK_EFLX_BUSY 0x8000 1550#define SUNI1x10GEXP_BITMSK_EFLX_RDWRB 0x4000 1551 1552/*---------------------------------------------------------------------------- 1553 * Register 0x3203: EFLX Indirect Logical FIFO Low Limit 1554 *----------------------------------------------------------------------------*/ 1555#define SUNI1x10GEXP_BITMSK_EFLX_LOLIM 0x03FF 1556#define SUNI1x10GEXP_BITOFF_EFLX_LOLIM 0 1557 1558/*---------------------------------------------------------------------------- 1559 * Register 0x3204: EFLX Indirect Logical FIFO High Limit 1560 *----------------------------------------------------------------------------*/ 1561#define SUNI1x10GEXP_BITMSK_EFLX_HILIM 0x03FF 1562#define SUNI1x10GEXP_BITOFF_EFLX_HILIM 0 1563 1564/*---------------------------------------------------------------------------- 1565 * Register 0x3205: EFLX Indirect Full/Almost-Full Status and Limit 1566 * Bit 15 EFLX_FULL 1567 * Bit 14 EFLX_AFULL 1568 * Bit 13-0 EFLX_AFTH 1569 *----------------------------------------------------------------------------*/ 1570#define SUNI1x10GEXP_BITMSK_EFLX_FULL 0x8000 1571#define SUNI1x10GEXP_BITMSK_EFLX_AFULL 0x4000 1572#define SUNI1x10GEXP_BITMSK_EFLX_AFTH 0x3FFF 1573#define SUNI1x10GEXP_BITOFF_EFLX_AFTH 0 1574 1575/*---------------------------------------------------------------------------- 1576 * Register 0x3206: EFLX Indirect Empty/Almost-Empty Status and Limit 1577 * Bit 15 EFLX_EMPTY 1578 * Bit 14 EFLX_AEMPTY 1579 * Bit 13-0 EFLX_AETH 1580 *----------------------------------------------------------------------------*/ 1581#define SUNI1x10GEXP_BITMSK_EFLX_EMPTY 0x8000 1582#define SUNI1x10GEXP_BITMSK_EFLX_AEMPTY 0x4000 1583#define SUNI1x10GEXP_BITMSK_EFLX_AETH 0x3FFF 1584#define SUNI1x10GEXP_BITOFF_EFLX_AETH 0 1585 1586/*---------------------------------------------------------------------------- 1587 * Register 0x3207: EFLX Indirect FIFO Cut-Through Threshold 1588 *----------------------------------------------------------------------------*/ 1589#define SUNI1x10GEXP_BITMSK_EFLX_CUT_THRU 0x3FFF 1590#define SUNI1x10GEXP_BITOFF_EFLX_CUT_THRU 0 1591 1592/*---------------------------------------------------------------------------- 1593 * Register 0x320C: EFLX FIFO Overflow Error Enable 1594 * Bit 0 EFLX_OVFE 1595 *----------------------------------------------------------------------------*/ 1596#define SUNI1x10GEXP_BITMSK_EFLX_OVFE 0x0001 1597 1598/*---------------------------------------------------------------------------- 1599 * Register 0x320D: EFLX FIFO Overflow Error Indication 1600 * Bit 0 EFLX_OVFI 1601 *----------------------------------------------------------------------------*/ 1602#define SUNI1x10GEXP_BITMSK_EFLX_OVFI 0x0001 1603 1604/*---------------------------------------------------------------------------- 1605 * Register 0x3210: EFLX Channel Provision 1606 * Bit 0 EFLX_PROV 1607 *----------------------------------------------------------------------------*/ 1608#define SUNI1x10GEXP_BITMSK_EFLX_PROV 0x0001 1609 1610/*---------------------------------------------------------------------------- 1611 * Register 0x3280: PL4IDU Configuration 1612 * Bit 2 PL4IDU_SYNCH_ON_TRAIN 1613 * Bit 1 PL4IDU_EN_PORTS 1614 * Bit 0 PL4IDU_EN_DFWD 1615 *----------------------------------------------------------------------------*/ 1616#define SUNI1x10GEXP_BITMSK_PL4IDU_SYNCH_ON_TRAIN 0x0004 1617#define SUNI1x10GEXP_BITMSK_PL4IDU_EN_PORTS 0x0002 1618#define SUNI1x10GEXP_BITMSK_PL4IDU_EN_DFWD 0x0001 1619 1620/*---------------------------------------------------------------------------- 1621 * Register 0x3282: PL4IDU Interrupt Mask 1622 * Bit 1 PL4IDU_DIP4E 1623 *----------------------------------------------------------------------------*/ 1624#define SUNI1x10GEXP_BITMSK_PL4IDU_DIP4E 0x0002 1625 1626/*---------------------------------------------------------------------------- 1627 * Register 0x3283: PL4IDU Interrupt 1628 * Bit 1 PL4IDU_DIP4I 1629 *----------------------------------------------------------------------------*/ 1630#define SUNI1x10GEXP_BITMSK_PL4IDU_DIP4I 0x0002 1631 1632#endif /* _CXGB_SUNI1x10GEXP_REGS_H_ */ 1633