powerpc, timer: Does 8xx specific actions in 8xx cpu_init

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>
This commit is contained in:
Christophe Leroy 2017-07-13 15:09:48 +02:00 committed by Tom Rini
parent 0819450fdd
commit 93e85d02b2
2 changed files with 4 additions and 12 deletions

View 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) */

View 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);
}
/* ------------------------------------------------------------------------- */