790-11-v6.4-net-dsa-mt7530-introduce-mt7530_remove_common-helper.patch 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. From a7783b0b6f3b38abd34cecf515811691714dee57 Mon Sep 17 00:00:00 2001
  2. From: Daniel Golle <[email protected]>
  3. Date: Mon, 3 Apr 2023 02:18:50 +0100
  4. Subject: [PATCH 11/48] net: dsa: mt7530: introduce mt7530_remove_common helper
  5. function
  6. Move commonly used parts from mt7530_remove into new
  7. mt7530_remove_common helper function which will be used by both,
  8. mt7530_remove and the to-be-introduced mt7988_remove.
  9. Signed-off-by: Daniel Golle <[email protected]>
  10. Reviewed-by: Andrew Lunn <[email protected]>
  11. Signed-off-by: David S. Miller <[email protected]>
  12. ---
  13. drivers/net/dsa/mt7530.c | 18 ++++++++++++------
  14. 1 file changed, 12 insertions(+), 6 deletions(-)
  15. --- a/drivers/net/dsa/mt7530.c
  16. +++ b/drivers/net/dsa/mt7530.c
  17. @@ -3328,6 +3328,17 @@ mt7530_probe(struct mdio_device *mdiodev
  18. }
  19. static void
  20. +mt7530_remove_common(struct mt7530_priv *priv)
  21. +{
  22. + if (priv->irq)
  23. + mt7530_free_irq(priv);
  24. +
  25. + dsa_unregister_switch(priv->ds);
  26. +
  27. + mutex_destroy(&priv->reg_mutex);
  28. +}
  29. +
  30. +static void
  31. mt7530_remove(struct mdio_device *mdiodev)
  32. {
  33. struct mt7530_priv *priv = dev_get_drvdata(&mdiodev->dev);
  34. @@ -3346,15 +3357,10 @@ mt7530_remove(struct mdio_device *mdiode
  35. dev_err(priv->dev, "Failed to disable io pwr: %d\n",
  36. ret);
  37. - if (priv->irq)
  38. - mt7530_free_irq(priv);
  39. -
  40. - dsa_unregister_switch(priv->ds);
  41. + mt7530_remove_common(priv);
  42. for (i = 0; i < 2; ++i)
  43. mtk_pcs_lynxi_destroy(priv->ports[5 + i].sgmii_pcs);
  44. -
  45. - mutex_destroy(&priv->reg_mutex);
  46. }
  47. static void mt7530_shutdown(struct mdio_device *mdiodev)