Mercurial > ecos
comparison packages/kernel/current/src/intr/intr.cxx @ 128:0c2b7be0d798 ecos-sw-2000-10-12
Merge from eCos master repository on 2000-10-12-08:46:24-BST
| author | jlarmour |
|---|---|
| date | Thu, 12 Oct 2000 20:31:43 +0000 |
| parents | 95f3e12a6327 |
| children | eb9fd8c04db3 |
comparison
equal
deleted
inserted
replaced
| 127:67f0ef5f8ee9 | 128:0c2b7be0d798 |
|---|---|
| 117 Cyg_Interrupt * | 117 Cyg_Interrupt * |
| 118 Cyg_Interrupt::dsr_table[CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE]; | 118 Cyg_Interrupt::dsr_table[CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE]; |
| 119 | 119 |
| 120 cyg_ucount32 Cyg_Interrupt::dsr_table_head = 0; | 120 cyg_ucount32 Cyg_Interrupt::dsr_table_head = 0; |
| 121 | 121 |
| 122 cyg_ucount32 Cyg_Interrupt::dsr_table_tail = 0; | 122 volatile cyg_ucount32 Cyg_Interrupt::dsr_table_tail = 0; |
| 123 | 123 |
| 124 #endif | 124 #endif |
| 125 | 125 |
| 126 #ifdef CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST | 126 #ifdef CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST |
| 127 | 127 |
| 128 Cyg_Interrupt *Cyg_Interrupt::dsr_list = NULL; | 128 volatile Cyg_Interrupt *Cyg_Interrupt::dsr_list = NULL; |
| 129 | 129 |
| 130 #endif | 130 #endif |
| 131 | 131 |
| 132 // ------------------------------------------------------------------------- | 132 // ------------------------------------------------------------------------- |
| 133 // Call any pending DSRs | 133 // Call any pending DSRs |
| 158 | 158 |
| 159 #ifdef CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST | 159 #ifdef CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST |
| 160 | 160 |
| 161 while( dsr_list != NULL ) | 161 while( dsr_list != NULL ) |
| 162 { | 162 { |
| 163 Cyg_Interrupt *intr; | 163 volatile Cyg_Interrupt *intr; |
| 164 cyg_uint32 old_intr; | 164 cyg_uint32 old_intr; |
| 165 cyg_count32 count; | 165 cyg_count32 count; |
| 166 | 166 |
| 167 HAL_DISABLE_INTERRUPTS(old_intr); | 167 HAL_DISABLE_INTERRUPTS(old_intr); |
| 168 | 168 |
| 356 // If we finished the loop for some reason other than that an | 356 // If we finished the loop for some reason other than that an |
| 357 // ISR has handled the interrupt, call any default ISR to either | 357 // ISR has handled the interrupt, call any default ISR to either |
| 358 // report the spurious interrupt, or do some other HAL level processing | 358 // report the spurious interrupt, or do some other HAL level processing |
| 359 // such as GDB interrupt detection etc. | 359 // such as GDB interrupt detection etc. |
| 360 | 360 |
| 361 HAL_DEFAULT_ISR( vector, NULL ); | 361 HAL_DEFAULT_ISR( vector, 0 ); |
| 362 } | 362 } |
| 363 #endif | 363 #endif |
| 364 return 0; | 364 return 0; |
| 365 } | 365 } |
| 366 | 366 |
