Changeset ef56a43 in mainline
- Timestamp:
- 2019-04-06T06:55:42Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- fd67c9f
- Parents:
- 29beac8
- Location:
- kernel
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified kernel/arch/amd64/include/arch/interrupt.h ¶
r29beac8 ref56a43 86 86 extern void (*disable_irqs_function)(uint16_t); 87 87 extern void (*enable_irqs_function)(uint16_t); 88 extern void (*eoi_function)( void);88 extern void (*eoi_function)(unsigned int); 89 89 extern const char *irqs_info; 90 90 -
TabularUnified kernel/arch/amd64/src/interrupt.c ¶
r29beac8 ref56a43 60 60 void (*disable_irqs_function)(uint16_t irqmask) = NULL; 61 61 void (*enable_irqs_function)(uint16_t irqmask) = NULL; 62 void (*eoi_function)( void) = NULL;62 void (*eoi_function)(unsigned int) = NULL; 63 63 const char *irqs_info = NULL; 64 64 … … 91 91 } 92 92 93 static void trap_virtual_eoi( void)93 static void trap_virtual_eoi(unsigned int irq) 94 94 { 95 95 if (eoi_function) 96 eoi_function( );96 eoi_function(irq); 97 97 else 98 98 panic("No eoi_function."); … … 157 157 static void tlb_shootdown_ipi(unsigned int n, istate_t *istate) 158 158 { 159 trap_virtual_eoi( );159 trap_virtual_eoi(0); 160 160 tlb_shootdown_ipi_recv(); 161 161 } … … 184 184 if (irq->preack) { 185 185 /* Send EOI before processing the interrupt */ 186 trap_virtual_eoi( );186 trap_virtual_eoi(inum); 187 187 ack = true; 188 188 } … … 200 200 201 201 if (!ack) 202 trap_virtual_eoi( );202 trap_virtual_eoi(inum); 203 203 } 204 204 -
TabularUnified kernel/arch/ia32/include/arch/interrupt.h ¶
r29beac8 ref56a43 90 90 extern void (*disable_irqs_function)(uint16_t); 91 91 extern void (*enable_irqs_function)(uint16_t); 92 extern void (*eoi_function)( void);92 extern void (*eoi_function)(unsigned int); 93 93 extern const char *irqs_info; 94 94 -
TabularUnified kernel/arch/ia32/include/arch/smp/apic.h ¶
r29beac8 ref56a43 356 356 357 357 extern void l_apic_init(void); 358 extern void l_apic_eoi( void);358 extern void l_apic_eoi(unsigned int); 359 359 extern int l_apic_send_custom_ipi(uint8_t, uint8_t); 360 360 extern int l_apic_broadcast_custom_ipi(uint8_t); -
TabularUnified kernel/arch/ia32/src/interrupt.c ¶
r29beac8 ref56a43 63 63 void (*disable_irqs_function)(uint16_t irqmask) = NULL; 64 64 void (*enable_irqs_function)(uint16_t irqmask) = NULL; 65 void (*eoi_function)( void) = NULL;65 void (*eoi_function)(unsigned int) = NULL; 66 66 const char *irqs_info = NULL; 67 67 … … 90 90 } 91 91 92 static void trap_virtual_eoi( void)92 static void trap_virtual_eoi(unsigned int inum) 93 93 { 94 94 if (eoi_function) 95 eoi_function( );95 eoi_function(inum); 96 96 else 97 97 panic("No eoi_function."); … … 179 179 istate_t *istate __attribute__((unused))) 180 180 { 181 trap_virtual_eoi( );181 trap_virtual_eoi(0); 182 182 tlb_shootdown_ipi_recv(); 183 183 } … … 204 204 if (irq->preack) { 205 205 /* Send EOI before processing the interrupt */ 206 trap_virtual_eoi( );206 trap_virtual_eoi(inum); 207 207 ack = true; 208 208 } … … 219 219 220 220 if (!ack) 221 trap_virtual_eoi( );221 trap_virtual_eoi(inum); 222 222 } 223 223 -
TabularUnified kernel/arch/ia32/src/smp/apic.c ¶
r29beac8 ref56a43 508 508 509 509 /** Local APIC End of Interrupt. */ 510 void l_apic_eoi( void)510 void l_apic_eoi(unsigned int ignored) 511 511 { 512 512 l_apic[EOI] = 0; -
TabularUnified kernel/arch/mips32/src/mach/malta/malta.c ¶
r29beac8 ref56a43 95 95 #endif 96 96 } 97 pic_eoi( );97 pic_eoi(isa_irq); 98 98 } 99 99 -
TabularUnified kernel/genarch/include/genarch/drivers/i8259/i8259.h ¶
r29beac8 ref56a43 55 55 extern void pic_enable_irqs(uint16_t); 56 56 extern void pic_disable_irqs(uint16_t); 57 extern void pic_eoi( void);57 extern void pic_eoi(unsigned int); 58 58 59 59 #endif -
TabularUnified kernel/genarch/src/drivers/i8259/i8259.c ¶
r29beac8 ref56a43 112 112 } 113 113 114 void pic_eoi( void)114 void pic_eoi(unsigned int irq) 115 115 { 116 if (irq >= 8) 117 pio_write_8(&saved_pic1->port1, PIC_OCW4 | PIC_OCW4_NSEOI); 116 118 pio_write_8(&saved_pic0->port1, PIC_OCW4 | PIC_OCW4_NSEOI); 117 pio_write_8(&saved_pic1->port1, PIC_OCW4 | PIC_OCW4_NSEOI);118 119 } 119 120
Note:
See TracChangeset
for help on using the changeset viewer.