Loading...
Searching...
No Matches
eth_dma_desc Struct Reference

Layout of enhanced RX/TX DMA descriptor. More...

Detailed Description

Layout of enhanced RX/TX DMA descriptor.

Note
Don't confuse this with the normal RX/TX descriptor format.
Warning
The content of the status and control bits is different for RX and TX DMA descriptors

Definition at line 62 of file cpu_eth.h.

#include <cpu_eth.h>

Data Fields

volatile uint32_t status
 Mostly status bits, some control bits.
 
volatile uint32_t control
 Control bits.
 
char *volatile buffer_addr
 RX/TX buffer.
 
struct eth_dma_desc *volatile desc_next
 Address of next DMA descriptor.
 
volatile uint32_t reserved1_ext
 RX: Extended status, TX: reserved.
 
volatile uint32_t reserved2
 Reserved for future use.
 
volatile uint32_t ts_low
 Sub-second part of PTP timestamp of transmitted / sent frame.
 
volatile uint32_t ts_high
 Second part of PTP timestamp.
 

Field Documentation

◆ buffer_addr

char* volatile eth_dma_desc::buffer_addr

RX/TX buffer.

Definition at line 65 of file cpu_eth.h.

◆ control

volatile uint32_t eth_dma_desc::control

Control bits.

Definition at line 64 of file cpu_eth.h.

◆ desc_next

struct eth_dma_desc* volatile eth_dma_desc::desc_next

Address of next DMA descriptor.

Definition at line 66 of file cpu_eth.h.

◆ reserved1_ext

volatile uint32_t eth_dma_desc::reserved1_ext

RX: Extended status, TX: reserved.

Definition at line 67 of file cpu_eth.h.

◆ reserved2

volatile uint32_t eth_dma_desc::reserved2

Reserved for future use.

Definition at line 68 of file cpu_eth.h.

◆ status

volatile uint32_t eth_dma_desc::status

Mostly status bits, some control bits.

Definition at line 63 of file cpu_eth.h.

◆ ts_high

volatile uint32_t eth_dma_desc::ts_high

Second part of PTP timestamp.

Definition at line 82 of file cpu_eth.h.

◆ ts_low

volatile uint32_t eth_dma_desc::ts_low

Sub-second part of PTP timestamp of transmitted / sent frame.

For TX: If PTP timestamping is enabled and the TTSE bit in the transmit descriptor word 0 (struct eth_dma_desc::status) is set, the MAC will store the PTP timestamp of when the Start of Frame Delimiter was sent. The TTSS bit is send by the hardware if the timestamp was correctly set.

For RX: If PTP timestamping is enabled, the timestamp of all received frames is captured.

Definition at line 81 of file cpu_eth.h.


The documentation for this struct was generated from the following file: