xilinx_axienet: pump events as appropriate
authorPeter Crosthwaite <peter.crosthwaite@xilinx.com>
Wed, 3 Apr 2013 04:04:09 +0000 (14:04 +1000)
committerEdgar E. Iglesias <edgar.iglesias@gmail.com>
Wed, 3 Apr 2013 22:55:03 +0000 (00:55 +0200)
When the conditions blocking receiving are cleared, check for buffered rx
packets.

Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
hw/xilinx_axienet.c

index 5785290..07c4bad 100644 (file)
@@ -516,6 +516,8 @@ static void enet_write(void *opaque, hwaddr addr,
             s->rcw[addr & 1] = value;
             if ((addr & 1) && value & RCW1_RST) {
                 axienet_rx_reset(s);
+            } else {
+                qemu_flush_queued_packets(qemu_get_queue(s->nic));
             }
             break;