⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dgrs_ether.h

📁 powerpc内核mpc8241linux系统下net驱动程序
💻 H
字号:
/* *	A filtering function.  There are two filters/port.  Filter "0" *	is the input filter, and filter "1" is the output filter. */typedef int (FILTER_FUNC)(uchar *pktp, int pktlen, ulong *scratch, int port);#define	NFILTERS	2/* *	The per port structure */typedef struct{	int		chan;		/* Channel number (0-3) */	ulong		portaddr;	/* address of 596 port register */	volatile ulong	*ca;		/* address of 596 chan attention */	ulong		intmask;	/* Interrupt mask for this port */	ulong		intack;		/* Ack bit for this port */	uchar		ethaddr[6];	/* Ethernet address of this port */	int		is_promisc;	/* Port is promiscuous */	int		debug;		/* Debugging turned on */	I596_ISCP	*iscpp;		/* Uncached ISCP pointer */	I596_SCP	*scpp;		/* Uncached SCP pointer */	I596_SCB	*scbp;		/* Uncached SCB pointer */	I596_ISCP	iscp;	I596_SCB	scb;	/* Command Queue */	I596_CB		*cb0;	I596_CB		*cbN;	I596_CB		*cb_head;	I596_CB		*cb_tail;	/* Receive Queue */	I596_RFD	*rfd0;	I596_RFD	*rfdN;	I596_RFD	*rfd_head;	I596_RFD	*rfd_tail;	/* Receive Buffers */	I596_RBD	*rbd0;	I596_RBD	*rbdN;	I596_RBD	*rbd_head;	I596_RBD	*rbd_tail;	int		buf_size;	/* Size of an RBD buffer */	int		buf_cnt;	/* Total RBD's allocated */	/* Rx Statistics */	ulong		cnt_rx_cnt;	/* Total packets rcvd, good and bad */ 	ulong		cnt_rx_good;	/* Total good packets rcvd */	ulong		cnt_rx_bad;	/* Total of all bad packets rcvd */					/* Subtotals can be gotten from SCB */	ulong		cnt_rx_nores;	/* No resources */	ulong		cnt_rx_bytes;	/* Total bytes rcvd */	/* Tx Statistics */	ulong		cnt_tx_queued;	ulong		cnt_tx_done;	ulong		cnt_tx_freed;	ulong		cnt_tx_nores;	/* No resources */	ulong		cnt_tx_bad;	ulong		cnt_tx_err_late;	ulong		cnt_tx_err_nocrs;	ulong		cnt_tx_err_nocts;	ulong		cnt_tx_err_under;	ulong		cnt_tx_err_maxcol;	ulong		cnt_tx_collisions;	/* Special stuff for host */#	define		rfd_freed	cnt_rx_cnt	ulong		rbd_freed;	int		host_timer;	/* Added after first beta */	ulong		cnt_tx_races;	/* Counts race conditions */	int		spanstate;	ulong		cnt_st_tx;	/* send span tree pkts */	ulong		cnt_st_fail_tx;	/* Failures to send span tree pkts */	ulong		cnt_st_fail_rbd;/* Failures to send span tree pkts */	ulong		cnt_st_rx;	/* rcv span tree pkts */	ulong		cnt_st_rx_bad;	/* bogus st packets rcvd */	ulong		cnt_rx_fwd;	/* Rcvd packets that were forwarded */	ulong		cnt_rx_mcast;	/* Multicast pkts received */	ulong		cnt_tx_mcast;	/* Multicast pkts transmitted */	ulong		cnt_tx_bytes;	/* Bytes transmitted */	/*	 *	Packet filtering	 *	Filter 0: input filter	 *	Filter 1: output filter	 */		ulong		*filter_space[NFILTERS];	FILTER_FUNC	*filter_func[NFILTERS];	ulong		filter_cnt[NFILTERS];	ulong		filter_len[NFILTERS];	ulong		pad[ (512-300) / 4];} PORT;/* *	Port[0]			is host interface *	Port[1..SE_NPORTS]	are external 10 Base T ports.  Fewer may be in *				use, depending on whether this is an SE-4 or *				an SE-6. *	Port[SE_NPORTS]		Pseudo-port for Spanning tree and SNMP */extern PORT	Port[1+SE_NPORTS+1];extern int	Nports;		/* Number of genuine ethernet controllers */extern int	Nchan;		/* ... plus one for host interface */extern int	FirstChan;	/* 0 or 1, depedning on whether host is used */extern int	NumChan;	/* 4 or 5 *//* *	A few globals */extern int	IsPromisc;extern int	MultiNicMode;/* *	Functions */extern void	eth_xmit_spew_on(PORT *p, int cnt);extern void	eth_xmit_spew_off(PORT *p);extern I596_RBD	*alloc_rbds(PORT *p, int num);extern I596_CB * eth_cb_alloc(PORT *p);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -