1 #ifndef HW_ETRAXFS_DMA_H
2 #define HW_ETRAXFS_DMA_H
4 struct dma_context_metadata
{
5 /* data descriptor md */
9 struct etraxfs_dma_client
17 int (*push
)(void *opaque
, unsigned char *buf
,
19 void (*pull
)(void *opaque
);
20 void (*metadata_push
)(void *opaque
,
21 const struct dma_context_metadata
*md
);
26 void *etraxfs_dmac_init(hwaddr base
, int nr_channels
);
27 void etraxfs_dmac_connect(void *opaque
, int channel
, qemu_irq
*line
,
29 void etraxfs_dmac_connect_client(void *opaque
, int c
,
30 struct etraxfs_dma_client
*cl
);
31 int etraxfs_dmac_input(struct etraxfs_dma_client
*client
,
32 void *buf
, int len
, int eop
);