Setting MSR[DE] in do_reset
authorurwithsughosh@gmail.com <urwithsughosh@gmail.com>
Mon, 24 Sep 2007 17:32:13 +0000 (13:32 -0400)
committerAndrew Fleming-AFLEMING <afleming@freescale.com>
Fri, 19 Oct 2007 18:13:44 +0000 (13:13 -0500)
Hello,
   This patch ensures the soft reset of the board for the 85xx boards
   by setting the MSR[DE] in the do_reset function.

Signed-off-by: Sughosh Ganu <urwithsughosh@gmail.com>
cpu/mpc85xx/cpu.c

index 08e0468..bbc5444 100644 (file)
@@ -163,7 +163,12 @@ int do_reset (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[])
         * Initiate hard reset in debug control register DBCR0
         * Make sure MSR[DE] = 1
         */
-               unsigned long val;
+               unsigned long val, msr;
+
+               msr = mfmsr ();
+               msr |= MSR_DE;
+               mtmsr (msr);
+
                val = mfspr(DBCR0);
                val |= 0x70000000;
                mtspr(DBCR0,val);