Changeset 449d4ecc in mainline for kernel/arch/ia64/src/ia64.c
- Timestamp:
- 2009-03-13T09:52:58Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- d0688a3
- Parents:
- 03976d60
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia64/src/ia64.c
r03976d60 r449d4ecc 69 69 70 70 /* NS16550 as a COM 1 */ 71 #define NS16550_IRQ 71 #define NS16550_IRQ (4 + LEGACY_INTERRUPT_BASE) 72 72 73 73 bootinfo_t *bootinfo; … … 158 158 #endif 159 159 160 #ifdef I460GX161 160 #ifdef CONFIG_EGA 162 161 ega_init(EGA_BASE, EGA_VIDEORAM); 163 162 #endif 164 163 165 devno_t devno = device_assign_devno();166 inr_t inr;167 168 164 #ifdef CONFIG_NS16550 169 inr = NS16550_IRQ; 170 171 indev_t *kbrdin = ns16550_init((ns16550_t *) NS16550_BASE, devno, inr, NULL, NULL); 172 if (kbrdin) 173 srln_init(kbrdin); 174 165 devno_t devno_ns16550 = device_assign_devno(); 166 indev_t *kbrdin_ns16550 167 = ns16550_init((ns16550_t *) NS16550_BASE, devno_ns16550, NS16550_IRQ, NULL, NULL); 168 if (kbrdin_ns16550) 169 srln_init(kbrdin_ns16550); 170 171 sysinfo_set_item_val("kbd", NULL, true); 172 sysinfo_set_item_val("kbd.devno", NULL, devno_ns16550); 173 sysinfo_set_item_val("kbd.inr", NULL, NS16550_IRQ); 175 174 sysinfo_set_item_val("kbd.type", NULL, KBD_NS16550); 176 175 sysinfo_set_item_val("kbd.address.physical", NULL, … … 178 177 sysinfo_set_item_val("kbd.address.kernel", NULL, 179 178 (uintptr_t) NS16550_BASE); 180 #else 181 inr = IRQ_KBD; 182 /* 183 * Initialize the i8042 controller. Then initialize the keyboard 184 * module and connect it to i8042. Enable keyboard interrupts. 185 */ 186 indev_t *kbrdin = i8042_init((i8042_t *) I8042_BASE, devno, irq); 187 if (kbrdin) { 188 kbrd_init(kbrdin); 189 trap_virtual_enable_irqs(1 << inr); 190 } 191 179 #endif 180 181 #ifdef CONFIG_I8042 182 devno_t devno_i8042 = device_assign_devno(); 183 indev_t *kbrdin_i8042 = i8042_init((i8042_t *) I8042_BASE, devno_i8042, IRQ_KBD); 184 if (kbrdin_i8042) 185 kbrd_init(kbrdin_i8042); 186 187 sysinfo_set_item_val("kbd", NULL, true); 188 sysinfo_set_item_val("kbd.devno", NULL, devno_i8042); 189 sysinfo_set_item_val("kbd.inr", NULL, IRQ_KBD); 192 190 sysinfo_set_item_val("kbd.type", NULL, KBD_LEGACY); 193 191 sysinfo_set_item_val("kbd.address.physical", NULL, … … 195 193 sysinfo_set_item_val("kbd.address.kernel", NULL, 196 194 (uintptr_t) I8042_BASE); 197 #endif198 sysinfo_set_item_val("kbd", NULL, true);199 sysinfo_set_item_val("kbd.devno", NULL, devno);200 sysinfo_set_item_val("kbd.inr", NULL, inr);201 195 #endif 202 196
Note:
See TracChangeset
for help on using the changeset viewer.