struct irq_desc
Prev | Chapter 7. Structures | Next

## Name

struct irq_desc — interrupt descriptor

## Synopsis

    struct irq_desc {
      irq_flow_handler_t handle_irq;
      struct irq_chip * chip;
      struct msi_desc * msi_desc;
      void * handler_data;
      void * chip_data;
      struct irqaction * action;
      unsigned int status;
      unsigned int depth;
      unsigned int wake_depth;
      unsigned int irq_count;
      unsigned int irqs_unhandled;
      unsigned long last_unhandled;
      spinlock_t lock;
    #ifdef CONFIG_SMP
      cpumask_t affinity;
      unsigned int cpu;
    #endif
    #if defined(CONFIG_GENERIC_PENDING_IRQ) || defined(CONFIG_IRQBALANCE)
      cpumask_t pending_mask;
    #endif
    #ifdef CONFIG_PROC_FS
      struct proc_dir_entry * dir;
    #endif
      const char * name;
    };

## Members

handle_irq

  highlevel irq-events handler [if NULL, `__do_IRQ`]

chip

  low level interrupt hardware access

msi_desc

  MSI descriptor

handler_data

  per-IRQ data for the irq_chip methods

chip_data

  platform-specific per-chip private data for the chip methods, to allow shared chip implementations

action

  the irq action chain

status

  status information

depth

  disable-depth, for nested `irq_disable` calls

wake_depth

  enable depth, for multiple `set_irq_wake` callers

irq_count

  stats field to detect stalled irqs

irqs_unhandled

  stats field for spurious unhandled interrupts

last_unhandled

  aging timer for unhandled count

lock

  locking for SMP

affinity

  IRQ affinity on SMP

cpu

  cpu index useful for balancing

pending_mask

  pending rebalanced interrupts

dir

  /proc/irq/ procfs entry

name

  flow handler name for /proc/interrupts output

Prev | Up | Next
struct irq_chip | Home | Chapter 8. Public Functions Provided