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>;
 | 
							interrupt-parent = <&cpuintc>;
 | 
				
			||||||
		interrupts = <5>;
 | 
							interrupts = <5>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		resets = <&rstctrl 21 &rstctrl 23>;
 | 
							resets = <&rstctrl 21>;
 | 
				
			||||||
		reset-names = "fe", "esw";
 | 
							reset-names = "fe";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		mediatek,switch = <&esw>;
 | 
							mediatek,switch = <&esw>;
 | 
				
			||||||
	};
 | 
						};
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -343,8 +343,8 @@
 | 
				
			|||||||
		compatible = "ralink,rt5350-eth";
 | 
							compatible = "ralink,rt5350-eth";
 | 
				
			||||||
		reg = <0x10100000 0x10000>;
 | 
							reg = <0x10100000 0x10000>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		resets = <&rstctrl 21 &rstctrl 23>;
 | 
							resets = <&rstctrl 21>;
 | 
				
			||||||
		reset-names = "fe", "esw";
 | 
							reset-names = "fe";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		interrupt-parent = <&cpuintc>;
 | 
							interrupt-parent = <&cpuintc>;
 | 
				
			||||||
		interrupts = <5>;
 | 
							interrupts = <5>;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -462,6 +462,8 @@ static void esw_hw_init(struct rt305x_esw *esw)
 | 
				
			|||||||
	u8 port_disable = 0;
 | 
						u8 port_disable = 0;
 | 
				
			||||||
	u8 port_map = RT305X_ESW_PMAP_LLLLLL;
 | 
						u8 port_map = RT305X_ESW_PMAP_LLLLLL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						esw_reset(esw);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* vodoo from original driver */
 | 
						/* vodoo from original driver */
 | 
				
			||||||
	esw_w32(esw, 0xC8A07850, RT305X_ESW_REG_FCT0);
 | 
						esw_w32(esw, 0xC8A07850, RT305X_ESW_REG_FCT0);
 | 
				
			||||||
	esw_w32(esw, 0x00000000, RT305X_ESW_REG_SGC2);
 | 
						esw_w32(esw, 0x00000000, RT305X_ESW_REG_SGC2);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -19,9 +19,6 @@
 | 
				
			|||||||
#include "mtk_eth_soc.h"
 | 
					#include "mtk_eth_soc.h"
 | 
				
			||||||
#include "mdio_rt2880.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] = {
 | 
					static const u16 rt5350_reg_table[FE_REG_COUNT] = {
 | 
				
			||||||
	[FE_REG_PDMA_GLO_CFG] = RT5350_PDMA_GLO_CFG,
 | 
						[FE_REG_PDMA_GLO_CFG] = RT5350_PDMA_GLO_CFG,
 | 
				
			||||||
	[FE_REG_PDMA_RST_CFG] = RT5350_PDMA_RST_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;
 | 
						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 = {
 | 
					static struct fe_soc_data rt3050_data = {
 | 
				
			||||||
	.init_data = rt305x_init_data,
 | 
						.init_data = rt305x_init_data,
 | 
				
			||||||
	.fwd_config = rt3050_fwd_config,
 | 
						.fwd_config = rt3050_fwd_config,
 | 
				
			||||||
@@ -133,7 +125,6 @@ static struct fe_soc_data rt3050_data = {
 | 
				
			|||||||
static struct fe_soc_data rt5350_data = {
 | 
					static struct fe_soc_data rt5350_data = {
 | 
				
			||||||
	.init_data = rt5350_init_data,
 | 
						.init_data = rt5350_init_data,
 | 
				
			||||||
	.reg_table = rt5350_reg_table,
 | 
						.reg_table = rt5350_reg_table,
 | 
				
			||||||
	.reset_fe = rt5350_fe_reset,
 | 
					 | 
				
			||||||
	.set_mac = rt5350_set_mac,
 | 
						.set_mac = rt5350_set_mac,
 | 
				
			||||||
	.fwd_config = rt5350_fwd_config,
 | 
						.fwd_config = rt5350_fwd_config,
 | 
				
			||||||
	.tx_dma = rt5350_tx_dma,
 | 
						.tx_dma = rt5350_tx_dma,
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user