From 3e85be4841806abc76ad5dba74c0454202a0c3ec Mon Sep 17 00:00:00 2001 From: Shengzhou Liu Date: Wed, 11 Dec 2013 16:44:55 +0800 Subject: fmd: extend workaround of fman reset on t208x and t4160v2 The same hang issue was observed on T208x and T4160v2 also. So extend the workaround for now. Signed-off-by: Shengzhou Liu Signed-off-by: Shaohui Xie Signed-off-by: Mandy Lavi Change-Id: If75d58a3d609f3607050c0cf306d9c86aa69cfaf Reviewed-on: http://git.am.freescale.net:8181/7205 Reviewed-by: Jose Rivera Tested-by: Jose Rivera Reviewed-on: http://git.am.freescale.net:8181/9450 Tested-by: Review Code-CDREVIEW diff --git a/arch/powerpc/include/asm/mpc85xx.h b/arch/powerpc/include/asm/mpc85xx.h index 736d4ac..d06f47a 100644 --- a/arch/powerpc/include/asm/mpc85xx.h +++ b/arch/powerpc/include/asm/mpc85xx.h @@ -58,6 +58,8 @@ #define SVR_P5020 0x822000 #define SVR_P5021 0X820500 #define SVR_P5040 0x820400 +#define SVR_T2080 0x853000 +#define SVR_T2081 0x853100 #define SVR_T4240 0x824000 #define SVR_T4120 0x824001 #define SVR_T4160 0x824100 diff --git a/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c b/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c index dfc1cdb..14579f7 100644 --- a/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c +++ b/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c @@ -3516,7 +3516,10 @@ t_Error FM_Init(t_Handle h_Fm) { u32 svr = mfspr(SPRN_SVR); - if (SVR_SOC_VER(svr) == SVR_T4240 && SVR_REV(svr) > 0x10) { + if (((SVR_SOC_VER(svr) == SVR_T4240 && SVR_REV(svr) > 0x10)) || + ((SVR_SOC_VER(svr) == SVR_T4160 && SVR_REV(svr) > 0x10)) || + (SVR_SOC_VER(svr) == SVR_T2080) || + (SVR_SOC_VER(svr) == SVR_T2081)) { DBG(WARNING, ("Hack: No FM reset!\n")); } else { WRITE_UINT32(p_Fm->p_FmFpmRegs->fm_rstc, FPM_RSTC_FM_RESET); -- cgit v0.10.2