[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/2] net: Fix lan9118 multi-buffer transmit
From: |
Roy Franz |
Subject: |
[Qemu-devel] [PATCH 0/2] net: Fix lan9118 multi-buffer transmit |
Date: |
Fri, 20 Dec 2013 10:26:35 -0800 |
This patchset fixes some bugs in the lan9118 emulation that were found
while debugging UEFI network support on the emulated VExpress platform.
The 9118 ethernet controller supports transmission of multi-buffer packets
with arbitrary byte alignment of the start and end bytes of each buffer.
All writes to the packet fifo are 32 bits, so the controller discards
bytes at the beginning and end of each buffer based on the 'Data start
offset' and 'Buffer size' of the TX command 'A' word.
The UEFI network driver uses 1 buffer for the packet header, and one for
the payload. The mishandling of the start offset and buffer length
resulted in extra bytes being inserted in the packet.
With these changes the UEFI network driver that works with the real 9118
chip on the VExpress evaluation board works unmodified on QEMU. The Linux
kernel driver continues to work on QEMU as well. Since the Linux driver
was unaffected by these bugs I am inferring that it is using a single
buffer for each packet.
Roy Franz (2):
Fix lan9118 TX "CMD A" handling
Fix lan9118 buffer length handling
hw/net/lan9118.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
--
1.7.10.4
- [Qemu-devel] [PATCH 0/2] net: Fix lan9118 multi-buffer transmit,
Roy Franz <=