On Mon, 12 Feb 2001 [EMAIL PROTECTED] wrote:
> Hi,
>
> We have a problem when the kernel boots, it has been mentioned many times in
> arm-linux discussions with few clear solutions.
>
> Here it is again:
>
>
> The system hangs after executing the instruction to enable the mmu "mcr
> p15, 0, r0, c1, c0" located in head-armv.S
> r0 = 0xc000517d. We are in supervisor mode ( we have tested by checking
> status ). We are using our own bootloader (customised) it is looseley based
> on Blob. The system is sa1110, with 8Mb Flash and 32Mb RAM. At the moment we
> have basic output working to some LEDs and Serial, but we cannot get any
> output after this command, we do not have a debugging tool - which is why I
> am interested in any solutions people found for this problem.
You must understand that, as soon as you turn on the MMU, the rules of the
game are completely different, especially for debugging. Your LEDs/serial
ports are likely to be remapped to a different address if they are mapped at
all. Things get settled later on by the kernel, but you have a big time
window where many things might go wrong without any output.
First, be sure you have CONFIG_DEBUG_LL enabled in your kernel
configuration. Then have a look at arch/arm/kernel/debug-armv.S, especially
the bits inside #ifdef CONFIG_ARCH_SA1100 (be sure the correct UART is
selected for your hardware). Be sure the print functions in that file work
for you by calling them early in head-armv.S (see the calls to __error for
an example). Recompile, reboot, if it works then remove your test and move
on.
Next, edit kernel/printk.c and insert "printascii(msg);" just before the
line that reads as "if (msg_level < console_loglevel && console_drivers) {"
(it should be around line 299). Again recompile, reboot, and see what
happens. From this point either you'll have plenty of interesting error
messages, or nothing at all. The strategy to use next depend on the result
you get here. Please try to get to that point and get back with your
results if you still need help.
Nicolas
_______________________________________________
http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
Please visit the above address for information on this list.