[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Ltib] Inability to reboot the MPC8349mITX
From: |
Benoit Tinite |
Subject: |
Re: [Ltib] Inability to reboot the MPC8349mITX |
Date: |
Tue, 02 Jan 2007 12:27:10 +0100 |
User-agent: |
Thunderbird 1.5.0.9 (Windows/20061207) |
Hello,
Above all, happy new year to every body.
I met the same issue when playing with MPC8349mITX board.
From my opinion, function
mpc83xx_restart(arch/ppc/syslib/ppc83xx_setup.c) is faulty.
It define a specific procedure to restart the mpc8349mITX platform,
using a self generated checkstop exception to reset the board.
However, the way the function handles registers to rise a the checkstop
is strange (lack of indirection).
I had to modify the function like this :
--- rpm/BUILD/linux-2.6.13/arch/ppc/syslib/ppc83xx_setup.c
2007-01-02 12:03:12.000000000 +0100
+++ rpm/BUILD/linux-2.6.14.7/arch/ppc/syslib/ppc83xx_setup.c
2006-12-21 18:38:48.000000000 +0100
@@@ -131,7 +146,7 @@ mpc83xx_restart(char *cmd)
volatile unsigned char dummy;
volatile unsigned int msr;
- unsigned int bad_addr, rmr_addr, br0_addr;
+ volatile unsigned int bad_addr, rmr_addr, br0_addr;
/* Get base address mapped by BR0/OR0 */
br0_addr = (unsigned int)(VIRT_IMMRBAR + 0x5000);
@@ -141,10 +156,10 @@ mpc83xx_restart(char *cmd)
cli();
/* Enable CheckStop Reset */
- rmr_addr |= 0x00000001;
+ *(unsigned int *)rmr_addr |= 0x00000001;
/* Invalidate BR0 mapping */
- br0_addr = 0;
+ *(unsigned int *)br0_addr = 0;
/* Set MSR and cause reset */
__asm__("mfmsr %0" : "=r" (msr) );
@@ -200,31 +215,33 @@ mpc83xx_halt(void)
for(;;);
}
Mark Lacas a écrit :
Hello,
Has anyone experienced the inability to reboot the MPC8349mITX system?
If so does anyone have a cure?
I get this output when I type the reboot command from the shell:
----- beginning of pasted text -----
Stopping the dropbear ssh server:
Stopping inetd:
Syncing hardware clock to system time
Unmounting filesystems
chmod: changing permissions of `/share': Read-only file system
The system is going down NOW !!
Sending SIGTERM to all processes.
Send
Please stand by while rebooting the system.
md: stopping all md devices.
md: md0 switched to read-only mode.
Synchronizing SCSI cache for disk sda:
Restarting system.
.
Restart failed
----- end of pasted text -----
Looking in the kernel code I find a file ppc83xx_setup.c that has some
reset code in it. Looks like it's trying to perform a hardware reset
and then if that fails goes into an infinite loop.
I need to use the box from remote for dev and having it hang when I
reboot puts an end to my work.
Thanks,
ml
_______________________________________________
LTIB home page: http://bitshrine.org
Ltib mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/ltib
- Re: [Ltib] Inability to reboot the MPC8349mITX,
Benoit Tinite <=