Commit 0686bd9
net: bcmgenet: reapply manual settings to the PHY
The phy_init_hw() function may reset the PHY to a configuration
that does not match manual network settings stored in the phydev
structure. If the phy state machine is polled rather than event
driven this can create a timing hazard where the phy state machine
might alter the settings stored in the phydev structure from the
value read from the BMCR.
This commit follows invocations of phy_init_hw() by the bcmgenet
driver with invocations of the genphy_config_aneg() function to
ensure that the BMCR is written to match the settings held in the
phydev structure. This prevents the risk of manual settings being
accidentally altered.
Fixes: 1c1008c ("net: bcmgenet: add main driver file")
Signed-off-by: Doug Berger <opendmb@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>1 parent 6b6d017 commit 0686bd9
1 file changed
+4
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2612 | 2612 | | |
2613 | 2613 | | |
2614 | 2614 | | |
2615 | | - | |
| 2615 | + | |
2616 | 2616 | | |
| 2617 | + | |
| 2618 | + | |
2617 | 2619 | | |
2618 | 2620 | | |
2619 | 2621 | | |
| |||
3634 | 3636 | | |
3635 | 3637 | | |
3636 | 3638 | | |
| 3639 | + | |
3637 | 3640 | | |
3638 | 3641 | | |
3639 | 3642 | | |
| |||
0 commit comments