PPC: dbdma: Introduce kick function

The DBDMA engine really is running all the time, waiting for input. However
we don't want to waste cycles constantly polling.

So introduce a kick function that data providers can call to notify the
DBDMA controller of new input.

Signed-off-by: Alexander Graf <agraf@suse.de>
This commit is contained in:
Alexander Graf 2013-06-30 02:18:54 +02:00
parent f2f963fd07
commit d1e562deb2
2 changed files with 6 additions and 0 deletions

View File

@ -536,6 +536,11 @@ static void DBDMA_run_bh(void *opaque)
DBDMA_run(s); DBDMA_run(s);
} }
void DBDMA_kick(DBDMAState *dbdma)
{
qemu_bh_schedule(dbdma_bh);
}
void DBDMA_register_channel(void *dbdma, int nchan, qemu_irq irq, void DBDMA_register_channel(void *dbdma, int nchan, qemu_irq irq,
DBDMA_rw rw, DBDMA_flush flush, DBDMA_rw rw, DBDMA_flush flush,
void *opaque) void *opaque)

View File

@ -161,6 +161,7 @@ typedef struct {
void DBDMA_register_channel(void *dbdma, int nchan, qemu_irq irq, void DBDMA_register_channel(void *dbdma, int nchan, qemu_irq irq,
DBDMA_rw rw, DBDMA_flush flush, DBDMA_rw rw, DBDMA_flush flush,
void *opaque); void *opaque);
void DBDMA_kick(DBDMAState *dbdma);
void* DBDMA_init (MemoryRegion **dbdma_mem); void* DBDMA_init (MemoryRegion **dbdma_mem);
#endif #endif