[PATCH net-next 2/2] net: stmmac: qcom-ethqos: convert to set_clk_tx_rate() method
Simon Horman
horms at kernel.org
Mon Jan 12 12:01:40 PST 2026
On Mon, Jan 12, 2026 at 06:11:29PM +0000, Russell King (Oracle) wrote:
> 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) <rmk+kernel at armlinux.org.uk>
> ---
> .../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
More information about the linux-arm-kernel
mailing list