1219820Sjeff/* 2272027Shselasky * Copyright (c) 2007, 2014 Mellanox Technologies. All rights reserved. 3219820Sjeff * 4219820Sjeff * This software is available to you under a choice of one of two 5219820Sjeff * licenses. You may choose to be licensed under the terms of the GNU 6219820Sjeff * General Public License (GPL) Version 2, available from the file 7219820Sjeff * COPYING in the main directory of this source tree, or the 8219820Sjeff * OpenIB.org BSD license below: 9219820Sjeff * 10219820Sjeff * Redistribution and use in source and binary forms, with or 11219820Sjeff * without modification, are permitted provided that the following 12219820Sjeff * conditions are met: 13219820Sjeff * 14219820Sjeff * - Redistributions of source code must retain the above 15219820Sjeff * copyright notice, this list of conditions and the following 16219820Sjeff * disclaimer. 17219820Sjeff * 18219820Sjeff * - Redistributions in binary form must reproduce the above 19219820Sjeff * copyright notice, this list of conditions and the following 20219820Sjeff * disclaimer in the documentation and/or other materials 21219820Sjeff * provided with the distribution. 22219820Sjeff * 23219820Sjeff * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 24219820Sjeff * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 25219820Sjeff * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 26219820Sjeff * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 27219820Sjeff * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 28219820Sjeff * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 29219820Sjeff * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 30219820Sjeff * SOFTWARE. 31219820Sjeff * 32219820Sjeff */ 33219820Sjeff 34219820Sjeff#ifndef _MLX4_EN_PORT_H_ 35219820Sjeff#define _MLX4_EN_PORT_H_ 36219820Sjeff 37219820Sjeff 38219820Sjeff#define SET_PORT_GEN_ALL_VALID 0x7 39272027Shselasky#define SET_PORT_PROMISC_SHIFT 31 40272027Shselasky#define SET_PORT_MC_PROMISC_SHIFT 30 41219820Sjeff 42272027Shselasky#define MLX4_EN_NUM_TC 8 43219820Sjeff 44219820Sjeff#define VLAN_FLTR_SIZE 128 45219820Sjeffstruct mlx4_set_vlan_fltr_mbox { 46219820Sjeff __be32 entry[VLAN_FLTR_SIZE]; 47219820Sjeff}; 48219820Sjeff 49219820Sjeff 50219820Sjeffenum { 51219820Sjeff MLX4_MCAST_CONFIG = 0, 52219820Sjeff MLX4_MCAST_DISABLE = 1, 53219820Sjeff MLX4_MCAST_ENABLE = 2, 54219820Sjeff}; 55219820Sjeff 56234099Sjhbenum { 57272027Shselasky MLX4_EN_10G_SPEED_XAUI = 0x00, 58272027Shselasky MLX4_EN_10G_SPEED_XFI = 0x01, 59234099Sjhb MLX4_EN_1G_SPEED = 0x02, 60272027Shselasky MLX4_EN_20G_SPEED = 0x08, 61234099Sjhb MLX4_EN_40G_SPEED = 0x40, 62272027Shselasky MLX4_EN_56G_SPEED = 0x20, 63234099Sjhb MLX4_EN_OTHER_SPEED = 0x0f, 64234099Sjhb}; 65234099Sjhb 66219820Sjeffstruct mlx4_en_query_port_context { 67219820Sjeff u8 link_up; 68219820Sjeff#define MLX4_EN_LINK_UP_MASK 0x80 69272027Shselasky u8 autoneg; 70272027Shselasky#define MLX4_EN_AUTONEG_MASK 0x80 71219820Sjeff __be16 mtu; 72219820Sjeff u8 reserved2; 73219820Sjeff u8 link_speed; 74272027Shselasky#define MLX4_EN_SPEED_MASK 0x6b 75219820Sjeff u16 reserved3[5]; 76219820Sjeff __be64 mac; 77219820Sjeff u8 transceiver; 78219820Sjeff}; 79219820Sjeff 80219820Sjeff 81219820Sjeffstruct mlx4_en_stat_out_mbox { 82219820Sjeff /* Received frames with a length of 64 octets */ 83219820Sjeff __be64 R64_prio_0; 84219820Sjeff __be64 R64_prio_1; 85219820Sjeff __be64 R64_prio_2; 86219820Sjeff __be64 R64_prio_3; 87219820Sjeff __be64 R64_prio_4; 88219820Sjeff __be64 R64_prio_5; 89219820Sjeff __be64 R64_prio_6; 90219820Sjeff __be64 R64_prio_7; 91219820Sjeff __be64 R64_novlan; 92219820Sjeff /* Received frames with a length of 127 octets */ 93219820Sjeff __be64 R127_prio_0; 94219820Sjeff __be64 R127_prio_1; 95219820Sjeff __be64 R127_prio_2; 96219820Sjeff __be64 R127_prio_3; 97219820Sjeff __be64 R127_prio_4; 98219820Sjeff __be64 R127_prio_5; 99219820Sjeff __be64 R127_prio_6; 100219820Sjeff __be64 R127_prio_7; 101219820Sjeff __be64 R127_novlan; 102219820Sjeff /* Received frames with a length of 255 octets */ 103219820Sjeff __be64 R255_prio_0; 104219820Sjeff __be64 R255_prio_1; 105219820Sjeff __be64 R255_prio_2; 106219820Sjeff __be64 R255_prio_3; 107219820Sjeff __be64 R255_prio_4; 108219820Sjeff __be64 R255_prio_5; 109219820Sjeff __be64 R255_prio_6; 110219820Sjeff __be64 R255_prio_7; 111219820Sjeff __be64 R255_novlan; 112219820Sjeff /* Received frames with a length of 511 octets */ 113219820Sjeff __be64 R511_prio_0; 114219820Sjeff __be64 R511_prio_1; 115219820Sjeff __be64 R511_prio_2; 116219820Sjeff __be64 R511_prio_3; 117219820Sjeff __be64 R511_prio_4; 118219820Sjeff __be64 R511_prio_5; 119219820Sjeff __be64 R511_prio_6; 120219820Sjeff __be64 R511_prio_7; 121219820Sjeff __be64 R511_novlan; 122219820Sjeff /* Received frames with a length of 1023 octets */ 123219820Sjeff __be64 R1023_prio_0; 124219820Sjeff __be64 R1023_prio_1; 125219820Sjeff __be64 R1023_prio_2; 126219820Sjeff __be64 R1023_prio_3; 127219820Sjeff __be64 R1023_prio_4; 128219820Sjeff __be64 R1023_prio_5; 129219820Sjeff __be64 R1023_prio_6; 130219820Sjeff __be64 R1023_prio_7; 131219820Sjeff __be64 R1023_novlan; 132219820Sjeff /* Received frames with a length of 1518 octets */ 133219820Sjeff __be64 R1518_prio_0; 134219820Sjeff __be64 R1518_prio_1; 135219820Sjeff __be64 R1518_prio_2; 136219820Sjeff __be64 R1518_prio_3; 137219820Sjeff __be64 R1518_prio_4; 138219820Sjeff __be64 R1518_prio_5; 139219820Sjeff __be64 R1518_prio_6; 140219820Sjeff __be64 R1518_prio_7; 141219820Sjeff __be64 R1518_novlan; 142219820Sjeff /* Received frames with a length of 1522 octets */ 143219820Sjeff __be64 R1522_prio_0; 144219820Sjeff __be64 R1522_prio_1; 145219820Sjeff __be64 R1522_prio_2; 146219820Sjeff __be64 R1522_prio_3; 147219820Sjeff __be64 R1522_prio_4; 148219820Sjeff __be64 R1522_prio_5; 149219820Sjeff __be64 R1522_prio_6; 150219820Sjeff __be64 R1522_prio_7; 151219820Sjeff __be64 R1522_novlan; 152219820Sjeff /* Received frames with a length of 1548 octets */ 153219820Sjeff __be64 R1548_prio_0; 154219820Sjeff __be64 R1548_prio_1; 155219820Sjeff __be64 R1548_prio_2; 156219820Sjeff __be64 R1548_prio_3; 157219820Sjeff __be64 R1548_prio_4; 158219820Sjeff __be64 R1548_prio_5; 159219820Sjeff __be64 R1548_prio_6; 160219820Sjeff __be64 R1548_prio_7; 161219820Sjeff __be64 R1548_novlan; 162219820Sjeff /* Received frames with a length of 1548 < octets < MTU */ 163219820Sjeff __be64 R2MTU_prio_0; 164219820Sjeff __be64 R2MTU_prio_1; 165219820Sjeff __be64 R2MTU_prio_2; 166219820Sjeff __be64 R2MTU_prio_3; 167219820Sjeff __be64 R2MTU_prio_4; 168219820Sjeff __be64 R2MTU_prio_5; 169219820Sjeff __be64 R2MTU_prio_6; 170219820Sjeff __be64 R2MTU_prio_7; 171219820Sjeff __be64 R2MTU_novlan; 172219820Sjeff /* Received frames with a length of MTU< octets and good CRC */ 173219820Sjeff __be64 RGIANT_prio_0; 174219820Sjeff __be64 RGIANT_prio_1; 175219820Sjeff __be64 RGIANT_prio_2; 176219820Sjeff __be64 RGIANT_prio_3; 177219820Sjeff __be64 RGIANT_prio_4; 178219820Sjeff __be64 RGIANT_prio_5; 179219820Sjeff __be64 RGIANT_prio_6; 180219820Sjeff __be64 RGIANT_prio_7; 181219820Sjeff __be64 RGIANT_novlan; 182219820Sjeff /* Received broadcast frames with good CRC */ 183219820Sjeff __be64 RBCAST_prio_0; 184219820Sjeff __be64 RBCAST_prio_1; 185219820Sjeff __be64 RBCAST_prio_2; 186219820Sjeff __be64 RBCAST_prio_3; 187219820Sjeff __be64 RBCAST_prio_4; 188219820Sjeff __be64 RBCAST_prio_5; 189219820Sjeff __be64 RBCAST_prio_6; 190219820Sjeff __be64 RBCAST_prio_7; 191219820Sjeff __be64 RBCAST_novlan; 192219820Sjeff /* Received multicast frames with good CRC */ 193219820Sjeff __be64 MCAST_prio_0; 194219820Sjeff __be64 MCAST_prio_1; 195219820Sjeff __be64 MCAST_prio_2; 196219820Sjeff __be64 MCAST_prio_3; 197219820Sjeff __be64 MCAST_prio_4; 198219820Sjeff __be64 MCAST_prio_5; 199219820Sjeff __be64 MCAST_prio_6; 200219820Sjeff __be64 MCAST_prio_7; 201219820Sjeff __be64 MCAST_novlan; 202219820Sjeff /* Received unicast not short or GIANT frames with good CRC */ 203219820Sjeff __be64 RTOTG_prio_0; 204219820Sjeff __be64 RTOTG_prio_1; 205219820Sjeff __be64 RTOTG_prio_2; 206219820Sjeff __be64 RTOTG_prio_3; 207219820Sjeff __be64 RTOTG_prio_4; 208219820Sjeff __be64 RTOTG_prio_5; 209219820Sjeff __be64 RTOTG_prio_6; 210219820Sjeff __be64 RTOTG_prio_7; 211219820Sjeff __be64 RTOTG_novlan; 212219820Sjeff 213219820Sjeff /* Count of total octets of received frames, includes framing characters */ 214219820Sjeff __be64 RTTLOCT_prio_0; 215219820Sjeff /* Count of total octets of received frames, not including framing 216219820Sjeff characters */ 217219820Sjeff __be64 RTTLOCT_NOFRM_prio_0; 218219820Sjeff /* Count of Total number of octets received 219219820Sjeff (only for frames without errors) */ 220219820Sjeff __be64 ROCT_prio_0; 221219820Sjeff 222219820Sjeff __be64 RTTLOCT_prio_1; 223219820Sjeff __be64 RTTLOCT_NOFRM_prio_1; 224219820Sjeff __be64 ROCT_prio_1; 225219820Sjeff 226219820Sjeff __be64 RTTLOCT_prio_2; 227219820Sjeff __be64 RTTLOCT_NOFRM_prio_2; 228219820Sjeff __be64 ROCT_prio_2; 229219820Sjeff 230219820Sjeff __be64 RTTLOCT_prio_3; 231219820Sjeff __be64 RTTLOCT_NOFRM_prio_3; 232219820Sjeff __be64 ROCT_prio_3; 233219820Sjeff 234219820Sjeff __be64 RTTLOCT_prio_4; 235219820Sjeff __be64 RTTLOCT_NOFRM_prio_4; 236219820Sjeff __be64 ROCT_prio_4; 237219820Sjeff 238219820Sjeff __be64 RTTLOCT_prio_5; 239219820Sjeff __be64 RTTLOCT_NOFRM_prio_5; 240219820Sjeff __be64 ROCT_prio_5; 241219820Sjeff 242219820Sjeff __be64 RTTLOCT_prio_6; 243219820Sjeff __be64 RTTLOCT_NOFRM_prio_6; 244219820Sjeff __be64 ROCT_prio_6; 245219820Sjeff 246219820Sjeff __be64 RTTLOCT_prio_7; 247219820Sjeff __be64 RTTLOCT_NOFRM_prio_7; 248219820Sjeff __be64 ROCT_prio_7; 249219820Sjeff 250219820Sjeff __be64 RTTLOCT_novlan; 251219820Sjeff __be64 RTTLOCT_NOFRM_novlan; 252219820Sjeff __be64 ROCT_novlan; 253219820Sjeff 254219820Sjeff /* Count of Total received frames including bad frames */ 255219820Sjeff __be64 RTOT_prio_0; 256219820Sjeff /* Count of Total number of received frames with 802.1Q encapsulation */ 257219820Sjeff __be64 R1Q_prio_0; 258219820Sjeff __be64 reserved1; 259219820Sjeff 260219820Sjeff __be64 RTOT_prio_1; 261219820Sjeff __be64 R1Q_prio_1; 262219820Sjeff __be64 reserved2; 263219820Sjeff 264219820Sjeff __be64 RTOT_prio_2; 265219820Sjeff __be64 R1Q_prio_2; 266219820Sjeff __be64 reserved3; 267219820Sjeff 268219820Sjeff __be64 RTOT_prio_3; 269219820Sjeff __be64 R1Q_prio_3; 270219820Sjeff __be64 reserved4; 271219820Sjeff 272219820Sjeff __be64 RTOT_prio_4; 273219820Sjeff __be64 R1Q_prio_4; 274219820Sjeff __be64 reserved5; 275219820Sjeff 276219820Sjeff __be64 RTOT_prio_5; 277219820Sjeff __be64 R1Q_prio_5; 278219820Sjeff __be64 reserved6; 279219820Sjeff 280219820Sjeff __be64 RTOT_prio_6; 281219820Sjeff __be64 R1Q_prio_6; 282219820Sjeff __be64 reserved7; 283219820Sjeff 284219820Sjeff __be64 RTOT_prio_7; 285219820Sjeff __be64 R1Q_prio_7; 286219820Sjeff __be64 reserved8; 287219820Sjeff 288219820Sjeff __be64 RTOT_novlan; 289219820Sjeff __be64 R1Q_novlan; 290219820Sjeff __be64 reserved9; 291219820Sjeff 292219820Sjeff /* Total number of Successfully Received Control Frames */ 293219820Sjeff __be64 RCNTL; 294219820Sjeff __be64 reserved10; 295219820Sjeff __be64 reserved11; 296219820Sjeff __be64 reserved12; 297219820Sjeff /* Count of received frames with a length/type field value between 46 298219820Sjeff (42 for VLANtagged frames) and 1500 (also 1500 for VLAN-tagged frames), 299219820Sjeff inclusive */ 300219820Sjeff __be64 RInRangeLengthErr; 301219820Sjeff /* Count of received frames with length/type field between 1501 and 1535 302219820Sjeff decimal, inclusive */ 303219820Sjeff __be64 ROutRangeLengthErr; 304219820Sjeff /* Count of received frames that are longer than max allowed size for 305219820Sjeff 802.3 frames (1518/1522) */ 306219820Sjeff __be64 RFrmTooLong; 307219820Sjeff /* Count frames received with PCS error */ 308219820Sjeff __be64 PCS; 309219820Sjeff 310219820Sjeff /* Transmit frames with a length of 64 octets */ 311219820Sjeff __be64 T64_prio_0; 312219820Sjeff __be64 T64_prio_1; 313219820Sjeff __be64 T64_prio_2; 314219820Sjeff __be64 T64_prio_3; 315219820Sjeff __be64 T64_prio_4; 316219820Sjeff __be64 T64_prio_5; 317219820Sjeff __be64 T64_prio_6; 318219820Sjeff __be64 T64_prio_7; 319219820Sjeff __be64 T64_novlan; 320219820Sjeff __be64 T64_loopbk; 321219820Sjeff /* Transmit frames with a length of 65 to 127 octets. */ 322219820Sjeff __be64 T127_prio_0; 323219820Sjeff __be64 T127_prio_1; 324219820Sjeff __be64 T127_prio_2; 325219820Sjeff __be64 T127_prio_3; 326219820Sjeff __be64 T127_prio_4; 327219820Sjeff __be64 T127_prio_5; 328219820Sjeff __be64 T127_prio_6; 329219820Sjeff __be64 T127_prio_7; 330219820Sjeff __be64 T127_novlan; 331219820Sjeff __be64 T127_loopbk; 332219820Sjeff /* Transmit frames with a length of 128 to 255 octets */ 333219820Sjeff __be64 T255_prio_0; 334219820Sjeff __be64 T255_prio_1; 335219820Sjeff __be64 T255_prio_2; 336219820Sjeff __be64 T255_prio_3; 337219820Sjeff __be64 T255_prio_4; 338219820Sjeff __be64 T255_prio_5; 339219820Sjeff __be64 T255_prio_6; 340219820Sjeff __be64 T255_prio_7; 341219820Sjeff __be64 T255_novlan; 342219820Sjeff __be64 T255_loopbk; 343219820Sjeff /* Transmit frames with a length of 256 to 511 octets */ 344219820Sjeff __be64 T511_prio_0; 345219820Sjeff __be64 T511_prio_1; 346219820Sjeff __be64 T511_prio_2; 347219820Sjeff __be64 T511_prio_3; 348219820Sjeff __be64 T511_prio_4; 349219820Sjeff __be64 T511_prio_5; 350219820Sjeff __be64 T511_prio_6; 351219820Sjeff __be64 T511_prio_7; 352219820Sjeff __be64 T511_novlan; 353219820Sjeff __be64 T511_loopbk; 354219820Sjeff /* Transmit frames with a length of 512 to 1023 octets */ 355219820Sjeff __be64 T1023_prio_0; 356219820Sjeff __be64 T1023_prio_1; 357219820Sjeff __be64 T1023_prio_2; 358219820Sjeff __be64 T1023_prio_3; 359219820Sjeff __be64 T1023_prio_4; 360219820Sjeff __be64 T1023_prio_5; 361219820Sjeff __be64 T1023_prio_6; 362219820Sjeff __be64 T1023_prio_7; 363219820Sjeff __be64 T1023_novlan; 364219820Sjeff __be64 T1023_loopbk; 365219820Sjeff /* Transmit frames with a length of 1024 to 1518 octets */ 366219820Sjeff __be64 T1518_prio_0; 367219820Sjeff __be64 T1518_prio_1; 368219820Sjeff __be64 T1518_prio_2; 369219820Sjeff __be64 T1518_prio_3; 370219820Sjeff __be64 T1518_prio_4; 371219820Sjeff __be64 T1518_prio_5; 372219820Sjeff __be64 T1518_prio_6; 373219820Sjeff __be64 T1518_prio_7; 374219820Sjeff __be64 T1518_novlan; 375219820Sjeff __be64 T1518_loopbk; 376219820Sjeff /* Counts transmit frames with a length of 1519 to 1522 bytes */ 377219820Sjeff __be64 T1522_prio_0; 378219820Sjeff __be64 T1522_prio_1; 379219820Sjeff __be64 T1522_prio_2; 380219820Sjeff __be64 T1522_prio_3; 381219820Sjeff __be64 T1522_prio_4; 382219820Sjeff __be64 T1522_prio_5; 383219820Sjeff __be64 T1522_prio_6; 384219820Sjeff __be64 T1522_prio_7; 385219820Sjeff __be64 T1522_novlan; 386219820Sjeff __be64 T1522_loopbk; 387219820Sjeff /* Transmit frames with a length of 1523 to 1548 octets */ 388219820Sjeff __be64 T1548_prio_0; 389219820Sjeff __be64 T1548_prio_1; 390219820Sjeff __be64 T1548_prio_2; 391219820Sjeff __be64 T1548_prio_3; 392219820Sjeff __be64 T1548_prio_4; 393219820Sjeff __be64 T1548_prio_5; 394219820Sjeff __be64 T1548_prio_6; 395219820Sjeff __be64 T1548_prio_7; 396219820Sjeff __be64 T1548_novlan; 397219820Sjeff __be64 T1548_loopbk; 398219820Sjeff /* Counts transmit frames with a length of 1549 to MTU bytes */ 399219820Sjeff __be64 T2MTU_prio_0; 400219820Sjeff __be64 T2MTU_prio_1; 401219820Sjeff __be64 T2MTU_prio_2; 402219820Sjeff __be64 T2MTU_prio_3; 403219820Sjeff __be64 T2MTU_prio_4; 404219820Sjeff __be64 T2MTU_prio_5; 405219820Sjeff __be64 T2MTU_prio_6; 406219820Sjeff __be64 T2MTU_prio_7; 407219820Sjeff __be64 T2MTU_novlan; 408219820Sjeff __be64 T2MTU_loopbk; 409219820Sjeff /* Transmit frames with a length greater than MTU octets and a good CRC. */ 410219820Sjeff __be64 TGIANT_prio_0; 411219820Sjeff __be64 TGIANT_prio_1; 412219820Sjeff __be64 TGIANT_prio_2; 413219820Sjeff __be64 TGIANT_prio_3; 414219820Sjeff __be64 TGIANT_prio_4; 415219820Sjeff __be64 TGIANT_prio_5; 416219820Sjeff __be64 TGIANT_prio_6; 417219820Sjeff __be64 TGIANT_prio_7; 418219820Sjeff __be64 TGIANT_novlan; 419219820Sjeff __be64 TGIANT_loopbk; 420219820Sjeff /* Transmit broadcast frames with a good CRC */ 421219820Sjeff __be64 TBCAST_prio_0; 422219820Sjeff __be64 TBCAST_prio_1; 423219820Sjeff __be64 TBCAST_prio_2; 424219820Sjeff __be64 TBCAST_prio_3; 425219820Sjeff __be64 TBCAST_prio_4; 426219820Sjeff __be64 TBCAST_prio_5; 427219820Sjeff __be64 TBCAST_prio_6; 428219820Sjeff __be64 TBCAST_prio_7; 429219820Sjeff __be64 TBCAST_novlan; 430219820Sjeff __be64 TBCAST_loopbk; 431219820Sjeff /* Transmit multicast frames with a good CRC */ 432219820Sjeff __be64 TMCAST_prio_0; 433219820Sjeff __be64 TMCAST_prio_1; 434219820Sjeff __be64 TMCAST_prio_2; 435219820Sjeff __be64 TMCAST_prio_3; 436219820Sjeff __be64 TMCAST_prio_4; 437219820Sjeff __be64 TMCAST_prio_5; 438219820Sjeff __be64 TMCAST_prio_6; 439219820Sjeff __be64 TMCAST_prio_7; 440219820Sjeff __be64 TMCAST_novlan; 441219820Sjeff __be64 TMCAST_loopbk; 442219820Sjeff /* Transmit good frames that are neither broadcast nor multicast */ 443219820Sjeff __be64 TTOTG_prio_0; 444219820Sjeff __be64 TTOTG_prio_1; 445219820Sjeff __be64 TTOTG_prio_2; 446219820Sjeff __be64 TTOTG_prio_3; 447219820Sjeff __be64 TTOTG_prio_4; 448219820Sjeff __be64 TTOTG_prio_5; 449219820Sjeff __be64 TTOTG_prio_6; 450219820Sjeff __be64 TTOTG_prio_7; 451219820Sjeff __be64 TTOTG_novlan; 452219820Sjeff __be64 TTOTG_loopbk; 453219820Sjeff 454219820Sjeff /* total octets of transmitted frames, including framing characters */ 455219820Sjeff __be64 TTTLOCT_prio_0; 456219820Sjeff /* total octets of transmitted frames, not including framing characters */ 457219820Sjeff __be64 TTTLOCT_NOFRM_prio_0; 458219820Sjeff /* ifOutOctets */ 459219820Sjeff __be64 TOCT_prio_0; 460219820Sjeff 461219820Sjeff __be64 TTTLOCT_prio_1; 462219820Sjeff __be64 TTTLOCT_NOFRM_prio_1; 463219820Sjeff __be64 TOCT_prio_1; 464219820Sjeff 465219820Sjeff __be64 TTTLOCT_prio_2; 466219820Sjeff __be64 TTTLOCT_NOFRM_prio_2; 467219820Sjeff __be64 TOCT_prio_2; 468219820Sjeff 469219820Sjeff __be64 TTTLOCT_prio_3; 470219820Sjeff __be64 TTTLOCT_NOFRM_prio_3; 471219820Sjeff __be64 TOCT_prio_3; 472219820Sjeff 473219820Sjeff __be64 TTTLOCT_prio_4; 474219820Sjeff __be64 TTTLOCT_NOFRM_prio_4; 475219820Sjeff __be64 TOCT_prio_4; 476219820Sjeff 477219820Sjeff __be64 TTTLOCT_prio_5; 478219820Sjeff __be64 TTTLOCT_NOFRM_prio_5; 479219820Sjeff __be64 TOCT_prio_5; 480219820Sjeff 481219820Sjeff __be64 TTTLOCT_prio_6; 482219820Sjeff __be64 TTTLOCT_NOFRM_prio_6; 483219820Sjeff __be64 TOCT_prio_6; 484219820Sjeff 485219820Sjeff __be64 TTTLOCT_prio_7; 486219820Sjeff __be64 TTTLOCT_NOFRM_prio_7; 487219820Sjeff __be64 TOCT_prio_7; 488219820Sjeff 489219820Sjeff __be64 TTTLOCT_novlan; 490219820Sjeff __be64 TTTLOCT_NOFRM_novlan; 491219820Sjeff __be64 TOCT_novlan; 492219820Sjeff 493219820Sjeff __be64 TTTLOCT_loopbk; 494219820Sjeff __be64 TTTLOCT_NOFRM_loopbk; 495219820Sjeff __be64 TOCT_loopbk; 496219820Sjeff 497219820Sjeff /* Total frames transmitted with a good CRC that are not aborted */ 498219820Sjeff __be64 TTOT_prio_0; 499219820Sjeff /* Total number of frames transmitted with 802.1Q encapsulation */ 500219820Sjeff __be64 T1Q_prio_0; 501219820Sjeff __be64 reserved13; 502219820Sjeff 503219820Sjeff __be64 TTOT_prio_1; 504219820Sjeff __be64 T1Q_prio_1; 505219820Sjeff __be64 reserved14; 506219820Sjeff 507219820Sjeff __be64 TTOT_prio_2; 508219820Sjeff __be64 T1Q_prio_2; 509219820Sjeff __be64 reserved15; 510219820Sjeff 511219820Sjeff __be64 TTOT_prio_3; 512219820Sjeff __be64 T1Q_prio_3; 513219820Sjeff __be64 reserved16; 514219820Sjeff 515219820Sjeff __be64 TTOT_prio_4; 516219820Sjeff __be64 T1Q_prio_4; 517219820Sjeff __be64 reserved17; 518219820Sjeff 519219820Sjeff __be64 TTOT_prio_5; 520219820Sjeff __be64 T1Q_prio_5; 521219820Sjeff __be64 reserved18; 522219820Sjeff 523219820Sjeff __be64 TTOT_prio_6; 524219820Sjeff __be64 T1Q_prio_6; 525219820Sjeff __be64 reserved19; 526219820Sjeff 527219820Sjeff __be64 TTOT_prio_7; 528219820Sjeff __be64 T1Q_prio_7; 529219820Sjeff __be64 reserved20; 530219820Sjeff 531219820Sjeff __be64 TTOT_novlan; 532219820Sjeff __be64 T1Q_novlan; 533219820Sjeff __be64 reserved21; 534219820Sjeff 535219820Sjeff __be64 TTOT_loopbk; 536219820Sjeff __be64 T1Q_loopbk; 537219820Sjeff __be64 reserved22; 538219820Sjeff 539219820Sjeff /* Received frames with a length greater than MTU octets and a bad CRC */ 540219820Sjeff __be32 RJBBR; 541219820Sjeff /* Received frames with a bad CRC that are not runts, jabbers, 542219820Sjeff or alignment errors */ 543219820Sjeff __be32 RCRC; 544219820Sjeff /* Received frames with SFD with a length of less than 64 octets and a 545219820Sjeff bad CRC */ 546219820Sjeff __be32 RRUNT; 547219820Sjeff /* Received frames with a length less than 64 octets and a good CRC */ 548219820Sjeff __be32 RSHORT; 549219820Sjeff /* Total Number of Received Packets Dropped */ 550219820Sjeff __be32 RDROP; 551219820Sjeff /* Drop due to overflow */ 552219820Sjeff __be32 RdropOvflw; 553219820Sjeff /* Drop due to overflow */ 554219820Sjeff __be32 RdropLength; 555219820Sjeff /* Total of good frames. Does not include frames received with 556219820Sjeff frame-too-long, FCS, or length errors */ 557219820Sjeff __be32 RTOTFRMS; 558219820Sjeff /* Total dropped Xmited packets */ 559219820Sjeff __be32 TDROP; 560219820Sjeff}; 561219820Sjeff 562219820Sjeff 563219820Sjeff#endif 564