[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
|