---
name: "struct_irq_data"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/struct_irq_data"
---

# struct\_irq\_data(9)

per irq chip data passed down to chip functions

## NAME

struct\_irq\_data - per irq chip data passed down to chip functions

## SYNOPSIS

```
struct irq_data {
  u32 mask;
  unsigned int irq;
  unsigned long hwirq;
  struct irq_common_data * common;
  struct irq_chip * chip;
  struct irq_domain * domain;
#ifdef CONFIG_IRQ_DOMAIN_HIERARCHY
  struct irq_data * parent_data;
#endif
  void * chip_data;
};
```

## MEMBERS

mask

precomputed bitmask for accessing the chip registers

irq

interrupt number

hwirq

hardware interrupt number, local to the interrupt domain

common

point to data shared by all irqchips

chip

low level interrupt hardware access

domain

Interrupt translation domain; responsible for mapping between hwirq number and linux irq number.

parent\_data

pointer to parent struct irq\_data to support hierarchy irq\_domain

chip\_data

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

## AUTHORS

**Thomas Gleixner** \<tglx@linutronix.de\>

Author.

**Ingo Molnar** \<mingo@elte.hu\>

Author.

## COPYRIGHT
