xen/arm: allow console=hvc0 to be omitted for guests
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Wed, 6 May 2015 14:14:22 +0000 (14:14 +0000)
committerDavid Vrabel <david.vrabel@citrix.com>
Thu, 28 May 2015 11:23:11 +0000 (12:23 +0100)
From: Ard Biesheuvel <ard.biesheuvel@linaro.org>

This patch registers hvc0 as the preferred console if no console
has been specified explicitly on the kernel command line.

The purpose is to allow platform agnostic kernels and boot images
(such as distro installers) to boot in a Xen/ARM domU without the
need to modify the command line by hand.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Julien Grall <julien.grall@linaro.org>
arch/arm/xen/enlighten.c

index 3463a9e1ff6522b0f27903cae66bae69a5633d8c..6c09cc440a2b24c4c0acfbd3027c74f9a1dc9efe 100644 (file)
@@ -24,6 +24,7 @@
 #include <linux/cpuidle.h>
 #include <linux/cpufreq.h>
 #include <linux/cpu.h>
+#include <linux/console.h>
 
 #include <linux/mm.h>
 
@@ -183,6 +184,9 @@ void __init xen_early_init(void)
                xen_start_info->flags |= SIF_INITDOMAIN|SIF_PRIVILEGED;
        else
                xen_start_info->flags &= ~(SIF_INITDOMAIN|SIF_PRIVILEGED);
+
+       if (!console_set_on_cmdline && !xen_initial_domain())
+               add_preferred_console("hvc", 0, NULL);
 }
 
 static int __init xen_guest_init(void)