[PATCH v2] net: tsec: add option to set device max-speed via dts
Bin Meng
bmeng.cn at gmail.com
Fri Jun 4 15:05:07 CEST 2021
On Fri, Jun 4, 2021 at 8:05 PM Aleksandar Gerasimovski
<aleksandar.gerasimovski at hitachi-powergrids.com> wrote:
>
> Current tsec adapter sets adapter gigabit capabilities by default, and in
> reality this must not always be the case.
> It is possible that tsec adapter is used for 100Mbit connection, and in
> this case setting 1000Mbit capabilities can lead to some side effects such
> longer autoneg process.
>
> In our ls102x designs this problem leads to long autoneg times (> 4 sec)
> in case board rgmii link is 100Mbs capble only.
typo: capable?
> Limiting the rgmii link capabilities provides smother and faster
typo: smoother?
> link establishment.
>
> Signed-off-by: Aleksandar Gerasimovski <aleksandar.gerasimovski at hitachi-powergrids.com>
> Reviewed-by: Vladimir Oltean <vladimir.oltean at nxp.com>
> ---
> Changes for v2:
> - keep the variable sort order in a decreasing order of line length
> - fix comment typo
> ---
> drivers/net/tsec.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
> index c68e4b7..ee820aa 100644
> --- a/drivers/net/tsec.c
> +++ b/drivers/net/tsec.c
> @@ -828,6 +828,7 @@ int tsec_probe(struct udevice *dev)
> const char *phy_mode;
> ofnode parent, child;
> fdt_addr_t reg;
> + u32 max_speed;
> int ret;
>
> data = (struct tsec_data *)dev_get_driver_data(dev);
> @@ -893,8 +894,12 @@ int tsec_probe(struct udevice *dev)
> }
> priv->interface = pdata->phy_interface;
>
> + /* Check for speed limit, default is 1000Mbps */
> + max_speed = dev_read_u32_default(dev, "max-speed", 1000);
> +
> /* Initialize flags */
> - priv->flags = TSEC_GIGABIT;
> + if (max_speed == 1000)
> + priv->flags = TSEC_GIGABIT;
> if (priv->interface == PHY_INTERFACE_MODE_SGMII)
> priv->flags |= TSEC_SGMII;
>
Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
Could you please send the new version as a separate thread, instead of
replying the old version thread?
Regards,
Bin
More information about the U-Boot
mailing list