Lines Matching +full:frame +full:- +full:number

10  * vxge-traffic.h: Driver for Exar Corp's X3100 Series 10GbE PCIe I/O
12 * Copyright(c) 2002-2010 Exar Corp.
17 #include "vxge-reg.h"
18 #include "vxge-version.h"
72 * enum vxge_hw_event- Enumerates slow-path HW events.
83 * @VXGE_HW_EVENT_SLOT_FREEZE: Slot-freeze event. Driver tries to distinguish
84 * slot-freeze from the rest critical events (e.g. ECC) when it is
85 * impossible to PIO read "through" the bus, i.e. when getting all-foxes.
87 * enum vxge_hw_event enumerates slow-path HW eventis.
114 * struct vxge_hw_mempool_dma - Represents DMA objects passed to the
124 * vxge_hw_mempool_item_f - Mempool item alloc/free callback
130 * @is_last: True, if this item is the last one in the pool; false - otherwise.
131 * userdata: Per-pool user context.
137 * struct vxge_hw_mempool - Memory pool.
174 * struct vxge_hw_tim_intr_config - Titan Tim interrupt configuration.
178 * asserted, other interrupt-generating entities will cancel the
184 * @timer_ri_en: Timer Consecutive (Re-) Interrupt 1 : Consecutive
185 * (Re-) Interrupt Enable: When asserted, an interrupt will be
189 * cleared by H/W at the end of the current-timer-interval when
196 * 0-Virtual Path 0
197 * 1-Virtual Path 1
199 * 16-Virtual Path 17
200 * 17-Legacy Tx network utilization, provided by TPA
201 * 18-Legacy Rx network utilization, provided by FAU
202 * 19-Average of legacy Rx and Tx utilization calculated from link
204 * 20-31-Invalid configurations
205 * 32-Host utilization for Virtual Path 0
206 * 33-Host utilization for Virtual Path 1
208 * 48-Host utilization for Virtual Path 17
209 * 49-Legacy Tx network utilization, provided by TPA
210 * 50-Legacy Rx network utilization, provided by FAU
211 * 51-Average of legacy Rx and Tx utilization calculated from
213 * 52-63-Invalid configurations
221 * and the UEC_A field (below) is non-zero.
328 * struct vxge_hw_xmac_aggr_stats - Per-Aggregator XMAC Statistics
401 * struct vxge_hw_xmac_port_stats - XMAC Port Statistics
409 * 8 bytes of preamble for each frame). This stat can be configured
449 * (such as an uncorrectable ECC error). 2) A frame parsing error
453 * @tx_xgmii_char2_match: Maintains a count of the number of transmitted XGMII
457 * tracks the number of transmitted Terminate characters.
458 * @tx_xgmii_char1_match: Maintains a count of the number of transmitted XGMII
463 * the number of transmitted Start characters.
464 * @tx_xgmii_column2_match: Maintains a count of the number of transmitted XGMII
468 * the statistic tracks the number of Error columns transmitted at
474 * @tx_xgmii_column1_match: Maintains a count of the number of transmitted XGMII
478 * thus the statistic tracks the number of transmitted Idle columns.
481 * there is an ECC while reading the frame out of the transmit
483 * block determines that the frame should not be sent.
489 * with frame-too-long, FCS, or length errors. This stat can be
493 * frames received with frame-too-long, FCS, or length errors.
501 * bytes of preamble for each frame). This stat can be configured
505 * frames. Does not include frames received with frame-too-long,
512 * with frame-too-long, FCS, or length errors.
515 * with frame-too-long, FCS, or length errors.
520 * a non-unicast (broadcast or multicast) address. Only includes
522 * non-unicast frames that contain FCS errors if the MAC_ERROR_CFG
523 * register is set to pass FCS-errored frames to the host.
526 * + 18 bytes (+ 22 bytes if VLAN-tagged).
528 * framing bits) less than 64 octets, that are otherwise well-formed.
532 * well-formed. Note: If register XMAC_STATS_GLOBAL_CFG.VLAN_HANDLING
534 * (1522 if VLAN-tagged) octets".
542 * 1518 octets" becomes "more than 1518 (1522 if VLAN-tagged)
546 * received with frame-too-long, FCS, or length errors.
549 * octets inclusive. Includes frames received with frame-too-long,
553 * octets inclusive. Includes frames received with frame-too-long,
557 * octets inclusive. Includes frames received with frame-too-long,
561 * octets inclusive. Includes frames received with frame-too-long,
565 * octets inclusive. Includes frames received with frame-too-long,
569 * octets inclusive. Includes frames received with frame-too-long,
573 * octets inclusive. Includes frames received with frame-too-long,
578 * with frame-too-long, FCS, or length errors.
581 * RX_MAX_PYLD_LEN+18 (+22 bytes if VLAN-tagged) octets inclusive.
582 * Includes frames received with frame-too-long,
587 * @rx_ip_octets: Count of number of octets in received IP datagrams. Includes
599 * @rx_pause_count: Count of number of pause quanta that the MAC has been in
609 * not include frames received with frame-too-long or
610 * frame-too-short error.
612 * value between 46 (42 for VLAN-tagged frames) and 1500 (also 1500
613 * for VLAN-tagged frames), inclusive, that does not match the
614 * number of data octets (including pad) received. Also contains
616 * 46 (42 for VLAN-tagged frames) and the number of data octets
617 * (including pad) received is greater than 46 (42 for VLAN-tagged
624 * for a list of reasons. Because the RMAC drops one frame at a time,
625 * this stat also indicates the number of drop events.
657 * invalid frame length (includes fragments, oversized frames and
658 * mismatch between frame length and length/type field). This stat
662 * receive protocol assist (RPA) discovered and error in the frame
663 * or was unable to parse the frame.
668 * traffic steering (RTS) logic. Includes those frame discarded
671 * frame.
673 * receive traffic steering (RTS) steered the frame to the trash
679 * is nearly full -- this can happen if the external receive buffer
686 * incremented when either -
696 * incremented. Also increments if the start frame delimiter is not
699 * @rx_xgmii_char1_match: Maintains a count of the number of XGMII characters
703 * number of Error characters received at any time.
704 * @rx_xgmii_err_sym: Count of the number of symbol errors in the received
707 * Start Frame Delimiter and End Frame Delimiter, inclusive. And
708 * only increments the count by one for each frame.
709 * @rx_xgmii_column1_match: Maintains a count of the number of XGMII columns
713 * the statistic tracks the number of Error columns received at any
715 * @rx_xgmii_char2_match: Maintains a count of the number of XGMII characters
719 * number of Error characters received at any time.
720 * @rx_local_fault: Maintains a count of the number of times that link
722 * @rx_xgmii_column2_match: Maintains a count of the number of XGMII columns
726 * the statistic tracks the number of Error columns received at any
734 * @rx_remote_fault: Maintains a count of the number of times that link
838 * struct vxge_hw_xmac_vpath_tx_stats - XMAC Vpath Tx Statistics
846 * each frame)
871 * error (such as an uncorrectable ECC error). 2) A frame parsing
882 * total number of segments retransmitted. Retransmitted segments
914 * struct vxge_hw_xmac_vpath_rx_stats - XMAC Vpath RX Statistics
918 * frames received with frame-too-long, FCS, or length errors.
923 * of frames that are at least 14 bytes (18 bytes for VLAN-tagged)
929 * frames. Does not include frames received with frame-too-long,
935 * frame-too-long, FCS, or length errors.
938 * frame-too-long, FCS, or length errors.
943 * a non-unicast (broadcast or multicast) address. Only includes
945 * non-unicast frames that contain FCS errors if the MAC_ERROR_CFG
946 * register is set to pass FCS-errored frames to the host.
949 * + 18 bytes (+ 22 bytes if VLAN-tagged).
951 * framing bits) less than 64 octets, that are otherwise well-formed.
955 * well-formed.
964 * received with frame-too-long, FCS, or length errors.
968 * Includes frames received with frame-too-long, FCS,
973 * inclusive. Includes frames received with frame-too-long, FCS,
978 * inclusive. Includes frames received with frame-too-long, FCS, or
982 * octets inclusive. Includes frames received with frame-too-long,
986 * octets inclusive. Includes frames received with frame-too-long,
990 * octets inclusive. Includes frames received with frame-too-long,
994 * octets inclusive. Includes frames received with frame-too-long,
999 * with frame-too-long, FCS, or length errors.
1002 * (+22 bytes if VLAN-tagged) octets inclusive. Includes frames
1003 * received with frame-too-long, FCS, or length errors.
1007 * @rx_ip_octets: Count of number of octets in received IP datagrams.
1030 * target VPATH is asleep (a Wake-on-LAN magic packet can be used
1086 * struct vxge_hw_xmac_stats - XMAC Statistics
1107 * struct vxge_hw_vpath_stats_hw_info - Titan vpath hardware statistics.
1108 * @ini_num_mwr_sent: The number of PCI memory writes initiated by the PIC block
1110 * @ini_num_mrd_sent: The number of PCI memory reads initiated by the PIC block
1111 * @ini_num_cpl_rcvd: The number of PCI read completions received by the
1113 * @ini_num_mwr_byte_sent: The number of PCI memory write bytes sent by the PIC
1115 * @ini_num_cpl_byte_rcvd: The number of PCI read completion bytes received by
1148 * frame buffer (and subsequently to the host).
1152 * whenever the received frame matches the VPATH's Wake-on-LAN
1156 * because the current VPIN does not match that VPIN of the frame
1205 * struct vxge_hw_device_stats_mrpcim_info - Titan mrpcim hardware statistics.
1206 * @pic.ini_rd_drop 0x0000 4 Number of DMA reads initiated
1208 * @pic.ini_wr_drop 0x0004 4 Number of DMA writes initiated by the
1210 * @pic.wrcrdtarb_ph_crdt_depleted[vplane0] 0x0008 4 Number of times
1212 * @pic.wrcrdtarb_ph_crdt_depleted[vplane1] 0x0010 4 Number of times
1214 * @pic.wrcrdtarb_ph_crdt_depleted[vplane2] 0x0018 4 Number of times
1216 * @pic.wrcrdtarb_ph_crdt_depleted[vplane3] 0x0020 4 Number of times
1218 * @pic.wrcrdtarb_ph_crdt_depleted[vplane4] 0x0028 4 Number of times
1220 * @pic.wrcrdtarb_ph_crdt_depleted[vplane5] 0x0030 4 Number of times
1222 * @pic.wrcrdtarb_ph_crdt_depleted[vplane6] 0x0038 4 Number of times
1224 * @pic.wrcrdtarb_ph_crdt_depleted[vplane7] 0x0040 4 Number of times
1226 * @pic.wrcrdtarb_ph_crdt_depleted[vplane8] 0x0048 4 Number of times
1228 * @pic.wrcrdtarb_ph_crdt_depleted[vplane9] 0x0050 4 Number of times
1230 * @pic.wrcrdtarb_ph_crdt_depleted[vplane10] 0x0058 4 Number of times
1232 * @pic.wrcrdtarb_ph_crdt_depleted[vplane11] 0x0060 4 Number of times
1234 * @pic.wrcrdtarb_ph_crdt_depleted[vplane12] 0x0068 4 Number of times
1236 * @pic.wrcrdtarb_ph_crdt_depleted[vplane13] 0x0070 4 Number of times
1238 * @pic.wrcrdtarb_ph_crdt_depleted[vplane14] 0x0078 4 Number of times
1240 * @pic.wrcrdtarb_ph_crdt_depleted[vplane15] 0x0080 4 Number of times
1242 * @pic.wrcrdtarb_ph_crdt_depleted[vplane16] 0x0088 4 Number of times
1244 * @pic.wrcrdtarb_pd_crdt_depleted[vplane0] 0x0090 4 Number of times
1246 * @pic.wrcrdtarb_pd_crdt_depleted[vplane1] 0x0098 4 Number of times
1248 * @pic.wrcrdtarb_pd_crdt_depleted[vplane2] 0x00a0 4 Number of times
1250 * @pic.wrcrdtarb_pd_crdt_depleted[vplane3] 0x00a8 4 Number of times
1252 * @pic.wrcrdtarb_pd_crdt_depleted[vplane4] 0x00b0 4 Number of times
1254 * @pic.wrcrdtarb_pd_crdt_depleted[vplane5] 0x00b8 4 Number of times
1256 * @pic.wrcrdtarb_pd_crdt_depleted[vplane6] 0x00c0 4 Number of times
1258 * @pic.wrcrdtarb_pd_crdt_depleted[vplane7] 0x00c8 4 Number of times
1260 * @pic.wrcrdtarb_pd_crdt_depleted[vplane8] 0x00d0 4 Number of times
1262 * @pic.wrcrdtarb_pd_crdt_depleted[vplane9] 0x00d8 4 Number of times
1264 * @pic.wrcrdtarb_pd_crdt_depleted[vplane10] 0x00e0 4 Number of times
1266 * @pic.wrcrdtarb_pd_crdt_depleted[vplane11] 0x00e8 4 Number of times
1268 * @pic.wrcrdtarb_pd_crdt_depleted[vplane12] 0x00f0 4 Number of times
1270 * @pic.wrcrdtarb_pd_crdt_depleted[vplane13] 0x00f8 4 Number of times
1272 * @pic.wrcrdtarb_pd_crdt_depleted[vplane14] 0x0100 4 Number of times
1274 * @pic.wrcrdtarb_pd_crdt_depleted[vplane15] 0x0108 4 Number of times
1276 * @pic.wrcrdtarb_pd_crdt_depleted[vplane16] 0x0110 4 Number of times
1278 * @pic.rdcrdtarb_nph_crdt_depleted[vplane0] 0x0118 4 Number of times
1279 * the non-posted header credits for upstream PCI reads were depleted
1280 * @pic.rdcrdtarb_nph_crdt_depleted[vplane1] 0x0120 4 Number of times
1281 * the non-posted header credits for upstream PCI reads were depleted
1282 * @pic.rdcrdtarb_nph_crdt_depleted[vplane2] 0x0128 4 Number of times
1283 * the non-posted header credits for upstream PCI reads were depleted
1284 * @pic.rdcrdtarb_nph_crdt_depleted[vplane3] 0x0130 4 Number of times
1285 * the non-posted header credits for upstream PCI reads were depleted
1286 * @pic.rdcrdtarb_nph_crdt_depleted[vplane4] 0x0138 4 Number of times
1287 * the non-posted header credits for upstream PCI reads were depleted
1288 * @pic.rdcrdtarb_nph_crdt_depleted[vplane5] 0x0140 4 Number of times
1289 * the non-posted header credits for upstream PCI reads were depleted
1290 * @pic.rdcrdtarb_nph_crdt_depleted[vplane6] 0x0148 4 Number of times
1291 * the non-posted header credits for upstream PCI reads were depleted
1292 * @pic.rdcrdtarb_nph_crdt_depleted[vplane7] 0x0150 4 Number of times
1293 * the non-posted header credits for upstream PCI reads were depleted
1294 * @pic.rdcrdtarb_nph_crdt_depleted[vplane8] 0x0158 4 Number of times
1295 * the non-posted header credits for upstream PCI reads were depleted
1296 * @pic.rdcrdtarb_nph_crdt_depleted[vplane9] 0x0160 4 Number of times
1297 * the non-posted header credits for upstream PCI reads were depleted
1298 * @pic.rdcrdtarb_nph_crdt_depleted[vplane10] 0x0168 4 Number of times
1299 * the non-posted header credits for upstream PCI reads were depleted
1300 * @pic.rdcrdtarb_nph_crdt_depleted[vplane11] 0x0170 4 Number of times
1301 * the non-posted header credits for upstream PCI reads were depleted
1302 * @pic.rdcrdtarb_nph_crdt_depleted[vplane12] 0x0178 4 Number of times
1303 * the non-posted header credits for upstream PCI reads were depleted
1304 * @pic.rdcrdtarb_nph_crdt_depleted[vplane13] 0x0180 4 Number of times
1305 * the non-posted header credits for upstream PCI reads were depleted
1306 * @pic.rdcrdtarb_nph_crdt_depleted[vplane14] 0x0188 4 Number of times
1307 * the non-posted header credits for upstream PCI reads were depleted
1308 * @pic.rdcrdtarb_nph_crdt_depleted[vplane15] 0x0190 4 Number of times
1309 * the non-posted header credits for upstream PCI reads were depleted
1310 * @pic.rdcrdtarb_nph_crdt_depleted[vplane16] 0x0198 4 Number of times
1311 * the non-posted header credits for upstream PCI reads were depleted
1312 * @pic.ini_rd_vpin_drop 0x01a0 4 Number of DMA reads initiated by
1313 * the adapter that were discarded because the VPATH instance number does
1315 * @pic.ini_wr_vpin_drop 0x01a4 4 Number of DMA writes initiated
1316 * by the adapter that were discarded because the VPATH instance number
1335 * @pci.depl_cplh[vplane0] 0x01e2 2 Number of times completion
1337 * @pci.depl_nph[vplane0] 0x01e4 2 Number of times non posted
1339 * @pci.depl_ph[vplane0] 0x01e6 2 Number of times the posted
1389 * @pci.depl_cpld[vplane0] 0x026a 2 Number of times completion data
1391 * @pci.depl_npd[vplane0] 0x026c 2 Number of times non posted data
1393 * @pci.depl_pd[vplane0] 0x026e 2 Number of times the posted data
1530 * struct vxge_hw_device_stats_hw_info - Titan hardware statistics.
1544 * struct vxge_hw_vpath_stats_sw_common_info - HW common
1546 * @full_cnt: Number of times the queue was full
1565 * struct vxge_hw_vpath_stats_sw_fifo_info - HW fifo statistics
1567 * @total_posts: Total number of postings on the queue.
1568 * @total_buffers: Total number of buffers posted.
1571 * 0xA - "loss of link".
1573 * number of times the corresponding transfer code was encountered.
1587 * struct vxge_hw_vpath_stats_sw_ring_info - HW ring statistics
1592 * 0x7 - for "invalid receive buffer size", or 0x8 - for ECC.
1594 * number of times the corresponding transfer code was encountered.
1607 * struct vxge_hw_vpath_stats_sw_err - HW vpath error statistics
1645 * struct vxge_hw_vpath_stats_sw_info - HW vpath sw statistics
1646 * @soft_reset_cnt: Number of times soft reset is done on this vpath.
1662 * struct vxge_hw_device_stats_sw_info - HW own per-device statistics.
1664 * @not_traffic_intr_cnt: Number of times the host was interrupted
1666 * "Non-traffic interrupt counter".
1667 * @traffic_intr_cnt: Number of traffic interrupts for the device.
1668 * @total_intr_cnt: Total number of traffic interrupts for the device.
1671 * @soft_reset_cnt: Number of times soft reset is done on this device.
1673 * HW per-device statistics.
1685 * struct vxge_hw_device_stats_sw_err - HW device error statistics.
1686 * @vpath_alarms: Number of vpath alarms
1695 * struct vxge_hw_device_stats - Contains HW per-device statistics,
1698 * @dma_addr: DMA address of the %hw_info. Given to device to fill-in the stats.
1707 * @sw_dev_info_stats: HW's "soft" device informational statistics, e.g. number
1711 * Structure-container of HW per-device statistics. Note that per-channel
1756 * enum enum vxge_hw_mgmt_reg_type - Register types.
1793 * enum enum vxge_hw_rxd_state - Descriptor (RXD) state.
1799 * filling-in and posting later.
1812 * struct vxge_hw_ring_rxd_info - Extended information associated with a
1820 * the checksum is correct, otherwise - the datagram is
1825 * the checksum is correct. Otherwise - the packet is
1827 * @frame: Zero or more of enum vxge_hw_frame_type flags.
1830 * various higher-layer protocols, including (but note restricted to)
1833 * @vlan: VLAN tag extracted from the received frame.
1851 u32 frame; member
1862 * enum vxge_hw_ring_tcode - Transfer codes returned by adapter
1872 * @VXGE_HW_RING_T_CODE_L2_FRM_ERR: Layer 2 error frame integrity
1883 * @VXGE_HW_RING_T_CODE_FRM_DROP: Frame dropped either due to
1945 * enum enum vxge_hw_frame_proto - Higher-layer ethernet protocols.
1968 * enum enum vxge_hw_fifo_gather_code - Gather codes used in fifo TxD
1984 * enum enum vxge_hw_fifo_tcode - tcodes used in fifo
1987 * frame data) returned with corrupt data.
1991 * frame or LSO MSS that was too long (>9800B).
2049 #define VXGE_HW_RING_NEXT_BLOCK_POINTER_OFFSET (VXGE_HW_BLOCK_SIZE-8)
2050 #define VXGE_HW_RING_MEMBLOCK_IDX_OFFSET (VXGE_HW_BLOCK_SIZE-16)
2053 * struct __vxge_hw_ring_rxd_priv - Receive descriptor HW-private data.
2058 * bytes. Each memblock is contiguous DMA-able memory. Each
2067 * Per-receive decsriptor HW-private data. HW uses the space to keep DMA
2069 * to allocate additional per-descriptor space for its own (driver-specific)
2091 ((struct __vxge_hw_vpath_handle *)(vpath)->vpath_handles.next)