mbox

[v4,00/14] add FreeBSD support to VMBUS & NetVSC PMDs

Message ID 20220418042915.5765-1-srikanth.k@oneconvergence.com (mailing list archive)
Headers

Message

Srikanth Kaka April 18, 2022, 4:29 a.m. UTC
This patchset requires FreeBSD VMBus kernel changes and
HV_UIO driver. Both are currently under review at
https://reviews.freebsd.org/D32184

Changelog:
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/osi/vmbus_osi.h      |  27 +++
 drivers/bus/vmbus/osi/vmbus_osi_bus.c  |  37 +++
 drivers/bus/vmbus/osi/vmbus_osi_uio.c  | 310 ++++++++++++++++++++++++
 drivers/bus/vmbus/private.h            |   1 +
 drivers/bus/vmbus/rte_bus_vmbus.h      |  10 +
 drivers/bus/vmbus/version.map          |   1 +
 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, 1158 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/osi/vmbus_osi.h
 create mode 100644 drivers/bus/vmbus/osi/vmbus_osi_bus.c
 create mode 100644 drivers/bus/vmbus/osi/vmbus_osi_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