cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Visitor
Visitor
3,278 Views
Registered: ‎09-02-2008

Linux Booting Problem

Hi all,

I am trying to boot linux kernel (2.6.30) on a custom built board.
I am using simple ppc platform and attached are my dts file and boot log..
I've 26Mb of RAM,UART and UIC with powerpc 440x5 processor.
Kernel Image size is less than 1 mb.

aaa,bbbbbb  board is added in arch/powerpc/platforms/44x/ppc44x_simple.c

device tree file as bellow:
----------------------------

/dts-v1/;

/ {
model = "aaa,bbbbbb";
compatible = "aaa,bbbbbb";
#address-cells = <1>;
#size-cells = <1>;
dcr-parent = <&bbbbbb_PPC>;
chosen {
bootargs = "console=ttyS0 root=/dev/ram";
        linux,stdout-path = "/plb/serial@02080000";
} ;
aliases {
serial0 = &STD_UART;
} ;
memory {
device_type = "memory";
reg = < 0x0 0x01A00000 >;
} ;
cpus {
#address-cells = <1>;
#size-cells = <0>;
bbbbbb_PPC: cpu@0 {
device_type = "cpu";
#address-cells = <1>;
#size-cells = <1>;
reg = <0>;
clock-frequency = <25000000>;
compatible = "PowerPC,440", "ibm,ppc440";
d-cache-line-size = <0x20>;
d-cache-size = <0x8000>;
dcr-access-method = "native";
dcr-controller ;
i-cache-line-size = <0x20>;
i-cache-size = <0x8000>;
model = "PowerPC,440";
timebase-frequency = <25000000>;
} ;
} ;
UIC0: interrupt-controller0 {
compatible = "ibm,uic-440ep","ibm,uic";
interrupt-controller;
cell-index = <0>;
dcr-reg = <0x1c0 0x009>;
#address-cells = <0>;
#size-cells = <0>;
#interrupt-cells = <2>;
};
PLB: plb {
#address-cells = <1>;
#size-cells = <1>;
compatible = "simple-bus";
ranges ;
STD_UART: serial@02080000 {
device_type = "serial";
compatible = "ns16550";
reg = <0x02080000 0x00000008>;
virtual-reg = <0x02080000>;
            clock-frequency = <125000000>;
current-speed = <9600>;
interrupt-parent = <&UIC0>;
interrupts = <0x5 0x4>;
} ;
} ;
}  ;

boot log is as below:
---------------------


zImage starting: loaded at 0x00400000 (sp: 0x004deeb0)
Allocating 0x1dad84 bytes for kernel ...
gunzipping (0x00000000 <- 0x0040c000:0x004dd3fc)...done 0x1c31cc bytes

Linux/PowerPC load: console=ttyS0 root=/dev/ram
Finalizing device tree... flat tree at 0x4eb300
Debug print:This works
Debug print:############!!!!###########
Memory hole size: 0MB
Unable to handle kernel paging request for data at address 0x01a00000
Faulting instruction address: 0xc0011434
Oops: Kernel access of bad area, sig: 11 [#1]
PREEMPT PowerPC 44x Platform
Modules linked in:
**bleep**: c0011434 LR: c010dcb0 CTR: 00000001
REGS: c01bfe60 TRAP: 0300   Not tainted  (2.6.30)
MSR: 00021000 <ME,CE>  CR: 22000024  XER: 20000000
DEAR: 01a00000, ESR: 00000000
TASK = c01a94b8[0] 'swapper' THREAD: c01be000
GPR00: fffffff4 c01bff10 c01a94b8 01a00000 019fffff 0000000c c01958b0 00000000
GPR08: 00000037 c0110000 00000042 00003fff 22000022 00000000 fffff104 00000000
GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 c010d750 c01958b0
GPR24: 0000000c 00000000 c01a1dfc 01a00000 c01a1dfc 00003fff 0000000c 00000000
**bleep** [c0011434] strlen+0x4/0x18
LR [c010dcb0] match_token+0x1a0/0x228
Call Trace:
[c01bff50] [c01962f4] free_area_init_nodes+0x48/0x3a0
[c01bff80] [c0191738] paging_init+0x80/0xa0
[c01bffb0] [c01909b4] setup_arch+0x1c4/0x1dc
[c01bffc0] [c018c648] start_kernel+0x54/0x288
[c01bfff0] [c0000200] skpinv+0x190/0x1cc
Instruction dump:
4d820020 7ca903a6 38a3ffff 3884ffff 8c650001 2c830000 8c040001 7c601851
4d860020 4102ffec 4e800020 3883ffff <8c040001> 2c000000 4082fff8 7c632050
---[ end trace 31fd0ba7d8756001 ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Call Trace:
[c01bfd40] [c0005d5c] show_stack+0x4c/0x16c (unreliable)
[c01bfd80] [c002f174] panic+0xa0/0x168
[c01bfdd0] [c0032eb0] do_exit+0x61c/0x638
[c01bfe10] [c000b60c] kernel_bad_stack+0x0/0x4c
[c01bfe40] [c000f328] bad_page_fault+0x90/0xd8
[c01bfe50] [c000e19c] handle_page_fault+0x7c/0x80
[c01bff10] [00000000] (null)
[c01bff50] [c01962f4] free_area_init_nodes+0x48/0x3a0
[c01bff80] [c0191738] paging_init+0x80/0xa0
[c01bffb0] [c01909b4] setup_arch+0x1c4/0x1dc
[c01bffc0] [c018c648] start_kernel+0x54/0x288
[c01bfff0] [c0000200] skpinv+0x190/0x1cc
Rebooting in 180 seconds..


I m not sure , if i should not be posting on this forum, but
Can anyone tell what would be the problem..? or any clue..?



thanks,
Su Mesh.
0 Kudos
Reply
1 Reply
Xilinx Employee
Xilinx Employee
3,268 Views
Registered: ‎09-10-2008

It's not clear to me that you're using a Xilinx PowerPC 440 as your device tree shows in interrupt controller that's not the Xilinx interrupt controller.

 

UIC0: interrupt-controller0 {
compatible = "ibm,uic-440ep","ibm,uic";
interrupt-controller;
cell-index = <0>;
dcr-reg = <0x1c0 0x009>;
#address-cells = <0>;
#size-cells = <0>;
#interrupt-cells = <2>;
};
If this is not a Xilinx 440 then I don't have any experience with whatever processor you are using.  linuxppc-dev@ozlabs.org is a powerpc mailing list that is very general and maybe that would help.
If you are using a Xilinx FPGA with a PowerPC 440, then I would need more details on your setup and you shouldn't have to modify any files such as
ppc44x_simple.c.
Our wiki at http://xilinx.wikidot.com gives more information.
Thanks,
John
0 Kudos
Reply