This patchset requires FreeBSD VMBus kernel changes and HV_UIO driver. Both are currently under review at https://reviews.freebsd.org/D32184
Changelog: v5: - renamed dir osi to unix - marked a newly added API as experimental - removed camel case variables v4: - moved OS independent code out of Linux v3: - split the patches into further logical parts - updated docs v2: - replaced strncpy with memcpy - replaced malloc.h with stdlib.h - added comment in linux/vmbus_uio.c v1: Intial release Srikanth Kaka (14): bus/vmbus: move independent code from Linux bus/vmbus: move independent bus functions bus/vmbus: move OS independent UIO functions bus/vmbus: scan and get the network device on FreeBSD bus/vmbus: handle mapping of device resources bus/vmbus: get device resource values using sysctl net/netvsc: make event monitor OS dependent bus/vmbus: add sub-channel mapping support bus/vmbus: open subchannels net/netvsc: make IOCTL call to open subchannels bus/vmbus: get subchannel info net/netvsc: moving hotplug retry to OS dir bus/vmbus: add meson support for FreeBSD bus/vmbus: update MAINTAINERS and docs MAINTAINERS | 2 + doc/guides/nics/netvsc.rst | 11 ++ drivers/bus/vmbus/freebsd/vmbus_bus.c | 286 ++++++++++++++++++++++++++++ drivers/bus/vmbus/freebsd/vmbus_uio.c | 256 +++++++++++++++++++++++++ drivers/bus/vmbus/linux/vmbus_bus.c | 28 +-- drivers/bus/vmbus/linux/vmbus_uio.c | 320 ++++---------------------------- drivers/bus/vmbus/meson.build | 12 +- drivers/bus/vmbus/private.h | 1 + drivers/bus/vmbus/rte_bus_vmbus.h | 11 ++ drivers/bus/vmbus/unix/vmbus_unix.h | 27 +++ drivers/bus/vmbus/unix/vmbus_unix_bus.c | 37 ++++ drivers/bus/vmbus/unix/vmbus_unix_uio.c | 310 +++++++++++++++++++++++++++++++ drivers/bus/vmbus/version.map | 6 + drivers/bus/vmbus/vmbus_channel.c | 5 + drivers/net/netvsc/freebsd/hn_os.c | 21 +++ drivers/net/netvsc/freebsd/meson.build | 6 + drivers/net/netvsc/hn_ethdev.c | 95 +--------- drivers/net/netvsc/hn_os.h | 8 + drivers/net/netvsc/linux/hn_os.c | 111 +++++++++++ drivers/net/netvsc/linux/meson.build | 6 + drivers/net/netvsc/meson.build | 3 + 21 files changed, 1164 insertions(+), 398 deletions(-) create mode 100644 drivers/bus/vmbus/freebsd/vmbus_bus.c create mode 100644 drivers/bus/vmbus/freebsd/vmbus_uio.c create mode 100644 drivers/bus/vmbus/unix/vmbus_unix.h create mode 100644 drivers/bus/vmbus/unix/vmbus_unix_bus.c create mode 100644 drivers/bus/vmbus/unix/vmbus_unix_uio.c create mode 100644 drivers/net/netvsc/freebsd/hn_os.c create mode 100644 drivers/net/netvsc/freebsd/meson.build create mode 100644 drivers/net/netvsc/hn_os.h create mode 100644 drivers/net/netvsc/linux/hn_os.c create mode 100644 drivers/net/netvsc/linux/meson.build -- 1.8.3.1