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

📄 tigon3.h

📁 U-boot源码 ARM7启动代码
💻 H
📖 第 1 页 / 共 5 页
字号:
	volatile LM_UINT16 Reserved2;	volatile LM_UINT16 RcvMiniConIdx;	struct {		volatile LM_UINT16 SendConIdx;	/* Send consumer index. */		volatile LM_UINT16 RcvProdIdx;	/* Receive producer index. */	} Idx[16];#else				/* BIG_ENDIAN_HOST */	volatile LM_UINT16 RcvJumboConIdx;	volatile LM_UINT16 RcvStdConIdx;	volatile LM_UINT16 RcvMiniConIdx;	volatile LM_UINT16 Reserved2;	struct {		volatile LM_UINT16 RcvProdIdx;	/* Receive producer index. */		volatile LM_UINT16 SendConIdx;	/* Send consumer index. */	} Idx[16];#endif} T3_STATUS_BLOCK, *PT3_STATUS_BLOCK;/******************************************************************************//* Receive buffer descriptors. *//******************************************************************************/typedef struct {	T3_64BIT_HOST_ADDR HostAddr;#ifdef BIG_ENDIAN_HOST	volatile LM_UINT16 Index;	volatile LM_UINT16 Len;	volatile LM_UINT16 Type;	volatile LM_UINT16 Flags;	volatile LM_UINT16 IpCksum;	volatile LM_UINT16 TcpUdpCksum;	volatile LM_UINT16 ErrorFlag;	volatile LM_UINT16 VlanTag;#else				/* BIG_ENDIAN_HOST */	volatile LM_UINT16 Len;	volatile LM_UINT16 Index;	volatile LM_UINT16 Flags;	volatile LM_UINT16 Type;	volatile LM_UINT16 TcpUdpCksum;	volatile LM_UINT16 IpCksum;	volatile LM_UINT16 VlanTag;	volatile LM_UINT16 ErrorFlag;#endif	volatile LM_UINT32 Reserved;	volatile LM_UINT32 Opaque;} T3_RCV_BD, *PT3_RCV_BD;typedef struct {	T3_64BIT_HOST_ADDR HostAddr[3];#ifdef BIG_ENDIAN_HOST	LM_UINT16 Len1;	LM_UINT16 Len2;	LM_UINT16 Len3;	LM_UINT16 Reserved1;#else				/* BIG_ENDIAN_HOST */	LM_UINT16 Len2;	LM_UINT16 Len1;	LM_UINT16 Reserved1;	LM_UINT16 Len3;#endif	T3_RCV_BD StdRcvBd;} T3_EXT_RCV_BD, *PT3_EXT_RCV_BD;/* Error flags. */#define RCV_BD_ERR_BAD_CRC                          0x0001#define RCV_BD_ERR_COLL_DETECT                      0x0002#define RCV_BD_ERR_LINK_LOST_DURING_PKT             0x0004#define RCV_BD_ERR_PHY_DECODE_ERR                   0x0008#define RCV_BD_ERR_ODD_NIBBLED_RCVD_MII             0x0010#define RCV_BD_ERR_MAC_ABORT                        0x0020#define RCV_BD_ERR_LEN_LT_64                        0x0040#define RCV_BD_ERR_TRUNC_NO_RESOURCES               0x0080#define RCV_BD_ERR_GIANT_FRAME_RCVD                 0x0100/* Buffer descriptor flags. */#define RCV_BD_FLAG_END                             0x0004#define RCV_BD_FLAG_JUMBO_RING                      0x0020#define RCV_BD_FLAG_VLAN_TAG                        0x0040#define RCV_BD_FLAG_FRAME_HAS_ERROR                 0x0400#define RCV_BD_FLAG_MINI_RING                       0x0800#define RCV_BD_FLAG_IP_CHKSUM_FIELD                 0x1000#define RCV_BD_FLAG_TCP_UDP_CHKSUM_FIELD            0x2000#define RCV_BD_FLAG_TCP_PACKET                      0x4000/******************************************************************************//* Send buffer descriptor. *//******************************************************************************/typedef struct {	T3_64BIT_HOST_ADDR HostAddr;	union {		struct {#ifdef BIG_ENDIAN_HOST			LM_UINT16 Len;			LM_UINT16 Flags;#else				/* BIG_ENDIAN_HOST */			LM_UINT16 Flags;			LM_UINT16 Len;#endif		} s1;		LM_UINT32 Len_Flags;	} u1;	union {		struct {#ifdef BIG_ENDIAN_HOST			LM_UINT16 Reserved;			LM_UINT16 VlanTag;#else				/* BIG_ENDIAN_HOST */			LM_UINT16 VlanTag;			LM_UINT16 Reserved;#endif		} s2;		LM_UINT32 VlanTag;	} u2;} T3_SND_BD, *PT3_SND_BD;/* Send buffer descriptor flags. */#define SND_BD_FLAG_TCP_UDP_CKSUM                   0x0001#define SND_BD_FLAG_IP_CKSUM                        0x0002#define SND_BD_FLAG_END                             0x0004#define SND_BD_FLAG_IP_FRAG                         0x0008#define SND_BD_FLAG_IP_FRAG_END                     0x0010#define SND_BD_FLAG_VLAN_TAG                        0x0040#define SND_BD_FLAG_COAL_NOW                        0x0080#define SND_BD_FLAG_CPU_PRE_DMA                     0x0100#define SND_BD_FLAG_CPU_POST_DMA                    0x0200#define SND_BD_FLAG_INSERT_SRC_ADDR                 0x1000#define SND_BD_FLAG_CHOOSE_SRC_ADDR                 0x6000#define SND_BD_FLAG_DONT_GEN_CRC                    0x8000/* MBUFs */typedef struct T3_MBUF_FRAME_DESC {#ifdef BIG_ENDIAN_HOST	LM_UINT32 status_control;	union {		struct {			LM_UINT8 cqid;			LM_UINT8 reserved1;			LM_UINT16 length;		} s1;		LM_UINT32 word;	} u1;	union {		struct {			LM_UINT16 ip_hdr_start;			LM_UINT16 tcp_udp_hdr_start;		} s2;		LM_UINT32 word;	} u2;	union {		struct {			LM_UINT16 data_start;			LM_UINT16 vlan_id;		} s3;		LM_UINT32 word;	} u3;	union {		struct {			LM_UINT16 ip_checksum;			LM_UINT16 tcp_udp_checksum;		} s4;		LM_UINT32 word;	} u4;	union {		struct {			LM_UINT16 pseudo_checksum;			LM_UINT16 checksum_status;		} s5;		LM_UINT32 word;	} u5;	union {		struct {			LM_UINT16 rule_match;			LM_UINT8 class;			LM_UINT8 rupt;		} s6;		LM_UINT32 word;	} u6;	union {		struct {			LM_UINT16 reserved2;			LM_UINT16 mbuf_num;		} s7;		LM_UINT32 word;	} u7;	LM_UINT32 reserved3;	LM_UINT32 reserved4;#else	LM_UINT32 status_control;	union {		struct {			LM_UINT16 length;			LM_UINT8 reserved1;			LM_UINT8 cqid;		} s1;		LM_UINT32 word;	} u1;	union {		struct {			LM_UINT16 tcp_udp_hdr_start;			LM_UINT16 ip_hdr_start;		} s2;		LM_UINT32 word;	} u2;	union {		struct {			LM_UINT16 vlan_id;			LM_UINT16 data_start;		} s3;		LM_UINT32 word;	} u3;	union {		struct {			LM_UINT16 tcp_udp_checksum;			LM_UINT16 ip_checksum;		} s4;		LM_UINT32 word;	} u4;	union {		struct {			LM_UINT16 checksum_status;			LM_UINT16 pseudo_checksum;		} s5;		LM_UINT32 word;	} u5;	union {		struct {			LM_UINT8 rupt;			LM_UINT8 class;			LM_UINT16 rule_match;		} s6;		LM_UINT32 word;	} u6;	union {		struct {			LM_UINT16 mbuf_num;			LM_UINT16 reserved2;		} s7;		LM_UINT32 word;	} u7;	LM_UINT32 reserved3;	LM_UINT32 reserved4;#endif} T3_MBUF_FRAME_DESC, *PT3_MBUF_FRAME_DESC;typedef struct T3_MBUF_HDR {	union {		struct {			unsigned int C:1;			unsigned int F:1;			unsigned int reserved1:7;			unsigned int next_mbuf:16;			unsigned int length:7;		} s1;		LM_UINT32 word;	} u1;	LM_UINT32 next_frame_ptr;} T3_MBUF_HDR, *PT3_MBUF_HDR;typedef struct T3_MBUF {	T3_MBUF_HDR hdr;	union {		struct {			T3_MBUF_FRAME_DESC frame_hdr;			LM_UINT32 data[20];		} s1;		struct {			LM_UINT32 data[30];		} s2;	} body;} T3_MBUF, *PT3_MBUF;#define T3_MBUF_BASE   (T3_NIC_MBUF_POOL_ADDR >> 7)#define T3_MBUF_END    ((T3_NIC_MBUF_POOL_ADDR + T3_NIC_MBUF_POOL_SIZE) >> 7)/******************************************************************************//* Statistics block. *//******************************************************************************/typedef struct {	LM_UINT8 Reserved0[0x400 - 0x300];	/* Statistics maintained by Receive MAC. */	T3_64BIT_REGISTER ifHCInOctets;	T3_64BIT_REGISTER Reserved1;	T3_64BIT_REGISTER etherStatsFragments;	T3_64BIT_REGISTER ifHCInUcastPkts;	T3_64BIT_REGISTER ifHCInMulticastPkts;	T3_64BIT_REGISTER ifHCInBroadcastPkts;	T3_64BIT_REGISTER dot3StatsFCSErrors;	T3_64BIT_REGISTER dot3StatsAlignmentErrors;	T3_64BIT_REGISTER xonPauseFramesReceived;	T3_64BIT_REGISTER xoffPauseFramesReceived;	T3_64BIT_REGISTER macControlFramesReceived;	T3_64BIT_REGISTER xoffStateEntered;	T3_64BIT_REGISTER dot3StatsFramesTooLong;	T3_64BIT_REGISTER etherStatsJabbers;	T3_64BIT_REGISTER etherStatsUndersizePkts;	T3_64BIT_REGISTER inRangeLengthError;	T3_64BIT_REGISTER outRangeLengthError;	T3_64BIT_REGISTER etherStatsPkts64Octets;	T3_64BIT_REGISTER etherStatsPkts65Octetsto127Octets;	T3_64BIT_REGISTER etherStatsPkts128Octetsto255Octets;	T3_64BIT_REGISTER etherStatsPkts256Octetsto511Octets;	T3_64BIT_REGISTER etherStatsPkts512Octetsto1023Octets;	T3_64BIT_REGISTER etherStatsPkts1024Octetsto1522Octets;	T3_64BIT_REGISTER etherStatsPkts1523Octetsto2047Octets;	T3_64BIT_REGISTER etherStatsPkts2048Octetsto4095Octets;	T3_64BIT_REGISTER etherStatsPkts4096Octetsto8191Octets;	T3_64BIT_REGISTER etherStatsPkts8192Octetsto9022Octets;	T3_64BIT_REGISTER Unused1[37];	/* Statistics maintained by Transmit MAC. */	T3_64BIT_REGISTER ifHCOutOctets;	T3_64BIT_REGISTER Reserved2;	T3_64BIT_REGISTER etherStatsCollisions;	T3_64BIT_REGISTER outXonSent;	T3_64BIT_REGISTER outXoffSent;	T3_64BIT_REGISTER flowControlDone;	T3_64BIT_REGISTER dot3StatsInternalMacTransmitErrors;	T3_64BIT_REGISTER dot3StatsSingleCollisionFrames;	T3_64BIT_REGISTER dot3StatsMultipleCollisionFrames;	T3_64BIT_REGISTER dot3StatsDeferredTransmissions;

⌨️ 快捷键说明

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