mbox

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

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

Message

Srikanth Kaka April 23, 2022, 4:28 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:
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