On Thu, Dec 22, 2022 at 7:43 PM Sriram Yagnaraman
<sriram.yagnaraman@est.tech> wrote:
A new attempt at adding support for Intel 82576 Gigabit Ethernet adapter
with SR-IOV support.
Start qemu with the following parameters.
qemu-system-x86_64 -enable-kvm -M q35 \
...
-device pcie-root-port,slot=3,id=pcie_port.3 \
-netdev
tap,id=net3,script=no,downscript=/tmp/rmtap,ifname=xcbr3_t2,queues=1 \
-device igb,bus=pcie_port.3,netdev=net3,mac=00:00:00:01:03:02
Load IGB/IGBVF modules if needed.
modprobe igb
modprobe igbvf
Create VFs via /sys
ls /sys/bus/pci/devices/0000:01:00.0/
echo 2 > /sys/bus/pci/devices/0000:01:00.0/sriov_numvfs
Sriram Yagnaraman (5):
pcie: add helper function to get number of VFs
hw/net/net_tx_pkt: helper function to get l2 hdr
hw/net/igb: register definitions
hw/net/igb: emulated intel IGB (82576EB) network device
hw/net/igb: build support for igb/igbvf devices
Haven't reviewed this series but I think we'd have two more things:
1) update the MAINTAINERS
2) a qtest for igb (having a qtest for sr-iov would be even better)
Thanks
hw/i386/Kconfig | 1 +
hw/net/Kconfig | 5 +
hw/net/e1000_regs.h | 357 +++-
hw/net/e1000x_common.c | 13 +
hw/net/e1000x_common.h | 28 +
hw/net/igb.c | 627 ++++++
hw/net/igb.h | 184 ++
hw/net/igb_core.c | 3782 +++++++++++++++++++++++++++++++++++
hw/net/igb_core.h | 216 ++
hw/net/igbvf.c | 262 +++
hw/net/meson.build | 2 +
hw/net/net_tx_pkt.c | 17 +-
hw/net/net_tx_pkt.h | 8 +
hw/net/trace-events | 190 ++
hw/pci/pcie_sriov.c | 6 +
include/hw/pci/pcie_sriov.h | 5 +
16 files changed, 5671 insertions(+), 32 deletions(-)
create mode 100644 hw/net/igb.c
create mode 100644 hw/net/igb.h
create mode 100644 hw/net/igb_core.c
create mode 100644 hw/net/igb_core.h
create mode 100644 hw/net/igbvf.c
--
2.34.1