[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [ARM APM Mustang-X. Xen 4.5-rc1 and staging] Booting issues, last meesage: (XEN) P2M: 3 levels with order-1 root, VTCR 0x80033558



On Mon, 2014-11-03 at 13:06 -0500, Konrad Rzeszutek Wilk wrote:
> Hey,
> 
> I've been following: 
> http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/APMXGeneMustang#Preparing_all_the_Images
> with a couple of changes:
> 
> 1) The latest Linux tree in https://github.com/AppliedMicro/ENGLinuxLatest
> looks to have already Xen support in the default config. So used that instead
> of 3.15.
> 
> 
> 2). The 'run xen_run' does not execute properly, but if I run each
>  operation by itself it does get me to boot Xen.
> 
> 
> However I am not sure if the reason I am getting stuck is because I should be
> using 3.15-rc8 instead of the latest? Or perhaps there is another issue?

Looking at the logs it seems like the fdt chosen node isn't actually
getting filled in with the dom0 kernel.

[...]
> libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
> libfdt ND
[...]
> libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
> libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND

These are something failing to manipulate the DTB.

Perhaps you need a "fdt mknod /chosen module@0" somewhere after the "fdt
addr" but before any write to a property under /chosen/module@0?


> Mustang# run xen_load
> Using eth0 device
> TFTP from server 192.168.105.1; our IP address is 192.168.105.51
> Filename 'lab/tst051/uXen'.
> Load address: 0x4000080000
> Loading: *####################################################
>        4.1 MiB/s
> done
> Bytes transferred = 755600 (b8790 hex)
> Mustang# fdt print /chosen
> chosen {
> };

No kernel referenced here.
[...]
> (XEN) MODULE[0]: 0000004000ff9000 - 0000004001000000 Device Tree  
> (XEN)  RESVD[0]: 0000004003000000 - 0000004003004000
> (XEN)  RESVD[1]: 0000004000000000 - 0000004000010000

Nor here.

> (XEN) Command line: <NULL>

Also you don't seem to have a Xen command line (which should come from
setenv bootargs, not sure why it doesn't).
[...]
> (XEN) CPU 7 booted.
> (XEN) Brought up 8 CPUs
> (XEN) P2M: 40-bit IPA with 42-bit PA
> (XEN) P2M: 3 levels with order-1 root, VTCR 0x80033558

I expect this cuts off here because we turn off early console around now
and the missing Xen command line means you haven't got a real one.

FWIW my boot script is below, put it in a file boot.txt then run
        mkimage -T script -A arm -d boot.txt boot.scr
to make boot.scr, then load and run it with (from memory):
        tftp $scriptaddr /ianc/pony/boot.scr; source $scriptaddr.
        
Ian.
-----

# Mustang Xen Boot Script

tftp ${fdt_addr_r} /ianc/pony/apm-mustang.dtb

fdt addr ${fdt_addr_r} 0x100000

setenv xen_addr_r 0x4000080000
#  kernel_addr_r= 0x4002000000
# ramdisk_addr_r= 0x4004000000

tftp ${xen_addr_r} /ianc/pony/uXen
setenv bootargs "conswitch=x console=dtuart dtuart=/soc/serial@1c020000"
setenv bootargs "${bootargs} no-bootscrub"
setenv bootargs "${bootargs} noreboot"
setenv bootargs "${bootargs} dom0_mem=256M"

fdt set /chosen bootargs "${bootargs}"
fdt set /chosen \#address-cells <2>
fdt set /chosen \#size-cells <1>

tftp ${kernel_addr_r} /ianc/pony/vmlinuz

fdt mknod /chosen module@4002000000
fdt set /chosen/module@4002000000 compatible "multiboot,module" # 
"multiboot,kernel"
# kernel_addr_r spans two cells...
fdt set /chosen/module@4002000000 reg <0x40 0x02000000 0x${filesize} >
fdt set /chosen/module@4002000000 bootargs "console=hvc0 root=/dev/sda2 rw 
earlycon=uart8250,mmio32,0x1c020000 maxcpus=8 swiotlb=4096 kernel.sysrq=1"

fdt resize

fdt print /chosen

bootm ${xen_addr_r} - ${fdt_addr_r}



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.