From: Dipen Dudhat <dipen.dud...@freescale.com>

To make sure that machine change operation work successfully, change
timing parameters first before changing machine for chip select on IFC.

Signed-off-by: Dipen Dudhat <dipen.dud...@freescale.com>
Signed-off-by: Kumar Gala <ga...@kernel.crashing.org>
---
 arch/powerpc/cpu/mpc8xxx/fsl_ifc.c |   31 +++++++++++++++----------------
 1 files changed, 15 insertions(+), 16 deletions(-)

diff --git a/arch/powerpc/cpu/mpc8xxx/fsl_ifc.c 
b/arch/powerpc/cpu/mpc8xxx/fsl_ifc.c
index 39a4556..e794821 100644
--- a/arch/powerpc/cpu/mpc8xxx/fsl_ifc.c
+++ b/arch/powerpc/cpu/mpc8xxx/fsl_ifc.c
@@ -38,47 +38,46 @@ void print_ifc_regs(void)
 void init_early_memctl_regs(void)
 {
 #if defined(CONFIG_SYS_CSPR0) && defined(CONFIG_SYS_CSOR0)
-       set_ifc_cspr(IFC_CS0, CONFIG_SYS_CSPR0);
-       set_ifc_amask(IFC_CS0, CONFIG_SYS_AMASK0);
-       set_ifc_csor(IFC_CS0, CONFIG_SYS_CSOR0);
-
        set_ifc_ftim(IFC_CS0, IFC_FTIM0, CONFIG_SYS_CS0_FTIM0);
        set_ifc_ftim(IFC_CS0, IFC_FTIM1, CONFIG_SYS_CS0_FTIM1);
        set_ifc_ftim(IFC_CS0, IFC_FTIM2, CONFIG_SYS_CS0_FTIM2);
        set_ifc_ftim(IFC_CS0, IFC_FTIM3, CONFIG_SYS_CS0_FTIM3);
+
+       set_ifc_cspr(IFC_CS0, CONFIG_SYS_CSPR0);
+       set_ifc_amask(IFC_CS0, CONFIG_SYS_AMASK0);
+       set_ifc_csor(IFC_CS0, CONFIG_SYS_CSOR0);
 #endif
 
 #if defined(CONFIG_SYS_CSPR1) && defined(CONFIG_SYS_CSOR1)
-       set_ifc_csor(IFC_CS1, CONFIG_SYS_CSOR1);
-       set_ifc_amask(IFC_CS1, CONFIG_SYS_AMASK1);
-       set_ifc_cspr(IFC_CS1, CONFIG_SYS_CSPR1);
-
        set_ifc_ftim(IFC_CS1, IFC_FTIM0, CONFIG_SYS_CS1_FTIM0);
        set_ifc_ftim(IFC_CS1, IFC_FTIM1, CONFIG_SYS_CS1_FTIM1);
        set_ifc_ftim(IFC_CS1, IFC_FTIM2, CONFIG_SYS_CS1_FTIM2);
        set_ifc_ftim(IFC_CS1, IFC_FTIM3, CONFIG_SYS_CS1_FTIM3);
+
+       set_ifc_csor(IFC_CS1, CONFIG_SYS_CSOR1);
+       set_ifc_amask(IFC_CS1, CONFIG_SYS_AMASK1);
+       set_ifc_cspr(IFC_CS1, CONFIG_SYS_CSPR1);
 #endif
 
 #if defined(CONFIG_SYS_CSPR2) && defined(CONFIG_SYS_CSOR2)
-       set_ifc_csor(IFC_CS2, CONFIG_SYS_CSOR2);
-       set_ifc_amask(IFC_CS2, CONFIG_SYS_AMASK2);
-       set_ifc_cspr(IFC_CS2, CONFIG_SYS_CSPR2);
-
        set_ifc_ftim(IFC_CS2, IFC_FTIM0, CONFIG_SYS_CS2_FTIM0);
        set_ifc_ftim(IFC_CS2, IFC_FTIM1, CONFIG_SYS_CS2_FTIM1);
        set_ifc_ftim(IFC_CS2, IFC_FTIM2, CONFIG_SYS_CS2_FTIM2);
        set_ifc_ftim(IFC_CS2, IFC_FTIM3, CONFIG_SYS_CS2_FTIM3);
 
+       set_ifc_csor(IFC_CS2, CONFIG_SYS_CSOR2);
+       set_ifc_amask(IFC_CS2, CONFIG_SYS_AMASK2);
+       set_ifc_cspr(IFC_CS2, CONFIG_SYS_CSPR2);
 #endif
 
 #if defined(CONFIG_SYS_CSPR3) && defined(CONFIG_SYS_CSOR3)
-       set_ifc_cspr(IFC_CS3, CONFIG_SYS_CSPR3);
-       set_ifc_amask(IFC_CS3, CONFIG_SYS_AMASK3);
-       set_ifc_csor(IFC_CS3, CONFIG_SYS_CSOR3);
-
        set_ifc_ftim(IFC_CS3, IFC_FTIM0, CONFIG_SYS_CS3_FTIM0);
        set_ifc_ftim(IFC_CS3, IFC_FTIM1, CONFIG_SYS_CS3_FTIM1);
        set_ifc_ftim(IFC_CS3, IFC_FTIM2, CONFIG_SYS_CS3_FTIM2);
        set_ifc_ftim(IFC_CS3, IFC_FTIM3, CONFIG_SYS_CS3_FTIM3);
+
+       set_ifc_cspr(IFC_CS3, CONFIG_SYS_CSPR3);
+       set_ifc_amask(IFC_CS3, CONFIG_SYS_AMASK3);
+       set_ifc_csor(IFC_CS3, CONFIG_SYS_CSOR3);
 #endif
 }
-- 
1.7.3.4

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to