Add emulation for Intel e1000 (e82545) network adapter.

The code was successfully tested with FreeBSD, Linux, Solaris and Windows
guests.  This interface is predictably slower (about 2x) then virtio-net,
but it is very helpful for guests not supporting virtio-net by default.

Thanks to Jeremiah Lott and Peter Grehan for doing original heavy lifting.
This commit is contained in:
Alexander Motin 2016-07-09 20:41:59 +00:00
parent f9a2051818
commit 9e749f25da
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=302504
3 changed files with 2378 additions and 1 deletions

View File

@ -28,6 +28,7 @@ SRCS= \
mevent.c \
mptbl.c \
pci_ahci.c \
pci_e82545.c \
pci_emul.c \
pci_fbuf.c \
pci_hostbridge.c \
@ -61,6 +62,8 @@ SRCS+= vmm_instruction_emul.c
LIBADD= vmmapi md pthread z
CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/e1000
CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/mii
CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/usb/controller
WARNS?= 2

View File

@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
.Dd July 8, 2016
.Dd July 9, 2016
.Dt BHYVE 8
.Os
.Sh NAME
@ -177,6 +177,8 @@ AHCI controller attached to arbitraty devices.
AHCI controller attached to an ATAPI CD/DVD.
.It Li ahci-hd
AHCI controller attached to a SATA hard-drive.
.It Li e1000
Intel e82545 network interface.
.It Li uart
PCI 16550 serial device.
.It Li lpc

2372
usr.sbin/bhyve/pci_e82545.c Normal file

File diff suppressed because it is too large Load Diff