[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH net v1 1/1] net: xilinx_ethlite: Fix Rx-pong interru
From: |
Peter Crosthwaite |
Subject: |
[Qemu-devel] [PATCH net v1 1/1] net: xilinx_ethlite: Fix Rx-pong interrupt |
Date: |
Mon, 5 May 2014 21:39:38 -0700 |
There is no CTRL_I bit in the pong buffer control register. The
CTRL_I bit from the ping buffer masks both ping and pong buffers.
Fix.
Signed-off-by: Peter Crosthwaite <address@hidden>
---
hw/net/xilinx_ethlite.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/net/xilinx_ethlite.c b/hw/net/xilinx_ethlite.c
index 3a2a6c2..dbd1cdd 100644
--- a/hw/net/xilinx_ethlite.c
+++ b/hw/net/xilinx_ethlite.c
@@ -196,8 +196,9 @@ static ssize_t eth_rx(NetClientState *nc, const uint8_t
*buf, size_t size)
memcpy(&s->regs[rxbase + R_RX_BUF0], buf, size);
s->regs[rxbase + R_RX_CTRL0] |= CTRL_S;
- if (s->regs[rxbase + R_RX_CTRL0] & CTRL_I)
+ if (s->regs[R_RX_CTRL0] & CTRL_I) {
eth_pulse_irq(s);
+ }
/* If c_rx_pingpong was set flip buffers. */
s->rxbuf ^= s->c_rx_pingpong;
--
1.9.2.1.g06c4abd
- [Qemu-devel] [PATCH net v1 1/1] net: xilinx_ethlite: Fix Rx-pong interrupt,
Peter Crosthwaite <=