[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [GSoC] Xen on ARM: create multiple guests from device tree
Hi Luca, please don't use HTML emails. On Wed, 22 Mar 2017, Julien Grall wrote: > On 22/03/2017 19:45, Luca Miccio wrote: > > Hi Stefano, > > Hello Luca, > > > aarch64-linux-gnu-gcc -DCNTFRQ=0x01800000-DUART_BASE=0x1c090000 > > -DSYSREGS_BASE=0x1c010000 -DGIC_DIST_BASE=0x2c001000 > > -DGIC_CPU_BASE=0x2c002000 -c -o boot.xen.o boot.S -DXEN > > aarch64-linux-gnu-gcc -DPHYS_OFFSET=0x80000000 -DMBOX_OFFSET=0xfff8 > > -DBOOT=boot.xen.o -DXEN_OFFSET=0xA00000 -DKERNEL_OFFSET=0x80000 > > -DFDT_OFFSET=0x08000000 -DFS_OFFSET=0x10000000 -DXEN=Xen -DKERNEL=Image > > -DFILESYSTEM=filesystem.cpio.gz -E -P -C -o model.xen.lds model.lds.S > > aarch64-linux-gnu-gcc -DCNTFRQ=0x01800000-DUART_BASE=0x1c090000 > > -DSYSREGS_BASE=0x1c010000 -DGIC_DIST_BASE=0x2c001000 > > -DGIC_CPU_BASE=0x2c002000 -c -o boot.o boot.S > > aarch64-linux-gnu-gcc -DPHYS_OFFSET=0x80000000 -DMBOX_OFFSET=0xfff8 > > -DBOOT=boot.o -DKERNEL_OFFSET=0x80000 -DFDT_OFFSET=0x08000000 > > -DFS_OFFSET=0x10000000 -DKERNEL=Image -DFILESYSTEM=filesystem.cpio.gz -E > > -P -C -o model.lds model.lds.S > > aarch64-linux-gnu-ld -o xen-system.axf --script=model.xen.lds > > aarch64-linux-gnu-ld: section .xen LMA > > [0000000080a00000,0000000080ac814f] overlaps section .kernel LMA > > [0000000080080000,0000000080f009ff] > > Makefile:78: set di istruzioni per l'obiettivo "xen-system.axf" non riuscito > > make: *** [xen-system.axf] Errore 1\ > > > > Clearly there is a problem with the offset of xen section but i can't > > figure out how to solve it. > > I would recommend to use the latest version of bootwrapper which is now > including support for Xen. I haven't yet updated the wiki with the runes > but here a quick summary of the step I am using: > > * Building bootwrapper > > 42sh> git clone > git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git > 42sh> autoreconf -i > 42sh> ./configure --host=aarch64-linux-gnu --with-kernel-dir=<kernel-dir> > --with-dtb=<dtb> \ > --with-cmdline="console=hvc0 earlycon=pl011,0x1c090000 root=/dev/vda rw" > --enable-psci \ > --with-xen-cmdline="dtuart=serial0 console=dtuart no-bootscrub dom0_mem=512M" > \ > --with-xen=<xen-bin> --with-cpu-ids=0,1,2,3 > 42sh> make > > Where: > * <kernel-dir> is the path to the kernel repository > * <dtb> is the path to the device-tree. I am using the one shipped with > Linux > in arch/arm64/boot/dts/arm/foundation-armv8.dtbs > It will be built if you did make all in Linux > * <xen-bin> is the path to Xen binary (xen/xen in the repo) > > * Command line for the foundation model > 42sh> Foundation_Platform --image=<image> --block-device=<rootfs> --cores=4 > > Where: > * <image> is the path to xen-system.axf produced by bootwrapper > * <rootfs> is the patch to your rootfs > > Let me know if you need more details. Thanks Julien, I successfully booted Xen and Linux following these steps. I quickly updated the wiki. Luca, I took me a while to figure out that for root=/dev/vda to work properly, Linux requires not just all the filesystem and virtio options enabled in the kernel config, but also CONFIG_VIRTIO_MMIO=y. With that, you should be able to boot Xen, Linux and mount the root filesystem. If you download one of the Ubuntu arm64 cloud images, the root device will be /dev/vda1. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |