Re: [PATCH 4/4] net: stmmac: Add glue layer for Sophgo SG2044 SoC

From: Andrew Lunn
Date: Mon Oct 21 2024 - 08:27:19 EST


> +static void sophgo_dwmac_fix_mac_speed(void *priv, unsigned int speed, unsigned int mode)
> +{
> + struct sophgo_dwmac *dwmac = priv;
> + unsigned long rate;
> + int ret;
> +
> + switch (speed) {
> + case SPEED_1000:
> + rate = 125000000;
> + break;
> + case SPEED_100:
> + rate = 25000000;
> + break;
> + case SPEED_10:
> + rate = 2500000;
> + break;
> + default:
> + dev_err(dwmac->dev, "invalid speed %u\n", speed);
> + break;
> + }

There was a helper added recently for this, since it appears
repeatedly in drivers.

> + ret = regmap_set_bits(regmap, args[0], DWMAC_SG2044_FLAG_USE_RX_DELAY);
> + if (ret)
> + return dev_err_probe(&pdev->dev, ret,
> + "failed to set the phy rx delay\n");

Please could you explain what this delay is for. Is it the 2ns RGMII
delay?

Andrew