diff --git a/devicemodel/samples/nuc/launch_zephyr.sh b/devicemodel/samples/nuc/launch_zephyr.sh new file mode 100755 index 000000000..4acf25023 --- /dev/null +++ b/devicemodel/samples/nuc/launch_zephyr.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +function launch_zephyr() +{ +vm_name=zephyr_vm$1 + +#check if the vm is running or not +vm_ps=$(pgrep -a -f acrn-dm) +result=$(echo $vm_ps | grep "${vm_name}") +if [[ "$result" != "" ]]; then + echo "$vm_name is running, can't create twice!" + exit +fi + +#for memsize setting +mem_size=128M + +acrn-dm -A -m $mem_size -c $2 -s 0:0,hostbridge -s 1:0,lpc -l com1,stdio \ + -s 5,virtio-console,@pty:pty_port \ + -s 3,virtio-blk,./zephyr.img \ + --ovmf ./OVMF.fd \ + $vm_name +} + +# offline SOS CPUs except BSP before launch UOS +for i in `ls -d /sys/devices/system/cpu/cpu[1-99]`; do + online=`cat $i/online` + idx=`echo $i | tr -cd "[1-99]"` + echo cpu$idx online=$online + if [ "$online" = "1" ]; then + echo 0 > $i/online + # during boot time, cpu hotplug may be disabled by pci_device_probe during a pci module insmod + while [ "$online" = "1" ]; do + sleep 1 + echo 0 > $i/online + online=`cat $i/online` + done + echo $idx > /sys/class/vhm/acrn_vhm/offline_cpu + fi +done + +launch_zephyr 1 1