forked from Imagelibrary/rtems
2004-02-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* irq/irq_asm.S: Convert #..-comments to /*..*/ comments.
This commit is contained in:
@@ -1,3 +1,7 @@
|
|||||||
|
2004-02-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||||
|
|
||||||
|
* irq/irq_asm.S: Convert #..-comments to /*..*/ comments.
|
||||||
|
|
||||||
2004-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
2004-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||||
|
|
||||||
* Makefile.am: Add PREINSTALL_DIRS.
|
* Makefile.am: Add PREINSTALL_DIRS.
|
||||||
|
|||||||
@@ -49,8 +49,8 @@ SYM (_ISR_Handler):
|
|||||||
* Now switch stacks if necessary
|
* Now switch stacks if necessary
|
||||||
*/
|
*/
|
||||||
|
|
||||||
movw SYM (i8259s_cache), ax # move current i8259 interrupt mask in ax
|
movw SYM (i8259s_cache), ax /* move current i8259 interrupt mask in ax */
|
||||||
pushl eax # push it on the stack
|
pushl eax /* push it on the stack */
|
||||||
/*
|
/*
|
||||||
* compute the new PIC mask:
|
* compute the new PIC mask:
|
||||||
*
|
*
|
||||||
@@ -80,9 +80,9 @@ SYM (_ISR_Handler):
|
|||||||
|
|
||||||
.check_stack_switch:
|
.check_stack_switch:
|
||||||
pushl ebp
|
pushl ebp
|
||||||
movl esp, ebp # ebp = previous stack pointer
|
movl esp, ebp /* ebp = previous stack pointer */
|
||||||
cmpl $0, SYM (_ISR_Nest_level) # is this the outermost interrupt?
|
cmpl $0, SYM (_ISR_Nest_level) /* is this the outermost interrupt? */
|
||||||
jne nested # No, then continue
|
jne nested /* No, then continue */
|
||||||
movl SYM (_CPU_Interrupt_stack_high), esp
|
movl SYM (_CPU_Interrupt_stack_high), esp
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -93,8 +93,8 @@ SYM (_ISR_Handler):
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
nested:
|
nested:
|
||||||
incl SYM (_ISR_Nest_level) # one nest level deeper
|
incl SYM (_ISR_Nest_level) /* one nest level deeper */
|
||||||
incl SYM (_Thread_Dispatch_disable_level) # disable multitasking
|
incl SYM (_Thread_Dispatch_disable_level) /* disable multitasking */
|
||||||
/*
|
/*
|
||||||
* re-enable interrupts at processor level as the current
|
* re-enable interrupts at processor level as the current
|
||||||
* interrupt source is now masked via i8259
|
* interrupt source is now masked via i8259
|
||||||
@@ -106,15 +106,15 @@ nested:
|
|||||||
* so we must save it again.
|
* so we must save it again.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
pushl ecx # push vector number
|
pushl ecx /* push vector number */
|
||||||
mov SYM (current_irq) (,ecx,4),eax
|
mov SYM (current_irq) (,ecx,4),eax
|
||||||
# eax = Users handler
|
/* eax = Users handler */
|
||||||
call *eax # invoke user ISR
|
call *eax /* invoke user ISR */
|
||||||
/*
|
/*
|
||||||
* disable interrupts_again
|
* disable interrupts_again
|
||||||
*/
|
*/
|
||||||
cli
|
cli
|
||||||
popl ecx # ecx = vector number
|
popl ecx /* ecx = vector number */
|
||||||
/*
|
/*
|
||||||
* restore stack
|
* restore stack
|
||||||
*/
|
*/
|
||||||
@@ -131,23 +131,23 @@ nested:
|
|||||||
outb $PIC_SLAVE_IMR_IO_PORT
|
outb $PIC_SLAVE_IMR_IO_PORT
|
||||||
|
|
||||||
|
|
||||||
decl SYM (_ISR_Nest_level) # one less ISR nest level
|
decl SYM (_ISR_Nest_level) /* one less ISR nest level */
|
||||||
# If interrupts are nested,
|
/* If interrupts are nested, */
|
||||||
# then dispatching is disabled
|
/* then dispatching is disabled */
|
||||||
|
|
||||||
decl SYM (_Thread_Dispatch_disable_level)
|
decl SYM (_Thread_Dispatch_disable_level)
|
||||||
# unnest multitasking
|
/* unnest multitasking */
|
||||||
# Is dispatch disabled
|
/* Is dispatch disabled */
|
||||||
jne .exit # Yes, then exit
|
jne .exit /* Yes, then exit */
|
||||||
|
|
||||||
cmpl $0, SYM (_Context_Switch_necessary)
|
cmpl $0, SYM (_Context_Switch_necessary)
|
||||||
# Is task switch necessary?
|
/* Is task switch necessary? */
|
||||||
jne .schedule # Yes, then call the scheduler
|
jne .schedule /* Yes, then call the scheduler */
|
||||||
|
|
||||||
cmpl $0, SYM (_ISR_Signals_to_thread_executing)
|
cmpl $0, SYM (_ISR_Signals_to_thread_executing)
|
||||||
# signals sent to Run_thread
|
/* signals sent to Run_thread */
|
||||||
# while in interrupt handler?
|
/* while in interrupt handler? */
|
||||||
je .exit # No, exit
|
je .exit /* No, exit */
|
||||||
|
|
||||||
|
|
||||||
.bframe:
|
.bframe:
|
||||||
|
|||||||
Reference in New Issue
Block a user