aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/boot/main.c
diff options
context:
space:
mode:
authorJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
committerJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
commit8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch)
treea8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /arch/x86/boot/main.c
parent406089d01562f1e2bf9f089fd7637009ebaad589 (diff)
Patched in Tegra support.
Diffstat (limited to 'arch/x86/boot/main.c')
-rw-r--r--arch/x86/boot/main.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/arch/x86/boot/main.c b/arch/x86/boot/main.c
index cf6083d444f..40358c8905b 100644
--- a/arch/x86/boot/main.c
+++ b/arch/x86/boot/main.c
@@ -57,20 +57,14 @@ static void copy_boot_params(void)
57} 57}
58 58
59/* 59/*
60 * Query the keyboard lock status as given by the BIOS, and 60 * Set the keyboard repeat rate to maximum. Unclear why this
61 * set the keyboard repeat rate to maximum. Unclear why the latter
62 * is done here; this might be possible to kill off as stale code. 61 * is done here; this might be possible to kill off as stale code.
63 */ 62 */
64static void keyboard_init(void) 63static void keyboard_set_repeat(void)
65{ 64{
66 struct biosregs ireg, oreg; 65 struct biosregs ireg;
67 initregs(&ireg); 66 initregs(&ireg);
68 67 ireg.ax = 0x0305;
69 ireg.ah = 0x02; /* Get keyboard status */
70 intcall(0x16, &ireg, &oreg);
71 boot_params.kbd_status = oreg.al;
72
73 ireg.ax = 0x0305; /* Set keyboard repeat rate */
74 intcall(0x16, &ireg, NULL); 68 intcall(0x16, &ireg, NULL);
75} 69}
76 70
@@ -157,8 +151,8 @@ void main(void)
157 /* Detect memory layout */ 151 /* Detect memory layout */
158 detect_memory(); 152 detect_memory();
159 153
160 /* Set keyboard repeat rate (why?) and query the lock flags */ 154 /* Set keyboard repeat rate (why?) */
161 keyboard_init(); 155 keyboard_set_repeat();
162 156
163 /* Query MCA information */ 157 /* Query MCA information */
164 query_mca(); 158 query_mca();