Changeset bd571f44 in mainline
- Timestamp:
- 2006-06-01T14:03:21Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 152b2b0
- Parents:
- 982f0fe
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/ia64/src/drivers/it.c
r982f0fe rbd571f44 36 36 #include <arch/barrier.h> 37 37 #include <time/clock.h> 38 #include <arch.h> 38 39 40 41 #define IT_SERVICE_CLOCKS 64 39 42 40 43 /** Initialize Interval Timer. */ … … 59 62 } 60 63 64 61 65 /** Process Interval Timer interrupt. */ 62 66 void it_interrupt(void) 63 67 { 68 __s64 c; 69 __s64 m; 70 64 71 eoi_write(EOI); 65 itm_write(itc_read() + IT_DELTA); /* program next interruption */ 72 73 m=itm_read(); 74 75 while(1) 76 { 77 78 c=itc_read(); 79 c+=IT_SERVICE_CLOCKS; 80 81 m+=IT_DELTA; 82 if(m-c<0) 83 { 84 CPU->missed_clock_ticks++; 85 } 86 else break; 87 } 88 89 itm_write(m); 66 90 srlz_d(); /* propagate changes */ 91 92 93 67 94 clock(); 68 95 poll_keyboard();
Note:
See TracChangeset
for help on using the changeset viewer.