SMC1 uses external CLK4 instead of BRG on spc1920
[oweals/u-boot.git] / cpu / mpc8xx / serial.c
index 8ae584f2e1dd4ddcba111a548da0f78fa6869b14..c8caa793d218a690135572104de43e45ea6ce8e4 100644 (file)
@@ -227,8 +227,17 @@ static int smc_init (void)
        sp->smc_smcm = 0;
        sp->smc_smce = 0xff;
 
-#ifdef CFG_SPC1920_SMC1_CLK4 /* clock source is PLD */
-       *((volatile uchar *) CFG_SPC1920_PLD_BASE+6) = 0xff;
+#ifdef CFG_SPC1920_SMC1_CLK4
+       /* clock source is PLD */
+       
+       /* set freq to 19200 Baud */
+       *((volatile uchar *) CFG_SPC1920_PLD_BASE+6) = 0x3;
+       /* configure clk4 as input */
+       im->im_ioport.iop_pdpar |= 0x800;
+       im->im_ioport.iop_pddir &= ~0x800;
+       
+       cp->cp_simode = 0x0000;
+        cp->cp_simode |= 0x7000;
 #else
        /* Set up the baud rate generator */
        smc_setbrg ();