[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH microblaze v1 2/6] net: xilinx_ethlite: Don't reset
From: |
Peter Crosthwaite |
Subject: |
[Qemu-devel] [PATCH microblaze v1 2/6] net: xilinx_ethlite: Don't reset from init |
Date: |
Thu, 29 May 2014 02:21:57 -0700 |
This zeroing-out of the rxbuf variable (ping pong state) is a reset
side effect. Extract into a proper reset.
Signed-off-by: Peter Crosthwaite <address@hidden>
---
hw/net/xilinx_ethlite.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c
index 3a2a6c2..6cbd95d 100644
--- a/hw/net/xilinx_ethlite.c
+++ b/hw/net/xilinx_ethlite.c
@@ -204,6 +204,13 @@ static ssize_t eth_rx(NetClientState *nc, const uint8_t
*buf, size_t size)
return size;
}
+static void xilinx_ethlite_reset(DeviceState *dev)
+{
+ struct xlx_ethlite *s = XILINX_ETHLITE(dev);
+
+ s->rxbuf = 0;
+}
+
static void eth_cleanup(NetClientState *nc)
{
struct xlx_ethlite *s = qemu_get_nic_opaque(nc);
@@ -225,7 +232,6 @@ static int xilinx_ethlite_init(SysBusDevice *sbd)
struct xlx_ethlite *s = XILINX_ETHLITE(dev);
sysbus_init_irq(sbd, &s->irq);
- s->rxbuf = 0;
memory_region_init_io(&s->mmio, OBJECT(s), ð_ops, s,
"xlnx.xps-ethernetlite", R_MAX * 4);
@@ -251,6 +257,7 @@ static void xilinx_ethlite_class_init(ObjectClass *klass,
void *data)
SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
k->init = xilinx_ethlite_init;
+ dc->reset = xilinx_ethlite_reset;
dc->props = xilinx_ethlite_properties;
}
--
1.9.3.1.ga73a6ad
- [Qemu-devel] [PATCH microblaze v1 0/6] Microblaze Device QOM cleanups, Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 0/6] Microblaze Device QOM cleanups, Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 1/6] timer: xilinx_timer: Convert to realize(), Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 2/6] net: xilinx_ethlite: Don't reset from init, Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 3/6] net: xilinx_ethlite: Convert to realize(), Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 4/6] char: xilinx_uartlite: Don't reset from init, Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 5/6] char: xilinx_uartlite: Convert to realize(), Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 6/6] intc: xilinx_uartlite: Convert SBD::init -> instance_init, Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 1/6] timer: xilinx_timer: Convert to realize(), Peter Crosthwaite, 2014/05/29
- [Qemu-devel] [PATCH microblaze v1 2/6] net: xilinx_ethlite: Don't reset from init,
Peter Crosthwaite <=