]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: macb: clean up tsu clk rate acquisition
authorConor Dooley <conor.dooley@microchip.com>
Wed, 25 Mar 2026 16:28:13 +0000 (16:28 +0000)
committerJakub Kicinski <kuba@kernel.org>
Sun, 29 Mar 2026 21:34:28 +0000 (14:34 -0700)
tsu_clk is grabbed during probe, so doesn't need to be re-grabbed here.
pclk is mandatory, probe will fail if it is err/NULL, so there's no need
to check it here or have a !pclk 3rd arm. Simplify gem_get_tsu_rate() to
account for these facts.

Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://patch.msgid.link/20260325-hazing-penniless-14ba803efbb6@spud
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/cadence/macb_main.c

index 8600b3505efb3bc44ffcd6aecce90ac032b30831..7deae61a61d4968ecc3f7c7c9a789e5a385d759f 100644 (file)
@@ -3765,16 +3765,14 @@ static unsigned int gem_get_tsu_rate(struct macb *bp)
        struct clk *tsu_clk;
        unsigned int tsu_rate;
 
-       tsu_clk = devm_clk_get(&bp->pdev->dev, "tsu_clk");
-       if (!IS_ERR(tsu_clk))
-               tsu_rate = clk_get_rate(tsu_clk);
-       /* try pclk instead */
-       else if (!IS_ERR(bp->pclk)) {
+       if (!IS_ERR_OR_NULL(bp->tsu_clk)) {
+               tsu_rate = clk_get_rate(bp->tsu_clk);
+       } else {
                tsu_clk = bp->pclk;
                tsu_rate = clk_get_rate(tsu_clk);
                dev_warn(&bp->pdev->dev, "devicetree missing tsu_clk, using pclk as fallback\n");
-       } else
-               return -ENOTSUPP;
+       }
+
        return tsu_rate;
 }