ipq806x: 5:15: drop upstream patch
[openwrt/staging/chunkeey.git] / target / linux / ipq806x / patches-5.15 / 108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch
diff --git a/target/linux/ipq806x/patches-5.15/108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch b/target/linux/ipq806x/patches-5.15/108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch
deleted file mode 100644 (file)
index dd1e506..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-From e67f325e9cd67562b761e884680c0fec03a6f404 Mon Sep 17 00:00:00 2001
-From: Matthew Hagan <mnhagan88@gmail.com>
-Date: Tue, 8 Jun 2021 19:59:06 +0100
-Subject: net: stmmac: explicitly deassert GMAC_AHB_RESET
-
-We are currently assuming that GMAC_AHB_RESET will already be deasserted
-by the bootloader. However if this has not been done, probing of the GMAC
-will fail. To remedy this we must ensure GMAC_AHB_RESET has been deasserted
-prior to probing.
-
-v2 changes:
- - remove NULL condition check for stmmac_ahb_rst in stmmac_main.c
- - unwrap dev_err() message in stmmac_main.c
- - add PTR_ERR() around plat->stmmac_ahb_rst in stmmac_platform.c
-
-v3 changes:
- - add error pointer to dev_err() output
- - add reset_control_assert(stmmac_ahb_rst) in stmmac_dvr_remove
- - revert PTR_ERR() around plat->stmmac_ahb_rst since this is performed
-   on the returned value of ret by the calling function
-
-Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c     | 5 +++++
- drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 6 ++++++
- include/linux/stmmac.h                                | 1 +
- 3 files changed, 12 insertions(+)
-
---- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -5021,6 +5021,10 @@ int stmmac_dvr_probe(struct device *devi
-                       reset_control_reset(priv->plat->stmmac_rst);
-       }
-+      ret = reset_control_deassert(priv->plat->stmmac_ahb_rst);
-+      if (ret == -ENOTSUPP)
-+              dev_err(priv->device, "unable to bring out of ahb reset\n");
-+
-       /* Init MAC and get the capabilities */
-       ret = stmmac_hw_init(priv);
-       if (ret)
-@@ -5245,6 +5249,7 @@ int stmmac_dvr_remove(struct device *dev
-       phylink_destroy(priv->phylink);
-       if (priv->plat->stmmac_rst)
-               reset_control_assert(priv->plat->stmmac_rst);
-+      reset_control_assert(priv->plat->stmmac_ahb_rst);
-       pm_runtime_put(dev);
-       pm_runtime_disable(dev);
-       if (priv->hw->pcs != STMMAC_PCS_TBI &&
---- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-@@ -617,6 +617,12 @@ stmmac_probe_config_dt(struct platform_d
-               plat->stmmac_rst = NULL;
-       }
-+      plat->stmmac_ahb_rst = devm_reset_control_get_optional_shared(
-+                                                      &pdev->dev, "ahb");
-+      if (IS_ERR(plat->stmmac_ahb_rst))
-+              if (PTR_ERR(plat->stmmac_ahb_rst) == -EPROBE_DEFER)
-+                      goto error_hw_init;
-+
-       return plat;
- error_hw_init:
---- a/include/linux/stmmac.h
-+++ b/include/linux/stmmac.h
-@@ -192,6 +192,7 @@ struct plat_stmmacenet_data {
-       unsigned int clk_ref_rate;
-       s32 ptp_max_adj;
-       struct reset_control *stmmac_rst;
-+      struct reset_control *stmmac_ahb_rst;
-       struct stmmac_axi *axi;
-       int has_gmac4;
-       bool has_sun8i;