aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Couzens <lynxis@fe80.eu>2021-06-10 00:16:53 +0200
committerAlexander Couzens <lynxis@fe80.eu>2021-06-25 10:52:50 +0200
commit60fadae62b64b14faff818e4156d9c6eb3f96b65 (patch)
tree6cd9701f3aa2791a0d918723ec007cfd171e7e79
parent694561ae601ae41c622b8cb2d40dfe34feeaa174 (diff)
downloadupstream-60fadae62b64b14faff818e4156d9c6eb3f96b65.tar.gz
upstream-60fadae62b64b14faff818e4156d9c6eb3f96b65.tar.bz2
upstream-60fadae62b64b14faff818e4156d9c6eb3f96b65.zip
ramips: ethernet: ralink: move reset of the esw into the esw instead of fe
The esw reset should only done by the esw driver and not by the fe itself. Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
-rw-r--r--target/linux/ramips/dts/mt7628an.dtsi4
-rw-r--r--target/linux/ramips/dts/rt5350.dtsi4
-rw-r--r--target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3050.c2
-rw-r--r--target/linux/ramips/files/drivers/net/ethernet/ralink/soc_rt3050.c9
4 files changed, 6 insertions, 13 deletions
diff --git a/target/linux/ramips/dts/mt7628an.dtsi b/target/linux/ramips/dts/mt7628an.dtsi
index 9bf20cecdd..0dafdc790e 100644
--- a/target/linux/ramips/dts/mt7628an.dtsi
+++ b/target/linux/ramips/dts/mt7628an.dtsi
@@ -429,8 +429,8 @@
interrupt-parent = <&cpuintc>;
interrupts = <5>;
- resets = <&rstctrl 21 &rstctrl 23>;
- reset-names = "fe", "esw";
+ resets = <&rstctrl 21>;
+ reset-names = "fe";
mediatek,switch = <&esw>;
};
diff --git a/target/linux/ramips/dts/rt5350.dtsi b/target/linux/ramips/dts/rt5350.dtsi
index 1058069016..090e755743 100644
--- a/target/linux/ramips/dts/rt5350.dtsi
+++ b/target/linux/ramips/dts/rt5350.dtsi
@@ -343,8 +343,8 @@
compatible = "ralink,rt5350-eth";
reg = <0x10100000 0x10000>;
- resets = <&rstctrl 21 &rstctrl 23>;
- reset-names = "fe", "esw";
+ resets = <&rstctrl 21>;
+ reset-names = "fe";
interrupt-parent = <&cpuintc>;
interrupts = <5>;
diff --git a/target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3050.c b/target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3050.c
index cd6ae07595..4a7dbb2d03 100644
--- a/target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3050.c
+++ b/target/linux/ramips/files/drivers/net/ethernet/ralink/esw_rt3050.c
@@ -462,6 +462,8 @@ static void esw_hw_init(struct rt305x_esw *esw)
u8 port_disable = 0;
u8 port_map = RT305X_ESW_PMAP_LLLLLL;
+ esw_reset(esw);
+
/* vodoo from original driver */
esw_w32(esw, 0xC8A07850, RT305X_ESW_REG_FCT0);
esw_w32(esw, 0x00000000, RT305X_ESW_REG_SGC2);
diff --git a/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_rt3050.c b/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_rt3050.c
index 6aedf0265a..f98d7ec3da 100644
--- a/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_rt3050.c
+++ b/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_rt3050.c
@@ -19,9 +19,6 @@
#include "mtk_eth_soc.h"
#include "mdio_rt2880.h"
-#define RT305X_RESET_FE BIT(21)
-#define RT305X_RESET_ESW BIT(23)
-
static const u16 rt5350_reg_table[FE_REG_COUNT] = {
[FE_REG_PDMA_GLO_CFG] = RT5350_PDMA_GLO_CFG,
[FE_REG_PDMA_RST_CFG] = RT5350_PDMA_RST_CFG,
@@ -115,11 +112,6 @@ static void rt5350_tx_dma(struct fe_tx_dma *txd)
txd->txd4 = 0;
}
-static void rt5350_fe_reset(struct fe_priv *priv)
-{
- fe_reset(RT305X_RESET_FE | RT305X_RESET_ESW);
-}
-
static struct fe_soc_data rt3050_data = {
.init_data = rt305x_init_data,
.fwd_config = rt3050_fwd_config,
@@ -133,7 +125,6 @@ static struct fe_soc_data rt3050_data = {
static struct fe_soc_data rt5350_data = {
.init_data = rt5350_init_data,
.reg_table = rt5350_reg_table,
- .reset_fe = rt5350_fe_reset,
.set_mac = rt5350_set_mac,
.fwd_config = rt5350_fwd_config,
.tx_dma = rt5350_tx_dma,