powerpc, timer: Does 8xx specific actions in 8xx cpu_init
authorChristophe Leroy <christophe.leroy@c-s.fr>
Thu, 13 Jul 2017 13:09:48 +0000 (15:09 +0200)
committerTom Rini <trini@konsulko.com>
Sun, 23 Jul 2017 02:22:48 +0000 (22:22 -0400)
The actions inside #ifdef CONFIG_8xx in arch/powerpc/lib/time.c
can be performed before, in a 8xx dedicated function.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
arch/powerpc/cpu/mpc8xx/cpu_init.c
arch/powerpc/lib/time.c

index 16e7bf5fd546ebf68046b9117c13ee21f81136bc..dc601a12976f2cd0be7a083be97407d6fd761bb3 100644 (file)
@@ -38,7 +38,10 @@ void cpu_init_f(immap_t __iomem *immr)
        /* unlock TBSCRK */
 
        out_be32(&immr->im_sitk.sitk_tbscrk, KAPWR_KEY);
-       out_be16(&immr->im_sit.sit_tbscr, CONFIG_SYS_TBSCR);
+       out_be16(&immr->im_sit.sit_tbscr, CONFIG_SYS_TBSCR | TBSCR_TBE);
+
+       /* Unlock timebase register */
+       out_be32(&immr->im_sitk.sitk_tbk, KAPWR_KEY);
 
        /* initialize the PIT (11-31) */
 
index 41a271a42de242380002586f715a39ba75482fe5..ff9bb67e28686a9ec4b54bb9aa474e7184e75757 100644 (file)
@@ -65,21 +65,10 @@ int timer_init(void)
 {
        unsigned long temp;
 
-#if defined(CONFIG_8xx)
-       immap_t __iomem *immap = (immap_t __iomem *)CONFIG_SYS_IMMR;
-
-       /* unlock */
-       out_be32(&immap->im_sitk.sitk_tbk, KAPWR_KEY);
-#endif
-
        /* reset */
        asm volatile("li %0,0 ; mttbu %0 ; mttbl %0;"
             : "=&r"(temp) );
 
-#if defined(CONFIG_8xx)
-       /* enable */
-       setbits_be16(&immap->im_sit.sit_tbscr, TBSCR_TBE);
-#endif
        return (0);
 }
 /* ------------------------------------------------------------------------- */