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

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




Do you mean using Linux baremetal?
In qemu, I run it this way:
qemu-system-aarch64  -machine virt,gic_version=3 -machine virtualization=true -cpu cortex-a57 -machine type=virt -m 4096 -smp 4 -kernel Image.gz -nographic -no-reboot -initrd rootfs.img.gz -append "rw root=/dev/ram rdinit=/sbin/init  earlyprintk=serial,ttyAMA0 console=ttyAMA0"


>
> 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.
Thank you, now it works.

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

Cheers,

--
Julien Grall
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-users

 


Rackspace

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