stos/amd64: intr: Add IRQL management

Signed-off-by: Chloe M. <chloe@mensia.org>
This commit is contained in:
Chloe M.
2026-06-23 22:01:52 +00:00
parent 22beed638d
commit 114cc434d2
4 changed files with 88 additions and 2 deletions
+23
View File
@@ -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_ */
+5 -1
View File
@@ -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;
/*