diff options
author | Cédric Le Goater | 2020-09-01 14:21:50 +0200 |
---|---|---|
committer | Cédric Le Goater | 2020-09-01 14:21:50 +0200 |
commit | cf9f48d323cee4f3fc93ea8c292ecea8115b0eef (patch) | |
tree | f47a862913b3743af2d654e952560575989ab906 /hw/net | |
parent | ftgmac100: Fix interrupt status "Packet transmitted on ethernet" (diff) | |
download | qemu-cf9f48d323cee4f3fc93ea8c292ecea8115b0eef.tar.gz qemu-cf9f48d323cee4f3fc93ea8c292ecea8115b0eef.tar.xz qemu-cf9f48d323cee4f3fc93ea8c292ecea8115b0eef.zip |
ftgmac100: Fix interrupt status "Packet moved to RX FIFO"
As we don't model the RX or TX FIFO, raise the "Packet moved to RX
FIFO" interrupt status bit as soon as we are handling a RX packet.
Cc: Frederic Konrad <konrad.frederic@yahoo.fr>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Message-Id: <20200819100956.2216690-12-clg@kaod.org>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Diffstat (limited to 'hw/net')
-rw-r--r-- | hw/net/ftgmac100.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/hw/net/ftgmac100.c b/hw/net/ftgmac100.c index aa3c05ef98..5c0fe2d8cb 100644 --- a/hw/net/ftgmac100.c +++ b/hw/net/ftgmac100.c @@ -950,6 +950,7 @@ static ssize_t ftgmac100_receive(NetClientState *nc, const uint8_t *buf, break; } + s->isr |= FTGMAC100_INT_RPKT_FIFO; addr = s->rx_descriptor; while (size > 0) { if (!ftgmac100_can_receive(nc)) { @@ -1001,8 +1002,6 @@ static ssize_t ftgmac100_receive(NetClientState *nc, const uint8_t *buf, /* Last buffer in frame. */ bd.des0 |= flags | FTGMAC100_RXDES0_LRS; s->isr |= FTGMAC100_INT_RPKT_BUF; - } else { - s->isr |= FTGMAC100_INT_RPKT_FIFO; } ftgmac100_write_bd(&bd, addr); if (bd.des0 & s->rxdes0_edorr) { |