mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
Add support for parts of the etraxfs dma controller.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4428 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
eb173de6a2
commit
1ba13a5dfc
2 changed files with 718 additions and 0 deletions
24
hw/etraxfs_dma.h
Normal file
24
hw/etraxfs_dma.h
Normal file
|
@ -0,0 +1,24 @@
|
|||
struct etraxfs_dma_client
|
||||
{
|
||||
/* DMA controller. */
|
||||
int channel;
|
||||
void *ctrl;
|
||||
|
||||
/* client. */
|
||||
struct
|
||||
{
|
||||
int (*push)(void *opaque, unsigned char *buf, int len);
|
||||
void (*pull)(void *opaque);
|
||||
void *opaque;
|
||||
} client;
|
||||
};
|
||||
|
||||
void *etraxfs_dmac_init(CPUState *env, target_phys_addr_t base,
|
||||
int nr_channels);
|
||||
void etraxfs_dmac_connect(void *opaque, int channel, qemu_irq *line,
|
||||
int input);
|
||||
void etraxfs_dmac_connect_client(void *opaque, int c,
|
||||
struct etraxfs_dma_client *cl);
|
||||
void etraxfs_dmac_run(void *opaque);
|
||||
int etraxfs_dmac_input(struct etraxfs_dma_client *client,
|
||||
void *buf, int len, int eop);
|
Loading…
Add table
Add a link
Reference in a new issue