Linux Kernel
3.7.1
|
#include <mpipe_shm.h>
Data Fields | |
struct { | |
uint_reg_t gen: 1 | |
uint_reg_t r0: 7 | |
uint_reg_t csum: 1 | |
uint_reg_t ns: 1 | |
uint_reg_t notif: 1 | |
uint_reg_t bound: 1 | |
uint_reg_t r1: 4 | |
uint_reg_t xfer_size: 14 | |
uint_reg_t r2: 2 | |
uint_reg_t csum_dest: 8 | |
uint_reg_t csum_start: 8 | |
uint_reg_t csum_seed: 16 | |
int_reg_t va: 42 | |
uint_reg_t __reserved_0: 6 | |
uint_reg_t stack_idx: 5 | |
uint_reg_t __reserved_1: 3 | |
uint_reg_t inst: 1 | |
uint_reg_t __reserved_2: 1 | |
uint_reg_t hwb: 1 | |
uint_reg_t size: 3 | |
uint_reg_t c: 2 | |
}; | |
uint_reg_t | words [2] |
MPIPE eDMA Descriptor. The eDMA descriptor is written by software and consumed by hardware. It is used to specify the location of egress packet data to be sent out of the chip via one of the packet interfaces.
Definition at line 33 of file mpipe_shm.h.
struct { ... } |
uint_reg_t __reserved_0 |
Reserved.
Definition at line 123 of file mpipe_shm.h.
uint_reg_t __reserved_1 |
Reserved.
Definition at line 127 of file mpipe_shm.h.
uint_reg_t __reserved_2 |
Reserved.
Definition at line 136 of file mpipe_shm.h.
uint_reg_t bound |
Boundary indicator. When 1, this transfer includes the EOP for this command. Must be clear on all but the last descriptor for an egress packet.
Definition at line 65 of file mpipe_shm.h.
Chaining configuration for the buffer. Indicates that an ingress packet or egress command is chained across multiple buffers, with each buffer's size indicated by the .size field.
Definition at line 164 of file mpipe_shm.h.
uint_reg_t csum |
Checksum generation enabled for this transfer.
Definition at line 50 of file mpipe_shm.h.
uint_reg_t csum_dest |
uint_reg_t csum_seed |
Initial value for 16-bit 1's compliment checksum if enabled via CSUM. Specified in network order. That is, bits[7:0] will be added to the byte pointed to by CSUM_START and bits[15:8] will be added to the byte pointed to by CSUM_START+1 (with appropriate 1's compliment carries). Must be zero if CSUM=0 in this descriptor.
Definition at line 101 of file mpipe_shm.h.
uint_reg_t csum_start |
uint_reg_t gen |
Generation number. Used to indicate a valid descriptor in ring. When a new descriptor is written into the ring, software must toggle this bit. The net effect is that the GEN bit being written into new descriptors toggles each time the ring tail pointer wraps.
Definition at line 46 of file mpipe_shm.h.
uint_reg_t hwb |
Always set to one by hardware in iDMA packet descriptors. For eDMA, indicates whether the buffer will be released to the buffer stack manager. When 0, software is responsible for releasing the buffer.
Definition at line 142 of file mpipe_shm.h.
uint_reg_t inst |
Instance ID. For devices that support more than one mPIPE instance, this field indicates the buffer owner. If the INST field does not match the mPIPE's instance number when a packet is egressed, buffers with HWB set will be returned to the other mPIPE instance.
Definition at line 134 of file mpipe_shm.h.
uint_reg_t notif |
Notification interrupt will be delivered when packet has been egressed.
Definition at line 59 of file mpipe_shm.h.
uint_reg_t ns |
Nothing to be sent. Used, for example, when software has dropped a packet but still wishes to return all of the associated buffers.
Definition at line 55 of file mpipe_shm.h.
uint_reg_t r0 |
Reserved. Must be zero.
Definition at line 48 of file mpipe_shm.h.
uint_reg_t r1 |
Reserved. Must be zero.
Definition at line 67 of file mpipe_shm.h.
uint_reg_t r2 |
Reserved. Must be zero.
Definition at line 79 of file mpipe_shm.h.
uint_reg_t size |
Encoded size of buffer. Set by the ingress hardware for iDMA packet descriptors. For eDMA descriptors, indicates the buffer size if .c indicates a chained packet. If an eDMA descriptor is not chained and the .hwb bit is not set, this field is ignored and the size is specified by the .xfer_size field. 0 = 128 bytes 1 = 256 bytes 2 = 512 bytes 3 = 1024 bytes 4 = 1664 bytes 5 = 4096 bytes 6 = 10368 bytes 7 = 16384 bytes
Definition at line 158 of file mpipe_shm.h.
uint_reg_t stack_idx |
Index of the buffer stack to which this buffer belongs.
Definition at line 125 of file mpipe_shm.h.
int_reg_t va |
Virtual address. Must be sign extended by consumer.
Definition at line 121 of file mpipe_shm.h.
uint_reg_t words[2] |
Word access
Definition at line 180 of file mpipe_shm.h.
uint_reg_t xfer_size |
Number of bytes to be sent for this descriptor. When zero, no data will be moved and the buffer descriptor will be ignored. If the buffer descriptor indicates that it is chained, the low 7 bits of the VA indicate the offset within the first buffer (e.g. 127 bytes is the maximum offset into the first buffer). If the size exceeds a single buffer, subsequent buffer descriptors will be fetched prior to processing the next eDMA descriptor in the ring.
Definition at line 77 of file mpipe_shm.h.