X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/a35bb9648f1a9eddb071a50ff6a4dcdb8f379f24..4a75b95c3cb2194fb982a9c1b93531d19562c4cc:/lunaix-os/arch/generic/includes/asm-generic/isrm.h diff --git a/lunaix-os/arch/generic/includes/asm-generic/isrm.h b/lunaix-os/arch/generic/includes/asm-generic/isrm.h index e8117bb..88c1db0 100644 --- a/lunaix-os/arch/generic/includes/asm-generic/isrm.h +++ b/lunaix-os/arch/generic/includes/asm-generic/isrm.h @@ -26,6 +26,8 @@ typedef struct { #define msi_addr(msiv) ((msiv).msi_addr) #define msi_data(msiv) ((msiv).msi_data) #define msi_vect(msiv) ((msiv).mapped_iv) +#define check_msiv_invalid(msiv) (msi_vect(msiv) == -1) +#define invalid_msi_vector ((msi_vector_t) { (ptr_t)-1, (reg_t)-1, -1 }); void isrm_init(); @@ -68,7 +70,7 @@ isrm_msialloc(isr_cb handler); * @param node */ int -isrm_bind_dtnode(struct dt_intr_node* node); +isrm_bind_dtnode(struct dt_intr_node* node, isr_cb handler); /** * @brief Get the handler associated with the given iv