mpc83xx: Disable G1TXCLK, G2TXCLK h/w buffers
authorKim Phillips <kim.phillips@freescale.com>
Thu, 15 Feb 2007 01:50:53 +0000 (19:50 -0600)
committerKim Phillips <kim.phillips@freescale.com>
Fri, 2 Mar 2007 17:05:54 +0000 (11:05 -0600)
Disable G1TXCLK, G2TXCLK h/w buffers. This patch
fixes a networking timeout issue with MPC8360EA (Rev.2) PBs.

Verified on Rev. 1.1, Rev. 1.2, and Rev. 2.0 boards.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Emilian Medve <Emilian.Medve@freescale.com>
board/mpc8360emds/mpc8360emds.c

index 54b9acc..535884c 100644 (file)
@@ -90,11 +90,18 @@ const qe_iop_conf_t qe_iop_conf_tab[] = {
 
 int board_early_init_f(void)
 {
-       volatile u8 *bcsr = (volatile u8 *)CFG_BCSR;
+
+       u8 *bcsr = (u8 *)CFG_BCSR;
+       const immap_t *immr = (immap_t *)CFG_IMMR;
 
        /* Enable flash write */
        bcsr[0xa] &= ~0x04;
 
+       /* Disable G1TXCLK, G2TXCLK h/w buffers (rev.2 h/w bug workaround) */
+       if (immr->sysconf.spridr == SPR_8360_REV20 ||
+           immr->sysconf.spridr == SPR_8360E_REV20)
+               bcsr[0xe] = 0x30;
+
        return 0;
 }