[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 07/16] xilinx_axidma: Register reset properly
From: |
Peter Crosthwaite |
Subject: |
[Qemu-devel] [PATCH v5 07/16] xilinx_axidma: Register reset properly |
Date: |
Wed, 3 Apr 2013 15:17:07 +1000 |
Register the reset function as the Device::reset function rather than
explicitly call it from the sysbus::init.
Signed-off-by: Peter Crosthwaite <address@hidden>
Acked-by: Edgar E. Iglesias <address@hidden>
---
hw/xilinx_axidma.c | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/hw/xilinx_axidma.c b/hw/xilinx_axidma.c
index 7cb40bd..ac62245 100644
--- a/hw/xilinx_axidma.c
+++ b/hw/xilinx_axidma.c
@@ -358,6 +358,16 @@ static void stream_process_s2mem(struct Stream *s,
}
}
+static void xilinx_axidma_reset(DeviceState *dev)
+{
+ int i;
+ XilinxAXIDMA *s = XILINX_AXI_DMA(dev);
+
+ for (i = 0; i < 2; i++) {
+ stream_reset(&s->streams[i]);
+ }
+}
+
static void
axidma_push(StreamSlave *obj, unsigned char *buf, size_t len, uint32_t *app)
{
@@ -478,7 +488,6 @@ static int xilinx_axidma_init(SysBusDevice *dev)
sysbus_init_mmio(dev, &s->iomem);
for (i = 0; i < 2; i++) {
- stream_reset(&s->streams[i]);
s->streams[i].nr = i;
s->streams[i].bh = qemu_bh_new(timer_hit, &s->streams[i]);
s->streams[i].ptimer = ptimer_init(s->streams[i].bh);
@@ -507,6 +516,7 @@ static void axidma_class_init(ObjectClass *klass, void
*data)
StreamSlaveClass *ssc = STREAM_SLAVE_CLASS(klass);
k->init = xilinx_axidma_init;
+ dc->reset = xilinx_axidma_reset;
dc->props = axidma_properties;
ssc->push = axidma_push;
}
--
1.7.0.4
- [Qemu-devel] [PATCH v5 00/16] Stream Patches, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 01/16] xilinx_axienet: typedef XilinxAXIEnet struct, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 02/16] xilinx_axienet: Defined and use type cast macro, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 03/16] xilinx_axienet: Register reset properly, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 04/16] xilinx_axienet: converted init->realize, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 05/16] xilinx_axidma: typedef XilinxAXIDMA struct, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 06/16] xilinx_axidma: Defined and use type cast macro, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 07/16] xilinx_axidma: Register reset properly,
Peter Crosthwaite <=
- [Qemu-devel] [PATCH v5 08/16] xilinx_axidma: converted init->realize, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 09/16] petalogix_ml605_mmu: Fix machine node attachment, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 10/16] petalogix_ml605_mmu: Attach ethernet to machine, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 11/16] xilinx_axienet: Create Proxy object for stream, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 12/16] xilinx_axidma: Create Proxy object for stream, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 13/16] xilinx_axidma: Fix rx/tx halted bit., Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 14/16] stream: Add flow control API, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 15/16] xilinx_axienet/dma: Implement rx path flow control, Peter Crosthwaite, 2013/04/03
- [Qemu-devel] [PATCH v5 16/16] stream: Remove app argument hack, Peter Crosthwaite, 2013/04/03