struct atl1e_hw_stats { /* rx */ unsignedlong rx_ok; /* The number of good packet received. */ unsignedlong rx_bcast; /* The number of good broadcast packet received. */ unsignedlong rx_mcast; /* The number of good multicast packet received. */ unsignedlong rx_pause; /* The number of Pause packet received. */ unsignedlong rx_ctrl; /* The number of Control packet received other than Pause frame. */ unsignedlong rx_fcs_err; /* The number of packets with bad FCS. */ unsignedlong rx_len_err; /* The number of packets with mismatch of length field and actual size. */ unsignedlong rx_byte_cnt; /* The number of bytes of good packet received. FCS is NOT included. */ unsignedlong rx_runt; /* The number of packets received that are less than 64 byte long and with good FCS. */ unsignedlong rx_frag; /* The number of packets received that are less than 64 byte long and with bad FCS. */ unsignedlong rx_sz_64; /* The number of good and bad packets received that are 64 byte long. */ unsignedlong rx_sz_65_127; /* The number of good and bad packets received that are between 65 and 127-byte long. */ unsignedlong rx_sz_128_255; /* The number of good and bad packets received that are between 128 and 255-byte long. */ unsignedlong rx_sz_256_511; /* The number of good and bad packets received that are between 256 and 511-byte long. */ unsignedlong rx_sz_512_1023; /* The number of good and bad packets received that are between 512 and 1023-byte long. */ unsignedlong rx_sz_1024_1518; /* The number of good and bad packets received that are between 1024 and 1518-byte long. */ unsignedlong rx_sz_1519_max; /* The number of good and bad packets received that are between 1519-byte and MTU. */ unsignedlong rx_sz_ov; /* The number of good and bad packets received that are more than MTU size truncated by Selene. */ unsignedlong rx_rxf_ov; /* The number of frame dropped due to occurrence of RX FIFO overflow. */ unsignedlong rx_rrd_ov; /* The number of frame dropped due to occurrence of RRD overflow. */ unsignedlong rx_align_err; /* Alignment Error */ unsignedlong rx_bcast_byte_cnt; /* The byte count of broadcast packet received, excluding FCS. */ unsignedlong rx_mcast_byte_cnt; /* The byte count of multicast packet received, excluding FCS. */ unsignedlong rx_err_addr; /* The number of packets dropped due to address filtering. */
/* tx */ unsignedlong tx_ok; /* The number of good packet transmitted. */ unsignedlong tx_bcast; /* The number of good broadcast packet transmitted. */ unsignedlong tx_mcast; /* The number of good multicast packet transmitted. */ unsignedlong tx_pause; /* The number of Pause packet transmitted. */ unsignedlong tx_exc_defer; /* The number of packets transmitted with excessive deferral. */ unsignedlong tx_ctrl; /* The number of packets transmitted is a control frame, excluding Pause frame. */ unsignedlong tx_defer; /* The number of packets transmitted that is deferred. */ unsignedlong tx_byte_cnt; /* The number of bytes of data transmitted. FCS is NOT included. */ unsignedlong tx_sz_64; /* The number of good and bad packets transmitted that are 64 byte long. */ unsignedlong tx_sz_65_127; /* The number of good and bad packets transmitted that are between 65 and 127-byte long. */ unsignedlong tx_sz_128_255; /* The number of good and bad packets transmitted that are between 128 and 255-byte long. */ unsignedlong tx_sz_256_511; /* The number of good and bad packets transmitted that are between 256 and 511-byte long. */ unsignedlong tx_sz_512_1023; /* The number of good and bad packets transmitted that are between 512 and 1023-byte long. */ unsignedlong tx_sz_1024_1518; /* The number of good and bad packets transmitted that are between 1024 and 1518-byte long. */ unsignedlong tx_sz_1519_max; /* The number of good and bad packets transmitted that are between 1519-byte and MTU. */ unsignedlong tx_1_col; /* The number of packets subsequently transmitted successfully with a single prior collision. */ unsignedlong tx_2_col; /* The number of packets subsequently transmitted successfully with multiple prior collisions. */ unsignedlong tx_late_col; /* The number of packets transmitted with late collisions. */ unsignedlong tx_abort_col; /* The number of transmit packets aborted due to excessive collisions. */ unsignedlong tx_underrun; /* The number of transmit packets aborted due to transmit FIFO underrun, or TRD FIFO underrun */ unsignedlong tx_rd_eop; /* The number of times that read beyond the EOP into the next frame area when TRD was not written timely */ unsignedlong tx_len_err; /* The number of transmit packets with length field does NOT match the actual frame size. */ unsignedlong tx_trunc; /* The number of transmit packets truncated due to size exceeding MTU. */ unsignedlong tx_bcast_byte; /* The byte count of broadcast packet transmitted, excluding FCS. */ unsignedlong tx_mcast_byte; /* The byte count of multicast packet transmitted, excluding FCS. */
};
/* * wrapper around a pointer to a socket buffer, * so a DMA handle can be stored along with the buffer
*/ struct atl1e_tx_buffer { struct sk_buff *skb;
u16 flags; #define ATL1E_TX_PCIMAP_SINGLE 0x0001 #define ATL1E_TX_PCIMAP_PAGE 0x0002 #define ATL1E_TX_PCIMAP_TYPE_MASK 0x0003
u16 length;
dma_addr_t dma;
};
#define ATL1E_SET_PCIMAP_TYPE(tx_buff, type) do { \
((tx_buff)->flags) &= ~ATL1E_TX_PCIMAP_TYPE_MASK; \
((tx_buff)->flags) |= (type); \
} while (0)
struct atl1e_rx_page {
dma_addr_t dma; /* receive rage DMA address */
u8 *addr; /* receive rage virtual address */
dma_addr_t write_offset_dma; /* the DMA address which contain the
receive data offset in the page */
u32 *write_offset_addr; /* the virtaul address which contain
the receive data offset in the page */
u32 read_offset; /* the offset where we have read */
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.