All of lore.kernel.org
 help / color / mirror / Atom feed
* [ARM APM Mustang-X. Xen 4.5-rc1 and staging] Booting issues, last meesage: (XEN) P2M: 3 levels with order-1 root, VTCR 0x80033558
@ 2014-11-03 18:06 Konrad Rzeszutek Wilk
  2014-11-04  9:53 ` Ian Campbell
  0 siblings, 1 reply; 2+ messages in thread
From: Konrad Rzeszutek Wilk @ 2014-11-03 18:06 UTC (permalink / raw)
  To: xen-devel, pranavkumar; +Cc: ian.campbell, Stefano Stabellini

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?

And here is the serial console


Mustang# run xen_dtb xen_dom0 xen_load;
Using eth0 device
TFTP from server 192.168.105.1; our IP address is 192.168.105.51
Filename 'lab/tst051/apm-mustang-xen.dtb's: 0x4003000000
Loading: *\b##
	 2.1 MiB/s
done
Bytes transferred = 15716 (3d64 hex)
Using eth0 device
TFTP from server 192.168.105.1; our IP address i\b#################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 ####################
	 4.2 MiB/s
done
Bytes transferred = 7925472 (78eee0 hex)
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
libfdt ND
Mustang# run xen_dtb
Using eth0 device
TFTP from server 192.168.105.1; our IP address is 192.168.105.51
Filename 'lab/tst051/apm-mustang-xen.dtb'.
Load address: 0x4003000000
Loading: *\b##
	 2.1 MiB/s
done
Bytes transferred = 15716 (3d64 hex)
Mustang# run xen_dom0
Using eth0 device
TFTP from server 192.168.105.1; our IP address is 192.168.105.51
Filename 'lab/tst051/Image'.
Load address: 0x400200000
Loading: *\b#################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 #################################################################
	 ####################
	 4.1 MiB/s
done
Bytes transferred = 7925472 (78eee0 hex)
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
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: *\b####################################################
	 4.1 MiB/s
done
Bytes transferred = 755600 (b8790 hex)
Mustang# fdt print /chosen
chosen {
};
Mustang# run xen_boot
## Booting kernel from Legacy Image at 4000080000 ...
   Image Name:   Xen
   Image Type:   ARM Linux Kernel Image (uncompree:    755536 Bytes = 737.8 KiB
   Load Address: 00200000
   Entry Point:  00200000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 4003000000
   Booting using the fdt blob at 0x0000004003000000
   Loading Kernel Image ..OK
OK
   reserving fdt memory region: addr=4003000000 size=4000
   Loading Device Tree to 0000004000ff9000, end 0000004000fff
Starting kernel ...

L3C: 8MB
- UART enabled -
- CPU 00000000 booting -
- Current EL 00000008 -
- Xen starting at EL2 -RAM: 0000004000000000 - 00000043ffffffff
(XEN) 
(XEN) MODULE[0]: 0000004000ff9000 - 0000004001000000 Device Tree  
(XEN)  RESVD[0]: 0000004003000000 - 0000004003004000
(XEN)  RESVD[1]: 0000004000000000 - 0000004000010000
(XEN) 
(XEN) Command line: <NULL>
(XEN) Placing Xen at 0x00000043ffe00000-0x0000004400000000
(XEN) Update BOOTMOD_XEN from 0000004000200000-000000400030ad81 => 00000043ffe00000-00000043fff0ad81
(XEN) Domain heap initialised
(XEN) No console
(XEN) Bad console= option 'dtuart'
 Xen 4.5.0-rc
(XEN) Xen version 4.5.0-rc ((XEN) 64-bit Execution:
(XEN)   Processor Features: 0000000000000122 0000000000000000
(XEN)     Exception Levels: EL3:No EL2:64 EL1:64+32 EL0:64+32
(XEN)     Extensions: FloatingPoint AdvancedSIMD
(XEN)   Debug Features: 0000000010303106 0000000000000000
(XEN)   Auxiliary Features: 0000000000000000 0000000000000000
(XEN)   Memory Model Features: 0000000000000123 0000000000000000
(XEN)   ISA Features:  0000000000000000 0000000000000000
(XEN) 32-bit Execution:
(XEN)   Processor Features: 00000131:00111001
(XEN)     Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
(XEN)     Extensions: GenericTimer
(XEN)   Debug Features: 03010006
(XEN)   Auxiliary Features: 00000000
(XEN)   Memory Model Features: 00100105 40000000 01260000 02102111
(XEN)  ISA Features: 02101110 13112111 21232042 01112131 00010142 00000001
(XEN) Platform: APM X-GENE STORM
(XEN) Generic Timer IRQ: phys=29 hyp=31 virt=30
(XEN) Using generic timer at 50000 KHz
(XEN) GICv2 initialization:
(XEN)         gic_dist_addr=0000000078090000
(XEN)         gic_cpu_addr=00000000780a0000
(XEN)         gic_hyp_addr=00000000780c0000
(XEN)         gic_vcpu_addr=00000000780e0000
(XEN)         gic_maintenance_irq=25
(XEN) GICv2: 256 lines, 8 cpus, secure (IID 0200143b).
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) I/O virtualisation disabled
(XEN) Allocated console ring of 64 KiB.
(XEN) Bringing up CPU1
- CPU 00000001 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 1 booted.
(XEN) Bringing up CPU2
- CPU 00000100 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 2 booted.
(XEN) Bringing up CPU3
- CPU 00000101 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 3 booted.
(XEN) Bringing up CPU4
- CPU 00000200 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 4 booted.
(XEN) Bringing up CPU5
- CPU 00000201 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 5 booted.
(XEN) Bringing up CPU6
- CPU 00000300 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 6 booted.
(XEN) Bringing up CPU7
- CPU 00000301 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [ARM APM Mustang-X. Xen 4.5-rc1 and staging] Booting issues, last meesage: (XEN) P2M: 3 levels with order-1 root, VTCR 0x80033558
  2014-11-03 18:06 [ARM APM Mustang-X. Xen 4.5-rc1 and staging] Booting issues, last meesage: (XEN) P2M: 3 levels with order-1 root, VTCR 0x80033558 Konrad Rzeszutek Wilk
@ 2014-11-04  9:53 ` Ian Campbell
  0 siblings, 0 replies; 2+ messages in thread
From: Ian Campbell @ 2014-11-04  9:53 UTC (permalink / raw)
  To: Konrad Rzeszutek Wilk; +Cc: xen-devel, Stefano Stabellini, pranavkumar

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: *\b####################################################
> 	 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}

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-11-04  9:53 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-03 18:06 [ARM APM Mustang-X. Xen 4.5-rc1 and staging] Booting issues, last meesage: (XEN) P2M: 3 levels with order-1 root, VTCR 0x80033558 Konrad Rzeszutek Wilk
2014-11-04  9:53 ` Ian Campbell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.