Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/ddi/irq.h

    r9d58539 rca207e0  
    4343#include <proc/task.h>
    4444#include <ipc/ipc.h>
     45#include <mm/slab.h>
    4546
    4647typedef enum {
     
    7071        /** When false, notifications are not sent. */
    7172        bool notify;
     73        /** True if the structure is in irq_uspace_hash_table_table */
     74        bool hashed_in;
    7275        /** Answerbox for notifications. */
    7376        answerbox_t *answerbox;
     
    7679        /** Arguments that will be sent if the IRQ is claimed. */
    7780        uint32_t scratch[IPC_CALL_LEN];
    78         /** Top-half pseudocode. */
     81        /** Top-half IRQ code. */
    7982        irq_code_t *code;
    8083        /** Counter. */
    8184        size_t counter;
    82        
    83         /**
    84          * Link between IRQs that are notifying the same answerbox. The list is
    85          * protected by the answerbox irq_lock.
    86          */
    87         link_t link;
    8885} ipc_notif_cfg_t;
    8986
     
    9188 *
    9289 * If one device has multiple interrupts, there will be multiple irq_t
    93  * instantions with the same devno.
    94  *
     90 * instantions.
    9591 */
    9692typedef struct irq {
    9793        /** Hash table link. */
    98         link_t link;
     94        ht_link_t link;
    9995       
    10096        /** Lock protecting everything in this structure
     
    112108         */
    113109        bool preack;
    114        
    115         /** Unique device number. -1 if not yet assigned. */
    116         devno_t devno;
    117110       
    118111        /** Actual IRQ number. -1 if not yet assigned. */
     
    139132extern hash_table_t irq_uspace_hash_table;
    140133
     134extern slab_cache_t *irq_slab;
     135
    141136extern inr_t last_inr;
    142137
Note: See TracChangeset for help on using the changeset viewer.