hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/drivers/net/ethernet/broadcom/genet/bcmmii.c
....@@ -165,15 +165,6 @@
165165
166166 static void bcmgenet_moca_phy_setup(struct bcmgenet_priv *priv)
167167 {
168
- u32 reg;
169
-
170
- if (!GENET_IS_V5(priv)) {
171
- /* Speed settings are set in bcmgenet_mii_setup() */
172
- reg = bcmgenet_sys_readl(priv, SYS_PORT_CTRL);
173
- reg |= LED_ACT_SOURCE_MAC;
174
- bcmgenet_sys_writel(priv, reg, SYS_PORT_CTRL);
175
- }
176
-
177168 if (priv->hw_params->flags & GENET_HAS_MOCA_LINK_DET)
178169 fixed_phy_set_link_update(priv->dev->phydev,
179170 bcmgenet_fixed_phy_link_update);
....@@ -206,6 +197,8 @@
206197
207198 if (!phy_name) {
208199 phy_name = "MoCA";
200
+ if (!GENET_IS_V5(priv))
201
+ port_ctrl |= LED_ACT_SOURCE_MAC;
209202 bcmgenet_moca_phy_setup(priv);
210203 }
211204 break;
....@@ -575,7 +568,7 @@
575568 };
576569
577570 phydev = fixed_phy_register(PHY_POLL, &fphy_status, NULL);
578
- if (!phydev || IS_ERR(phydev)) {
571
+ if (IS_ERR(phydev)) {
579572 dev_err(kdev, "failed to register fixed PHY device\n");
580573 return -ENODEV;
581574 }
....@@ -631,5 +624,7 @@
631624 if (of_phy_is_fixed_link(dn))
632625 of_phy_deregister_fixed_link(dn);
633626 of_node_put(priv->phy_dn);
627
+ clk_prepare_enable(priv->clk);
634628 platform_device_unregister(priv->mii_pdev);
629
+ clk_disable_unprepare(priv->clk);
635630 }