<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">From a7783b0b6f3b38abd34cecf515811691714dee57 Mon Sep 17 00:00:00 2001
From: Daniel Golle &lt;daniel@makrotopia.org&gt;
Date: Mon, 3 Apr 2023 02:18:50 +0100
Subject: [PATCH 11/48] net: dsa: mt7530: introduce mt7530_remove_common helper
 function

Move commonly used parts from mt7530_remove into new
mt7530_remove_common helper function which will be used by both,
mt7530_remove and the to-be-introduced mt7988_remove.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Reviewed-by: Andrew Lunn &lt;andrew@lunn.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
---
 drivers/net/dsa/mt7530.c | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -3328,6 +3328,17 @@ mt7530_probe(struct mdio_device *mdiodev
 }
 
 static void
+mt7530_remove_common(struct mt7530_priv *priv)
+{
+	if (priv-&gt;irq)
+		mt7530_free_irq(priv);
+
+	dsa_unregister_switch(priv-&gt;ds);
+
+	mutex_destroy(&amp;priv-&gt;reg_mutex);
+}
+
+static void
 mt7530_remove(struct mdio_device *mdiodev)
 {
 	struct mt7530_priv *priv = dev_get_drvdata(&amp;mdiodev-&gt;dev);
@@ -3346,15 +3357,10 @@ mt7530_remove(struct mdio_device *mdiode
 		dev_err(priv-&gt;dev, "Failed to disable io pwr: %d\n",
 			ret);
 
-	if (priv-&gt;irq)
-		mt7530_free_irq(priv);
-
-	dsa_unregister_switch(priv-&gt;ds);
+	mt7530_remove_common(priv);
 
 	for (i = 0; i &lt; 2; ++i)
 		mtk_pcs_lynxi_destroy(priv-&gt;ports[5 + i].sgmii_pcs);
-
-	mutex_destroy(&amp;priv-&gt;reg_mutex);
 }
 
 static void mt7530_shutdown(struct mdio_device *mdiodev)
</pre></body></html>