Texas Instruments ICSSG PRUETH ethernet driver¶
- Version:
1.0
ICSSG Firmware¶
Every ICSSG core has two Programmable Real-Time Unit(PRUs), two auxiliary Real-Time Transfer Unit (RTUs), and two Transmit Real-Time Transfer Units (TX_PRUs). Each one of these runs its own firmware. The firmwares combnined are referred as ICSSG Firmware.
Firmware Statistics¶
The ICSSG firmware maintains certain statistics which are dumped by the driver
via ethtool -S <interface>
These statistics are as follows,
FW_RTU_PKT_DROP
: Diagnostic error counter which increments when RTU drops a locally injected packet due to port being disabled or rule violation.
FW_Q0_OVERFLOW
: TX overflow counter for queue0
FW_Q1_OVERFLOW
: TX overflow counter for queue1
FW_Q2_OVERFLOW
: TX overflow counter for queue2
FW_Q3_OVERFLOW
: TX overflow counter for queue3
FW_Q4_OVERFLOW
: TX overflow counter for queue4
FW_Q5_OVERFLOW
: TX overflow counter for queue5
FW_Q6_OVERFLOW
: TX overflow counter for queue6
FW_Q7_OVERFLOW
: TX overflow counter for queue7
FW_DROPPED_PKT
: This counter is incremented when a packet is dropped at PRU because of rule violation.
FW_RX_ERROR
: Incremented if there was a CRC error or Min/Max frame error at PRU
FW_RX_DS_INVALID
: Incremented when RTU detects Data Status invalid condition
FW_TX_DROPPED_PACKET
: Counter for packets dropped via TX Port
FW_TX_TS_DROPPED_PACKET
: Counter for packets with TS flag dropped via TX Port
FW_INF_PORT_DISABLED
: Incremented when RX frame is dropped due to port being disabled
FW_INF_SAV
: Incremented when RX frame is dropped due to Source Address violation
FW_INF_SA_DL
: Incremented when RX frame is dropped due to Source Address being in the denylist
FW_INF_PORT_BLOCKED
: Incremented when RX frame is dropped due to port being blocked and frame being a special frame
FW_INF_DROP_TAGGED
: Incremented when RX frame is dropped for being tagged
FW_INF_DROP_PRIOTAGGED
: Incremented when RX frame is dropped for being priority tagged
FW_INF_DROP_NOTAG
: Incremented when RX frame is dropped for being untagged
FW_INF_DROP_NOTMEMBER
: Incremented when RX frame is dropped for port not being member of VLAN
FW_RX_EOF_SHORT_FRMERR
: Incremented if End Of Frame (EOF) task is scheduled without seeing RX_B1
FW_RX_B0_DROP_EARLY_EOF
: Incremented when frame is dropped due to Early EOF
FW_TX_JUMBO_FRM_CUTOFF
: Incremented when frame is cut off to prevent packet size > 2000 Bytes
FW_RX_EXP_FRAG_Q_DROP
: Incremented when express frame is received in the same queue as the previous fragment
FW_RX_FIFO_OVERRUN
: RX fifo overrun counter
FW_CUT_THR_PKT
: Incremented when a packet is forwarded using Cut-Through forwarding method
FW_HOST_RX_PKT_CNT
: Number of valid packets sent by Rx PRU to Host on PSI
FW_HOST_TX_PKT_CNT
: Number of valid packets copied by RTU0 to Tx queues
FW_HOST_EGRESS_Q_PRE_OVERFLOW
: Host Egress Q (Pre-emptible) Overflow Counter
FW_HOST_EGRESS_Q_EXP_OVERFLOW
: Host Egress Q (Pre-emptible) Overflow Counter