[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 00/34] e1000x cleanups (preliminary for IGB)
From: |
Akihiko Odaki |
Subject: |
[PATCH v6 00/34] e1000x cleanups (preliminary for IGB) |
Date: |
Thu, 23 Feb 2023 19:19:44 +0900 |
We are adding a new device named igb, yet another Intel NIC. As the new
implementation derives from e1000e, overhaul e1000e implementation first.
e1000 has many commonalities with e1000e so we also apply the corresponding
changes to the device if possible.
This was spun off from:
https://patchew.org/QEMU/20230112095743.20123-1-akihiko.odaki@daynix.com/
The changes from the series are as follows:
- Fixed code alignment in e1000.c. (Philippe Mathieu-Daudé)
- "e1000: Configure ResettableClass" and e1000e's corresponding patch was based
on the old version so they are now updated. (Philippe Mathieu-Daudé)
- Added "e1000e: Remove extra pointer indirection"
The series was composed on patches submitted earlier for e1000e. The below
are links to Patchew:
03: https://patchew.org/QEMU/20221103060103.83363-1-akihiko.odaki@daynix.com/
04: https://patchew.org/QEMU/20221125135254.54760-1-akihiko.odaki@daynix.com/
05: https://patchew.org/QEMU/20221119054913.103803-1-akihiko.odaki@daynix.com/
06: https://patchew.org/QEMU/20221119055304.105500-1-akihiko.odaki@daynix.com/
08 includes:
https://patchew.org/QEMU/20221119060156.110010-1-akihiko.odaki@daynix.com/
10: https://patchew.org/QEMU/20221125140105.55925-1-akihiko.odaki@daynix.com/
11: https://patchew.org/QEMU/20221125142608.58919-1-akihiko.odaki@daynix.com/
13: https://patchew.org/QEMU/20221201095351.63392-1-akihiko.odaki@daynix.com/
14: https://patchew.org/QEMU/20221201100113.64387-1-akihiko.odaki@daynix.com/
15: https://patchew.org/QEMU/20230107143328.102534-1-akihiko.odaki@daynix.com/
20: https://patchew.org/QEMU/20230114025339.4874-1-akihiko.odaki@daynix.com/
V5 -> V6:
- Extracted patch e1000e: Introduce E1000E_LOW_BITS_SET_FUNC from
"e1000e: Mask registers when writing". (Philippe Mathieu-Daudé)
- Added "e1000: Count CRC in Tx statistics".
- Added "e1000e: Count CRC in Tx statistics".
- Added "net/eth: Report if headers are actually present".
- Added "e1000e: Implement system clock".
V4 -> V5:
- Added "e1000e: Combine rx traces".
V3 -> V4:
- Fixed iov cursor update in "hw/net/net_tx_pkt: Implement TCP segmentation".
- Fixed UDP checksumming in "hw/net/net_tx_pkt: Implement TCP segmentation".
- Added "hw/net/net_tx_pkt: Check the payload length".
- Added "e1000e: Do not assert when MSI-X is disabled later".
V2 -> V3:
- List tests/qtest/libqos/e1000e.h in MAINTAINERS. (Thomas Huth)
V1 -> V2:
- Rebased to commit fcb7e040f5c69ca1f0678f991ab5354488a9e192.
- Added "net: Check L4 header size".
- Added "e1000x: Alter the signature of e1000x_is_vlan_packet".
- Added "net: Strip virtio-net header when dumping".
- Added "hw/net/net_tx_pkt: Automatically determine if virtio-net header is
used".
- Added "hw/net/net_rx_pkt: Remove net_rx_pkt_has_virt_hdr".
- Added "e1000e: Perform software segmentation for loopback".
- Added "hw/net/net_tx_pkt: Implement TCP segmentation"
- Added "MAINTAINERS: Add Akihiko Odaki as a e1000e reviewer".
- Added "MAINTAINERS: Add e1000e test files".
Akihiko Odaki (34):
e1000e: Fix the code style
hw/net: Add more MII definitions
fsl_etsec: Use hw/net/mii.h
e1000: Use hw/net/mii.h
e1000: Mask registers when writing
e1000e: Introduce E1000E_LOW_BITS_SET_FUNC
e1000e: Mask registers when writing
e1000: Use more constant definitions
e1000e: Use more constant definitions
e1000: Use memcpy to intialize registers
e1000e: Use memcpy to intialize registers
e1000e: Remove pending interrupt flags
e1000e: Improve software reset
e1000: Configure ResettableClass
e1000e: Configure ResettableClass
e1000e: Introduce e1000_rx_desc_union
e1000e: Set MII_ANER_NWAY
e1000e: Remove extra pointer indirection
net: Check L4 header size
e1000x: Alter the signature of e1000x_is_vlan_packet
net: Strip virtio-net header when dumping
hw/net/net_tx_pkt: Automatically determine if virtio-net header is
used
hw/net/net_rx_pkt: Remove net_rx_pkt_has_virt_hdr
e1000e: Perform software segmentation for loopback
hw/net/net_tx_pkt: Implement TCP segmentation
hw/net/net_tx_pkt: Check the payload length
e1000e: Do not assert when MSI-X is disabled later
MAINTAINERS: Add Akihiko Odaki as a e1000e reviewer
MAINTAINERS: Add e1000e test files
e1000e: Combine rx traces
e1000: Count CRC in Tx statistics
e1000e: Count CRC in Tx statistics
net/eth: Report if headers are actually present
e1000e: Implement system clock
MAINTAINERS | 4 +
hw/core/machine.c | 1 +
hw/net/e1000.c | 258 +++++++--------
hw/net/e1000_regs.h | 88 +++--
hw/net/e1000e.c | 99 +++---
hw/net/e1000e_core.c | 700 +++++++++++++++++++++------------------
hw/net/e1000e_core.h | 70 ++--
hw/net/e1000x_common.c | 37 ++-
hw/net/e1000x_common.h | 59 ++--
hw/net/fsl_etsec/etsec.c | 11 +-
hw/net/fsl_etsec/etsec.h | 17 -
hw/net/fsl_etsec/miim.c | 5 +-
hw/net/net_rx_pkt.c | 98 +++---
hw/net/net_rx_pkt.h | 32 +-
hw/net/net_tx_pkt.c | 332 ++++++++++++++-----
hw/net/net_tx_pkt.h | 27 +-
hw/net/trace-events | 16 +-
hw/net/virtio-net.c | 34 +-
hw/net/vmxnet3.c | 52 ++-
include/hw/net/mii.h | 14 +-
include/net/eth.h | 9 +-
include/net/net.h | 6 +
net/dump.c | 11 +-
net/eth.c | 118 +++----
net/net.c | 18 +
net/tap.c | 16 +
26 files changed, 1177 insertions(+), 955 deletions(-)
--
2.39.1
- [PATCH v6 00/34] e1000x cleanups (preliminary for IGB),
Akihiko Odaki <=
- [PATCH v6 01/34] e1000e: Fix the code style, Akihiko Odaki, 2023/02/23
- [PATCH v6 02/34] hw/net: Add more MII definitions, Akihiko Odaki, 2023/02/23
- [PATCH v6 03/34] fsl_etsec: Use hw/net/mii.h, Akihiko Odaki, 2023/02/23
- [PATCH v6 04/34] e1000: Use hw/net/mii.h, Akihiko Odaki, 2023/02/23
- [PATCH v6 05/34] e1000: Mask registers when writing, Akihiko Odaki, 2023/02/23
- [PATCH v6 06/34] e1000e: Introduce E1000E_LOW_BITS_SET_FUNC, Akihiko Odaki, 2023/02/23
- [PATCH v6 07/34] e1000e: Mask registers when writing, Akihiko Odaki, 2023/02/23
- [PATCH v6 08/34] e1000: Use more constant definitions, Akihiko Odaki, 2023/02/23
- [PATCH v6 09/34] e1000e: Use more constant definitions, Akihiko Odaki, 2023/02/23
- [PATCH v6 10/34] e1000: Use memcpy to intialize registers, Akihiko Odaki, 2023/02/23