]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: macb: properly unregister fixed rate clocks
authorFedor Pchelkin <pchelkin@ispras.ru>
Mon, 30 Mar 2026 18:45:41 +0000 (21:45 +0300)
committerJakub Kicinski <kuba@kernel.org>
Thu, 2 Apr 2026 02:57:20 +0000 (19:57 -0700)
The additional resources allocated with clk_register_fixed_rate() need
to be released with clk_unregister_fixed_rate(), otherwise they are lost.

Fixes: 83a77e9ec415 ("net: macb: Added PCI wrapper for Platform Driver.")
Signed-off-by: Fedor Pchelkin <pchelkin@ispras.ru>
Link: https://patch.msgid.link/20260330184542.626619-2-pchelkin@ispras.ru
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/cadence/macb_pci.c

index 0ce5b736ea438940c08ad64d943e4033431ef8d4..b79dec17e6b099741ad1918d0faa673d623acff9 100644 (file)
@@ -96,10 +96,10 @@ static int macb_probe(struct pci_dev *pdev, const struct pci_device_id *id)
        return 0;
 
 err_plat_dev_register:
-       clk_unregister(plat_data.hclk);
+       clk_unregister_fixed_rate(plat_data.hclk);
 
 err_hclk_register:
-       clk_unregister(plat_data.pclk);
+       clk_unregister_fixed_rate(plat_data.pclk);
 
 err_pclk_register:
        return err;
@@ -113,8 +113,8 @@ static void macb_remove(struct pci_dev *pdev)
        struct clk *hclk = plat_data->hclk;
 
        platform_device_unregister(plat_dev);
-       clk_unregister(pclk);
-       clk_unregister(hclk);
+       clk_unregister_fixed_rate(pclk);
+       clk_unregister_fixed_rate(hclk);
 }
 
 static const struct pci_device_id dev_id_table[] = {