target/arm/arm-semi: Correct comment about gdb syscall races
[qemu/ar7.git] / include / hw / cris / etraxfs_dma.h
blob095d76b9560669828e0e45e46eac1b0b49ab781f
1 #ifndef HW_ETRAXFS_DMA_H
2 #define HW_ETRAXFS_DMA_H
4 #include "exec/hwaddr.h"
6 struct dma_context_metadata {
7 /* data descriptor md */
8 uint16_t metadata;
9 };
11 struct etraxfs_dma_client
13 /* DMA controller. */
14 int channel;
15 void *ctrl;
17 /* client. */
18 struct {
19 int (*push)(void *opaque, unsigned char *buf,
20 int len, bool eop);
21 void (*pull)(void *opaque);
22 void (*metadata_push)(void *opaque,
23 const struct dma_context_metadata *md);
24 void *opaque;
25 } client;
28 void *etraxfs_dmac_init(hwaddr base, int nr_channels);
29 void etraxfs_dmac_connect(void *opaque, int channel, qemu_irq *line,
30 int input);
31 void etraxfs_dmac_connect_client(void *opaque, int c,
32 struct etraxfs_dma_client *cl);
33 int etraxfs_dmac_input(struct etraxfs_dma_client *client,
34 void *buf, int len, int eop);
36 #endif