Re: [RFC] ravb: Add support for optional txc_refclk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello!

On 12.12.2020 19:56, Adam Ford wrote:

The SoC expects the txv_refclk is provided, but if it is provided
by a programmable clock, there needs to be a way to get and enable
this clock to operate.  It needs to be optional since it's only
necessary for those with programmable clocks.

Signed-off-by: Adam Ford <aford173@xxxxxxxxx>
[...]
diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c
index bd30505fbc57..4c3f95923ef2 100644
--- a/drivers/net/ethernet/renesas/ravb_main.c
+++ b/drivers/net/ethernet/renesas/ravb_main.c
@@ -2148,6 +2148,18 @@ static int ravb_probe(struct platform_device *pdev)
  		goto out_release;
  	}
+ priv->ref_clk = devm_clk_get(&pdev->dev, "txc_refclk");

   Why not devm_clk_get_optional()?

+	if (IS_ERR(priv->ref_clk)) {
+		if (PTR_ERR(priv->ref_clk) == -EPROBE_DEFER) {
+			/* for Probe defer return error */
+			error = PTR_ERR(priv->ref_clk);
+			goto out_release;
+		}
+		/* Ignore other errors since it's optional */
+	} else {
+		(void)clk_prepare_enable(priv->ref_clk);
+	}
+
  	ndev->max_mtu = 2048 - (ETH_HLEN + VLAN_HLEN + ETH_FCS_LEN);
  	ndev->min_mtu = ETH_MIN_MTU;

MBR, Sergei



[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux