[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 05/10] dp8393x: Update LLFA register
From: |
Finn Thain |
Subject: |
[PATCH 05/10] dp8393x: Update LLFA register |
Date: |
Sat, 14 Dec 2019 12:25:57 +1100 |
If the chip used QEMU's algorithm it would need an extra word-sized
register just to recheck the EOL bit, which would be a waste of silicon.
Do it the way the chip would do it. No functional change.
Signed-off-by: Finn Thain <address@hidden>
---
hw/net/dp8393x.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c
index 49d7d9769e..494deb42bf 100644
--- a/hw/net/dp8393x.c
+++ b/hw/net/dp8393x.c
@@ -768,7 +768,8 @@ static ssize_t dp8393x_receive(NetClientState *nc, const
uint8_t * buf,
address = dp8393x_crda(s) + sizeof(uint16_t) * 5 * width;
address_space_rw(&s->as, address, MEMTXATTRS_UNSPECIFIED,
(uint8_t *)s->data, size, 0);
- if (dp8393x_get(s, width, 0) & 0x1) {
+ s->regs[SONIC_LLFA] = dp8393x_get(s, width, 0);
+ if (s->regs[SONIC_LLFA] & 0x1) {
/* Still EOL ; stop reception */
return -1;
}
--
2.23.0
- [PATCH 00/10] Fixes for DP8393X SONIC device emulation, Finn Thain, 2019/12/13
- [PATCH 05/10] dp8393x: Update LLFA register,
Finn Thain <=
- [PATCH 06/10] dp8393x: Clear RRRA command register bit only when appropriate, Finn Thain, 2019/12/13
- [PATCH 10/10] dp8393x: Don't clobber packet checksum, Finn Thain, 2019/12/13
- [PATCH 09/10] dp8393x: Don't stop reception upon RBE interrupt assertion, Finn Thain, 2019/12/13
- [PATCH 04/10] dp8393x: Don't advance RX descriptor twice, Finn Thain, 2019/12/13
- [PATCH 07/10] dp8393x: Implement TBWC0 and TBWC1 registers to restore buffer state, Finn Thain, 2019/12/13
- [PATCH 08/10] dp8393x: Implement packet size limit and RBAE interrupt, Finn Thain, 2019/12/13
- [PATCH 03/10] dp8393x: Have dp8393x_receive() return the packet size, Finn Thain, 2019/12/13