diff mbox series

[v3,6/6] net: dwc: add a common empty ops eqos_null_ops

Message ID 20210720200940.v3.6.I05af0032a32df49c4d6b7a18a84e2fd409097989@changeid
State Accepted
Commit c6a0df2d1dee30d241ce9831178f5de17dd4a61e
Delegated to: Ramon Fried
Headers show
Series net: dwc_eth_qos: add support of device tree configuration for reset delay | expand

Commit Message

Patrick Delaunay July 20, 2021, 6:09 p.m. UTC
Add a common empty ops: eqos_null_ops() to remove the duplicated empty
functions and reduce the driver size for stm32 and imx config.

This patch also aligns the prototype of ops 'eqos_stop_clks' with other
eqos ops by adding return value.

Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
---

(no changes since v2)

Changes in v2:
- cleanup ops by adding a common null ops (NEW)

 drivers/net/dwc_eth_qos.c | 97 +++++++++------------------------------
 1 file changed, 22 insertions(+), 75 deletions(-)

Comments

Ramon Fried July 22, 2021, 7:07 p.m. UTC | #1
On Tue, Jul 20, 2021 at 9:10 PM Patrick Delaunay
<patrick.delaunay@foss.st.com> wrote:
>
> Add a common empty ops: eqos_null_ops() to remove the duplicated empty
> functions and reduce the driver size for stm32 and imx config.
>
> This patch also aligns the prototype of ops 'eqos_stop_clks' with other
> eqos ops by adding return value.
>
> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
> ---
>
> (no changes since v2)
>
> Changes in v2:
> - cleanup ops by adding a common null ops (NEW)
>
>  drivers/net/dwc_eth_qos.c | 97 +++++++++------------------------------
>  1 file changed, 22 insertions(+), 75 deletions(-)
>
> diff --git a/drivers/net/dwc_eth_qos.c b/drivers/net/dwc_eth_qos.c
> index 9b1746b78b..79eb6cc926 100644
> --- a/drivers/net/dwc_eth_qos.c
> +++ b/drivers/net/dwc_eth_qos.c
> @@ -281,7 +281,7 @@ struct eqos_ops {
>         int (*eqos_remove_resources)(struct udevice *dev);
>         int (*eqos_stop_resets)(struct udevice *dev);
>         int (*eqos_start_resets)(struct udevice *dev);
> -       void (*eqos_stop_clks)(struct udevice *dev);
> +       int (*eqos_stop_clks)(struct udevice *dev);
>         int (*eqos_start_clks)(struct udevice *dev);
>         int (*eqos_calibrate_pads)(struct udevice *dev);
>         int (*eqos_disable_calibration)(struct udevice *dev);
> @@ -613,12 +613,7 @@ err:
>  #endif
>  }
>
> -static int eqos_start_clks_imx(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
> -static void eqos_stop_clks_tegra186(struct udevice *dev)
> +static int eqos_stop_clks_tegra186(struct udevice *dev)
>  {
>  #ifdef CONFIG_CLK
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -633,9 +628,10 @@ static void eqos_stop_clks_tegra186(struct udevice *dev)
>  #endif
>
>         debug("%s: OK\n", __func__);
> +       return 0;
>  }
>
> -static void eqos_stop_clks_stm32(struct udevice *dev)
> +static int eqos_stop_clks_stm32(struct udevice *dev)
>  {
>  #ifdef CONFIG_CLK
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -648,11 +644,7 @@ static void eqos_stop_clks_stm32(struct udevice *dev)
>  #endif
>
>         debug("%s: OK\n", __func__);
> -}
> -
> -static void eqos_stop_clks_imx(struct udevice *dev)
> -{
> -       /* empty */
> +       return 0;
>  }
>
>  static int eqos_start_resets_tegra186(struct udevice *dev)
> @@ -694,16 +686,6 @@ static int eqos_start_resets_tegra186(struct udevice *dev)
>         return 0;
>  }
>
> -static int eqos_start_resets_stm32(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
> -static int eqos_start_resets_imx(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
>  static int eqos_stop_resets_tegra186(struct udevice *dev)
>  {
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -714,16 +696,6 @@ static int eqos_stop_resets_tegra186(struct udevice *dev)
>         return 0;
>  }
>
> -static int eqos_stop_resets_stm32(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
> -static int eqos_stop_resets_imx(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
>  static int eqos_calibrate_pads_tegra186(struct udevice *dev)
>  {
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -812,26 +784,6 @@ static ulong eqos_get_tick_clk_rate_imx(struct udevice *dev)
>         return imx_get_eqos_csr_clk();
>  }
>
> -static int eqos_calibrate_pads_stm32(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
> -static int eqos_calibrate_pads_imx(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
> -static int eqos_disable_calibration_stm32(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
> -static int eqos_disable_calibration_imx(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
>  static int eqos_set_full_duplex(struct udevice *dev)
>  {
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -928,11 +880,6 @@ static int eqos_set_tx_clk_speed_tegra186(struct udevice *dev)
>         return 0;
>  }
>
> -static int eqos_set_tx_clk_speed_stm32(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
>  static int eqos_set_tx_clk_speed_imx(struct udevice *dev)
>  {
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -1881,11 +1828,6 @@ static int eqos_remove_resources_stm32(struct udevice *dev)
>         return 0;
>  }
>
> -static int eqos_remove_resources_imx(struct udevice *dev)
> -{
> -       return 0;
> -}
> -
>  static int eqos_probe(struct udevice *dev)
>  {
>         struct eqos_priv *eqos = dev_get_priv(dev);
> @@ -1974,6 +1916,11 @@ static int eqos_remove(struct udevice *dev)
>         return 0;
>  }
>
> +static int eqos_null_ops(struct udevice *dev)
> +{
> +       return 0;
> +}
> +
>  static const struct eth_ops eqos_ops = {
>         .start = eqos_start,
>         .stop = eqos_stop,
> @@ -2019,13 +1966,13 @@ static struct eqos_ops eqos_stm32_ops = {
>         .eqos_flush_buffer = eqos_flush_buffer_generic,
>         .eqos_probe_resources = eqos_probe_resources_stm32,
>         .eqos_remove_resources = eqos_remove_resources_stm32,
> -       .eqos_stop_resets = eqos_stop_resets_stm32,
> -       .eqos_start_resets = eqos_start_resets_stm32,
> +       .eqos_stop_resets = eqos_null_ops,
> +       .eqos_start_resets = eqos_null_ops,
>         .eqos_stop_clks = eqos_stop_clks_stm32,
>         .eqos_start_clks = eqos_start_clks_stm32,
> -       .eqos_calibrate_pads = eqos_calibrate_pads_stm32,
> -       .eqos_disable_calibration = eqos_disable_calibration_stm32,
> -       .eqos_set_tx_clk_speed = eqos_set_tx_clk_speed_stm32,
> +       .eqos_calibrate_pads = eqos_null_ops,
> +       .eqos_disable_calibration = eqos_null_ops,
> +       .eqos_set_tx_clk_speed = eqos_null_ops,
>         .eqos_get_tick_clk_rate = eqos_get_tick_clk_rate_stm32
>  };
>
> @@ -2046,13 +1993,13 @@ static struct eqos_ops eqos_imx_ops = {
>         .eqos_inval_buffer = eqos_inval_buffer_generic,
>         .eqos_flush_buffer = eqos_flush_buffer_generic,
>         .eqos_probe_resources = eqos_probe_resources_imx,
> -       .eqos_remove_resources = eqos_remove_resources_imx,
> -       .eqos_stop_resets = eqos_stop_resets_imx,
> -       .eqos_start_resets = eqos_start_resets_imx,
> -       .eqos_stop_clks = eqos_stop_clks_imx,
> -       .eqos_start_clks = eqos_start_clks_imx,
> -       .eqos_calibrate_pads = eqos_calibrate_pads_imx,
> -       .eqos_disable_calibration = eqos_disable_calibration_imx,
> +       .eqos_remove_resources = eqos_null_ops,
> +       .eqos_stop_resets = eqos_null_ops,
> +       .eqos_start_resets = eqos_null_ops,
> +       .eqos_stop_clks = eqos_null_ops,
> +       .eqos_start_clks = eqos_null_ops,
> +       .eqos_calibrate_pads = eqos_null_ops,
> +       .eqos_disable_calibration = eqos_null_ops,
>         .eqos_set_tx_clk_speed = eqos_set_tx_clk_speed_imx,
>         .eqos_get_tick_clk_rate = eqos_get_tick_clk_rate_imx
>  };
> --
> 2.25.1
>
Applied to u-boot-net/network-master
Thanks,
Ramon.
diff mbox series

Patch

diff --git a/drivers/net/dwc_eth_qos.c b/drivers/net/dwc_eth_qos.c
index 9b1746b78b..79eb6cc926 100644
--- a/drivers/net/dwc_eth_qos.c
+++ b/drivers/net/dwc_eth_qos.c
@@ -281,7 +281,7 @@  struct eqos_ops {
 	int (*eqos_remove_resources)(struct udevice *dev);
 	int (*eqos_stop_resets)(struct udevice *dev);
 	int (*eqos_start_resets)(struct udevice *dev);
-	void (*eqos_stop_clks)(struct udevice *dev);
+	int (*eqos_stop_clks)(struct udevice *dev);
 	int (*eqos_start_clks)(struct udevice *dev);
 	int (*eqos_calibrate_pads)(struct udevice *dev);
 	int (*eqos_disable_calibration)(struct udevice *dev);
@@ -613,12 +613,7 @@  err:
 #endif
 }
 
-static int eqos_start_clks_imx(struct udevice *dev)
-{
-	return 0;
-}
-
-static void eqos_stop_clks_tegra186(struct udevice *dev)
+static int eqos_stop_clks_tegra186(struct udevice *dev)
 {
 #ifdef CONFIG_CLK
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -633,9 +628,10 @@  static void eqos_stop_clks_tegra186(struct udevice *dev)
 #endif
 
 	debug("%s: OK\n", __func__);
+	return 0;
 }
 
-static void eqos_stop_clks_stm32(struct udevice *dev)
+static int eqos_stop_clks_stm32(struct udevice *dev)
 {
 #ifdef CONFIG_CLK
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -648,11 +644,7 @@  static void eqos_stop_clks_stm32(struct udevice *dev)
 #endif
 
 	debug("%s: OK\n", __func__);
-}
-
-static void eqos_stop_clks_imx(struct udevice *dev)
-{
-	/* empty */
+	return 0;
 }
 
 static int eqos_start_resets_tegra186(struct udevice *dev)
@@ -694,16 +686,6 @@  static int eqos_start_resets_tegra186(struct udevice *dev)
 	return 0;
 }
 
-static int eqos_start_resets_stm32(struct udevice *dev)
-{
-	return 0;
-}
-
-static int eqos_start_resets_imx(struct udevice *dev)
-{
-	return 0;
-}
-
 static int eqos_stop_resets_tegra186(struct udevice *dev)
 {
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -714,16 +696,6 @@  static int eqos_stop_resets_tegra186(struct udevice *dev)
 	return 0;
 }
 
-static int eqos_stop_resets_stm32(struct udevice *dev)
-{
-	return 0;
-}
-
-static int eqos_stop_resets_imx(struct udevice *dev)
-{
-	return 0;
-}
-
 static int eqos_calibrate_pads_tegra186(struct udevice *dev)
 {
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -812,26 +784,6 @@  static ulong eqos_get_tick_clk_rate_imx(struct udevice *dev)
 	return imx_get_eqos_csr_clk();
 }
 
-static int eqos_calibrate_pads_stm32(struct udevice *dev)
-{
-	return 0;
-}
-
-static int eqos_calibrate_pads_imx(struct udevice *dev)
-{
-	return 0;
-}
-
-static int eqos_disable_calibration_stm32(struct udevice *dev)
-{
-	return 0;
-}
-
-static int eqos_disable_calibration_imx(struct udevice *dev)
-{
-	return 0;
-}
-
 static int eqos_set_full_duplex(struct udevice *dev)
 {
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -928,11 +880,6 @@  static int eqos_set_tx_clk_speed_tegra186(struct udevice *dev)
 	return 0;
 }
 
-static int eqos_set_tx_clk_speed_stm32(struct udevice *dev)
-{
-	return 0;
-}
-
 static int eqos_set_tx_clk_speed_imx(struct udevice *dev)
 {
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -1881,11 +1828,6 @@  static int eqos_remove_resources_stm32(struct udevice *dev)
 	return 0;
 }
 
-static int eqos_remove_resources_imx(struct udevice *dev)
-{
-	return 0;
-}
-
 static int eqos_probe(struct udevice *dev)
 {
 	struct eqos_priv *eqos = dev_get_priv(dev);
@@ -1974,6 +1916,11 @@  static int eqos_remove(struct udevice *dev)
 	return 0;
 }
 
+static int eqos_null_ops(struct udevice *dev)
+{
+	return 0;
+}
+
 static const struct eth_ops eqos_ops = {
 	.start = eqos_start,
 	.stop = eqos_stop,
@@ -2019,13 +1966,13 @@  static struct eqos_ops eqos_stm32_ops = {
 	.eqos_flush_buffer = eqos_flush_buffer_generic,
 	.eqos_probe_resources = eqos_probe_resources_stm32,
 	.eqos_remove_resources = eqos_remove_resources_stm32,
-	.eqos_stop_resets = eqos_stop_resets_stm32,
-	.eqos_start_resets = eqos_start_resets_stm32,
+	.eqos_stop_resets = eqos_null_ops,
+	.eqos_start_resets = eqos_null_ops,
 	.eqos_stop_clks = eqos_stop_clks_stm32,
 	.eqos_start_clks = eqos_start_clks_stm32,
-	.eqos_calibrate_pads = eqos_calibrate_pads_stm32,
-	.eqos_disable_calibration = eqos_disable_calibration_stm32,
-	.eqos_set_tx_clk_speed = eqos_set_tx_clk_speed_stm32,
+	.eqos_calibrate_pads = eqos_null_ops,
+	.eqos_disable_calibration = eqos_null_ops,
+	.eqos_set_tx_clk_speed = eqos_null_ops,
 	.eqos_get_tick_clk_rate = eqos_get_tick_clk_rate_stm32
 };
 
@@ -2046,13 +1993,13 @@  static struct eqos_ops eqos_imx_ops = {
 	.eqos_inval_buffer = eqos_inval_buffer_generic,
 	.eqos_flush_buffer = eqos_flush_buffer_generic,
 	.eqos_probe_resources = eqos_probe_resources_imx,
-	.eqos_remove_resources = eqos_remove_resources_imx,
-	.eqos_stop_resets = eqos_stop_resets_imx,
-	.eqos_start_resets = eqos_start_resets_imx,
-	.eqos_stop_clks = eqos_stop_clks_imx,
-	.eqos_start_clks = eqos_start_clks_imx,
-	.eqos_calibrate_pads = eqos_calibrate_pads_imx,
-	.eqos_disable_calibration = eqos_disable_calibration_imx,
+	.eqos_remove_resources = eqos_null_ops,
+	.eqos_stop_resets = eqos_null_ops,
+	.eqos_start_resets = eqos_null_ops,
+	.eqos_stop_clks = eqos_null_ops,
+	.eqos_start_clks = eqos_null_ops,
+	.eqos_calibrate_pads = eqos_null_ops,
+	.eqos_disable_calibration = eqos_null_ops,
 	.eqos_set_tx_clk_speed = eqos_set_tx_clk_speed_imx,
 	.eqos_get_tick_clk_rate = eqos_get_tick_clk_rate_imx
 };