diff options
-rw-r--r-- | arch/x86_64/kernel/early_printk.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/x86_64/kernel/early_printk.c b/arch/x86_64/kernel/early_printk.c index e3a19e8ebbf8..9631c747c5e3 100644 --- a/arch/x86_64/kernel/early_printk.c +++ b/arch/x86_64/kernel/early_printk.c | |||
@@ -2,20 +2,24 @@ | |||
2 | #include <linux/kernel.h> | 2 | #include <linux/kernel.h> |
3 | #include <linux/init.h> | 3 | #include <linux/init.h> |
4 | #include <linux/string.h> | 4 | #include <linux/string.h> |
5 | #include <linux/tty.h> | ||
5 | #include <asm/io.h> | 6 | #include <asm/io.h> |
6 | #include <asm/processor.h> | 7 | #include <asm/processor.h> |
7 | 8 | ||
8 | /* Simple VGA output */ | 9 | /* Simple VGA output */ |
9 | 10 | ||
10 | #ifdef __i386__ | 11 | #ifdef __i386__ |
12 | #include <asm/setup.h> | ||
11 | #define VGABASE (__ISA_IO_base + 0xb8000) | 13 | #define VGABASE (__ISA_IO_base + 0xb8000) |
12 | #else | 14 | #else |
15 | #include <asm/bootsetup.h> | ||
13 | #define VGABASE ((void __iomem *)0xffffffff800b8000UL) | 16 | #define VGABASE ((void __iomem *)0xffffffff800b8000UL) |
14 | #endif | 17 | #endif |
15 | 18 | ||
16 | #define MAX_YPOS 25 | 19 | #define MAX_YPOS max_ypos |
17 | #define MAX_XPOS 80 | 20 | #define MAX_XPOS max_xpos |
18 | 21 | ||
22 | static int max_ypos = 25, max_xpos = 80; | ||
19 | static int current_ypos = 1, current_xpos = 0; | 23 | static int current_ypos = 1, current_xpos = 0; |
20 | 24 | ||
21 | static void early_vga_write(struct console *con, const char *str, unsigned n) | 25 | static void early_vga_write(struct console *con, const char *str, unsigned n) |
@@ -196,7 +200,10 @@ int __init setup_early_printk(char *opt) | |||
196 | } else if (!strncmp(buf, "ttyS", 4)) { | 200 | } else if (!strncmp(buf, "ttyS", 4)) { |
197 | early_serial_init(buf); | 201 | early_serial_init(buf); |
198 | early_console = &early_serial_console; | 202 | early_console = &early_serial_console; |
199 | } else if (!strncmp(buf, "vga", 3)) { | 203 | } else if (!strncmp(buf, "vga", 3) |
204 | && SCREEN_INFO.orig_video_isVGA == 1) { | ||
205 | max_xpos = SCREEN_INFO.orig_video_cols; | ||
206 | max_ypos = SCREEN_INFO.orig_video_lines; | ||
200 | early_console = &early_vga_console; | 207 | early_console = &early_vga_console; |
201 | } | 208 | } |
202 | early_console_initialized = 1; | 209 | early_console_initialized = 1; |