[v2,12/14] vdpa/mlx5: support SubFunction
Checks
Commit Message
From: Thomas Monjalon <thomas@monjalon.net>
Supports SubFunction on auxiliary bus. SF probe devargs:
auxiliary:mlx5_core.sf.<id>,class=vdpa
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
doc/guides/vdpadevs/mlx5.rst | 10 ++++++++++
drivers/vdpa/mlx5/mlx5_vdpa.c | 8 ++++++--
2 files changed, 16 insertions(+), 2 deletions(-)
Comments
> -----Original Message-----
> From: Xueming(Steven) Li <xuemingl@nvidia.com>
> Sent: Tuesday, July 13, 2021 16:15
> To: Slava Ovsiienko <viacheslavo@nvidia.com>
> Cc: NBU-Contact-Thomas Monjalon <thomas@monjalon.net>;
> dev@dpdk.org; Xueming(Steven) Li <xuemingl@nvidia.com>; Matan Azrad
> <matan@nvidia.com>
> Subject: [PATCH v2 12/14] vdpa/mlx5: support SubFunction
>
> From: Thomas Monjalon <thomas@monjalon.net>
>
> Supports SubFunction on auxiliary bus. SF probe devargs:
> auxiliary:mlx5_core.sf.<id>,class=vdpa
>
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
@@ -162,6 +162,16 @@ Driver options
- 0, HW default.
+Devargs example
+^^^^^^^^^^^^^^^
+
+- PCI devargs:
+
+ -a 0000:03:00.2,class=vdpa
+
+- Auxiliary devargs:
+
+ -a auxiliary:mlx5_core.sf.2,class=vdpa
Error handling
^^^^^^^^^^^^^^
@@ -553,9 +553,13 @@ mlx5_vdpa_sys_roce_disable(const char *addr)
static int
mlx5_vdpa_roce_disable(struct rte_device *dev)
{
+ char pci_addr[PCI_PRI_STR_SIZE] = { 0 };
+
+ if (mlx5_dev_to_pci_str(dev, pci_addr, sizeof(pci_addr)) < 0)
+ return -rte_errno;
/* Firstly try to disable ROCE by Netlink and fallback to sysfs. */
- if (mlx5_vdpa_nl_roce_disable(dev->name) != 0 &&
- mlx5_vdpa_sys_roce_disable(dev->name) != 0)
+ if (mlx5_vdpa_nl_roce_disable(pci_addr) != 0 &&
+ mlx5_vdpa_sys_roce_disable(pci_addr) != 0)
return -rte_errno;
return 0;
}