1 From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2 Date: Tue, 11 Jul 2017 18:35:40 +0200
3 Subject: [PATCH] lib.sh: AArch64: Use VGA video mode for guests
5 On AArch64, there is no Cirrus video, so use VGA mode instead.
6 For now, we install vgabios package no matter the arch, although
7 it is only used on AArch64.
9 On Debian systems, also fix a missing link for vgabios-stdvga.bin.
10 Based on previous Armband work from [1].
12 [1] https://github.com/opnfv/armband/blob/danube.2.0/patches/fuel-library/
13 arm64-bug-fixes/0002-Install-vgabios-and-link-for-aarch64.patch
15 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
17 ci/deploy.sh | 5 +++--
18 mcp/scripts/lib.sh | 10 +++++++++-
19 2 files changed, 12 insertions(+), 3 deletions(-)
21 diff --git a/ci/deploy.sh b/ci/deploy.sh
22 index 3ac7ff1..cf22d10 100755
25 @@ -270,9 +270,10 @@ pushd "${DEPLOY_DIR}" > /dev/null
27 # Install required packages
28 [ -n "$(command -v apt-get)" ] && apt-get install -y \
29 - git make rsync mkisofs curl virtinst cpu-checker qemu-kvm
30 + git make rsync mkisofs curl virtinst cpu-checker qemu-kvm vgabios && \
31 + ln -sf /usr/share/vgabios/vgabios.bin /usr/share/qemu/vgabios-stdvga.bin
32 [ -n "$(command -v yum)" ] && yum install -y \
33 - git make rsync genisoimage curl virt-install qemu-kvm
34 + git make rsync genisoimage curl virt-install qemu-kvm vgabios
36 # Check scenario file existence
37 if [[ ! -f ../config/${DEPLOY_SCENARIO}.yaml ]]; then
38 diff --git a/mcp/scripts/lib.sh b/mcp/scripts/lib.sh
39 index 33dba3c..8d45100 100644
40 --- a/mcp/scripts/lib.sh
41 +++ b/mcp/scripts/lib.sh
42 @@ -78,6 +78,13 @@ create_vms() {
43 net_args="${net_args} --network ${net_type}=${net},model=virtio"
46 + # AArch64: prepare arch specific arguments
47 + local virt_extra_args=""
48 + if [ "$(uname -i)" = "aarch64" ]; then
49 + # No Cirrus VGA on AArch64, use vga std
50 + virt_extra_args="$virt_extra_args --video=vga"
53 # create vms with specified options
54 for node in "${vnodes[@]}"; do
55 # shellcheck disable=SC2086
56 @@ -88,7 +95,8 @@ create_vms() {
57 --os-type linux --os-variant none \
58 --boot hd --vnc --console pty --autostart --noreboot \
59 --disk path="$(pwd)/images/mcp_${node}.iso",device=cdrom \