Linux Kernel
3.7.1
|
#include <trio_shm.h>
Data Fields | |
struct { | |
int_reg_t va: 42 | |
uint_reg_t bsz: 3 | |
uint_reg_t c: 1 | |
uint_reg_t notif: 1 | |
uint_reg_t smod: 1 | |
uint_reg_t xsize: 14 | |
uint_reg_t __reserved_0: 1 | |
uint_reg_t gen: 1 | |
uint_reg_t io_address: 64 | |
}; | |
uint_reg_t | words [2] |
TRIO DMA Descriptor. The TRIO DMA descriptor is written by software and consumed by hardware. It is used to specify the location of transaction data in the IO and Tile domains.
Definition at line 33 of file trio_shm.h.
struct { ... } |
uint_reg_t __reserved_0 |
Reserved.
Definition at line 90 of file trio_shm.h.
uint_reg_t bsz |
Encoded size of buffer used on push DMA when C=1: 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 53 of file trio_shm.h.
Chaining designation. Always zero for pull DMA 0 : Unchained buffer pointer 1 : Chained buffer pointer. Next buffer descriptor (e.g. VA) stored in 1st 8-bytes in buffer. For chained buffers, first 8-bytes of each buffer contain the next buffer descriptor formatted exactly like a PDE buffer descriptor. This allows a chained PDE buffer to be sent using push DMA.
Definition at line 63 of file trio_shm.h.
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 97 of file trio_shm.h.
uint_reg_t io_address |
IO-side address
Definition at line 113 of file trio_shm.h.
uint_reg_t notif |
Notification interrupt will be delivered when the transaction has completed (all data has been read from or written to the Tile-side buffer).
Definition at line 69 of file trio_shm.h.
uint_reg_t smod |
When 0, the XSIZE field specifies the total byte count for the transaction. When 1, the XSIZE field is encoded as 2^(N+14) for N in {0..6}: 0 = 16KB 1 = 32KB 2 = 64KB 3 = 128KB 4 = 256KB 5 = 512KB 6 = 1MB All other encodings of the XSIZE field are reserved when SMOD=1
Definition at line 83 of file trio_shm.h.
int_reg_t va |
Tile side virtual address.
Definition at line 41 of file trio_shm.h.
uint_reg_t words[2] |
Word access
Definition at line 121 of file trio_shm.h.
uint_reg_t xsize |
Total number of bytes to move for this transaction. When SMOD=1, this field is encoded - see SMOD description.
Definition at line 88 of file trio_shm.h.