www.ti.com | Architecture |
2.6.4Transmit Buffer Descriptor Format
A transmit (TX) buffer descriptor (Figure 6) is a contiguous block of four
|
|
|
| Figure 6. Transmit Buffer Descriptor Format | ||||
Word 0 |
|
|
|
|
|
|
|
|
31 |
|
|
|
|
|
|
| 0 |
|
|
|
|
|
|
| ||
|
|
|
|
| Next Descriptor Pointer |
| ||
Word 1 |
|
|
|
|
|
|
|
|
31 |
|
|
|
|
|
|
| 0 |
|
|
|
|
|
|
| ||
|
|
|
|
| Buffer Pointer |
| ||
Word 2 |
|
|
|
|
|
|
|
|
31 |
|
|
|
| 16 | 15 | 0 | |
|
|
|
|
|
|
|
| |
|
|
| Buffer Offset |
|
|
| Buffer Length | |
|
|
|
|
|
|
|
|
|
Word 3 |
|
|
|
|
|
|
|
|
31 | 30 | 29 | 28 | 27 | 26 |
| 25 | 16 |
|
|
|
|
|
|
|
|
|
SOP | EOP | OWNER | EOQ | TDOWNCMPLT | PASSCRC |
|
| Reserved |
|
|
|
|
|
|
|
|
|
15 |
|
|
|
|
|
|
| 0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| Packet Length |
| ||
|
|
|
|
|
|
|
|
|
Example 1. Transmit Buffer Descriptor in C Structure Format
/*
//EMAC Descriptor
//The following is the format of a single buffer descriptor
//on the EMAC.
*/ |
|
|
|
typedef struct _EMAC_Desc { |
|
| |
struct _EMAC_Desc *pNext; | /* Pointer to next descriptor in chain | */ | |
Uint8 | *pBuffer; | /* Pointer to data buffer | */ |
Uint32 | BufOffLen; | /* Buffer Offset(MSW) and Length(LSW) | */ |
Uint32 | PktFlgLen; | /* Packet Flags(MSW) and Length(LSW) | */ |
} EMAC_Desc; |
|
/* Packet Flags | */ |
#define EMAC_DSC_FLAG_SOP | 0x80000000u |
#define EMAC_DSC_FLAG_EOP | 0x40000000u |
#define EMAC_DSC_FLAG_OWNER | 0x20000000u |
#define EMAC_DSC_FLAG_EOQ | 0x10000000u |
#define EMAC_DSC_FLAG_TDOWNCMPLT | 0x08000000u |
#define EMAC_DSC_FLAG_PASSCRC | 0x04000000u |
SPRUFI5B
Submit Documentation Feedback | (MDIO) |
|
©