Changeset 743ffa6e in mainline
- Timestamp:
- 2007-09-09T21:07:23Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 0e9463df
- Parents:
- 857c0e7
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia64/src/ia64.c
r857c0e7 r743ffa6e 51 51 #include <syscall/syscall.h> 52 52 #include <ddi/irq.h> 53 #include <ddi/device.h> 53 54 #include <arch/drivers/ega.h> 55 #include <arch/bootinfo.h> 56 #include <genarch/kbd/i8042.h> 57 58 bootinfo_t *bootinfo; 54 59 55 60 void arch_pre_main(void) 56 61 { 57 62 /* Setup usermode init tasks. */ 63 64 #ifdef I460GX 65 int i; 66 init.cnt = bootinfo->taskmap.count; 67 for(i=0;i<init.cnt;i++) 68 { 69 init.tasks[i].addr = ((unsigned long)bootinfo->taskmap.tasks[i].addr)|VRN_MASK; 70 init.tasks[i].size = bootinfo->taskmap.tasks[i].size; 71 } 72 #else 58 73 init.cnt = 8; 59 74 init.tasks[0].addr = INIT0_ADDRESS; … … 73 88 init.tasks[7].addr = INIT0_ADDRESS + 0x1c00000; 74 89 init.tasks[7].size = INIT0_SIZE; 90 #endif 75 91 } 76 92 … … 101 117 { 102 118 } 119 120 121 #ifdef I460GX 122 #define POLL_INTERVAL 50000 /* 50 ms */ 123 /** Kernel thread for polling keyboard. */ 124 static void i8042_kkbdpoll(void *arg) 125 { 126 while (1) { 127 i8042_poll(); 128 thread_usleep(POLL_INTERVAL); 129 } 130 } 131 #endif 103 132 104 133 void arch_post_smp_init(void) … … 116 145 thread_ready(t); 117 146 #endif 147 148 #ifdef I460GX 149 devno_t kbd = device_assign_devno(); 150 devno_t mouse = device_assign_devno(); 151 /* keyboard controller */ 152 i8042_init(kbd, IRQ_KBD, mouse, IRQ_MOUSE); 153 154 thread_t *t; 155 t = thread_create(i8042_kkbdpoll, NULL, TASK, 0, "kkbdpoll", true); 156 if (!t) 157 panic("cannot create kkbdpoll\n"); 158 thread_ready(t); 159 160 #endif 161 118 162 } 119 163 }
Note:
See TracChangeset
for help on using the changeset viewer.