stos/amd64: intr: Add IRQL management
Signed-off-by: Chloe M. <chloe@mensia.org>
This commit is contained in:
@@ -69,4 +69,27 @@ typedef struct {
|
||||
*/
|
||||
ST_STATUS HalRegisterIntr(const INTR_HANDLER *Handler, BOOLEAN IsUser);
|
||||
|
||||
/*
|
||||
* Returns the current IRQL
|
||||
*/
|
||||
IRQL HalGetIrql(VOID);
|
||||
|
||||
/*
|
||||
* Raise the IRQL level to a higher level
|
||||
*
|
||||
* @Irql: IRQL to raise to
|
||||
*
|
||||
* Returns the previous IRQL
|
||||
*/
|
||||
IRQL HalRaiseIrql(IRQL Irql);
|
||||
|
||||
/*
|
||||
* Lower the IRQL level to a lower level
|
||||
*
|
||||
* @Irql: IRQL to lower to
|
||||
*
|
||||
* Returns the previous IRQL
|
||||
*/
|
||||
IRQL HalLowerIrql(IRQL Irql);
|
||||
|
||||
#endif /* !_HAL_INTR_H_ */
|
||||
|
||||
@@ -19,13 +19,17 @@
|
||||
* @KNOT_BAD_BOOT_PROTO: Bad boot protocol
|
||||
* @KNOT_OOM: Fatal out of memory
|
||||
* @KNOT_EXCEPTION: Fatal exception
|
||||
* @IRQL_NOT_LTE: IRQL not less than or equal
|
||||
* @IRQL_NOT_GTE: IRQL not greater than or equal
|
||||
*/
|
||||
typedef enum {
|
||||
KNOT_MISC,
|
||||
KNOT_UNBOUND_RSRC,
|
||||
KNOT_BAD_BOOT_PROTO,
|
||||
KNOT_OOM,
|
||||
KNOT_EXCEPTION
|
||||
KNOT_EXCEPTION,
|
||||
IRQL_NOT_LTE,
|
||||
IRQL_NOT_GTE
|
||||
} KNOT_REASON;
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user