From 91b01bbbaab86dadc843cf918cd4f38c08539f1d Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Mon, 12 Nov 2018 14:10:41 +0100 Subject: [PATCH] arm: use UART for serial0 instead of a separate device Signed-off-by: Wolfgang Bumiller --- PVE/QemuServer.pm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm index 887fb9e6..64185b51 100644 --- a/PVE/QemuServer.pm +++ b/PVE/QemuServer.pm @@ -3558,7 +3558,14 @@ sub config_to_command { if ($path eq 'socket') { my $socket = "/var/run/qemu-server/${vmid}.serial$i"; push @$devices, '-chardev', "socket,id=serial$i,path=$socket,server,nowait"; - push @$devices, '-device', "isa-serial,chardev=serial$i"; + # On aarch64, serial0 is the UART device. Qemu only allows + # connecting UART devices via the '-serial' command line, as + # the device has a fixed slot on the hardware... + if ($arch eq 'aarch64' && $i == 0) { + push @$devices, '-serial', "chardev:serial$i"; + } else { + push @$devices, '-device', "isa-serial,chardev=serial$i"; + } } else { die "no such serial device\n" if ! -c $path; push @$devices, '-chardev', "tty,id=serial$i,path=$path"; -- 2.39.5