Changes for U-Boot 1.1.3:
 ======================================================================
 
+* Update code for TQM8540 board (and 85xx in general):
+  - Change the name of the Ethernet driver: MOTO ENET -> ENET
+  - Reformat boot messages
+  - Enable redundant environment
+  - Replace the -O2 optimization flag with -mno-string
+
 * Patch by David Brownell, 10 Mar 2005:
   Restore copyright statements in OHCI drivers.
 
 
        puts ("Board: TQM8540\n");
 
 #ifdef CONFIG_PCI
-       printf ("    PCI1: 32 bit, %d MHz (compiled)\n",
+       printf ("PCI1:  32 bit, %d MHz (compiled)\n",
                CONFIG_SYS_CLK_FREQ / 1000000);
 #else
-       printf ("    PCI1: disabled\n");
+       printf ("PCI1:  disabled\n");
 #endif
        /*
         * Initialize local bus.
        extern long spd_sdram (void);
        volatile immap_t *immap = (immap_t *) CFG_IMMR;
 
-       puts ("Initializing\n");
-
 #if defined(CONFIG_DDR_DLL)
        {
                volatile ccsr_gur_t *gur = &immap->im_gur;
        ddr_enable_ecc (dram_size);
 #endif
 
-       puts ("    DDR: ");
        return dram_size;
 }
 
 
 
 PLATFORM_RELFLAGS += -fPIC -ffixed-r14 -meabi
 
-PLATFORM_CPPFLAGS += -DCONFIG_MPC85xx -DCONFIG_E500 -ffixed-r2 -ffixed-r29 -Wa,-me500 -msoft-float -O2
+PLATFORM_CPPFLAGS += -DCONFIG_MPC85xx -DCONFIG_E500 -ffixed-r2 -ffixed-r29 -Wa,-me500 -msoft-float -mno-string 
 
        uint ver;
        uint major, minor;
 
-       puts("Freescale PowerPC\n");
-
-       pvr = get_pvr();
-       ver = PVR_VER(pvr);
-       major = PVR_MAJ(pvr);
-       minor = PVR_MIN(pvr);
-
-       printf("    Core: ");
-       switch (ver) {
-       case PVR_VER(PVR_85xx):
-           puts("E500");
-           break;
-       default:
-           puts("Unknown");
-           break;
-       }
-       printf(", Version: %d.%d, (0x%08x)\n", major, minor, pvr);
-
        svr = get_svr();
        ver = SVR_VER(svr);
        major = SVR_MAJ(svr);
        minor = SVR_MIN(svr);
 
-       puts("    System: ");
+       puts("CPU:   ");
        switch (ver) {
        case SVR_8540:
                puts("8540");
        }
        printf(", Version: %d.%d, (0x%08x)\n", major, minor, svr);
 
+       pvr = get_pvr();
+       ver = PVR_VER(pvr);
+       major = PVR_MAJ(pvr);
+       minor = PVR_MIN(pvr);
+
+       printf("Core:  ");
+       switch (ver) {
+       case PVR_VER(PVR_85xx):
+           puts("E500");
+           break;
+       default:
+           puts("Unknown");
+           break;
+       }
+       printf(", Version: %d.%d, (0x%08x)\n", major, minor, pvr);
+
        get_sys_info(&sysinfo);
 
-       puts("    Clocks: ");
-       printf("CPU:%4lu MHz, ", sysinfo.freqProcessor / 1000000);
-       printf("CCB:%4lu MHz, ", sysinfo.freqSystemBus / 1000000);
-       printf("DDR:%4lu MHz, ", sysinfo.freqSystemBus / 2000000);
+       puts("Clocks Configuration:\n");
+       printf("       CPU:%4lu MHz, ", sysinfo.freqProcessor / 1000000);
+       printf("CCB:%4lu MHz,\n", sysinfo.freqSystemBus / 1000000);
+       printf("       DDR:%4lu MHz, ", sysinfo.freqSystemBus / 2000000);
 
 #if defined(CFG_LBC_LCRR)
        lcrr = CFG_LBC_LCRR;
                printf("LBC:%4lu MHz\n",
                       sysinfo.freqSystemBus / 1000000 / clkdiv);
        } else {
-               printf("    LBC: unknown (lcrr: 0x%08x)\n", lcrr);
+               printf("LBC: unknown (lcrr: 0x%08x)\n", lcrr);
        }
 
        if (ver == SVR_8560) {
-               printf("    CPM: %lu Mhz\n",
+               printf("CPM:  %lu Mhz\n",
                       sysinfo.freqSystemBus / 1000000);
        }
 
-       puts("    L1 D-cache 32KB, L1 I-cache 32KB enabled.\n");
+       puts("L1:    D-cache 32 kB enabled\n       I-cache 32 kB enabled\n");
 
        return 0;
 }
 
        temp = l2cache->l2ctl;
        asm("msync;isync");
 
-       printf("L2 cache enabled: 256KB\n");
+       printf("L2:    256 kB enabled\n");
 #else
-       printf("L2 cache disabled.\n");
+       printf("L2:    disabled.\n");
 #endif
 
        return 0;
 
        priv->phyaddr = tsec_info[index].phyaddr;
        priv->gigabit = tsec_info[index].gigabit;
 
-       sprintf(dev->name, "MOTO ENET%d", index);
+       sprintf(dev->name, "ENET%d", index);
        dev->iobase = 0;
        dev->priv   = priv;
        dev->init   = tsec_init;
 
 #define FEC_PHY_ADDR           0
 #define FEC_PHYIDX             0
 
-#define CONFIG_ETHPRIME                "MOTO ENET2"
+#define CONFIG_ETHPRIME                "ENET1"
 
 #endif /* CONFIG_TSEC_ENET */
 
   #define CFG_ENV_ADDR         (CFG_MONITOR_BASE - 0x20000)
   #define CFG_ENV_SECT_SIZE    0x20000 /* 128K(one sector) for env */
   #define CFG_ENV_SIZE         0x2000
+  #define CFG_ENV_OFFSET_REDUND        (CFG_ENV_OFFSET-CFG_ENV_SECT_SIZE)
+  #define CFG_ENV_SIZE_REDUND  (CFG_ENV_SIZE)
 #else
   #define CFG_NO_FLASH         1       /* Flash is not usable now */
   #define CFG_ENV_IS_NOWHERE   1       /* Store ENV in memory only */