Skip to content

Commit

Permalink
net: macb: Correct usage of MACB_CAPS_CLK_HW_CHG flag
Browse files Browse the repository at this point in the history
A new flag MACB_CAPS_CLK_HW_CHG was added and all callers of
macb_set_tx_clk were gated on the presence of this flag.

-   if (!clk)
+ if (!bp->tx_clk || !(bp->caps & MACB_CAPS_CLK_HW_CHG))

However the flag was not added to anything other than the new
sama7g5_gem, turning that function call into a no op for all other
systems. This breaks the networking on Zynq.

The commit message adding this states: a new capability so that
macb_set_tx_clock() to not be called for IPs having this
capability

This strongly implies that present of the flag was intended to skip
the function not absence of the flag. Update the if statement to
this effect, which repairs the existing users.

Fixes: daafa1d ("net: macb: add capability to not set the clock rate")
Suggested-by: Andrew Lunn <[email protected]>
Signed-off-by: Charles Keepax <[email protected]>
Reviewed-by: Claudiu Beznea <[email protected]>
Reviewed-by: Andrew Lunn <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
  • Loading branch information
charleskeepax authored and kuba-moo committed Jan 4, 2021
1 parent 862aecb commit 1d0d561
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/ethernet/cadence/macb_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -467,7 +467,7 @@ static void macb_set_tx_clk(struct macb *bp, int speed)
{
long ferr, rate, rate_rounded;

if (!bp->tx_clk || !(bp->caps & MACB_CAPS_CLK_HW_CHG))
if (!bp->tx_clk || (bp->caps & MACB_CAPS_CLK_HW_CHG))
return;

switch (speed) {
Expand Down

0 comments on commit 1d0d561

Please sign in to comment.