drivers/net/ethernet/samsung/sxgbe/sxgbe_common.h

Source file repositories/reference/linux-study-clean/drivers/net/ethernet/samsung/sxgbe/sxgbe_common.h

File Facts

System
Linux kernel
Corpus path
drivers/net/ethernet/samsung/sxgbe/sxgbe_common.h
Extension
.h
Size
14941 bytes
Lines
532
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct sxgbe_extra_stats {
	/* TX/RX IRQ events */
	unsigned long tx_underflow_irq;
	unsigned long tx_process_stopped_irq;
	unsigned long tx_ctxt_desc_err;
	unsigned long tx_threshold;
	unsigned long rx_threshold;
	unsigned long tx_pkt_n;
	unsigned long rx_pkt_n;
	unsigned long normal_irq_n;
	unsigned long tx_normal_irq_n;
	unsigned long rx_normal_irq_n;
	unsigned long napi_poll;
	unsigned long tx_clean;
	unsigned long tx_reset_ic_bit;
	unsigned long rx_process_stopped_irq;
	unsigned long rx_underflow_irq;

	/* Bus access errors */
	unsigned long fatal_bus_error_irq;
	unsigned long tx_read_transfer_err;
	unsigned long tx_write_transfer_err;
	unsigned long tx_desc_access_err;
	unsigned long tx_buffer_access_err;
	unsigned long tx_data_transfer_err;
	unsigned long rx_read_transfer_err;
	unsigned long rx_write_transfer_err;
	unsigned long rx_desc_access_err;
	unsigned long rx_buffer_access_err;
	unsigned long rx_data_transfer_err;

	/* EEE-LPI stats */
	unsigned long tx_lpi_entry_n;
	unsigned long tx_lpi_exit_n;
	unsigned long rx_lpi_entry_n;
	unsigned long rx_lpi_exit_n;
	unsigned long eee_wakeup_error_n;

	/* RX specific */
	/* L2 error */
	unsigned long rx_code_gmii_err;
	unsigned long rx_watchdog_err;
	unsigned long rx_crc_err;
	unsigned long rx_gaint_pkt_err;
	unsigned long ip_hdr_err;
	unsigned long ip_payload_err;
	unsigned long overflow_error;

	/* L2 Pkt type */
	unsigned long len_pkt;
	unsigned long mac_ctl_pkt;
	unsigned long dcb_ctl_pkt;
	unsigned long arp_pkt;
	unsigned long oam_pkt;
	unsigned long untag_okt;
	unsigned long other_pkt;
	unsigned long svlan_tag_pkt;
	unsigned long cvlan_tag_pkt;
	unsigned long dvlan_ocvlan_icvlan_pkt;
	unsigned long dvlan_osvlan_isvlan_pkt;
	unsigned long dvlan_osvlan_icvlan_pkt;
	unsigned long dvan_ocvlan_icvlan_pkt;

	/* L3/L4 Pkt type */
	unsigned long not_ip_pkt;
	unsigned long ip4_tcp_pkt;
	unsigned long ip4_udp_pkt;
	unsigned long ip4_icmp_pkt;
	unsigned long ip4_unknown_pkt;
	unsigned long ip6_tcp_pkt;
	unsigned long ip6_udp_pkt;
	unsigned long ip6_icmp_pkt;
	unsigned long ip6_unknown_pkt;

	/* Filter specific */
	unsigned long vlan_filter_match;
	unsigned long sa_filter_fail;
	unsigned long da_filter_fail;
	unsigned long hash_filter_pass;
	unsigned long l3_filter_match;
	unsigned long l4_filter_match;

	/* RX context specific */
	unsigned long timestamp_dropped;
	unsigned long rx_msg_type_no_ptp;
	unsigned long rx_ptp_type_sync;
	unsigned long rx_ptp_type_follow_up;
	unsigned long rx_ptp_type_delay_req;
	unsigned long rx_ptp_type_delay_resp;
	unsigned long rx_ptp_type_pdelay_req;

Annotation

Implementation Notes