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>
This commit is contained in:
		@@ -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>;
 | 
			
		||||
	};
 | 
			
		||||
 
 | 
			
		||||
@@ -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>;
 | 
			
		||||
 
 | 
			
		||||
@@ -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);
 | 
			
		||||
 
 | 
			
		||||
@@ -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,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user