machine check in kernel for a mpc870 board

Shawn Jin shawnxjin at gmail.com
Fri Jul 2 06:17:19 EST 2010


>>> How do I find the address, reg, and range for nodes like localbus,
>>> soc, eth0, cpm, serial etc.?
>
> If your CCSRBAR is 0xfa200000, then pretty much anywhere you see 0xff0xxxxx
> change it to 0xfa2xxxxx.

I'm not sure about the range settings of 0xfe000000. How do you get this?

       localbus at fa200100 {
               compatible = "fsl,mpc885-localbus", "fsl,pq1-localbus",
                            "simple-bus";
               #address-cells = <2>;
               #size-cells = <1>;
               reg = <0xfa200100 0x40>;

               ranges = <
                       0 0 0xfe000000 0x01000000    // I'm not sure about this?
               >;
       };


>>     Linux/PowerPC load: root=/dev/ram
>>     Finalizing device tree... flat tree at 0x59e300
>>
>> The gdb showed deadbeef.
>>     (gdb) target remote ppcbdi:2001
>>     Remote debugging using ppcbdi:2001
>>     0xdeadbeef in ?? ()
>>     (gdb)
>>
>> The kernel doesn't seem to start. What could go wrong here?
>
> Pretty much anything. :-)

I realized that. :-P The kernel booting was able to stop at
start_kernel(). I'm going to trace further.

> Make sure that you've got Linux platform code enabled that matches the
> top-level compatible of your device tree.  Try enabling PPC_EARLY_DEBUG_CPM,
> making sure to update PPC_EARLY_DEBUG_CPM_ADDR to 0xfa202008.

I enabled this early debug feature but don't know this address change.
I'll try it later.

Thanks a lot, Scott.

-Shawn.


More information about the Linuxppc-dev mailing list