diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2011-03-25 11:48:50 -0400 |
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2011-03-25 12:04:20 -0400 |
| commit | ab7798ffcf98b11a9525cf65bacdae3fd58d357f (patch) | |
| tree | 834ed73e8ab309895934bcf8bfe9e531ec10b32b /include/linux | |
| parent | 08f1b807355c8d355885a71e7fd462fe9d499411 (diff) | |
genirq: Expand generic show_interrupts()
Some archs want to print extra information for certain irq_chips which
is per irq and not per chip. Allow them to provide a chip callback to
print the chip name and the extra information.
PowerPC wants to print the LEVEL/EDGE type information. Make it configurable.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/irq.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h index 1d3577f30d45..5d876c9b3a3d 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h | |||
| @@ -28,6 +28,7 @@ | |||
| 28 | #include <asm/ptrace.h> | 28 | #include <asm/ptrace.h> |
| 29 | #include <asm/irq_regs.h> | 29 | #include <asm/irq_regs.h> |
| 30 | 30 | ||
| 31 | struct seq_file; | ||
| 31 | struct irq_desc; | 32 | struct irq_desc; |
| 32 | struct irq_data; | 33 | struct irq_data; |
| 33 | typedef void (*irq_flow_handler_t)(unsigned int irq, | 34 | typedef void (*irq_flow_handler_t)(unsigned int irq, |
| @@ -270,6 +271,7 @@ static inline bool irqd_can_move_in_process_context(struct irq_data *d) | |||
| 270 | * @irq_set_wake: enable/disable power-management wake-on of an IRQ | 271 | * @irq_set_wake: enable/disable power-management wake-on of an IRQ |
| 271 | * @irq_bus_lock: function to lock access to slow bus (i2c) chips | 272 | * @irq_bus_lock: function to lock access to slow bus (i2c) chips |
| 272 | * @irq_bus_sync_unlock:function to sync and unlock slow bus (i2c) chips | 273 | * @irq_bus_sync_unlock:function to sync and unlock slow bus (i2c) chips |
| 274 | * @irq_print_chip: optional to print special chip info in show_interrupts | ||
| 273 | * @flags: chip specific flags | 275 | * @flags: chip specific flags |
| 274 | * | 276 | * |
| 275 | * @release: release function solely used by UML | 277 | * @release: release function solely used by UML |
| @@ -317,6 +319,8 @@ struct irq_chip { | |||
| 317 | void (*irq_bus_lock)(struct irq_data *data); | 319 | void (*irq_bus_lock)(struct irq_data *data); |
| 318 | void (*irq_bus_sync_unlock)(struct irq_data *data); | 320 | void (*irq_bus_sync_unlock)(struct irq_data *data); |
| 319 | 321 | ||
| 322 | void (*irq_print_chip)(struct irq_data *data, struct seq_file *p); | ||
| 323 | |||
| 320 | unsigned long flags; | 324 | unsigned long flags; |
| 321 | 325 | ||
| 322 | /* Currently used only by UML, might disappear one day.*/ | 326 | /* Currently used only by UML, might disappear one day.*/ |
