41 lines
788 B
Bash
Executable File
41 lines
788 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
if [ -z "${MACH}" ]; then
|
|
MACH=rpi3b
|
|
fi
|
|
|
|
ARCH=aarch64-unknown-none-${MACH}
|
|
KERNEL=target/${ARCH}/debug/kernel
|
|
|
|
QEMU_OPTS=""
|
|
|
|
if [ "$QEMU_DINT" = 1 ]; then
|
|
QEMU_OPTS="$QEMU_OPTS -d int"
|
|
fi
|
|
|
|
case ${MACH} in
|
|
rpi3b)
|
|
QEMU_OPTS="$QEMU_OPTS \
|
|
-serial null \
|
|
-serial stdio \
|
|
-dtb bcm2837-rpi-3-b.dtb \
|
|
-M raspi3b"
|
|
;;
|
|
virt)
|
|
KERNEL=target/${ARCH}/debug/kernel.bin
|
|
QEMU_OPTS="$QEMU_OPTS \
|
|
-serial stdio \
|
|
-M virt,virtualization=on \
|
|
-cpu cortex-a57 \
|
|
-m 256"
|
|
esac
|
|
QEMU_OPTS="$QEMU_OPTS \
|
|
-kernel ${KERNEL} \
|
|
-s"
|
|
|
|
./build.sh
|
|
|
|
qemu-system-aarch64 ${QEMU_OPTS}
|