diff options
author | Lars Persson <larper@axis.com> | 2011-12-21 15:11:35 +0100 |
---|---|---|
committer | Edgar E. Iglesias <edgar.iglesias@gmail.com> | 2012-01-12 13:54:17 +0100 |
commit | 73a511decc9c87cbc1bac0012d990e4e74a648bf (patch) | |
tree | e830b615dc29c38e84d80391f14141321204b465 /hw/etraxfs_dma.h | |
parent | 9f6113c7e65a98a88bb95ff5fd8679fbb28f18d6 (diff) |
etraxfs-dma: Model metadata and eop
- Send EOP flags to the out channels.
- Send data descriptor metadata to the out channels.
Signed-off-by: Lars Persson <larper@axis.com>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Diffstat (limited to 'hw/etraxfs_dma.h')
-rw-r--r-- | hw/etraxfs_dma.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/hw/etraxfs_dma.h b/hw/etraxfs_dma.h index 96408abab3..021c52ae7d 100644 --- a/hw/etraxfs_dma.h +++ b/hw/etraxfs_dma.h @@ -1,3 +1,8 @@ +struct dma_context_metadata { + /* data descriptor md */ + uint16_t metadata; +}; + struct etraxfs_dma_client { /* DMA controller. */ @@ -5,10 +10,12 @@ struct etraxfs_dma_client void *ctrl; /* client. */ - struct - { - int (*push)(void *opaque, unsigned char *buf, int len); + struct { + int (*push)(void *opaque, unsigned char *buf, + int len, bool eop); void (*pull)(void *opaque); + void (*metadata_push)(void *opaque, + const struct dma_context_metadata *md); void *opaque; } client; }; |