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

Re: [Xen-users] How to build Mini-OS for ARM

пт, 7 июн. 2019 г. в 17:09, <iain@xxxxxxxxxxxxxxxxxxxx>:
In your ramdisk do you have /sbin/init present? It is normally a symlink to systemd executable or is itself the executable that manages start up.

Yes, in my case it is a symlink to the busybox binary. Julien suggested to use console=hvc0 and it worked.
-----Original Message-----
From: Julien Grall <julien.grall@xxxxxxx>
Sent: 07 June 2019 16:06
To: Denis Obrezkov <denisobrezkov@xxxxxxxxx>
Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>; Iain Hunter <iain@xxxxxxxxxxxxxxxxxxxx>; Hunyue Yau <hy-gsoc@xxxxxxxxxxxxxxx>; julien.grall@xxxxxxxxxxxx; xen-users@xxxxxxxxxxxxxxxxxxxx
Subject: Re: How to build Mini-OS for ARM

Hi Denis,

On 07/06/2019 15:58, Denis Obrezkov wrote:
> I have a bit of troubles with ramdisk.
> I tried to build busybox and to load it, and it worked.

Do you mean using Linux baremetal?

> But when I try to boot it this way:
> qemu-system-aarch64  -machine virt,gic_version=3 -machine
> virtualization=true -cpu cortex-a57 -machine type=virt -m 4096 -smp 4
> -bios u-boot.bin -device
> loader,file=xen,force-raw=on,addr=0x49000000 -device
> loader,file=Image.gz,addr=0x47000000 -device
> loader,file=virt-gicv3.dtb,addr=0x44000000 -device
> loader,file=rootfs.img.gz,addr=0x42000000 -nographic -no-reboot
> -chardev
> socket,id=qemu-monitor,host=localhost,port=7777,server,nowait,telnet
> -mon qemu-monitor,mode=readline
> and pass:
> fdt addr 0x44000000
> fdt resize
> fdt set /chosen \#address-cells <1>
> fdt set /chosen \#size-cells <1>
> fdt mknod /chosen module@0
> fdt set /chosen/module@0 compatible "xen,linux-zimage" "xen,multiboot-module"
> fdt set /chosen/module@0 reg <0x47000000 0x7F31CE>
> fdt set /chosen/module@0 bootargs "rw root=/dev/ram rdinit=/sbin/init   
> earlyprintk=serial,ttyAMA0 console=ttyAMA0,115200n8 earlycon=xenboot"

The UART is owned by Xen and cannot be used by Dom0. Instead we provide a para-virtualized console. So console=ttyAMA0,115200n8 should be replaced by console=hvc0.

> fdt mknod /chosen module@1
> fdt set /chosen/module@1 compatible "xen,linux-initrd" "xen,multiboot-module"
> fdt set /chosen/module@1 reg <0x42000000 0x121e65>
> booti 0x49000000 - 0x44000000
> I can see that it successfully boots till the very end but the input
> prompt doesn't appear. The last lines are:
> [    3.415854]   No soundcards found.
> [    3.417458] Warning: unable to open an initial console.

The lack of console=hvc0 might explain this warning and potentially the fact you can't access the shell.

> [    3.496941] Freeing unused kernel memory: 1344K [    3.505723] Run
> /sbin/init as init process


Julien Grall

Xen-users mailing list



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