[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [linux-2.6.18-xen] [IA64] Fix Linux VGA autodetection
# HG changeset patch # User Alex Williamson <alex.williamson@xxxxxx> # Date 1185390988 21600 # Node ID a504ee7aae902a1c9ab5d9d270433603cecd6750 # Parent b3ac98591e60cdea898aa0357c8da1334b6e26c8 [IA64] Fix Linux VGA autodetection This patch re-orders setup_arch in xenlinux slightly. This allows us to check if conswitchp was setup early by the HCDP code to point to a VGA console. Also fix a bug w/ zero'ing the preferred console name string. Signed-off-by: Alex Williamson <alex.williamson@xxxxxx> --- arch/ia64/kernel/setup.c | 51 +++++++++++++++++++++++------------------------ 1 files changed, 25 insertions(+), 26 deletions(-) diff -r b3ac98591e60 -r a504ee7aae90 arch/ia64/kernel/setup.c --- a/arch/ia64/kernel/setup.c Wed Jul 25 13:07:30 2007 -0600 +++ b/arch/ia64/kernel/setup.c Wed Jul 25 13:16:28 2007 -0600 @@ -526,22 +526,6 @@ setup_arch (char **cmdline_p) acpi_boot_init(); #endif -#ifdef CONFIG_VT - if (!conswitchp) { -# if defined(CONFIG_DUMMY_CONSOLE) - conswitchp = &dummy_con; -# endif -# if defined(CONFIG_VGA_CONSOLE) - /* - * Non-legacy systems may route legacy VGA MMIO range to system - * memory. vga_con probes the MMIO hole, so memory looks like - * a VGA device to it. The EFI memory map can tell us if it's - * memory so we can avoid this problem. - */ - if (efi_mem_type(0xA0000) != EFI_CONVENTIONAL_MEMORY) - conswitchp = &vga_con; -# endif - } #ifdef CONFIG_XEN if (is_running_on_xen()) { shared_info_t *s = HYPERVISOR_shared_info; @@ -552,12 +536,6 @@ setup_arch (char **cmdline_p) "flags=0x%x\n", s->arch.start_info_pfn, xen_start_info->nr_pages, xen_start_info->flags); - if (!is_initial_xendomain()) { -#if !defined(CONFIG_VT) || !defined(CONFIG_DUMMY_CONSOLE) - conswitchp = NULL; -#endif - } - /* * If a console= is NOT specified, we assume using the * xencons console is desired. By default, this is ttyS0 @@ -567,7 +545,8 @@ setup_arch (char **cmdline_p) char *p, *q, name[5]; int offset = 0; - if (is_initial_xendomain()) + memset(name, 0, sizeof(name)); + if (is_initial_xendomain() && conswitchp != &vga_con) strncpy(name, "ttyS", 4); else strncpy(name, "tty", 3); @@ -599,13 +578,33 @@ setup_arch (char **cmdline_p) } xencons_early_setup(); #endif -#endif - + +#ifdef CONFIG_VT + if (!conswitchp) { +# if defined(CONFIG_DUMMY_CONSOLE) + conswitchp = &dummy_con; +# endif +# if defined(CONFIG_VGA_CONSOLE) + /* + * Non-legacy systems may route legacy VGA MMIO range to system + * memory. vga_con probes the MMIO hole, so memory looks like + * a VGA device to it. The EFI memory map can tell us if it's + * memory so we can avoid this problem. + */ + if (efi_mem_type(0xA0000) != EFI_CONVENTIONAL_MEMORY) + conswitchp = &vga_con; +# endif + } +#endif /* enable IA-64 Machine Check Abort Handling unless disabled */ #ifdef CONFIG_XEN - if (is_running_on_xen() && !is_initial_xendomain()) + if (is_running_on_xen() && !is_initial_xendomain()) { nomca = 1; +#if !defined(CONFIG_VT) || !defined(CONFIG_DUMMY_CONSOLE) + conswitchp = NULL; +#endif + } #endif if (!nomca) ia64_mca_init(); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |