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
3 changed files with 2378 additions and 1 deletions
+3
View File
@@ -28,6 +28,7 @@ SRCS= \
mevent.c \ mevent.c \
mptbl.c \ mptbl.c \
pci_ahci.c \ pci_ahci.c \
pci_e82545.c \
pci_emul.c \ pci_emul.c \
pci_fbuf.c \ pci_fbuf.c \
pci_hostbridge.c \ pci_hostbridge.c \
@@ -61,6 +62,8 @@ SRCS+= vmm_instruction_emul.c
LIBADD= vmmapi md pthread z 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 CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/usb/controller
WARNS?= 2 WARNS?= 2
+3 -1
View File
@@ -24,7 +24,7 @@
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd July 8, 2016 .Dd July 9, 2016
.Dt BHYVE 8 .Dt BHYVE 8
.Os .Os
.Sh NAME .Sh NAME
@@ -177,6 +177,8 @@ AHCI controller attached to arbitraty devices.
AHCI controller attached to an ATAPI CD/DVD. AHCI controller attached to an ATAPI CD/DVD.
.It Li ahci-hd .It Li ahci-hd
AHCI controller attached to a SATA hard-drive. AHCI controller attached to a SATA hard-drive.
.It Li e1000
Intel e82545 network interface.
.It Li uart .It Li uart
PCI 16550 serial device. PCI 16550 serial device.
.It Li lpc .It Li lpc
File diff suppressed because it is too large Load Diff