[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [linux-2.6.18-xen] add hvc compatibility mode to xencons.
# HG changeset patch # User Ian Campbell <ian.campbell@xxxxxxxxxx> # Date 1229002728 0 # Node ID a070228ac76e3f6cd2483e0cad03f1cccae7a0c8 # Parent 5e1269aa5c2933e0cb0272bf5867e1214174bfde add hvc compatibility mode to xencons. Makes switching back and forth with a pvops kernel easier. Taken from http://lists.alioth.debian.org/pipermail/pkg-xen-devel/2008-October/002098.html http://svn.debian.org/viewsvn/kernel?rev=12337&view=rev with thanks to Bastian Blank. Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- drivers/xen/console/console.c | 24 +++++++++++++++++++++++- 1 files changed, 23 insertions(+), 1 deletion(-) diff -r 5e1269aa5c29 -r a070228ac76e drivers/xen/console/console.c --- a/drivers/xen/console/console.c Wed Dec 10 13:32:32 2008 +0000 +++ b/drivers/xen/console/console.c Thu Dec 11 13:38:48 2008 +0000 @@ -66,19 +66,24 @@ * 'xencons=tty' [XC_TTY]: Console attached to '/dev/tty[0-9]+'. * 'xencons=ttyS' [XC_SERIAL]: Console attached to '/dev/ttyS[0-9]+'. * 'xencons=xvc' [XC_XVC]: Console attached to '/dev/xvc0'. + * 'xencons=hvc' [XC_HVC]: Console attached to '/dev/hvc0'. * default: XC_XVC * * NB. In mode XC_TTY, we create dummy consoles for tty2-63. This suppresses * warnings from standard distro startup scripts. */ static enum { - XC_OFF, XC_TTY, XC_SERIAL, XC_XVC + XC_OFF, XC_TTY, XC_SERIAL, XC_XVC, XC_HVC } xc_mode = XC_XVC; static int xc_num = -1; /* /dev/xvc0 device number allocated by lanana.org. */ #define XEN_XVC_MAJOR 204 #define XEN_XVC_MINOR 191 + +/* /dev/hvc0 device number */ +#define XEN_HVC_MAJOR 229 +#define XEN_HVC_MINOR 0 #ifdef CONFIG_MAGIC_SYSRQ static unsigned long sysrq_requested; @@ -102,6 +107,9 @@ static int __init xencons_setup(char *st } else if (!strncmp(str, "xvc", 3)) { xc_mode = XC_XVC; str += 3; + } else if (!strncmp(str, "hvc", 3)) { + xc_mode = XC_HVC; + str += 3; } else if (!strncmp(str, "off", 3)) { xc_mode = XC_OFF; str += 3; @@ -208,6 +216,14 @@ static int __init xen_console_init(void) strcpy(kcons_info.name, "xvc"); if (xc_num == -1) xc_num = 0; + break; + + case XC_HVC: + strcpy(kcons_info.name, "hvc"); + if (xc_num == -1) + xc_num = 0; + if (!is_initial_xendomain()) + add_preferred_console(kcons_info.name, xc_num, NULL); break; case XC_SERIAL: @@ -685,6 +701,12 @@ static int __init xencons_init(void) DRV(xencons_driver)->minor_start = XEN_XVC_MINOR; DRV(xencons_driver)->name_base = xc_num; break; + case XC_HVC: + DRV(xencons_driver)->name = "hvc"; + DRV(xencons_driver)->major = XEN_HVC_MAJOR; + DRV(xencons_driver)->minor_start = XEN_HVC_MINOR; + DRV(xencons_driver)->name_base = xc_num; + break; case XC_SERIAL: DRV(xencons_driver)->name = "ttyS"; DRV(xencons_driver)->minor_start = 64 + xc_num; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |