Implement spurious interrupt handler
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
* FILE: xtoskrnl/ar/amd64/archsup.S
|
* FILE: xtoskrnl/ar/amd64/archsup.S
|
||||||
* DESCRIPTION: Provides AMD64 architecture features not implementable in C
|
* DESCRIPTION: Provides AMD64 architecture features not implementable in C
|
||||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||||
|
* Aiken Harris <harraiken91@gmail.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <ar/amd64/asmsup.h>
|
#include <ar/amd64/asmsup.h>
|
||||||
@@ -224,3 +225,14 @@ ArTrapEntry:
|
|||||||
.quad ArTrap0x\i\j
|
.quad ArTrap0x\i\j
|
||||||
.endr
|
.endr
|
||||||
.endr
|
.endr
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handles a spurious interrupt allowing it to end up.
|
||||||
|
*
|
||||||
|
* @return This routine does not return any value.
|
||||||
|
*
|
||||||
|
* @since XT 1.0
|
||||||
|
*/
|
||||||
|
.global ArHandleSpuriousInterrupt
|
||||||
|
ArHandleSpuriousInterrupt:
|
||||||
|
iretq
|
||||||
|
|||||||
@@ -213,3 +213,14 @@ _ArTrapEntry:
|
|||||||
.endif
|
.endif
|
||||||
.endr
|
.endr
|
||||||
.endr
|
.endr
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handles a spurious interrupt allowing it to end up.
|
||||||
|
*
|
||||||
|
* @return This routine does not return any value.
|
||||||
|
*
|
||||||
|
* @since XT 1.0
|
||||||
|
*/
|
||||||
|
.global _ArHandleSpuriousInterrupt
|
||||||
|
_ArHandleSpuriousInterrupt:
|
||||||
|
iret
|
||||||
|
|||||||
@@ -25,6 +25,11 @@ XTCLINK PVOID ArStartApplicationProcessorEnd[];
|
|||||||
XTCLINK ULONG_PTR ArTrapEntry[256];
|
XTCLINK ULONG_PTR ArTrapEntry[256];
|
||||||
|
|
||||||
/* Forward reference for assembler code */
|
/* Forward reference for assembler code */
|
||||||
|
XTCLINK
|
||||||
|
XTCDECL
|
||||||
|
VOID
|
||||||
|
ArHandleSpuriousInterrupt(VOID);
|
||||||
|
|
||||||
XTCLINK
|
XTCLINK
|
||||||
XTCDECL
|
XTCDECL
|
||||||
VOID
|
VOID
|
||||||
|
|||||||
@@ -22,6 +22,11 @@ XTCLINK PVOID ArStartApplicationProcessorEnd[];
|
|||||||
XTCLINK ULONG_PTR ArTrapEntry[256];
|
XTCLINK ULONG_PTR ArTrapEntry[256];
|
||||||
|
|
||||||
/* Forward reference for assembler code */
|
/* Forward reference for assembler code */
|
||||||
|
XTCLINK
|
||||||
|
XTCDECL
|
||||||
|
VOID
|
||||||
|
ArHandleSpuriousInterrupt(VOID);
|
||||||
|
|
||||||
XTCLINK
|
XTCLINK
|
||||||
XTCDECL
|
XTCDECL
|
||||||
VOID
|
VOID
|
||||||
|
|||||||
Reference in New Issue
Block a user