net: stmmac: dwmac-meson8b: fix enabling the timing-adjustment clock
authorMartin Blumenstingl <martin.blumenstingl@googlemail.com>
Wed, 6 Jan 2021 13:42:48 +0000 (14:42 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 7 Jan 2021 23:58:33 +0000 (15:58 -0800)
The timing-adjustment clock only has to be enabled when a) there is a
2ns RX delay configured using device-tree and b) the phy-mode indicates
that the RX delay should be enabled.

Only enable the RX delay if both are true, instead of (by accident) also
enabling it when there's the 2ns RX delay configured but the phy-mode
incicates that the RX delay is not used.

Fixes: 9308c47640d515 ("net: stmmac: dwmac-meson8b: add support for the RX delay configuration")
Reported-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c

index f184b00..5f50014 100644 (file)
@@ -301,7 +301,7 @@ static int meson8b_init_prg_eth(struct meson8b_dwmac *dwmac)
                return -EINVAL;
        }
 
-       if (rx_dly_config & PRG_ETH0_ADJ_ENABLE) {
+       if (delay_config & PRG_ETH0_ADJ_ENABLE) {
                if (!dwmac->timing_adj_clk) {
                        dev_err(dwmac->dev,
                                "The timing-adjustment clock is mandatory for the RX delay re-timing\n");