// Public nt-lite DDK interrupt declarations. #pragma once #include #include typedef struct NTL_DDK_MSI_MESSAGE { uint64_t Address; uint32_t Data; uint32_t Reserved; } NTL_DDK_MSI_MESSAGE; // Allocates one kernel IRQ slot for MSI delivery. __declspec(dllexport) KSTATUS KeIrqAllocateMsiVector(uint8_t* outIrq); // Registers a legacy interrupt handler for an IRQ slot. __declspec(dllexport) void KeIrqRegister(uint8_t irq, void (*handler)(void)); __declspec(dllexport) KSTATUS KeIrqComposeMsiMessage(uint8_t irq, NTL_DDK_MSI_MESSAGE* messageOut);