linux/Documentation/networking/device_drivers
Parav Pandit 90d010b863 net/mlx5: SF, Add auxiliary device support
Introduce API to add and delete an auxiliary device for an SF.
Each SF has its own dedicated window in the PCI BAR 2.

SF device is similar to PCI PF and VF that supports multiple class of
devices such as net, rdma and vdpa.

SF device will be added or removed in subsequent patch during SF
devlink port function state change command.

A subfunction device exposes user supplied subfunction number which will
be further used by systemd/udev to have deterministic name for its
netdevice and rdma device.

An mlx5 subfunction auxiliary device example:

$ devlink dev eswitch set pci/0000:06:00.0 mode switchdev

$ devlink port show
pci/0000:06:00.0/65535: type eth netdev ens2f0np0 flavour physical port 0 splittable false

$ devlink port add pci/0000:06:00.0 flavour pcisf pfnum 0 sfnum 88
pci/0000:08:00.0/32768: type eth netdev eth6 flavour pcisf controller 0 pfnum 0 sfnum 88 external false splittable false
  function:
    hw_addr 00:00:00:00:00:00 state inactive opstate detached

$ devlink port show ens2f0npf0sf88
pci/0000:06:00.0/32768: type eth netdev ens2f0npf0sf88 flavour pcisf controller 0 pfnum 0 sfnum 88 external false splittable false
  function:
    hw_addr 00:00:00:00:88:88 state inactive opstate detached

$ devlink port function set ens2f0npf0sf88 hw_addr 00:00:00:00:88:88 state active

On activation,

$ ls -l /sys/bus/auxiliary/devices/
mlx5_core.sf.4 -> ../../../devices/pci0000:00/0000:00:03.0/0000:06:00.0/mlx5_core.sf.4

$ cat /sys/bus/auxiliary/devices/mlx5_core.sf.4/sfnum
88

Signed-off-by: Parav Pandit <parav@nvidia.com>
Reviewed-by: Vu Pham <vuhuong@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-01-22 11:32:08 -08:00
..
appletalk docs: networking: move AppleTalk / LocalTalk drivers to the hw driver section 2020-06-26 16:08:45 -07:00
atm docs: networking: move ATM drivers to the hw driver section 2020-06-26 16:08:45 -07:00
cable docs: networking: reorganize driver documentation again 2020-06-26 16:08:44 -07:00
cellular docs: networking: reorganize driver documentation again 2020-06-26 16:08:44 -07:00
ethernet net/mlx5: SF, Add auxiliary device support 2021-01-22 11:32:08 -08:00
fddi docs: networking: move FDDI drivers to the hw driver section 2020-06-26 16:08:45 -07:00
hamradio docs: networking: move baycom to the hw driver section 2020-06-26 16:08:44 -07:00
wan docs: networking: move z8530 to the hw driver section 2020-06-26 16:08:44 -07:00
wifi ipw2x00: Replace HTTP links with HTTPS ones 2020-08-02 18:15:38 +03:00
index.rst docs: networking: move FDDI drivers to the hw driver section 2020-06-26 16:08:45 -07:00