-
Notifications
You must be signed in to change notification settings - Fork 28
/
Copy pathcommon_variables
executable file
·56 lines (43 loc) · 1.51 KB
/
common_variables
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# SPDX-FileCopyrightText: 2023 Rivos Inc.
#
# SPDX-License-Identifier: Apache-2.0
# Path variables:
#
# QEMU: Path to compiled QEMU tree. Default: use QEMU in $PATH.
# LINUX: Path to compiled Linux kernel tree.
# DEBIAN: Path to a pre-baked Debian image.
QEMU=${QEMU:-""}
if [ x$QEMU != "x" ]
then
QEMU=${QEMU}/build/riscv64-softmmu/
fi
QEMU_BIN=${QEMU}qemu-system-riscv64
LINUX=${LINUX:-""}
LINUX_BIN=${LINUX}/arch/riscv/boot/Image
DEBIAN=${DEBIAN:-""}
ROOTFS_IMAGE=${DEBIAN}/image.qcow2
INITRD_IMAGE=${DEBIAN}/initrd
BUILDROOT=${BUILDROOT:-""}
BUILDROOT_IMAGE=${BUILDROOT}/output/images/rootfs.ext2
SALUS_BINS=bazel-bin/
TELLUS_BINS=bazel-bin/test-workloads/
KERNEL_ADDR=0xc0200000
INITRD_ADDR=0xc2200000
BOOTARGS="console=hvc0 earlycon=sbi"
IOMMU_ARGS="-device x-riscv-iommu-pci"
NETWORK_ARGS="-netdev user,id=usernet,hostfwd=tcp:127.0.0.1:7722-0.0.0.0:22 -device e1000e,netdev=usernet"
NVME_DEVICE_ARGS="-device nvme,serial=deadbeef,drive=hd"
# QEMU options:
#
# NCPU: Number of CPUs to boot with. Default: 2
# MEM_SIZE: RAM size for the emulated system. Default: 2GB
# EXTRA_QEMU_ARGS: Any extra flags to pass to QEMU (e.g. other devices).
NCPU=${NCPU:-2}
MEM_SIZE=${MEM_SIZE:-2048}
EXTRA_QEMU_ARGS=${EXTRA_QEMU_ARGS:-""}
EXTRA_CPU=${VECTORS:+",v=on,vlen=256,elen=64"}
CPU_TYPE=rv64${EXTRA_CPU}
CPU_ARGS="${CPU_TYPE},x-smaia=true,x-ssaia=true,sscofpmf=true"
MACH_ARGS="-M virt,aia=aplic-imsic,aia-guests=5 -cpu ${CPU_ARGS} -smp ${NCPU} -m ${MEM_SIZE} -nographic"
GDB=${GDB:-riscv64-unknown-elf-gdb}
GDB_ARGS=${GDB_ARGS:-}