that's ok - we can do include/linux/irq_desc.h that isnt generally
included by drivers via interrupt.h. Then later on we can eliminate that
include file altogether.
here's the current field usage histogram:
3 desc->action
3 desc->depth
9 desc->affinity
15 desc->chip
22 desc->status
desc->status: mostly IRQ_MOVE_PENDING related. irq-balancing code should
be abstracted into kernel/irq/* perhaps?
desc->action / desc->depth / desc->action: i dont think those should be
accessed by genirq arch irq code.
desc->chip: there's a get_irq_chip() method already. irq_chip is
something that obviously is known to architecture code - it's the irq
controller 'driver' that the architecture code provides.
Ingo
--