]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net/mlx5: Add support for enabling PTM PCI capability
authorCarolina Jubran <cjubran@nvidia.com>
Tue, 30 Jul 2024 13:40:53 +0000 (16:40 +0300)
committerJakub Kicinski <kuba@kernel.org>
Mon, 5 Aug 2024 23:44:44 +0000 (16:44 -0700)
Since the kernel doesn't support enabling Precision Time Measurement
for an endpoint device, enable the PTM PCI capability in the driver.

Signed-off-by: Carolina Jubran <cjubran@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Tested-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Link: https://patch.msgid.link/20240730134055.1835261-3-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/main.c

index 5b7e6f4b5c7ea10efd4b47eb621726482e83bb72..4b88d969a66c2291274b08f7c1852463f0a91b0d 100644 (file)
@@ -923,6 +923,11 @@ static int mlx5_pci_init(struct mlx5_core_dev *dev, struct pci_dev *pdev,
        }
 
        mlx5_pci_vsc_init(dev);
+
+       err = pci_enable_ptm(pdev, NULL);
+       if (err)
+               mlx5_core_info(dev, "PTM is not supported by PCIe\n");
+
        return 0;
 
 err_clr_master:
@@ -939,6 +944,7 @@ static void mlx5_pci_close(struct mlx5_core_dev *dev)
         * before removing the pci bars
         */
        mlx5_drain_health_wq(dev);
+       pci_disable_ptm(dev->pdev);
        iounmap(dev->iseg);
        release_bar(dev->pdev);
        mlx5_pci_disable_device(dev);