cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
hcuongvn
Observer
Observer
2,257 Views
Registered: ‎12-21-2011

"Finalizing device tree... flat tree at..." Linux porting on custom board (virtex2p , powerpc 405)

I am trying to boot linux on a powerpc405 based xilinx board. And booting process stops after displaying the "Finalizing device tree.."  I used edk 10.1 generated file .dts from device-tree. I read code file main.c (arch/powerpc/boot) stoped at "kentry(ft_addr, 0, NULL);" I want to ask you advice as to what direction should I go to solve this problem. I dow file elf and "run", display :

                     

System Reset .... DONE
Downloading Program -- 3.elf
section, .text: 0x00275000-0x0027e5c3
section, .got: 0x00280b50-0x00280b5f
section, .data: 0x0027f000-0x00280b4f
section, __builtin_cmdline: 0x00280b60-0x00280d5f
section, .kernel:dtb: 0x00280d60-0x00281aba
section, .kernel:vmlinux.strip: 0x00282000-0x00357dbe
section, .kernel:initrd: 0x00358000-0x003af08f
section, .bss: 0x003b0000-0x003bcddb
Setting PC with Program Start Address 0x00275000

XMD% run
Info:Processor started. Type "stop" to stop processor

RUNNING> XMD%
zImage starting: loaded at 0x00275000 (sp: 0x003b0fa0)
Allocating 0x1e1a88 bytes for kernel ...
gunzipping (0x00000000 <- 0x00282000:0x00357dbf)...done 0x1d5dc8 bytes
Attached initrd image at 0x00358000-0x003af090
initrd head: 0x1f8b0800

Linux/PowerPC load: console=ttyUL0,9600 root=/dev/ram
Finalizing device tree... flat tree at 0x3bd0e0

 

  This is file dts 

/dts-v1/;
/ {
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,virtex405", "xlnx,virtex";
model = "testing";
Generic_External_Memory: memory@0 {
device_type = "memory";
reg = < 0x0 0x200000 >;
} ;
aliases {
} ;
chosen {
bootargs = "console=ttyUL0,115200 root=/dev/ram";
linux,stdout-path = "/plb@0/opb@41200000/debug@84400000";
} ;
cpus {
#address-cells = <1>;
#cpus = <0x1>;
#size-cells = <0>;
ppc405_0: cpu@0 {
clock-frequency = <100000000>;
compatible = "PowerPC,405", "ibm,ppc405";
d-cache-line-size = <0x20>;
d-cache-size = <0x4000>;
dcr-access-method = "native";
dcr-controller ;
device_type = "cpu";
i-cache-line-size = <0x20>;
i-cache-size = <0x4000>;
model = "PowerPC,405";
reg = <0>;
timebase-frequency = <100000000>;
xlnx,dcr-resync = <0x0>;
xlnx,deterministic-mult = <0x0>;
xlnx,disable-operand-forwarding = <0x1>;
xlnx,fastest-plb-clock = "DPLB0";
xlnx,generate-plb-timespecs = <0x1>;
xlnx,mmu-enable = <0x1>;
} ;
} ;
xps_mch_emc_0: memory@200000 {
device_type = "memory";
reg = < 0x200000 0x200000 >;
} ;
plb0: plb@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,plb-v46-1.02.a", "xlnx,plb-v46-1.00.a", "simple-bus";
ranges ;

opb_v20_0: opb@41200000 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,opb-v20-1.10.c", "simple-bus";
ranges = < 0x41200000 0x41200000 0x20000 0x84400000 0x84400000 0x20000 >;
mdm_0: debug@84400000 {
compatible = "xlnx,mdm-1.00.b";
device_type = "serial";
interrupt-parent = <&opb_intc_0>;
interrupts = < 0 0 >;
reg = < 0x84400000 0x10000 >;
xlnx,family = "virtex2p";
xlnx,interconnect = <0x0>;
xlnx,jtag-chain = <0x2>;
xlnx,mb-dbg-ports = <0x0>;
xlnx,uart-width = <0x8>;
xlnx,use-uart = <0x1>;
xlnx,write-fsl-ports = <0x0>;
} ;
opb_intc_0: interrupt-controller@41200000 {
#interrupt-cells = <0x2>;
compatible = "xlnx,opb-intc-1.00.c", "xlnx,xps-intc-1.00.a";
interrupt-controller ;
reg = < 0x41200000 0x10000 >;
xlnx,kind-of-intr = <0x1>;
xlnx,num-intr-inputs = <0x1>;
} ;
} ;
xps_bram_if_cntlr_1: xps-bram-if-cntlr@ffff8000 {
compatible = "xlnx,xps-bram-if-cntlr-1.00.a";
reg = < 0xffff8000 0x8000 >;
xlnx,family = "virtex2p";
} ;

} ;
xlnx,compound@1 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,xlnx,compound";
ranges ;
} ;
} ; 

 

I have send attachments file project.zip.


0 Kudos
1 Reply
hcuongvn
Observer
Observer
2,256 Views
Registered: ‎12-21-2011

file project.zip include : file .dts. file config linux, file .mhs and file .mss

0 Kudos