Commit eabd0f88 authored by Rakesh Babu Saladi's avatar Rakesh Babu Saladi Committed by David S. Miller

octeontx2-nicvf: Free VF PTP resources.

When a VF is removed respective PTP resources are not
being freed currently. This patch fixes it.

Fixes: 43510ef4 ("octeontx2-nicvf: Add PTP hardware clock support to NIX VF")
Signed-off-by: default avatarRakesh Babu Saladi <rsaladi2@marvell.com>
Signed-off-by: default avatarSubbaraya Sundeep <sbhatta@marvell.com>
Signed-off-by: default avatarSunil Goutham <sgoutham@marvell.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 93440f48
...@@ -684,7 +684,7 @@ static int otx2vf_probe(struct pci_dev *pdev, const struct pci_device_id *id) ...@@ -684,7 +684,7 @@ static int otx2vf_probe(struct pci_dev *pdev, const struct pci_device_id *id)
err = register_netdev(netdev); err = register_netdev(netdev);
if (err) { if (err) {
dev_err(dev, "Failed to register netdevice\n"); dev_err(dev, "Failed to register netdevice\n");
goto err_detach_rsrc; goto err_ptp_destroy;
} }
err = otx2_wq_init(vf); err = otx2_wq_init(vf);
...@@ -709,6 +709,8 @@ static int otx2vf_probe(struct pci_dev *pdev, const struct pci_device_id *id) ...@@ -709,6 +709,8 @@ static int otx2vf_probe(struct pci_dev *pdev, const struct pci_device_id *id)
err_unreg_netdev: err_unreg_netdev:
unregister_netdev(netdev); unregister_netdev(netdev);
err_ptp_destroy:
otx2_ptp_destroy(vf);
err_detach_rsrc: err_detach_rsrc:
if (test_bit(CN10K_LMTST, &vf->hw.cap_flag)) if (test_bit(CN10K_LMTST, &vf->hw.cap_flag))
qmem_free(vf->dev, vf->dync_lmt); qmem_free(vf->dev, vf->dync_lmt);
...@@ -742,6 +744,7 @@ static void otx2vf_remove(struct pci_dev *pdev) ...@@ -742,6 +744,7 @@ static void otx2vf_remove(struct pci_dev *pdev)
unregister_netdev(netdev); unregister_netdev(netdev);
if (vf->otx2_wq) if (vf->otx2_wq)
destroy_workqueue(vf->otx2_wq); destroy_workqueue(vf->otx2_wq);
otx2_ptp_destroy(vf);
otx2vf_disable_mbox_intr(vf); otx2vf_disable_mbox_intr(vf);
otx2_detach_resources(&vf->mbox); otx2_detach_resources(&vf->mbox);
if (test_bit(CN10K_LMTST, &vf->hw.cap_flag)) if (test_bit(CN10K_LMTST, &vf->hw.cap_flag))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment