Re: [PATCH net-next 2/2] net: stmmac: qcom-ethqos: convert to set_clk_tx_rate() method
From: Simon Horman <horms@kernel.org>
Date: 2026-01-12 20:01:46
Also in:
linux-arm-kernel, linux-arm-msm
On Mon, Jan 12, 2026 at 06:11:29PM +0000, Russell King (Oracle) wrote:
quoted hunk ↗ jump to hunk
Set the RGMII link clock using the set_clk_tx_rate() method rather than coding it into the .fix_mac_speed() method. This simplifies ethqos's ethqos_fix_mac_speed(). Signed-off-by: Russell King (Oracle) <redacted> --- .../stmicro/stmmac/dwmac-qcom-ethqos.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-)diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c index 869f924f3cde..d6df3ca757be 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c@@ -102,7 +102,6 @@ struct qcom_ethqos { void __iomem *rgmii_base; int (*configure_func)(struct qcom_ethqos *ethqos, int speed); - unsigned int link_clk_rate; struct clk *link_clk; struct phy *serdes_phy; int serdes_speed;@@ -174,19 +173,18 @@ static void rgmii_dump(void *priv) rgmii_readl(ethqos, EMAC_SYSTEM_LOW_POWER_DEBUG)); } -static void -ethqos_update_link_clk(struct qcom_ethqos *ethqos, int speed) +static int ethqos_set_clk_tx_rate(void *bsp_priv, struct clk *clk_tx_i, + phy_interface_t interface, int speed) { + struct qcom_ethqos *ethqos = bsp_priv; long rate; - if (!phy_interface_mode_is_rgmii(ethqos->phy_mode)) - return; + if (!phy_interface_mode_is_rgmii(interface)) + return 0; rate = rgmii_clock(speed); if (rate > 0) - ethqos->link_clk_rate = rate * 2; - - clk_set_rate(ethqos->link_clk, ethqos->link_clk_rate); + clk_set_rate(ethqos->link_clk, rate * 2);
Hi Russell, An int needs to be returned here.
} static void
-- pw-bot: cr