Message ID | E1Pd18R-0002d3-US@jdl.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On Wed, Jan 12, 2011 at 07:53:11AM -0600, Jon Loeliger wrote: >From: Jon Loeliger <jdl@jdl.com> > >Just rename the irq_host structure as irq_domain to lessen the >confusion around the word "host". Updated a few comments and >error messages to use "irq_domain" when refering to the structure. > >Suggested by Ben Herrenschmidt on the device-tree mailing list. > >Signed-off-by: Jon Loeliger <jdl@jdl.com> For the uic.c part: Acked-by: Josh Boyer <jwboyer@linux.vnet.ibm.com> josh
On Wed, Jan 12, 2011 at 07:53:11AM -0600, Jon Loeliger wrote: > From: Jon Loeliger <jdl@jdl.com> > > Just rename the irq_host structure as irq_domain to lessen the > confusion around the word "host". Updated a few comments and > error messages to use "irq_domain" when refering to the structure. > > Suggested by Ben Herrenschmidt on the device-tree mailing list. > > Signed-off-by: Jon Loeliger <jdl@jdl.com> For this to make sense, it really needs to also rename irq_host_ops structure, the IRQ_HOST_MAP* #defines, and the irq_*_host functions. It also /should/ adjust the users of irq_domain to rename function local variables and structure members. Otherwise there will be an even worse mismatch in naming. g. > --- > > Version 2 - Rebased to current top of Linus', v2.6.37-5668-g4162cf6. > > > arch/microblaze/include/asm/irq.h | 4 +- > arch/microblaze/kernel/irq.c | 2 +- > arch/powerpc/include/asm/i8259.h | 2 +- > arch/powerpc/include/asm/irq.h | 40 +++++++++++----------- > arch/powerpc/include/asm/mpic.h | 2 +- > arch/powerpc/kernel/irq.c | 40 +++++++++++----------- > arch/powerpc/platforms/512x/mpc5121_ads_cpld.c | 6 ++-- > arch/powerpc/platforms/52xx/media5200.c | 6 ++-- > arch/powerpc/platforms/52xx/mpc52xx_gpt.c | 8 ++-- > arch/powerpc/platforms/52xx/mpc52xx_pic.c | 6 ++-- > arch/powerpc/platforms/82xx/pq2ads-pci-pic.c | 8 ++-- > arch/powerpc/platforms/85xx/socrates_fpga_pic.c | 8 ++-- > arch/powerpc/platforms/86xx/gef_pic.c | 8 ++-- > arch/powerpc/platforms/cell/axon_msi.c | 10 +++--- > arch/powerpc/platforms/cell/beat_interrupt.c | 12 +++--- > arch/powerpc/platforms/cell/interrupt.c | 10 +++--- > arch/powerpc/platforms/cell/spider-pic.c | 6 ++-- > arch/powerpc/platforms/embedded6xx/flipper-pic.c | 14 ++++---- > arch/powerpc/platforms/embedded6xx/hlwd-pic.c | 18 +++++----- > arch/powerpc/platforms/iseries/irq.c | 6 ++-- > arch/powerpc/platforms/powermac/pic.c | 8 ++-- > arch/powerpc/platforms/ps3/interrupt.c | 8 ++-- > arch/powerpc/platforms/pseries/xics.c | 8 ++-- > arch/powerpc/sysdev/cpm1.c | 4 +- > arch/powerpc/sysdev/cpm2_pic.c | 6 ++-- > arch/powerpc/sysdev/fsl_msi.c | 2 +- > arch/powerpc/sysdev/fsl_msi.h | 2 +- > arch/powerpc/sysdev/i8259.c | 12 +++--- > arch/powerpc/sysdev/ipic.c | 6 ++-- > arch/powerpc/sysdev/ipic.h | 2 +- > arch/powerpc/sysdev/mpc8xx_pic.c | 6 ++-- > arch/powerpc/sysdev/mpc8xxx_gpio.c | 6 ++-- > arch/powerpc/sysdev/mpic.c | 6 ++-- > arch/powerpc/sysdev/mv64x60_pic.c | 4 +- > arch/powerpc/sysdev/qe_lib/qe_ic.c | 6 ++-- > arch/powerpc/sysdev/qe_lib/qe_ic.h | 2 +- > arch/powerpc/sysdev/tsi108_pci.c | 6 ++-- > arch/powerpc/sysdev/uic.c | 6 ++-- > arch/powerpc/sysdev/xilinx_intc.c | 12 +++--- > 39 files changed, 164 insertions(+), 164 deletions(-) > > diff --git a/arch/microblaze/include/asm/irq.h b/arch/microblaze/include/asm/irq.h > index ec5583d..8ef92dd 100644 > --- a/arch/microblaze/include/asm/irq.h > +++ b/arch/microblaze/include/asm/irq.h > @@ -36,7 +36,7 @@ static inline void irq_dispose_mapping(unsigned int virq) > return; > } > > -struct irq_host; > +struct irq_domain; > > /** > * irq_create_mapping - Map a hardware interrupt into linux virq space > @@ -48,7 +48,7 @@ struct irq_host; > * If the sense/trigger is to be specified, set_irq_type() should be called > * on the number returned from that call. > */ > -extern unsigned int irq_create_mapping(struct irq_host *host, > +extern unsigned int irq_create_mapping(struct irq_domain *host, > irq_hw_number_t hwirq); > > #endif /* _ASM_MICROBLAZE_IRQ_H */ > diff --git a/arch/microblaze/kernel/irq.c b/arch/microblaze/kernel/irq.c > index a9345fb..059bb11 100644 > --- a/arch/microblaze/kernel/irq.c > +++ b/arch/microblaze/kernel/irq.c > @@ -89,7 +89,7 @@ skip: > > /* MS: There is no any advance mapping mechanism. We are using simple 32bit > intc without any cascades or any connection that's why mapping is 1:1 */ > -unsigned int irq_create_mapping(struct irq_host *host, irq_hw_number_t hwirq) > +unsigned int irq_create_mapping(struct irq_domain *host, irq_hw_number_t hwirq) > { > return hwirq; > } > diff --git a/arch/powerpc/include/asm/i8259.h b/arch/powerpc/include/asm/i8259.h > index 105ade2..c3fdfbd 100644 > --- a/arch/powerpc/include/asm/i8259.h > +++ b/arch/powerpc/include/asm/i8259.h > @@ -6,7 +6,7 @@ > > extern void i8259_init(struct device_node *node, unsigned long intack_addr); > extern unsigned int i8259_irq(void); > -extern struct irq_host *i8259_get_host(void); > +extern struct irq_domain *i8259_get_host(void); > > #endif /* __KERNEL__ */ > #endif /* _ASM_POWERPC_I8259_H */ > diff --git a/arch/powerpc/include/asm/irq.h b/arch/powerpc/include/asm/irq.h > index 67ab5fb..3e25340 100644 > --- a/arch/powerpc/include/asm/irq.h > +++ b/arch/powerpc/include/asm/irq.h > @@ -66,7 +66,7 @@ typedef unsigned long irq_hw_number_t; > * by some sort of arch-specific void * "token" used to identify interrupt > * controllers. > */ > -struct irq_host; > +struct irq_domain; > struct radix_tree_root; > > /* Functions below are provided by the host and called whenever a new mapping > @@ -78,18 +78,18 @@ struct irq_host_ops { > /* Match an interrupt controller device node to a host, returns > * 1 on a match > */ > - int (*match)(struct irq_host *h, struct device_node *node); > + int (*match)(struct irq_domain *h, struct device_node *node); > > /* Create or update a mapping between a virtual irq number and a hw > * irq number. This is called only once for a given mapping. > */ > - int (*map)(struct irq_host *h, unsigned int virq, irq_hw_number_t hw); > + int (*map)(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw); > > /* Dispose of such a mapping */ > - void (*unmap)(struct irq_host *h, unsigned int virq); > + void (*unmap)(struct irq_domain *h, unsigned int virq); > > /* Update of such a mapping */ > - void (*remap)(struct irq_host *h, unsigned int virq, irq_hw_number_t hw); > + void (*remap)(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw); > > /* Translate device-tree interrupt specifier from raw format coming > * from the firmware to a irq_hw_number_t (interrupt line number) and > @@ -99,12 +99,12 @@ struct irq_host_ops { > * the type (which amount to keeping whatever default value the > * interrupt controller has for that line) > */ > - int (*xlate)(struct irq_host *h, struct device_node *ctrler, > + int (*xlate)(struct irq_domain *h, struct device_node *ctrler, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_type); > }; > > -struct irq_host { > +struct irq_domain { > struct list_head link; > > /* type of reverse mapping technique */ > @@ -135,7 +135,7 @@ struct irq_host { > */ > struct irq_map_entry { > irq_hw_number_t hwirq; > - struct irq_host *host; > + struct irq_domain *host; > }; > > extern struct irq_map_entry irq_map[NR_IRQS]; > @@ -143,14 +143,14 @@ extern struct irq_map_entry irq_map[NR_IRQS]; > extern irq_hw_number_t virq_to_hw(unsigned int virq); > > /** > - * irq_alloc_host - Allocate a new irq_host data structure > + * irq_alloc_host - Allocate a new irq_domain data structure > * @of_node: optional device-tree node of the interrupt controller > * @revmap_type: type of reverse mapping to use > * @revmap_arg: for IRQ_HOST_MAP_LINEAR linear only: size of the map > * @ops: map/unmap host callbacks > * @inval_irq: provide a hw number in that host space that is always invalid > * > - * Allocates and initialize and irq_host structure. Note that in the case of > + * Allocates and initialize and irq_domain structure. Note that in the case of > * IRQ_HOST_MAP_LEGACY, the map() callback will be called before this returns > * for all legacy interrupts except 0 (which is always the invalid irq for > * a legacy controller). For a IRQ_HOST_MAP_LINEAR, the map is allocated by > @@ -158,7 +158,7 @@ extern irq_hw_number_t virq_to_hw(unsigned int virq); > * later during boot automatically (the reverse mapping will use the slow path > * until that happens). > */ > -extern struct irq_host *irq_alloc_host(struct device_node *of_node, > +extern struct irq_domain *irq_alloc_host(struct device_node *of_node, > unsigned int revmap_type, > unsigned int revmap_arg, > struct irq_host_ops *ops, > @@ -169,7 +169,7 @@ extern struct irq_host *irq_alloc_host(struct device_node *of_node, > * irq_find_host - Locates a host for a given device node > * @node: device-tree node of the interrupt controller > */ > -extern struct irq_host *irq_find_host(struct device_node *node); > +extern struct irq_domain *irq_find_host(struct device_node *node); > > > /** > @@ -181,7 +181,7 @@ extern struct irq_host *irq_find_host(struct device_node *node); > * platforms that want to manipulate a few hard coded interrupt numbers that > * aren't properly represented in the device-tree. > */ > -extern void irq_set_default_host(struct irq_host *host); > +extern void irq_set_default_host(struct irq_domain *host); > > > /** > @@ -204,7 +204,7 @@ extern void irq_set_virq_count(unsigned int count); > * If the sense/trigger is to be specified, set_irq_type() should be called > * on the number returned from that call. > */ > -extern unsigned int irq_create_mapping(struct irq_host *host, > +extern unsigned int irq_create_mapping(struct irq_domain *host, > irq_hw_number_t hwirq); > > > @@ -223,7 +223,7 @@ extern void irq_dispose_mapping(unsigned int virq); > * irq controller implementation directly calls the appropriate low level > * mapping function. > */ > -extern unsigned int irq_find_mapping(struct irq_host *host, > +extern unsigned int irq_find_mapping(struct irq_domain *host, > irq_hw_number_t hwirq); > > /** > @@ -234,7 +234,7 @@ extern unsigned int irq_find_mapping(struct irq_host *host, > * interrupt numbers they generate. In such a case it's simplest to use > * the linux virq as the hardware interrupt number. > */ > -extern unsigned int irq_create_direct_mapping(struct irq_host *host); > +extern unsigned int irq_create_direct_mapping(struct irq_domain *host); > > /** > * irq_radix_revmap_insert - Insert a hw irq to linux virq number mapping. > @@ -245,7 +245,7 @@ extern unsigned int irq_create_direct_mapping(struct irq_host *host); > * This is for use by irq controllers that use a radix tree reverse > * mapping for fast lookup. > */ > -extern void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, > +extern void irq_radix_revmap_insert(struct irq_domain *host, unsigned int virq, > irq_hw_number_t hwirq); > > /** > @@ -256,7 +256,7 @@ extern void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, > * This is a fast path, for use by irq controller code that uses radix tree > * revmaps > */ > -extern unsigned int irq_radix_revmap_lookup(struct irq_host *host, > +extern unsigned int irq_radix_revmap_lookup(struct irq_domain *host, > irq_hw_number_t hwirq); > > /** > @@ -269,7 +269,7 @@ extern unsigned int irq_radix_revmap_lookup(struct irq_host *host, > * yet and will create the revmap entry with appropriate locking > */ > > -extern unsigned int irq_linear_revmap(struct irq_host *host, > +extern unsigned int irq_linear_revmap(struct irq_domain *host, > irq_hw_number_t hwirq); > > > @@ -284,7 +284,7 @@ extern unsigned int irq_linear_revmap(struct irq_host *host, > * and that can be used by some irq controllers implementations for things > * like allocating ranges of numbers for MSIs. The revmaps are left untouched. > */ > -extern unsigned int irq_alloc_virt(struct irq_host *host, > +extern unsigned int irq_alloc_virt(struct irq_domain *host, > unsigned int count, > unsigned int hint); > > diff --git a/arch/powerpc/include/asm/mpic.h b/arch/powerpc/include/asm/mpic.h > index e000cce..18d07da 100644 > --- a/arch/powerpc/include/asm/mpic.h > +++ b/arch/powerpc/include/asm/mpic.h > @@ -253,7 +253,7 @@ struct mpic_irq_save { > struct mpic > { > /* The remapper for this MPIC */ > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > > /* The "linux" controller struct */ > struct irq_chip hc_irq; > diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c > index ce557f6..e890cc4 100644 > --- a/arch/powerpc/kernel/irq.c > +++ b/arch/powerpc/kernel/irq.c > @@ -533,7 +533,7 @@ static unsigned int revmap_trees_allocated; > static DEFINE_MUTEX(revmap_trees_mutex); > struct irq_map_entry irq_map[NR_IRQS]; > static unsigned int irq_virq_count = NR_IRQS; > -static struct irq_host *irq_default_host; > +static struct irq_domain *irq_default_host; > > irq_hw_number_t virq_to_hw(unsigned int virq) > { > @@ -541,19 +541,19 @@ irq_hw_number_t virq_to_hw(unsigned int virq) > } > EXPORT_SYMBOL_GPL(virq_to_hw); > > -static int default_irq_host_match(struct irq_host *h, struct device_node *np) > +static int default_irq_host_match(struct irq_domain *h, struct device_node *np) > { > return h->of_node != NULL && h->of_node == np; > } > > -struct irq_host *irq_alloc_host(struct device_node *of_node, > +struct irq_domain *irq_alloc_host(struct device_node *of_node, > unsigned int revmap_type, > unsigned int revmap_arg, > struct irq_host_ops *ops, > irq_hw_number_t inval_irq) > { > - struct irq_host *host; > - unsigned int size = sizeof(struct irq_host); > + struct irq_domain *host; > + unsigned int size = sizeof(struct irq_domain); > unsigned int i; > unsigned int *rmap; > unsigned long flags; > @@ -638,9 +638,9 @@ struct irq_host *irq_alloc_host(struct device_node *of_node, > return host; > } > > -struct irq_host *irq_find_host(struct device_node *node) > +struct irq_domain *irq_find_host(struct device_node *node) > { > - struct irq_host *h, *found = NULL; > + struct irq_domain *h, *found = NULL; > unsigned long flags; > > /* We might want to match the legacy controller last since > @@ -659,7 +659,7 @@ struct irq_host *irq_find_host(struct device_node *node) > } > EXPORT_SYMBOL_GPL(irq_find_host); > > -void irq_set_default_host(struct irq_host *host) > +void irq_set_default_host(struct irq_domain *host) > { > pr_debug("irq: Default host set to @0x%p\n", host); > > @@ -675,7 +675,7 @@ void irq_set_virq_count(unsigned int count) > irq_virq_count = count; > } > > -static int irq_setup_virq(struct irq_host *host, unsigned int virq, > +static int irq_setup_virq(struct irq_domain *host, unsigned int virq, > irq_hw_number_t hwirq) > { > struct irq_desc *desc; > @@ -706,7 +706,7 @@ error: > return -1; > } > > -unsigned int irq_create_direct_mapping(struct irq_host *host) > +unsigned int irq_create_direct_mapping(struct irq_domain *host) > { > unsigned int virq; > > @@ -730,7 +730,7 @@ unsigned int irq_create_direct_mapping(struct irq_host *host) > return virq; > } > > -unsigned int irq_create_mapping(struct irq_host *host, > +unsigned int irq_create_mapping(struct irq_domain *host, > irq_hw_number_t hwirq) > { > unsigned int virq, hint; > @@ -789,7 +789,7 @@ EXPORT_SYMBOL_GPL(irq_create_mapping); > unsigned int irq_create_of_mapping(struct device_node *controller, > const u32 *intspec, unsigned int intsize) > { > - struct irq_host *host; > + struct irq_domain *host; > irq_hw_number_t hwirq; > unsigned int type = IRQ_TYPE_NONE; > unsigned int virq; > @@ -828,7 +828,7 @@ EXPORT_SYMBOL_GPL(irq_create_of_mapping); > > void irq_dispose_mapping(unsigned int virq) > { > - struct irq_host *host; > + struct irq_domain *host; > irq_hw_number_t hwirq; > > if (virq == NO_IRQ) > @@ -887,7 +887,7 @@ void irq_dispose_mapping(unsigned int virq) > } > EXPORT_SYMBOL_GPL(irq_dispose_mapping); > > -unsigned int irq_find_mapping(struct irq_host *host, > +unsigned int irq_find_mapping(struct irq_domain *host, > irq_hw_number_t hwirq) > { > unsigned int i; > @@ -920,7 +920,7 @@ unsigned int irq_find_mapping(struct irq_host *host, > EXPORT_SYMBOL_GPL(irq_find_mapping); > > > -unsigned int irq_radix_revmap_lookup(struct irq_host *host, > +unsigned int irq_radix_revmap_lookup(struct irq_domain *host, > irq_hw_number_t hwirq) > { > struct irq_map_entry *ptr; > @@ -955,7 +955,7 @@ unsigned int irq_radix_revmap_lookup(struct irq_host *host, > return virq; > } > > -void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, > +void irq_radix_revmap_insert(struct irq_domain *host, unsigned int virq, > irq_hw_number_t hwirq) > { > > @@ -978,7 +978,7 @@ void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, > } > } > > -unsigned int irq_linear_revmap(struct irq_host *host, > +unsigned int irq_linear_revmap(struct irq_domain *host, > irq_hw_number_t hwirq) > { > unsigned int *revmap; > @@ -1001,7 +1001,7 @@ unsigned int irq_linear_revmap(struct irq_host *host, > return revmap[hwirq]; > } > > -unsigned int irq_alloc_virt(struct irq_host *host, > +unsigned int irq_alloc_virt(struct irq_domain *host, > unsigned int count, > unsigned int hint) > { > @@ -1058,7 +1058,7 @@ void irq_free_virt(unsigned int virq, unsigned int count) > > raw_spin_lock_irqsave(&irq_big_lock, flags); > for (i = virq; i < (virq + count); i++) { > - struct irq_host *host; > + struct irq_domain *host; > > if (i < NUM_ISA_INTERRUPTS || > (virq + count) > irq_virq_count) > @@ -1095,7 +1095,7 @@ int arch_init_chip_data(struct irq_desc *desc, int node) > /* We need to create the radix trees late */ > static int irq_late_init(void) > { > - struct irq_host *h; > + struct irq_domain *h; > unsigned int i; > > /* > diff --git a/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c b/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c > index 4ecf4cf..32e784e 100644 > --- a/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c > +++ b/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c > @@ -21,7 +21,7 @@ > #include <asm/prom.h> > > static struct device_node *cpld_pic_node; > -static struct irq_host *cpld_pic_host; > +static struct irq_domain *cpld_pic_host; > > /* > * Bits to ignore in the misc_status register > @@ -123,13 +123,13 @@ cpld_pic_cascade(unsigned int irq, struct irq_desc *desc) > } > > static int > -cpld_pic_host_match(struct irq_host *h, struct device_node *node) > +cpld_pic_host_match(struct irq_domain *h, struct device_node *node) > { > return cpld_pic_node == node; > } > > static int > -cpld_pic_host_map(struct irq_host *h, unsigned int virq, > +cpld_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > irq_to_desc(virq)->status |= IRQ_LEVEL; > diff --git a/arch/powerpc/platforms/52xx/media5200.c b/arch/powerpc/platforms/52xx/media5200.c > index 2c7780c..f10ae9d 100644 > --- a/arch/powerpc/platforms/52xx/media5200.c > +++ b/arch/powerpc/platforms/52xx/media5200.c > @@ -45,7 +45,7 @@ static struct of_device_id mpc5200_gpio_ids[] __initdata = { > struct media5200_irq { > void __iomem *regs; > spinlock_t lock; > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > }; > struct media5200_irq media5200_irq; > > @@ -111,7 +111,7 @@ void media5200_irq_cascade(unsigned int virq, struct irq_desc *desc) > raw_spin_unlock(&desc->lock); > } > > -static int media5200_irq_map(struct irq_host *h, unsigned int virq, > +static int media5200_irq_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct irq_desc *desc = irq_to_desc(virq); > @@ -126,7 +126,7 @@ static int media5200_irq_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int media5200_irq_xlate(struct irq_host *h, struct device_node *ct, > +static int media5200_irq_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > diff --git a/arch/powerpc/platforms/52xx/mpc52xx_gpt.c b/arch/powerpc/platforms/52xx/mpc52xx_gpt.c > index e0d703c..fb0c795 100644 > --- a/arch/powerpc/platforms/52xx/mpc52xx_gpt.c > +++ b/arch/powerpc/platforms/52xx/mpc52xx_gpt.c > @@ -80,7 +80,7 @@ MODULE_LICENSE("GPL"); > * @regs: virtual address of GPT registers > * @lock: spinlock to coordinate between different functions. > * @gc: gpio_chip instance structure; used when GPIO is enabled > - * @irqhost: Pointer to irq_host instance; used when IRQ mode is supported > + * @irqhost: Pointer to irq_domain instance; used when IRQ mode is supported > * @wdt_mode: only relevant for gpt0: bit 0 (MPC52xx_GPT_CAN_WDT) indicates > * if the gpt may be used as wdt, bit 1 (MPC52xx_GPT_IS_WDT) indicates > * if the timer is actively used as wdt which blocks gpt functions > @@ -90,7 +90,7 @@ struct mpc52xx_gpt_priv { > struct device *dev; > struct mpc52xx_gpt __iomem *regs; > spinlock_t lock; > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > u32 ipb_freq; > u8 wdt_mode; > > @@ -203,7 +203,7 @@ void mpc52xx_gpt_irq_cascade(unsigned int virq, struct irq_desc *desc) > } > } > > -static int mpc52xx_gpt_irq_map(struct irq_host *h, unsigned int virq, > +static int mpc52xx_gpt_irq_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct mpc52xx_gpt_priv *gpt = h->host_data; > @@ -215,7 +215,7 @@ static int mpc52xx_gpt_irq_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int mpc52xx_gpt_irq_xlate(struct irq_host *h, struct device_node *ct, > +static int mpc52xx_gpt_irq_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > diff --git a/arch/powerpc/platforms/52xx/mpc52xx_pic.c b/arch/powerpc/platforms/52xx/mpc52xx_pic.c > index 4bf4bf7..7d83308 100644 > --- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c > +++ b/arch/powerpc/platforms/52xx/mpc52xx_pic.c > @@ -132,7 +132,7 @@ static struct of_device_id mpc52xx_sdma_ids[] __initdata = { > > static struct mpc52xx_intr __iomem *intr; > static struct mpc52xx_sdma __iomem *sdma; > -static struct irq_host *mpc52xx_irqhost = NULL; > +static struct irq_domain *mpc52xx_irqhost = NULL; > > static unsigned char mpc52xx_map_senses[4] = { > IRQ_TYPE_LEVEL_HIGH, > @@ -354,7 +354,7 @@ static int mpc52xx_is_extirq(int l1, int l2) > /** > * mpc52xx_irqhost_xlate - translate virq# from device tree interrupts property > */ > -static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, > +static int mpc52xx_irqhost_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > @@ -388,7 +388,7 @@ static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, > /** > * mpc52xx_irqhost_map - Hook to map from virq to an irq_chip structure > */ > -static int mpc52xx_irqhost_map(struct irq_host *h, unsigned int virq, > +static int mpc52xx_irqhost_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t irq) > { > int l1irq; > diff --git a/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c b/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c > index 5a55d87..47b8d5d 100644 > --- a/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c > +++ b/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c > @@ -29,7 +29,7 @@ static DEFINE_RAW_SPINLOCK(pci_pic_lock); > > struct pq2ads_pci_pic { > struct device_node *node; > - struct irq_host *host; > + struct irq_domain *host; > > struct { > u32 stat; > @@ -104,7 +104,7 @@ static void pq2ads_pci_irq_demux(unsigned int irq, struct irq_desc *desc) > } > } > > -static int pci_pic_host_map(struct irq_host *h, unsigned int virq, > +static int pci_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > irq_to_desc(virq)->status |= IRQ_LEVEL; > @@ -113,7 +113,7 @@ static int pci_pic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static void pci_host_unmap(struct irq_host *h, unsigned int virq) > +static void pci_host_unmap(struct irq_domain *h, unsigned int virq) > { > /* remove chip and handler */ > set_irq_chip_data(virq, NULL); > @@ -128,7 +128,7 @@ static struct irq_host_ops pci_pic_host_ops = { > int __init pq2ads_pci_init_irq(void) > { > struct pq2ads_pci_pic *priv; > - struct irq_host *host; > + struct irq_domain *host; > struct device_node *np; > int ret = -ENODEV; > int irq; > diff --git a/arch/powerpc/platforms/85xx/socrates_fpga_pic.c b/arch/powerpc/platforms/85xx/socrates_fpga_pic.c > index d48527f..fe51afe 100644 > --- a/arch/powerpc/platforms/85xx/socrates_fpga_pic.c > +++ b/arch/powerpc/platforms/85xx/socrates_fpga_pic.c > @@ -53,7 +53,7 @@ static struct socrates_fpga_irq_info fpga_irqs[SOCRATES_FPGA_NUM_IRQS] = { > static DEFINE_RAW_SPINLOCK(socrates_fpga_pic_lock); > > static void __iomem *socrates_fpga_pic_iobase; > -static struct irq_host *socrates_fpga_pic_irq_host; > +static struct irq_domain *socrates_fpga_pic_irq_host; > static unsigned int socrates_fpga_irqs[3]; > > static inline uint32_t socrates_fpga_pic_read(int reg) > @@ -241,7 +241,7 @@ static struct irq_chip socrates_fpga_pic_chip = { > .set_type = socrates_fpga_pic_set_type, > }; > > -static int socrates_fpga_pic_host_map(struct irq_host *h, unsigned int virq, > +static int socrates_fpga_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hwirq) > { > /* All interrupts are LEVEL sensitive */ > @@ -252,7 +252,7 @@ static int socrates_fpga_pic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int socrates_fpga_pic_host_xlate(struct irq_host *h, > +static int socrates_fpga_pic_host_xlate(struct irq_domain *h, > struct device_node *ct, const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > { > @@ -293,7 +293,7 @@ void socrates_fpga_pic_init(struct device_node *pic) > unsigned long flags; > int i; > > - /* Setup an irq_host structure */ > + /* Setup an irq_domain structure */ > socrates_fpga_pic_irq_host = irq_alloc_host(pic, IRQ_HOST_MAP_LINEAR, > SOCRATES_FPGA_NUM_IRQS, &socrates_fpga_pic_host_ops, > SOCRATES_FPGA_NUM_IRQS); > diff --git a/arch/powerpc/platforms/86xx/gef_pic.c b/arch/powerpc/platforms/86xx/gef_pic.c > index 6df9e25..fed34ab 100644 > --- a/arch/powerpc/platforms/86xx/gef_pic.c > +++ b/arch/powerpc/platforms/86xx/gef_pic.c > @@ -52,7 +52,7 @@ > static DEFINE_RAW_SPINLOCK(gef_pic_lock); > > static void __iomem *gef_pic_irq_reg_base; > -static struct irq_host *gef_pic_irq_host; > +static struct irq_domain *gef_pic_irq_host; > static int gef_pic_cascade_irq; > > /* > @@ -159,7 +159,7 @@ static struct irq_chip gef_pic_chip = { > /* When an interrupt is being configured, this call allows some flexibilty > * in deciding which irq_chip structure is used > */ > -static int gef_pic_host_map(struct irq_host *h, unsigned int virq, > +static int gef_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hwirq) > { > /* All interrupts are LEVEL sensitive */ > @@ -169,7 +169,7 @@ static int gef_pic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int gef_pic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int gef_pic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > { > @@ -217,7 +217,7 @@ void __init gef_pic_init(struct device_node *np) > return; > } > > - /* Setup an irq_host structure */ > + /* Setup an irq_domain structure */ > gef_pic_irq_host = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, > GEF_PIC_NUM_IRQS, > &gef_pic_host_ops, NO_IRQ); > diff --git a/arch/powerpc/platforms/cell/axon_msi.c b/arch/powerpc/platforms/cell/axon_msi.c > index e3e379c..5f88607 100644 > --- a/arch/powerpc/platforms/cell/axon_msi.c > +++ b/arch/powerpc/platforms/cell/axon_msi.c > @@ -66,7 +66,7 @@ > > > struct axon_msic { > - struct irq_host *irq_host; > + struct irq_domain *irq_host; > __le32 *fifo_virt; > dma_addr_t fifo_phys; > dcr_host_t dcr_host; > @@ -150,7 +150,7 @@ static void axon_msi_cascade(unsigned int irq, struct irq_desc *desc) > > static struct axon_msic *find_msi_translator(struct pci_dev *dev) > { > - struct irq_host *irq_host; > + struct irq_domain *irq_host; > struct device_node *dn, *tmp; > const phandle *ph; > struct axon_msic *msic = NULL; > @@ -184,7 +184,7 @@ static struct axon_msic *find_msi_translator(struct pci_dev *dev) > > irq_host = irq_find_host(dn); > if (!irq_host) { > - dev_dbg(&dev->dev, "axon_msi: no irq_host found for node %s\n", > + dev_dbg(&dev->dev, "axon_msi: no irq_domain found for node %s\n", > dn->full_name); > goto out_error; > } > @@ -316,7 +316,7 @@ static struct irq_chip msic_irq_chip = { > .name = "AXON-MSI", > }; > > -static int msic_host_map(struct irq_host *h, unsigned int virq, > +static int msic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > set_irq_chip_and_handler(virq, &msic_irq_chip, handle_simple_irq); > @@ -395,7 +395,7 @@ static int axon_msi_probe(struct platform_device *device, > msic->irq_host = irq_alloc_host(dn, IRQ_HOST_MAP_NOMAP, > NR_IRQS, &msic_host_ops, 0); > if (!msic->irq_host) { > - printk(KERN_ERR "axon_msi: couldn't allocate irq_host for %s\n", > + printk(KERN_ERR "axon_msi: couldn't allocate irq_domain for %s\n", > dn->full_name); > goto out_free_fifo; > } > diff --git a/arch/powerpc/platforms/cell/beat_interrupt.c b/arch/powerpc/platforms/cell/beat_interrupt.c > index 682af97..179430d 100644 > --- a/arch/powerpc/platforms/cell/beat_interrupt.c > +++ b/arch/powerpc/platforms/cell/beat_interrupt.c > @@ -34,7 +34,7 @@ static DEFINE_RAW_SPINLOCK(beatic_irq_mask_lock); > static uint64_t beatic_irq_mask_enable[(MAX_IRQS+255)/64]; > static uint64_t beatic_irq_mask_ack[(MAX_IRQS+255)/64]; > > -static struct irq_host *beatic_host; > +static struct irq_domain *beatic_host; > > /* > * In this implementation, "virq" == "IRQ plug number", > @@ -122,7 +122,7 @@ static struct irq_chip beatic_pic = { > * > * Note that the number (virq) is already assigned at upper layer. > */ > -static void beatic_pic_host_unmap(struct irq_host *h, unsigned int virq) > +static void beatic_pic_host_unmap(struct irq_domain *h, unsigned int virq) > { > beat_destruct_irq_plug(virq); > } > @@ -133,7 +133,7 @@ static void beatic_pic_host_unmap(struct irq_host *h, unsigned int virq) > * > * Note that the number (virq) is already assigned at upper layer. > */ > -static int beatic_pic_host_map(struct irq_host *h, unsigned int virq, > +static int beatic_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct irq_desc *desc = irq_to_desc(virq); > @@ -152,7 +152,7 @@ static int beatic_pic_host_map(struct irq_host *h, unsigned int virq, > * Update binding hardware IRQ number (hw) and Virtuql > * IRQ number (virq). This is called only once for a given mapping. > */ > -static void beatic_pic_host_remap(struct irq_host *h, unsigned int virq, > +static void beatic_pic_host_remap(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > beat_construct_and_connect_irq_plug(virq, hw); > @@ -165,7 +165,7 @@ static void beatic_pic_host_remap(struct irq_host *h, unsigned int virq, > * Called from irq_create_of_mapping() only. > * Note: We have only 1 entry to translate. > */ > -static int beatic_pic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int beatic_pic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > @@ -177,7 +177,7 @@ static int beatic_pic_host_xlate(struct irq_host *h, struct device_node *ct, > return 0; > } > > -static int beatic_pic_host_match(struct irq_host *h, struct device_node *np) > +static int beatic_pic_host_match(struct irq_domain *h, struct device_node *np) > { > /* Match all */ > return 1; > diff --git a/arch/powerpc/platforms/cell/interrupt.c b/arch/powerpc/platforms/cell/interrupt.c > index 10eb1a4..2cfb3ee 100644 > --- a/arch/powerpc/platforms/cell/interrupt.c > +++ b/arch/powerpc/platforms/cell/interrupt.c > @@ -56,7 +56,7 @@ struct iic { > > static DEFINE_PER_CPU(struct iic, cpu_iic); > #define IIC_NODE_COUNT 2 > -static struct irq_host *iic_host; > +static struct irq_domain *iic_host; > > /* Convert between "pending" bits and hw irq number */ > static irq_hw_number_t iic_pending_to_hwnum(struct cbe_iic_pending_bits bits) > @@ -184,7 +184,7 @@ void iic_cause_IPI(int cpu, int mesg) > out_be64(&per_cpu(cpu_iic, cpu).regs->generate, (0xf - mesg) << 4); > } > > -struct irq_host *iic_get_irq_host(int node) > +struct irq_domain *iic_get_irq_host(int node) > { > return iic_host; > } > @@ -227,7 +227,7 @@ void iic_request_IPIs(void) > #endif /* CONFIG_SMP */ > > > -static int iic_host_match(struct irq_host *h, struct device_node *node) > +static int iic_host_match(struct irq_domain *h, struct device_node *node) > { > return of_device_is_compatible(node, > "IBM,CBEA-Internal-Interrupt-Controller"); > @@ -279,7 +279,7 @@ out_eoi: > raw_spin_unlock(&desc->lock); > } > > -static int iic_host_map(struct irq_host *h, unsigned int virq, > +static int iic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > switch (hw & IIC_IRQ_TYPE_MASK) { > @@ -296,7 +296,7 @@ static int iic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int iic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int iic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > > diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c > index 3f2e557..0d3dcba 100644 > --- a/arch/powerpc/platforms/cell/spider-pic.c > +++ b/arch/powerpc/platforms/cell/spider-pic.c > @@ -62,7 +62,7 @@ enum { > #define SPIDER_IRQ_INVALID 63 > > struct spider_pic { > - struct irq_host *host; > + struct irq_domain *host; > void __iomem *regs; > unsigned int node_id; > }; > @@ -175,7 +175,7 @@ static struct irq_chip spider_pic = { > .set_type = spider_set_irq_type, > }; > > -static int spider_host_map(struct irq_host *h, unsigned int virq, > +static int spider_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > set_irq_chip_and_handler(virq, &spider_pic, handle_level_irq); > @@ -186,7 +186,7 @@ static int spider_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int spider_host_xlate(struct irq_host *h, struct device_node *ct, > +static int spider_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > > diff --git a/arch/powerpc/platforms/embedded6xx/flipper-pic.c b/arch/powerpc/platforms/embedded6xx/flipper-pic.c > index c278bd3..80021c3 100644 > --- a/arch/powerpc/platforms/embedded6xx/flipper-pic.c > +++ b/arch/powerpc/platforms/embedded6xx/flipper-pic.c > @@ -96,9 +96,9 @@ static struct irq_chip flipper_pic = { > * > */ > > -static struct irq_host *flipper_irq_host; > +static struct irq_domain *flipper_irq_host; > > -static int flipper_pic_map(struct irq_host *h, unsigned int virq, > +static int flipper_pic_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hwirq) > { > set_irq_chip_data(virq, h->host_data); > @@ -107,13 +107,13 @@ static int flipper_pic_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static void flipper_pic_unmap(struct irq_host *h, unsigned int irq) > +static void flipper_pic_unmap(struct irq_domain *h, unsigned int irq) > { > set_irq_chip_data(irq, NULL); > set_irq_chip(irq, NULL); > } > > -static int flipper_pic_match(struct irq_host *h, struct device_node *np) > +static int flipper_pic_match(struct irq_domain *h, struct device_node *np) > { > return 1; > } > @@ -137,10 +137,10 @@ static void __flipper_quiesce(void __iomem *io_base) > out_be32(io_base + FLIPPER_ICR, 0xffffffff); > } > > -struct irq_host * __init flipper_pic_init(struct device_node *np) > +struct irq_domain * __init flipper_pic_init(struct device_node *np) > { > struct device_node *pi; > - struct irq_host *irq_host = NULL; > + struct irq_domain *irq_host = NULL; > struct resource res; > void __iomem *io_base; > int retval; > @@ -169,7 +169,7 @@ struct irq_host * __init flipper_pic_init(struct device_node *np) > irq_host = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, FLIPPER_NR_IRQS, > &flipper_irq_host_ops, -1); > if (!irq_host) { > - pr_err("failed to allocate irq_host\n"); > + pr_err("failed to allocate irq_domain\n"); > return NULL; > } > > diff --git a/arch/powerpc/platforms/embedded6xx/hlwd-pic.c b/arch/powerpc/platforms/embedded6xx/hlwd-pic.c > index a771f91..a41ab12 100644 > --- a/arch/powerpc/platforms/embedded6xx/hlwd-pic.c > +++ b/arch/powerpc/platforms/embedded6xx/hlwd-pic.c > @@ -89,9 +89,9 @@ static struct irq_chip hlwd_pic = { > * > */ > > -static struct irq_host *hlwd_irq_host; > +static struct irq_domain *hlwd_irq_host; > > -static int hlwd_pic_map(struct irq_host *h, unsigned int virq, > +static int hlwd_pic_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hwirq) > { > set_irq_chip_data(virq, h->host_data); > @@ -100,7 +100,7 @@ static int hlwd_pic_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static void hlwd_pic_unmap(struct irq_host *h, unsigned int irq) > +static void hlwd_pic_unmap(struct irq_domain *h, unsigned int irq) > { > set_irq_chip_data(irq, NULL); > set_irq_chip(irq, NULL); > @@ -111,7 +111,7 @@ static struct irq_host_ops hlwd_irq_host_ops = { > .unmap = hlwd_pic_unmap, > }; > > -static unsigned int __hlwd_pic_get_irq(struct irq_host *h) > +static unsigned int __hlwd_pic_get_irq(struct irq_domain *h) > { > void __iomem *io_base = h->host_data; > int irq; > @@ -129,7 +129,7 @@ static unsigned int __hlwd_pic_get_irq(struct irq_host *h) > static void hlwd_pic_irq_cascade(unsigned int cascade_virq, > struct irq_desc *desc) > { > - struct irq_host *irq_host = get_irq_data(cascade_virq); > + struct irq_domain *irq_host = get_irq_data(cascade_virq); > unsigned int virq; > > raw_spin_lock(&desc->lock); > @@ -161,9 +161,9 @@ static void __hlwd_quiesce(void __iomem *io_base) > out_be32(io_base + HW_BROADWAY_ICR, 0xffffffff); > } > > -struct irq_host *hlwd_pic_init(struct device_node *np) > +struct irq_domain *hlwd_pic_init(struct device_node *np) > { > - struct irq_host *irq_host; > + struct irq_domain *irq_host; > struct resource res; > void __iomem *io_base; > int retval; > @@ -186,7 +186,7 @@ struct irq_host *hlwd_pic_init(struct device_node *np) > irq_host = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, HLWD_NR_IRQS, > &hlwd_irq_host_ops, -1); > if (!irq_host) { > - pr_err("failed to allocate irq_host\n"); > + pr_err("failed to allocate irq_domain\n"); > return NULL; > } > irq_host->host_data = io_base; > @@ -206,7 +206,7 @@ unsigned int hlwd_pic_get_irq(void) > > void hlwd_pic_probe(void) > { > - struct irq_host *host; > + struct irq_domain *host; > struct device_node *np; > const u32 *interrupts; > int cascade_virq; > diff --git a/arch/powerpc/platforms/iseries/irq.c b/arch/powerpc/platforms/iseries/irq.c > index ba446bf..948af76 100644 > --- a/arch/powerpc/platforms/iseries/irq.c > +++ b/arch/powerpc/platforms/iseries/irq.c > @@ -338,7 +338,7 @@ unsigned int iSeries_get_irq(void) > > #ifdef CONFIG_PCI > > -static int iseries_irq_host_map(struct irq_host *h, unsigned int virq, > +static int iseries_irq_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > set_irq_chip_and_handler(virq, &iseries_pic, handle_fasteoi_irq); > @@ -346,7 +346,7 @@ static int iseries_irq_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int iseries_irq_host_match(struct irq_host *h, struct device_node *np) > +static int iseries_irq_host_match(struct irq_domain *h, struct device_node *np) > { > /* Match all */ > return 1; > @@ -364,7 +364,7 @@ static struct irq_host_ops iseries_irq_host_ops = { > void __init iSeries_init_IRQ(void) > { > /* Register PCI event handler and open an event path */ > - struct irq_host *host; > + struct irq_domain *host; > int ret; > > /* > diff --git a/arch/powerpc/platforms/powermac/pic.c b/arch/powerpc/platforms/powermac/pic.c > index 890d5f7..db69f2b 100644 > --- a/arch/powerpc/platforms/powermac/pic.c > +++ b/arch/powerpc/platforms/powermac/pic.c > @@ -67,7 +67,7 @@ static DEFINE_RAW_SPINLOCK(pmac_pic_lock); > static unsigned long ppc_lost_interrupts[NR_MASK_WORDS]; > static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS]; > static int pmac_irq_cascade = -1; > -static struct irq_host *pmac_pic_host; > +static struct irq_domain *pmac_pic_host; > > static void __pmac_retrigger(unsigned int irq_nr) > { > @@ -280,13 +280,13 @@ static struct irqaction gatwick_cascade_action = { > .name = "cascade", > }; > > -static int pmac_pic_host_match(struct irq_host *h, struct device_node *node) > +static int pmac_pic_host_match(struct irq_domain *h, struct device_node *node) > { > /* We match all, we don't always have a node anyway */ > return 1; > } > > -static int pmac_pic_host_map(struct irq_host *h, unsigned int virq, > +static int pmac_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct irq_desc *desc = irq_to_desc(virq); > @@ -306,7 +306,7 @@ static int pmac_pic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int pmac_pic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int pmac_pic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > diff --git a/arch/powerpc/platforms/ps3/interrupt.c b/arch/powerpc/platforms/ps3/interrupt.c > index 59d9712..71fec2e 100644 > --- a/arch/powerpc/platforms/ps3/interrupt.c > +++ b/arch/powerpc/platforms/ps3/interrupt.c > @@ -659,12 +659,12 @@ static void __maybe_unused _dump_mask(struct ps3_private *pd, > static void dump_bmp(struct ps3_private* pd) {}; > #endif /* defined(DEBUG) */ > > -static void ps3_host_unmap(struct irq_host *h, unsigned int virq) > +static void ps3_host_unmap(struct irq_domain *h, unsigned int virq) > { > set_irq_chip_data(virq, NULL); > } > > -static int ps3_host_map(struct irq_host *h, unsigned int virq, > +static int ps3_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hwirq) > { > pr_debug("%s:%d: hwirq %lu, virq %u\n", __func__, __LINE__, hwirq, > @@ -675,7 +675,7 @@ static int ps3_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int ps3_host_match(struct irq_host *h, struct device_node *np) > +static int ps3_host_match(struct irq_domain *h, struct device_node *np) > { > /* Match all */ > return 1; > @@ -733,7 +733,7 @@ void __init ps3_init_IRQ(void) > { > int result; > unsigned cpu; > - struct irq_host *host; > + struct irq_domain *host; > > host = irq_alloc_host(NULL, IRQ_HOST_MAP_NOMAP, 0, &ps3_host_ops, > PS3_INVALID_OUTLET); > diff --git a/arch/powerpc/platforms/pseries/xics.c b/arch/powerpc/platforms/pseries/xics.c > index 7b96e5a..d9006d7 100644 > --- a/arch/powerpc/platforms/pseries/xics.c > +++ b/arch/powerpc/platforms/pseries/xics.c > @@ -33,7 +33,7 @@ > #include "xics.h" > #include "plpar_wrappers.h" > > -static struct irq_host *xics_host; > +static struct irq_domain *xics_host; > > #define XICS_IPI 2 > #define XICS_IRQ_SPURIOUS 0 > @@ -452,7 +452,7 @@ static struct irq_chip xics_pic_lpar = { > /* Points to the irq_chip we're actually using */ > static struct irq_chip *xics_irq_chip; > > -static int xics_host_match(struct irq_host *h, struct device_node *node) > +static int xics_host_match(struct irq_domain *h, struct device_node *node) > { > /* IBM machines have interrupt parents of various funky types for things > * like vdevices, events, etc... The trick we use here is to match > @@ -461,7 +461,7 @@ static int xics_host_match(struct irq_host *h, struct device_node *node) > return !of_device_is_compatible(node, "chrp,iic"); > } > > -static int xics_host_map(struct irq_host *h, unsigned int virq, > +static int xics_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > pr_devel("xics: map virq %d, hwirq 0x%lx\n", virq, hw); > @@ -474,7 +474,7 @@ static int xics_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int xics_host_xlate(struct irq_host *h, struct device_node *ct, > +static int xics_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > > diff --git a/arch/powerpc/sysdev/cpm1.c b/arch/powerpc/sysdev/cpm1.c > index 0085212..2f78da2 100644 > --- a/arch/powerpc/sysdev/cpm1.c > +++ b/arch/powerpc/sysdev/cpm1.c > @@ -54,7 +54,7 @@ cpm8xx_t __iomem *cpmp; /* Pointer to comm processor space */ > immap_t __iomem *mpc8xx_immr; > static cpic8xx_t __iomem *cpic_reg; > > -static struct irq_host *cpm_pic_host; > +static struct irq_domain *cpm_pic_host; > > static void cpm_mask_irq(unsigned int irq) > { > @@ -98,7 +98,7 @@ int cpm_get_irq(void) > return irq_linear_revmap(cpm_pic_host, cpm_vec); > } > > -static int cpm_pic_host_map(struct irq_host *h, unsigned int virq, > +static int cpm_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > pr_debug("cpm_pic_host_map(%d, 0x%lx)\n", virq, hw); > diff --git a/arch/powerpc/sysdev/cpm2_pic.c b/arch/powerpc/sysdev/cpm2_pic.c > index fcea4ff..4e18a8b 100644 > --- a/arch/powerpc/sysdev/cpm2_pic.c > +++ b/arch/powerpc/sysdev/cpm2_pic.c > @@ -50,7 +50,7 @@ > > static intctl_cpm2_t __iomem *cpm2_intctl; > > -static struct irq_host *cpm2_pic_host; > +static struct irq_domain *cpm2_pic_host; > #define NR_MASK_WORDS ((NR_IRQS + 31) / 32) > static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS]; > > @@ -221,7 +221,7 @@ unsigned int cpm2_get_irq(void) > return irq_linear_revmap(cpm2_pic_host, irq); > } > > -static int cpm2_pic_host_map(struct irq_host *h, unsigned int virq, > +static int cpm2_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > pr_debug("cpm2_pic_host_map(%d, 0x%lx)\n", virq, hw); > @@ -231,7 +231,7 @@ static int cpm2_pic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int cpm2_pic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int cpm2_pic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > { > diff --git a/arch/powerpc/sysdev/fsl_msi.c b/arch/powerpc/sysdev/fsl_msi.c > index 108d76f..977c5e9 100644 > --- a/arch/powerpc/sysdev/fsl_msi.c > +++ b/arch/powerpc/sysdev/fsl_msi.c > @@ -58,7 +58,7 @@ static struct irq_chip fsl_msi_chip = { > .name = "FSL-MSI", > }; > > -static int fsl_msi_host_map(struct irq_host *h, unsigned int virq, > +static int fsl_msi_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct fsl_msi *msi_data = h->host_data; > diff --git a/arch/powerpc/sysdev/fsl_msi.h b/arch/powerpc/sysdev/fsl_msi.h > index 624580c..3852988 100644 > --- a/arch/powerpc/sysdev/fsl_msi.h > +++ b/arch/powerpc/sysdev/fsl_msi.h > @@ -24,7 +24,7 @@ > #define FSL_PIC_IP_IPIC 0x00000002 > > struct fsl_msi { > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > > unsigned long cascade_irq; > > diff --git a/arch/powerpc/sysdev/i8259.c b/arch/powerpc/sysdev/i8259.c > index 6323e70..ccb2892 100644 > --- a/arch/powerpc/sysdev/i8259.c > +++ b/arch/powerpc/sysdev/i8259.c > @@ -25,7 +25,7 @@ static unsigned char cached_8259[2] = { 0xff, 0xff }; > > static DEFINE_RAW_SPINLOCK(i8259_lock); > > -static struct irq_host *i8259_host; > +static struct irq_domain *i8259_host; > > /* > * Acknowledge the IRQ using either the PCI host bridge's interrupt > @@ -163,12 +163,12 @@ static struct resource pic_edgectrl_iores = { > .flags = IORESOURCE_BUSY, > }; > > -static int i8259_host_match(struct irq_host *h, struct device_node *node) > +static int i8259_host_match(struct irq_domain *h, struct device_node *node) > { > return h->of_node == NULL || h->of_node == node; > } > > -static int i8259_host_map(struct irq_host *h, unsigned int virq, > +static int i8259_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > pr_debug("i8259_host_map(%d, 0x%lx)\n", virq, hw); > @@ -185,7 +185,7 @@ static int i8259_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static void i8259_host_unmap(struct irq_host *h, unsigned int virq) > +static void i8259_host_unmap(struct irq_domain *h, unsigned int virq) > { > /* Make sure irq is masked in hardware */ > i8259_mask_irq(virq); > @@ -197,7 +197,7 @@ static void i8259_host_unmap(struct irq_host *h, unsigned int virq) > synchronize_irq(virq); > } > > -static int i8259_host_xlate(struct irq_host *h, struct device_node *ct, > +static int i8259_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > { > @@ -224,7 +224,7 @@ static struct irq_host_ops i8259_host_ops = { > .xlate = i8259_host_xlate, > }; > > -struct irq_host *i8259_get_host(void) > +struct irq_domain *i8259_get_host(void) > { > return i8259_host; > } > diff --git a/arch/powerpc/sysdev/ipic.c b/arch/powerpc/sysdev/ipic.c > index d7b9b9c..ac0bd54 100644 > --- a/arch/powerpc/sysdev/ipic.c > +++ b/arch/powerpc/sysdev/ipic.c > @@ -676,13 +676,13 @@ static struct irq_chip ipic_edge_irq_chip = { > .set_type = ipic_set_irq_type, > }; > > -static int ipic_host_match(struct irq_host *h, struct device_node *node) > +static int ipic_host_match(struct irq_domain *h, struct device_node *node) > { > /* Exact match, unless ipic node is NULL */ > return h->of_node == NULL || h->of_node == node; > } > > -static int ipic_host_map(struct irq_host *h, unsigned int virq, > +static int ipic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct ipic *ipic = h->host_data; > @@ -696,7 +696,7 @@ static int ipic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int ipic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int ipic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > > diff --git a/arch/powerpc/sysdev/ipic.h b/arch/powerpc/sysdev/ipic.h > index 9391c57..fe31a00 100644 > --- a/arch/powerpc/sysdev/ipic.h > +++ b/arch/powerpc/sysdev/ipic.h > @@ -43,7 +43,7 @@ struct ipic { > volatile u32 __iomem *regs; > > /* The remapper for this IPIC */ > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > }; > > struct ipic_info { > diff --git a/arch/powerpc/sysdev/mpc8xx_pic.c b/arch/powerpc/sysdev/mpc8xx_pic.c > index 8c27d26..f4bf039 100644 > --- a/arch/powerpc/sysdev/mpc8xx_pic.c > +++ b/arch/powerpc/sysdev/mpc8xx_pic.c > @@ -18,7 +18,7 @@ > > extern int cpm_get_irq(struct pt_regs *regs); > > -static struct irq_host *mpc8xx_pic_host; > +static struct irq_domain *mpc8xx_pic_host; > #define NR_MASK_WORDS ((NR_IRQS + 31) / 32) > static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS]; > static sysconf8xx_t __iomem *siu_reg; > @@ -118,7 +118,7 @@ unsigned int mpc8xx_get_irq(void) > > } > > -static int mpc8xx_pic_host_map(struct irq_host *h, unsigned int virq, > +static int mpc8xx_pic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > pr_debug("mpc8xx_pic_host_map(%d, 0x%lx)\n", virq, hw); > @@ -129,7 +129,7 @@ static int mpc8xx_pic_host_map(struct irq_host *h, unsigned int virq, > } > > > -static int mpc8xx_pic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int mpc8xx_pic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > { > diff --git a/arch/powerpc/sysdev/mpc8xxx_gpio.c b/arch/powerpc/sysdev/mpc8xxx_gpio.c > index c48cd81..7fa32f1 100644 > --- a/arch/powerpc/sysdev/mpc8xxx_gpio.c > +++ b/arch/powerpc/sysdev/mpc8xxx_gpio.c > @@ -37,7 +37,7 @@ struct mpc8xxx_gpio_chip { > * open drain mode safely > */ > u32 data; > - struct irq_host *irq; > + struct irq_domain *irq; > void *of_dev_id_data; > }; > > @@ -270,7 +270,7 @@ static struct irq_chip mpc8xxx_irq_chip = { > .set_type = mpc8xxx_irq_set_type, > }; > > -static int mpc8xxx_gpio_irq_map(struct irq_host *h, unsigned int virq, > +static int mpc8xxx_gpio_irq_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct mpc8xxx_gpio_chip *mpc8xxx_gc = h->host_data; > @@ -285,7 +285,7 @@ static int mpc8xxx_gpio_irq_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int mpc8xxx_gpio_irq_xlate(struct irq_host *h, struct device_node *ct, > +static int mpc8xxx_gpio_irq_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c > index 7c13426..a52e257 100644 > --- a/arch/powerpc/sysdev/mpic.c > +++ b/arch/powerpc/sysdev/mpic.c > @@ -931,13 +931,13 @@ static struct irq_chip mpic_irq_ht_chip = { > #endif /* CONFIG_MPIC_U3_HT_IRQS */ > > > -static int mpic_host_match(struct irq_host *h, struct device_node *node) > +static int mpic_host_match(struct irq_domain *h, struct device_node *node) > { > /* Exact match, unless mpic node is NULL */ > return h->of_node == NULL || h->of_node == node; > } > > -static int mpic_host_map(struct irq_host *h, unsigned int virq, > +static int mpic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct mpic *mpic = h->host_data; > @@ -987,7 +987,7 @@ static int mpic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int mpic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int mpic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > > diff --git a/arch/powerpc/sysdev/mv64x60_pic.c b/arch/powerpc/sysdev/mv64x60_pic.c > index 485b924..33fbc90 100644 > --- a/arch/powerpc/sysdev/mv64x60_pic.c > +++ b/arch/powerpc/sysdev/mv64x60_pic.c > @@ -70,7 +70,7 @@ static u32 mv64x60_cached_low_mask; > static u32 mv64x60_cached_high_mask = MV64X60_HIGH_GPP_GROUPS; > static u32 mv64x60_cached_gpp_mask; > > -static struct irq_host *mv64x60_irq_host; > +static struct irq_domain *mv64x60_irq_host; > > /* > * mv64x60_chip_low functions > @@ -208,7 +208,7 @@ static struct irq_chip *mv64x60_chips[] = { > [MV64x60_LEVEL1_GPP] = &mv64x60_chip_gpp, > }; > > -static int mv64x60_host_map(struct irq_host *h, unsigned int virq, > +static int mv64x60_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hwirq) > { > int level1; > diff --git a/arch/powerpc/sysdev/qe_lib/qe_ic.c b/arch/powerpc/sysdev/qe_lib/qe_ic.c > index 541ba98..f28fd8f 100644 > --- a/arch/powerpc/sysdev/qe_lib/qe_ic.c > +++ b/arch/powerpc/sysdev/qe_lib/qe_ic.c > @@ -243,13 +243,13 @@ static struct irq_chip qe_ic_irq_chip = { > .mask_ack = qe_ic_mask_irq, > }; > > -static int qe_ic_host_match(struct irq_host *h, struct device_node *node) > +static int qe_ic_host_match(struct irq_domain *h, struct device_node *node) > { > /* Exact match, unless qe_ic node is NULL */ > return h->of_node == NULL || h->of_node == node; > } > > -static int qe_ic_host_map(struct irq_host *h, unsigned int virq, > +static int qe_ic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct qe_ic *qe_ic = h->host_data; > @@ -270,7 +270,7 @@ static int qe_ic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int qe_ic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int qe_ic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 * intspec, unsigned int intsize, > irq_hw_number_t * out_hwirq, > unsigned int *out_flags) > diff --git a/arch/powerpc/sysdev/qe_lib/qe_ic.h b/arch/powerpc/sysdev/qe_lib/qe_ic.h > index c1361d0..c327872 100644 > --- a/arch/powerpc/sysdev/qe_lib/qe_ic.h > +++ b/arch/powerpc/sysdev/qe_lib/qe_ic.h > @@ -79,7 +79,7 @@ struct qe_ic { > volatile u32 __iomem *regs; > > /* The remapper for this QEIC */ > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > > /* The "linux" controller struct */ > struct irq_chip hc_irq; > diff --git a/arch/powerpc/sysdev/tsi108_pci.c b/arch/powerpc/sysdev/tsi108_pci.c > index 0ab9281..7a9b37a 100644 > --- a/arch/powerpc/sysdev/tsi108_pci.c > +++ b/arch/powerpc/sysdev/tsi108_pci.c > @@ -51,7 +51,7 @@ > u32 tsi108_pci_cfg_base; > static u32 tsi108_pci_cfg_phys; > u32 tsi108_csr_vir_base; > -static struct irq_host *pci_irq_host; > +static struct irq_domain *pci_irq_host; > > extern u32 get_vir_csrbase(void); > extern u32 tsi108_read_reg(u32 reg_offset); > @@ -382,7 +382,7 @@ static struct irq_chip tsi108_pci_irq = { > .unmask = tsi108_pci_irq_enable, > }; > > -static int pci_irq_host_xlate(struct irq_host *h, struct device_node *ct, > +static int pci_irq_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_flags) > { > @@ -391,7 +391,7 @@ static int pci_irq_host_xlate(struct irq_host *h, struct device_node *ct, > return 0; > } > > -static int pci_irq_host_map(struct irq_host *h, unsigned int virq, > +static int pci_irq_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { unsigned int irq; > DBG("%s(%d, 0x%lx)\n", __func__, virq, hw); > diff --git a/arch/powerpc/sysdev/uic.c b/arch/powerpc/sysdev/uic.c > index 0038fb7..3c835f5 100644 > --- a/arch/powerpc/sysdev/uic.c > +++ b/arch/powerpc/sysdev/uic.c > @@ -52,7 +52,7 @@ struct uic { > spinlock_t lock; > > /* The remapper for this UIC */ > - struct irq_host *irqhost; > + struct irq_domain *irqhost; > }; > > static void uic_unmask_irq(unsigned int virq) > @@ -185,7 +185,7 @@ static struct irq_chip uic_irq_chip = { > .set_type = uic_set_irq_type, > }; > > -static int uic_host_map(struct irq_host *h, unsigned int virq, > +static int uic_host_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t hw) > { > struct uic *uic = h->host_data; > @@ -201,7 +201,7 @@ static int uic_host_map(struct irq_host *h, unsigned int virq, > return 0; > } > > -static int uic_host_xlate(struct irq_host *h, struct device_node *ct, > +static int uic_host_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, unsigned int *out_type) > > diff --git a/arch/powerpc/sysdev/xilinx_intc.c b/arch/powerpc/sysdev/xilinx_intc.c > index 1e0ccfa..f6d18cb 100644 > --- a/arch/powerpc/sysdev/xilinx_intc.c > +++ b/arch/powerpc/sysdev/xilinx_intc.c > @@ -40,7 +40,7 @@ > #define XINTC_IVR 24 /* Interrupt Vector */ > #define XINTC_MER 28 /* Master Enable */ > > -static struct irq_host *master_irqhost; > +static struct irq_domain *master_irqhost; > > #define XILINX_INTC_MAXIRQS (32) > > @@ -147,7 +147,7 @@ static struct irq_chip xilinx_intc_edge_irqchip = { > /** > * xilinx_intc_xlate - translate virq# from device tree interrupts property > */ > -static int xilinx_intc_xlate(struct irq_host *h, struct device_node *ct, > +static int xilinx_intc_xlate(struct irq_domain *h, struct device_node *ct, > const u32 *intspec, unsigned int intsize, > irq_hw_number_t *out_hwirq, > unsigned int *out_flags) > @@ -167,7 +167,7 @@ static int xilinx_intc_xlate(struct irq_host *h, struct device_node *ct, > > return 0; > } > -static int xilinx_intc_map(struct irq_host *h, unsigned int virq, > +static int xilinx_intc_map(struct irq_domain *h, unsigned int virq, > irq_hw_number_t irq) > { > set_irq_chip_data(virq, h->host_data); > @@ -188,10 +188,10 @@ static struct irq_host_ops xilinx_intc_ops = { > .xlate = xilinx_intc_xlate, > }; > > -struct irq_host * __init > +struct irq_domain * __init > xilinx_intc_init(struct device_node *np) > { > - struct irq_host * irq; > + struct irq_domain * irq; > void * regs; > > /* Find and map the intc registers */ > @@ -206,7 +206,7 @@ xilinx_intc_init(struct device_node *np) > out_be32(regs + XINTC_IAR, ~(u32) 0); /* Acknowledge pending irqs */ > out_be32(regs + XINTC_MER, 0x3UL); /* Turn on the Master Enable. */ > > - /* Allocate and initialize an irq_host structure. */ > + /* Allocate and initialize an irq_domain structure. */ > irq = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, XILINX_INTC_MAXIRQS, > &xilinx_intc_ops, -1); > if (!irq) > -- > 1.7.0.4 > _______________________________________________ > Linuxppc-dev mailing list > Linuxppc-dev@lists.ozlabs.org > https://lists.ozlabs.org/listinfo/linuxppc-dev
> > For this to make sense, it really needs to also rename irq_host_ops > structure, the IRQ_HOST_MAP* #defines, and the irq_*_host functions. > It also /should/ adjust the users of irq_domain to rename function > local variables and structure members. Otherwise there will be an > even worse mismatch in naming. Happy to do so, but last time we talked about this, we decided not to do *that* aspect of the rename with this patch, and that we'd get to it later with follow on patches once this step was done. Your call; just let me know. jdl
On Fri, Jan 21, 2011 at 10:19 AM, Jon Loeliger <jdl@jdl.com> wrote: >> >> For this to make sense, it really needs to also rename irq_host_ops >> structure, the IRQ_HOST_MAP* #defines, and the irq_*_host functions. >> It also /should/ adjust the users of irq_domain to rename function >> local variables and structure members. Â Otherwise there will be an >> even worse mismatch in naming. > > Happy to do so, but last time we talked about this, we decided > not to do *that* aspect of the rename with this patch, and that > we'd get to it later with follow on patches once this step was done. I always reserve the right to change my mind. }:-> Sorry about that, but I actually applied the patch this morning with the thought that I'd get Linus to pick it up late to avoid collisions in linux-next. However, when I actually looked at the result I realized that at the very least, the irq_host_ops, the #defines, and the irq_*_host functions absolutely have to be renamed at the same time. Not necessarily in the same patch, but definitely at the same time. g.
> > I always reserve the right to change my mind. }:-> Naturally! > Sorry about that, No problem. The thought back then was that we'd hit the "global" piece and then we'd buy the time to hit the local pieces as we could. > but I actually applied the patch this morning with the thought that > I'd get Linus to pick it up late to avoid collisions in linux-next. Makes sense. > However, when I actually looked at the result I realized that at the > very least, the irq_host_ops, the #defines, and the irq_*_host > functions absolutely have to be renamed at the same time. Not > necessarily in the same patch, but definitely at the same time. Will do! jdl
diff --git a/arch/microblaze/include/asm/irq.h b/arch/microblaze/include/asm/irq.h index ec5583d..8ef92dd 100644 --- a/arch/microblaze/include/asm/irq.h +++ b/arch/microblaze/include/asm/irq.h @@ -36,7 +36,7 @@ static inline void irq_dispose_mapping(unsigned int virq) return; } -struct irq_host; +struct irq_domain; /** * irq_create_mapping - Map a hardware interrupt into linux virq space @@ -48,7 +48,7 @@ struct irq_host; * If the sense/trigger is to be specified, set_irq_type() should be called * on the number returned from that call. */ -extern unsigned int irq_create_mapping(struct irq_host *host, +extern unsigned int irq_create_mapping(struct irq_domain *host, irq_hw_number_t hwirq); #endif /* _ASM_MICROBLAZE_IRQ_H */ diff --git a/arch/microblaze/kernel/irq.c b/arch/microblaze/kernel/irq.c index a9345fb..059bb11 100644 --- a/arch/microblaze/kernel/irq.c +++ b/arch/microblaze/kernel/irq.c @@ -89,7 +89,7 @@ skip: /* MS: There is no any advance mapping mechanism. We are using simple 32bit intc without any cascades or any connection that's why mapping is 1:1 */ -unsigned int irq_create_mapping(struct irq_host *host, irq_hw_number_t hwirq) +unsigned int irq_create_mapping(struct irq_domain *host, irq_hw_number_t hwirq) { return hwirq; } diff --git a/arch/powerpc/include/asm/i8259.h b/arch/powerpc/include/asm/i8259.h index 105ade2..c3fdfbd 100644 --- a/arch/powerpc/include/asm/i8259.h +++ b/arch/powerpc/include/asm/i8259.h @@ -6,7 +6,7 @@ extern void i8259_init(struct device_node *node, unsigned long intack_addr); extern unsigned int i8259_irq(void); -extern struct irq_host *i8259_get_host(void); +extern struct irq_domain *i8259_get_host(void); #endif /* __KERNEL__ */ #endif /* _ASM_POWERPC_I8259_H */ diff --git a/arch/powerpc/include/asm/irq.h b/arch/powerpc/include/asm/irq.h index 67ab5fb..3e25340 100644 --- a/arch/powerpc/include/asm/irq.h +++ b/arch/powerpc/include/asm/irq.h @@ -66,7 +66,7 @@ typedef unsigned long irq_hw_number_t; * by some sort of arch-specific void * "token" used to identify interrupt * controllers. */ -struct irq_host; +struct irq_domain; struct radix_tree_root; /* Functions below are provided by the host and called whenever a new mapping @@ -78,18 +78,18 @@ struct irq_host_ops { /* Match an interrupt controller device node to a host, returns * 1 on a match */ - int (*match)(struct irq_host *h, struct device_node *node); + int (*match)(struct irq_domain *h, struct device_node *node); /* Create or update a mapping between a virtual irq number and a hw * irq number. This is called only once for a given mapping. */ - int (*map)(struct irq_host *h, unsigned int virq, irq_hw_number_t hw); + int (*map)(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw); /* Dispose of such a mapping */ - void (*unmap)(struct irq_host *h, unsigned int virq); + void (*unmap)(struct irq_domain *h, unsigned int virq); /* Update of such a mapping */ - void (*remap)(struct irq_host *h, unsigned int virq, irq_hw_number_t hw); + void (*remap)(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw); /* Translate device-tree interrupt specifier from raw format coming * from the firmware to a irq_hw_number_t (interrupt line number) and @@ -99,12 +99,12 @@ struct irq_host_ops { * the type (which amount to keeping whatever default value the * interrupt controller has for that line) */ - int (*xlate)(struct irq_host *h, struct device_node *ctrler, + int (*xlate)(struct irq_domain *h, struct device_node *ctrler, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_type); }; -struct irq_host { +struct irq_domain { struct list_head link; /* type of reverse mapping technique */ @@ -135,7 +135,7 @@ struct irq_host { */ struct irq_map_entry { irq_hw_number_t hwirq; - struct irq_host *host; + struct irq_domain *host; }; extern struct irq_map_entry irq_map[NR_IRQS]; @@ -143,14 +143,14 @@ extern struct irq_map_entry irq_map[NR_IRQS]; extern irq_hw_number_t virq_to_hw(unsigned int virq); /** - * irq_alloc_host - Allocate a new irq_host data structure + * irq_alloc_host - Allocate a new irq_domain data structure * @of_node: optional device-tree node of the interrupt controller * @revmap_type: type of reverse mapping to use * @revmap_arg: for IRQ_HOST_MAP_LINEAR linear only: size of the map * @ops: map/unmap host callbacks * @inval_irq: provide a hw number in that host space that is always invalid * - * Allocates and initialize and irq_host structure. Note that in the case of + * Allocates and initialize and irq_domain structure. Note that in the case of * IRQ_HOST_MAP_LEGACY, the map() callback will be called before this returns * for all legacy interrupts except 0 (which is always the invalid irq for * a legacy controller). For a IRQ_HOST_MAP_LINEAR, the map is allocated by @@ -158,7 +158,7 @@ extern irq_hw_number_t virq_to_hw(unsigned int virq); * later during boot automatically (the reverse mapping will use the slow path * until that happens). */ -extern struct irq_host *irq_alloc_host(struct device_node *of_node, +extern struct irq_domain *irq_alloc_host(struct device_node *of_node, unsigned int revmap_type, unsigned int revmap_arg, struct irq_host_ops *ops, @@ -169,7 +169,7 @@ extern struct irq_host *irq_alloc_host(struct device_node *of_node, * irq_find_host - Locates a host for a given device node * @node: device-tree node of the interrupt controller */ -extern struct irq_host *irq_find_host(struct device_node *node); +extern struct irq_domain *irq_find_host(struct device_node *node); /** @@ -181,7 +181,7 @@ extern struct irq_host *irq_find_host(struct device_node *node); * platforms that want to manipulate a few hard coded interrupt numbers that * aren't properly represented in the device-tree. */ -extern void irq_set_default_host(struct irq_host *host); +extern void irq_set_default_host(struct irq_domain *host); /** @@ -204,7 +204,7 @@ extern void irq_set_virq_count(unsigned int count); * If the sense/trigger is to be specified, set_irq_type() should be called * on the number returned from that call. */ -extern unsigned int irq_create_mapping(struct irq_host *host, +extern unsigned int irq_create_mapping(struct irq_domain *host, irq_hw_number_t hwirq); @@ -223,7 +223,7 @@ extern void irq_dispose_mapping(unsigned int virq); * irq controller implementation directly calls the appropriate low level * mapping function. */ -extern unsigned int irq_find_mapping(struct irq_host *host, +extern unsigned int irq_find_mapping(struct irq_domain *host, irq_hw_number_t hwirq); /** @@ -234,7 +234,7 @@ extern unsigned int irq_find_mapping(struct irq_host *host, * interrupt numbers they generate. In such a case it's simplest to use * the linux virq as the hardware interrupt number. */ -extern unsigned int irq_create_direct_mapping(struct irq_host *host); +extern unsigned int irq_create_direct_mapping(struct irq_domain *host); /** * irq_radix_revmap_insert - Insert a hw irq to linux virq number mapping. @@ -245,7 +245,7 @@ extern unsigned int irq_create_direct_mapping(struct irq_host *host); * This is for use by irq controllers that use a radix tree reverse * mapping for fast lookup. */ -extern void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, +extern void irq_radix_revmap_insert(struct irq_domain *host, unsigned int virq, irq_hw_number_t hwirq); /** @@ -256,7 +256,7 @@ extern void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, * This is a fast path, for use by irq controller code that uses radix tree * revmaps */ -extern unsigned int irq_radix_revmap_lookup(struct irq_host *host, +extern unsigned int irq_radix_revmap_lookup(struct irq_domain *host, irq_hw_number_t hwirq); /** @@ -269,7 +269,7 @@ extern unsigned int irq_radix_revmap_lookup(struct irq_host *host, * yet and will create the revmap entry with appropriate locking */ -extern unsigned int irq_linear_revmap(struct irq_host *host, +extern unsigned int irq_linear_revmap(struct irq_domain *host, irq_hw_number_t hwirq); @@ -284,7 +284,7 @@ extern unsigned int irq_linear_revmap(struct irq_host *host, * and that can be used by some irq controllers implementations for things * like allocating ranges of numbers for MSIs. The revmaps are left untouched. */ -extern unsigned int irq_alloc_virt(struct irq_host *host, +extern unsigned int irq_alloc_virt(struct irq_domain *host, unsigned int count, unsigned int hint); diff --git a/arch/powerpc/include/asm/mpic.h b/arch/powerpc/include/asm/mpic.h index e000cce..18d07da 100644 --- a/arch/powerpc/include/asm/mpic.h +++ b/arch/powerpc/include/asm/mpic.h @@ -253,7 +253,7 @@ struct mpic_irq_save { struct mpic { /* The remapper for this MPIC */ - struct irq_host *irqhost; + struct irq_domain *irqhost; /* The "linux" controller struct */ struct irq_chip hc_irq; diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c index ce557f6..e890cc4 100644 --- a/arch/powerpc/kernel/irq.c +++ b/arch/powerpc/kernel/irq.c @@ -533,7 +533,7 @@ static unsigned int revmap_trees_allocated; static DEFINE_MUTEX(revmap_trees_mutex); struct irq_map_entry irq_map[NR_IRQS]; static unsigned int irq_virq_count = NR_IRQS; -static struct irq_host *irq_default_host; +static struct irq_domain *irq_default_host; irq_hw_number_t virq_to_hw(unsigned int virq) { @@ -541,19 +541,19 @@ irq_hw_number_t virq_to_hw(unsigned int virq) } EXPORT_SYMBOL_GPL(virq_to_hw); -static int default_irq_host_match(struct irq_host *h, struct device_node *np) +static int default_irq_host_match(struct irq_domain *h, struct device_node *np) { return h->of_node != NULL && h->of_node == np; } -struct irq_host *irq_alloc_host(struct device_node *of_node, +struct irq_domain *irq_alloc_host(struct device_node *of_node, unsigned int revmap_type, unsigned int revmap_arg, struct irq_host_ops *ops, irq_hw_number_t inval_irq) { - struct irq_host *host; - unsigned int size = sizeof(struct irq_host); + struct irq_domain *host; + unsigned int size = sizeof(struct irq_domain); unsigned int i; unsigned int *rmap; unsigned long flags; @@ -638,9 +638,9 @@ struct irq_host *irq_alloc_host(struct device_node *of_node, return host; } -struct irq_host *irq_find_host(struct device_node *node) +struct irq_domain *irq_find_host(struct device_node *node) { - struct irq_host *h, *found = NULL; + struct irq_domain *h, *found = NULL; unsigned long flags; /* We might want to match the legacy controller last since @@ -659,7 +659,7 @@ struct irq_host *irq_find_host(struct device_node *node) } EXPORT_SYMBOL_GPL(irq_find_host); -void irq_set_default_host(struct irq_host *host) +void irq_set_default_host(struct irq_domain *host) { pr_debug("irq: Default host set to @0x%p\n", host); @@ -675,7 +675,7 @@ void irq_set_virq_count(unsigned int count) irq_virq_count = count; } -static int irq_setup_virq(struct irq_host *host, unsigned int virq, +static int irq_setup_virq(struct irq_domain *host, unsigned int virq, irq_hw_number_t hwirq) { struct irq_desc *desc; @@ -706,7 +706,7 @@ error: return -1; } -unsigned int irq_create_direct_mapping(struct irq_host *host) +unsigned int irq_create_direct_mapping(struct irq_domain *host) { unsigned int virq; @@ -730,7 +730,7 @@ unsigned int irq_create_direct_mapping(struct irq_host *host) return virq; } -unsigned int irq_create_mapping(struct irq_host *host, +unsigned int irq_create_mapping(struct irq_domain *host, irq_hw_number_t hwirq) { unsigned int virq, hint; @@ -789,7 +789,7 @@ EXPORT_SYMBOL_GPL(irq_create_mapping); unsigned int irq_create_of_mapping(struct device_node *controller, const u32 *intspec, unsigned int intsize) { - struct irq_host *host; + struct irq_domain *host; irq_hw_number_t hwirq; unsigned int type = IRQ_TYPE_NONE; unsigned int virq; @@ -828,7 +828,7 @@ EXPORT_SYMBOL_GPL(irq_create_of_mapping); void irq_dispose_mapping(unsigned int virq) { - struct irq_host *host; + struct irq_domain *host; irq_hw_number_t hwirq; if (virq == NO_IRQ) @@ -887,7 +887,7 @@ void irq_dispose_mapping(unsigned int virq) } EXPORT_SYMBOL_GPL(irq_dispose_mapping); -unsigned int irq_find_mapping(struct irq_host *host, +unsigned int irq_find_mapping(struct irq_domain *host, irq_hw_number_t hwirq) { unsigned int i; @@ -920,7 +920,7 @@ unsigned int irq_find_mapping(struct irq_host *host, EXPORT_SYMBOL_GPL(irq_find_mapping); -unsigned int irq_radix_revmap_lookup(struct irq_host *host, +unsigned int irq_radix_revmap_lookup(struct irq_domain *host, irq_hw_number_t hwirq) { struct irq_map_entry *ptr; @@ -955,7 +955,7 @@ unsigned int irq_radix_revmap_lookup(struct irq_host *host, return virq; } -void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, +void irq_radix_revmap_insert(struct irq_domain *host, unsigned int virq, irq_hw_number_t hwirq) { @@ -978,7 +978,7 @@ void irq_radix_revmap_insert(struct irq_host *host, unsigned int virq, } } -unsigned int irq_linear_revmap(struct irq_host *host, +unsigned int irq_linear_revmap(struct irq_domain *host, irq_hw_number_t hwirq) { unsigned int *revmap; @@ -1001,7 +1001,7 @@ unsigned int irq_linear_revmap(struct irq_host *host, return revmap[hwirq]; } -unsigned int irq_alloc_virt(struct irq_host *host, +unsigned int irq_alloc_virt(struct irq_domain *host, unsigned int count, unsigned int hint) { @@ -1058,7 +1058,7 @@ void irq_free_virt(unsigned int virq, unsigned int count) raw_spin_lock_irqsave(&irq_big_lock, flags); for (i = virq; i < (virq + count); i++) { - struct irq_host *host; + struct irq_domain *host; if (i < NUM_ISA_INTERRUPTS || (virq + count) > irq_virq_count) @@ -1095,7 +1095,7 @@ int arch_init_chip_data(struct irq_desc *desc, int node) /* We need to create the radix trees late */ static int irq_late_init(void) { - struct irq_host *h; + struct irq_domain *h; unsigned int i; /* diff --git a/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c b/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c index 4ecf4cf..32e784e 100644 --- a/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c +++ b/arch/powerpc/platforms/512x/mpc5121_ads_cpld.c @@ -21,7 +21,7 @@ #include <asm/prom.h> static struct device_node *cpld_pic_node; -static struct irq_host *cpld_pic_host; +static struct irq_domain *cpld_pic_host; /* * Bits to ignore in the misc_status register @@ -123,13 +123,13 @@ cpld_pic_cascade(unsigned int irq, struct irq_desc *desc) } static int -cpld_pic_host_match(struct irq_host *h, struct device_node *node) +cpld_pic_host_match(struct irq_domain *h, struct device_node *node) { return cpld_pic_node == node; } static int -cpld_pic_host_map(struct irq_host *h, unsigned int virq, +cpld_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { irq_to_desc(virq)->status |= IRQ_LEVEL; diff --git a/arch/powerpc/platforms/52xx/media5200.c b/arch/powerpc/platforms/52xx/media5200.c index 2c7780c..f10ae9d 100644 --- a/arch/powerpc/platforms/52xx/media5200.c +++ b/arch/powerpc/platforms/52xx/media5200.c @@ -45,7 +45,7 @@ static struct of_device_id mpc5200_gpio_ids[] __initdata = { struct media5200_irq { void __iomem *regs; spinlock_t lock; - struct irq_host *irqhost; + struct irq_domain *irqhost; }; struct media5200_irq media5200_irq; @@ -111,7 +111,7 @@ void media5200_irq_cascade(unsigned int virq, struct irq_desc *desc) raw_spin_unlock(&desc->lock); } -static int media5200_irq_map(struct irq_host *h, unsigned int virq, +static int media5200_irq_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct irq_desc *desc = irq_to_desc(virq); @@ -126,7 +126,7 @@ static int media5200_irq_map(struct irq_host *h, unsigned int virq, return 0; } -static int media5200_irq_xlate(struct irq_host *h, struct device_node *ct, +static int media5200_irq_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/platforms/52xx/mpc52xx_gpt.c b/arch/powerpc/platforms/52xx/mpc52xx_gpt.c index e0d703c..fb0c795 100644 --- a/arch/powerpc/platforms/52xx/mpc52xx_gpt.c +++ b/arch/powerpc/platforms/52xx/mpc52xx_gpt.c @@ -80,7 +80,7 @@ MODULE_LICENSE("GPL"); * @regs: virtual address of GPT registers * @lock: spinlock to coordinate between different functions. * @gc: gpio_chip instance structure; used when GPIO is enabled - * @irqhost: Pointer to irq_host instance; used when IRQ mode is supported + * @irqhost: Pointer to irq_domain instance; used when IRQ mode is supported * @wdt_mode: only relevant for gpt0: bit 0 (MPC52xx_GPT_CAN_WDT) indicates * if the gpt may be used as wdt, bit 1 (MPC52xx_GPT_IS_WDT) indicates * if the timer is actively used as wdt which blocks gpt functions @@ -90,7 +90,7 @@ struct mpc52xx_gpt_priv { struct device *dev; struct mpc52xx_gpt __iomem *regs; spinlock_t lock; - struct irq_host *irqhost; + struct irq_domain *irqhost; u32 ipb_freq; u8 wdt_mode; @@ -203,7 +203,7 @@ void mpc52xx_gpt_irq_cascade(unsigned int virq, struct irq_desc *desc) } } -static int mpc52xx_gpt_irq_map(struct irq_host *h, unsigned int virq, +static int mpc52xx_gpt_irq_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct mpc52xx_gpt_priv *gpt = h->host_data; @@ -215,7 +215,7 @@ static int mpc52xx_gpt_irq_map(struct irq_host *h, unsigned int virq, return 0; } -static int mpc52xx_gpt_irq_xlate(struct irq_host *h, struct device_node *ct, +static int mpc52xx_gpt_irq_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/platforms/52xx/mpc52xx_pic.c b/arch/powerpc/platforms/52xx/mpc52xx_pic.c index 4bf4bf7..7d83308 100644 --- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c +++ b/arch/powerpc/platforms/52xx/mpc52xx_pic.c @@ -132,7 +132,7 @@ static struct of_device_id mpc52xx_sdma_ids[] __initdata = { static struct mpc52xx_intr __iomem *intr; static struct mpc52xx_sdma __iomem *sdma; -static struct irq_host *mpc52xx_irqhost = NULL; +static struct irq_domain *mpc52xx_irqhost = NULL; static unsigned char mpc52xx_map_senses[4] = { IRQ_TYPE_LEVEL_HIGH, @@ -354,7 +354,7 @@ static int mpc52xx_is_extirq(int l1, int l2) /** * mpc52xx_irqhost_xlate - translate virq# from device tree interrupts property */ -static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, +static int mpc52xx_irqhost_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) @@ -388,7 +388,7 @@ static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, /** * mpc52xx_irqhost_map - Hook to map from virq to an irq_chip structure */ -static int mpc52xx_irqhost_map(struct irq_host *h, unsigned int virq, +static int mpc52xx_irqhost_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t irq) { int l1irq; diff --git a/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c b/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c index 5a55d87..47b8d5d 100644 --- a/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c +++ b/arch/powerpc/platforms/82xx/pq2ads-pci-pic.c @@ -29,7 +29,7 @@ static DEFINE_RAW_SPINLOCK(pci_pic_lock); struct pq2ads_pci_pic { struct device_node *node; - struct irq_host *host; + struct irq_domain *host; struct { u32 stat; @@ -104,7 +104,7 @@ static void pq2ads_pci_irq_demux(unsigned int irq, struct irq_desc *desc) } } -static int pci_pic_host_map(struct irq_host *h, unsigned int virq, +static int pci_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { irq_to_desc(virq)->status |= IRQ_LEVEL; @@ -113,7 +113,7 @@ static int pci_pic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static void pci_host_unmap(struct irq_host *h, unsigned int virq) +static void pci_host_unmap(struct irq_domain *h, unsigned int virq) { /* remove chip and handler */ set_irq_chip_data(virq, NULL); @@ -128,7 +128,7 @@ static struct irq_host_ops pci_pic_host_ops = { int __init pq2ads_pci_init_irq(void) { struct pq2ads_pci_pic *priv; - struct irq_host *host; + struct irq_domain *host; struct device_node *np; int ret = -ENODEV; int irq; diff --git a/arch/powerpc/platforms/85xx/socrates_fpga_pic.c b/arch/powerpc/platforms/85xx/socrates_fpga_pic.c index d48527f..fe51afe 100644 --- a/arch/powerpc/platforms/85xx/socrates_fpga_pic.c +++ b/arch/powerpc/platforms/85xx/socrates_fpga_pic.c @@ -53,7 +53,7 @@ static struct socrates_fpga_irq_info fpga_irqs[SOCRATES_FPGA_NUM_IRQS] = { static DEFINE_RAW_SPINLOCK(socrates_fpga_pic_lock); static void __iomem *socrates_fpga_pic_iobase; -static struct irq_host *socrates_fpga_pic_irq_host; +static struct irq_domain *socrates_fpga_pic_irq_host; static unsigned int socrates_fpga_irqs[3]; static inline uint32_t socrates_fpga_pic_read(int reg) @@ -241,7 +241,7 @@ static struct irq_chip socrates_fpga_pic_chip = { .set_type = socrates_fpga_pic_set_type, }; -static int socrates_fpga_pic_host_map(struct irq_host *h, unsigned int virq, +static int socrates_fpga_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) { /* All interrupts are LEVEL sensitive */ @@ -252,7 +252,7 @@ static int socrates_fpga_pic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int socrates_fpga_pic_host_xlate(struct irq_host *h, +static int socrates_fpga_pic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) { @@ -293,7 +293,7 @@ void socrates_fpga_pic_init(struct device_node *pic) unsigned long flags; int i; - /* Setup an irq_host structure */ + /* Setup an irq_domain structure */ socrates_fpga_pic_irq_host = irq_alloc_host(pic, IRQ_HOST_MAP_LINEAR, SOCRATES_FPGA_NUM_IRQS, &socrates_fpga_pic_host_ops, SOCRATES_FPGA_NUM_IRQS); diff --git a/arch/powerpc/platforms/86xx/gef_pic.c b/arch/powerpc/platforms/86xx/gef_pic.c index 6df9e25..fed34ab 100644 --- a/arch/powerpc/platforms/86xx/gef_pic.c +++ b/arch/powerpc/platforms/86xx/gef_pic.c @@ -52,7 +52,7 @@ static DEFINE_RAW_SPINLOCK(gef_pic_lock); static void __iomem *gef_pic_irq_reg_base; -static struct irq_host *gef_pic_irq_host; +static struct irq_domain *gef_pic_irq_host; static int gef_pic_cascade_irq; /* @@ -159,7 +159,7 @@ static struct irq_chip gef_pic_chip = { /* When an interrupt is being configured, this call allows some flexibilty * in deciding which irq_chip structure is used */ -static int gef_pic_host_map(struct irq_host *h, unsigned int virq, +static int gef_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) { /* All interrupts are LEVEL sensitive */ @@ -169,7 +169,7 @@ static int gef_pic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int gef_pic_host_xlate(struct irq_host *h, struct device_node *ct, +static int gef_pic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) { @@ -217,7 +217,7 @@ void __init gef_pic_init(struct device_node *np) return; } - /* Setup an irq_host structure */ + /* Setup an irq_domain structure */ gef_pic_irq_host = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, GEF_PIC_NUM_IRQS, &gef_pic_host_ops, NO_IRQ); diff --git a/arch/powerpc/platforms/cell/axon_msi.c b/arch/powerpc/platforms/cell/axon_msi.c index e3e379c..5f88607 100644 --- a/arch/powerpc/platforms/cell/axon_msi.c +++ b/arch/powerpc/platforms/cell/axon_msi.c @@ -66,7 +66,7 @@ struct axon_msic { - struct irq_host *irq_host; + struct irq_domain *irq_host; __le32 *fifo_virt; dma_addr_t fifo_phys; dcr_host_t dcr_host; @@ -150,7 +150,7 @@ static void axon_msi_cascade(unsigned int irq, struct irq_desc *desc) static struct axon_msic *find_msi_translator(struct pci_dev *dev) { - struct irq_host *irq_host; + struct irq_domain *irq_host; struct device_node *dn, *tmp; const phandle *ph; struct axon_msic *msic = NULL; @@ -184,7 +184,7 @@ static struct axon_msic *find_msi_translator(struct pci_dev *dev) irq_host = irq_find_host(dn); if (!irq_host) { - dev_dbg(&dev->dev, "axon_msi: no irq_host found for node %s\n", + dev_dbg(&dev->dev, "axon_msi: no irq_domain found for node %s\n", dn->full_name); goto out_error; } @@ -316,7 +316,7 @@ static struct irq_chip msic_irq_chip = { .name = "AXON-MSI", }; -static int msic_host_map(struct irq_host *h, unsigned int virq, +static int msic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { set_irq_chip_and_handler(virq, &msic_irq_chip, handle_simple_irq); @@ -395,7 +395,7 @@ static int axon_msi_probe(struct platform_device *device, msic->irq_host = irq_alloc_host(dn, IRQ_HOST_MAP_NOMAP, NR_IRQS, &msic_host_ops, 0); if (!msic->irq_host) { - printk(KERN_ERR "axon_msi: couldn't allocate irq_host for %s\n", + printk(KERN_ERR "axon_msi: couldn't allocate irq_domain for %s\n", dn->full_name); goto out_free_fifo; } diff --git a/arch/powerpc/platforms/cell/beat_interrupt.c b/arch/powerpc/platforms/cell/beat_interrupt.c index 682af97..179430d 100644 --- a/arch/powerpc/platforms/cell/beat_interrupt.c +++ b/arch/powerpc/platforms/cell/beat_interrupt.c @@ -34,7 +34,7 @@ static DEFINE_RAW_SPINLOCK(beatic_irq_mask_lock); static uint64_t beatic_irq_mask_enable[(MAX_IRQS+255)/64]; static uint64_t beatic_irq_mask_ack[(MAX_IRQS+255)/64]; -static struct irq_host *beatic_host; +static struct irq_domain *beatic_host; /* * In this implementation, "virq" == "IRQ plug number", @@ -122,7 +122,7 @@ static struct irq_chip beatic_pic = { * * Note that the number (virq) is already assigned at upper layer. */ -static void beatic_pic_host_unmap(struct irq_host *h, unsigned int virq) +static void beatic_pic_host_unmap(struct irq_domain *h, unsigned int virq) { beat_destruct_irq_plug(virq); } @@ -133,7 +133,7 @@ static void beatic_pic_host_unmap(struct irq_host *h, unsigned int virq) * * Note that the number (virq) is already assigned at upper layer. */ -static int beatic_pic_host_map(struct irq_host *h, unsigned int virq, +static int beatic_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct irq_desc *desc = irq_to_desc(virq); @@ -152,7 +152,7 @@ static int beatic_pic_host_map(struct irq_host *h, unsigned int virq, * Update binding hardware IRQ number (hw) and Virtuql * IRQ number (virq). This is called only once for a given mapping. */ -static void beatic_pic_host_remap(struct irq_host *h, unsigned int virq, +static void beatic_pic_host_remap(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { beat_construct_and_connect_irq_plug(virq, hw); @@ -165,7 +165,7 @@ static void beatic_pic_host_remap(struct irq_host *h, unsigned int virq, * Called from irq_create_of_mapping() only. * Note: We have only 1 entry to translate. */ -static int beatic_pic_host_xlate(struct irq_host *h, struct device_node *ct, +static int beatic_pic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) @@ -177,7 +177,7 @@ static int beatic_pic_host_xlate(struct irq_host *h, struct device_node *ct, return 0; } -static int beatic_pic_host_match(struct irq_host *h, struct device_node *np) +static int beatic_pic_host_match(struct irq_domain *h, struct device_node *np) { /* Match all */ return 1; diff --git a/arch/powerpc/platforms/cell/interrupt.c b/arch/powerpc/platforms/cell/interrupt.c index 10eb1a4..2cfb3ee 100644 --- a/arch/powerpc/platforms/cell/interrupt.c +++ b/arch/powerpc/platforms/cell/interrupt.c @@ -56,7 +56,7 @@ struct iic { static DEFINE_PER_CPU(struct iic, cpu_iic); #define IIC_NODE_COUNT 2 -static struct irq_host *iic_host; +static struct irq_domain *iic_host; /* Convert between "pending" bits and hw irq number */ static irq_hw_number_t iic_pending_to_hwnum(struct cbe_iic_pending_bits bits) @@ -184,7 +184,7 @@ void iic_cause_IPI(int cpu, int mesg) out_be64(&per_cpu(cpu_iic, cpu).regs->generate, (0xf - mesg) << 4); } -struct irq_host *iic_get_irq_host(int node) +struct irq_domain *iic_get_irq_host(int node) { return iic_host; } @@ -227,7 +227,7 @@ void iic_request_IPIs(void) #endif /* CONFIG_SMP */ -static int iic_host_match(struct irq_host *h, struct device_node *node) +static int iic_host_match(struct irq_domain *h, struct device_node *node) { return of_device_is_compatible(node, "IBM,CBEA-Internal-Interrupt-Controller"); @@ -279,7 +279,7 @@ out_eoi: raw_spin_unlock(&desc->lock); } -static int iic_host_map(struct irq_host *h, unsigned int virq, +static int iic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { switch (hw & IIC_IRQ_TYPE_MASK) { @@ -296,7 +296,7 @@ static int iic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int iic_host_xlate(struct irq_host *h, struct device_node *ct, +static int iic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c index 3f2e557..0d3dcba 100644 --- a/arch/powerpc/platforms/cell/spider-pic.c +++ b/arch/powerpc/platforms/cell/spider-pic.c @@ -62,7 +62,7 @@ enum { #define SPIDER_IRQ_INVALID 63 struct spider_pic { - struct irq_host *host; + struct irq_domain *host; void __iomem *regs; unsigned int node_id; }; @@ -175,7 +175,7 @@ static struct irq_chip spider_pic = { .set_type = spider_set_irq_type, }; -static int spider_host_map(struct irq_host *h, unsigned int virq, +static int spider_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { set_irq_chip_and_handler(virq, &spider_pic, handle_level_irq); @@ -186,7 +186,7 @@ static int spider_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int spider_host_xlate(struct irq_host *h, struct device_node *ct, +static int spider_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/platforms/embedded6xx/flipper-pic.c b/arch/powerpc/platforms/embedded6xx/flipper-pic.c index c278bd3..80021c3 100644 --- a/arch/powerpc/platforms/embedded6xx/flipper-pic.c +++ b/arch/powerpc/platforms/embedded6xx/flipper-pic.c @@ -96,9 +96,9 @@ static struct irq_chip flipper_pic = { * */ -static struct irq_host *flipper_irq_host; +static struct irq_domain *flipper_irq_host; -static int flipper_pic_map(struct irq_host *h, unsigned int virq, +static int flipper_pic_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) { set_irq_chip_data(virq, h->host_data); @@ -107,13 +107,13 @@ static int flipper_pic_map(struct irq_host *h, unsigned int virq, return 0; } -static void flipper_pic_unmap(struct irq_host *h, unsigned int irq) +static void flipper_pic_unmap(struct irq_domain *h, unsigned int irq) { set_irq_chip_data(irq, NULL); set_irq_chip(irq, NULL); } -static int flipper_pic_match(struct irq_host *h, struct device_node *np) +static int flipper_pic_match(struct irq_domain *h, struct device_node *np) { return 1; } @@ -137,10 +137,10 @@ static void __flipper_quiesce(void __iomem *io_base) out_be32(io_base + FLIPPER_ICR, 0xffffffff); } -struct irq_host * __init flipper_pic_init(struct device_node *np) +struct irq_domain * __init flipper_pic_init(struct device_node *np) { struct device_node *pi; - struct irq_host *irq_host = NULL; + struct irq_domain *irq_host = NULL; struct resource res; void __iomem *io_base; int retval; @@ -169,7 +169,7 @@ struct irq_host * __init flipper_pic_init(struct device_node *np) irq_host = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, FLIPPER_NR_IRQS, &flipper_irq_host_ops, -1); if (!irq_host) { - pr_err("failed to allocate irq_host\n"); + pr_err("failed to allocate irq_domain\n"); return NULL; } diff --git a/arch/powerpc/platforms/embedded6xx/hlwd-pic.c b/arch/powerpc/platforms/embedded6xx/hlwd-pic.c index a771f91..a41ab12 100644 --- a/arch/powerpc/platforms/embedded6xx/hlwd-pic.c +++ b/arch/powerpc/platforms/embedded6xx/hlwd-pic.c @@ -89,9 +89,9 @@ static struct irq_chip hlwd_pic = { * */ -static struct irq_host *hlwd_irq_host; +static struct irq_domain *hlwd_irq_host; -static int hlwd_pic_map(struct irq_host *h, unsigned int virq, +static int hlwd_pic_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) { set_irq_chip_data(virq, h->host_data); @@ -100,7 +100,7 @@ static int hlwd_pic_map(struct irq_host *h, unsigned int virq, return 0; } -static void hlwd_pic_unmap(struct irq_host *h, unsigned int irq) +static void hlwd_pic_unmap(struct irq_domain *h, unsigned int irq) { set_irq_chip_data(irq, NULL); set_irq_chip(irq, NULL); @@ -111,7 +111,7 @@ static struct irq_host_ops hlwd_irq_host_ops = { .unmap = hlwd_pic_unmap, }; -static unsigned int __hlwd_pic_get_irq(struct irq_host *h) +static unsigned int __hlwd_pic_get_irq(struct irq_domain *h) { void __iomem *io_base = h->host_data; int irq; @@ -129,7 +129,7 @@ static unsigned int __hlwd_pic_get_irq(struct irq_host *h) static void hlwd_pic_irq_cascade(unsigned int cascade_virq, struct irq_desc *desc) { - struct irq_host *irq_host = get_irq_data(cascade_virq); + struct irq_domain *irq_host = get_irq_data(cascade_virq); unsigned int virq; raw_spin_lock(&desc->lock); @@ -161,9 +161,9 @@ static void __hlwd_quiesce(void __iomem *io_base) out_be32(io_base + HW_BROADWAY_ICR, 0xffffffff); } -struct irq_host *hlwd_pic_init(struct device_node *np) +struct irq_domain *hlwd_pic_init(struct device_node *np) { - struct irq_host *irq_host; + struct irq_domain *irq_host; struct resource res; void __iomem *io_base; int retval; @@ -186,7 +186,7 @@ struct irq_host *hlwd_pic_init(struct device_node *np) irq_host = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, HLWD_NR_IRQS, &hlwd_irq_host_ops, -1); if (!irq_host) { - pr_err("failed to allocate irq_host\n"); + pr_err("failed to allocate irq_domain\n"); return NULL; } irq_host->host_data = io_base; @@ -206,7 +206,7 @@ unsigned int hlwd_pic_get_irq(void) void hlwd_pic_probe(void) { - struct irq_host *host; + struct irq_domain *host; struct device_node *np; const u32 *interrupts; int cascade_virq; diff --git a/arch/powerpc/platforms/iseries/irq.c b/arch/powerpc/platforms/iseries/irq.c index ba446bf..948af76 100644 --- a/arch/powerpc/platforms/iseries/irq.c +++ b/arch/powerpc/platforms/iseries/irq.c @@ -338,7 +338,7 @@ unsigned int iSeries_get_irq(void) #ifdef CONFIG_PCI -static int iseries_irq_host_map(struct irq_host *h, unsigned int virq, +static int iseries_irq_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { set_irq_chip_and_handler(virq, &iseries_pic, handle_fasteoi_irq); @@ -346,7 +346,7 @@ static int iseries_irq_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int iseries_irq_host_match(struct irq_host *h, struct device_node *np) +static int iseries_irq_host_match(struct irq_domain *h, struct device_node *np) { /* Match all */ return 1; @@ -364,7 +364,7 @@ static struct irq_host_ops iseries_irq_host_ops = { void __init iSeries_init_IRQ(void) { /* Register PCI event handler and open an event path */ - struct irq_host *host; + struct irq_domain *host; int ret; /* diff --git a/arch/powerpc/platforms/powermac/pic.c b/arch/powerpc/platforms/powermac/pic.c index 890d5f7..db69f2b 100644 --- a/arch/powerpc/platforms/powermac/pic.c +++ b/arch/powerpc/platforms/powermac/pic.c @@ -67,7 +67,7 @@ static DEFINE_RAW_SPINLOCK(pmac_pic_lock); static unsigned long ppc_lost_interrupts[NR_MASK_WORDS]; static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS]; static int pmac_irq_cascade = -1; -static struct irq_host *pmac_pic_host; +static struct irq_domain *pmac_pic_host; static void __pmac_retrigger(unsigned int irq_nr) { @@ -280,13 +280,13 @@ static struct irqaction gatwick_cascade_action = { .name = "cascade", }; -static int pmac_pic_host_match(struct irq_host *h, struct device_node *node) +static int pmac_pic_host_match(struct irq_domain *h, struct device_node *node) { /* We match all, we don't always have a node anyway */ return 1; } -static int pmac_pic_host_map(struct irq_host *h, unsigned int virq, +static int pmac_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct irq_desc *desc = irq_to_desc(virq); @@ -306,7 +306,7 @@ static int pmac_pic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int pmac_pic_host_xlate(struct irq_host *h, struct device_node *ct, +static int pmac_pic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/platforms/ps3/interrupt.c b/arch/powerpc/platforms/ps3/interrupt.c index 59d9712..71fec2e 100644 --- a/arch/powerpc/platforms/ps3/interrupt.c +++ b/arch/powerpc/platforms/ps3/interrupt.c @@ -659,12 +659,12 @@ static void __maybe_unused _dump_mask(struct ps3_private *pd, static void dump_bmp(struct ps3_private* pd) {}; #endif /* defined(DEBUG) */ -static void ps3_host_unmap(struct irq_host *h, unsigned int virq) +static void ps3_host_unmap(struct irq_domain *h, unsigned int virq) { set_irq_chip_data(virq, NULL); } -static int ps3_host_map(struct irq_host *h, unsigned int virq, +static int ps3_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) { pr_debug("%s:%d: hwirq %lu, virq %u\n", __func__, __LINE__, hwirq, @@ -675,7 +675,7 @@ static int ps3_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int ps3_host_match(struct irq_host *h, struct device_node *np) +static int ps3_host_match(struct irq_domain *h, struct device_node *np) { /* Match all */ return 1; @@ -733,7 +733,7 @@ void __init ps3_init_IRQ(void) { int result; unsigned cpu; - struct irq_host *host; + struct irq_domain *host; host = irq_alloc_host(NULL, IRQ_HOST_MAP_NOMAP, 0, &ps3_host_ops, PS3_INVALID_OUTLET); diff --git a/arch/powerpc/platforms/pseries/xics.c b/arch/powerpc/platforms/pseries/xics.c index 7b96e5a..d9006d7 100644 --- a/arch/powerpc/platforms/pseries/xics.c +++ b/arch/powerpc/platforms/pseries/xics.c @@ -33,7 +33,7 @@ #include "xics.h" #include "plpar_wrappers.h" -static struct irq_host *xics_host; +static struct irq_domain *xics_host; #define XICS_IPI 2 #define XICS_IRQ_SPURIOUS 0 @@ -452,7 +452,7 @@ static struct irq_chip xics_pic_lpar = { /* Points to the irq_chip we're actually using */ static struct irq_chip *xics_irq_chip; -static int xics_host_match(struct irq_host *h, struct device_node *node) +static int xics_host_match(struct irq_domain *h, struct device_node *node) { /* IBM machines have interrupt parents of various funky types for things * like vdevices, events, etc... The trick we use here is to match @@ -461,7 +461,7 @@ static int xics_host_match(struct irq_host *h, struct device_node *node) return !of_device_is_compatible(node, "chrp,iic"); } -static int xics_host_map(struct irq_host *h, unsigned int virq, +static int xics_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { pr_devel("xics: map virq %d, hwirq 0x%lx\n", virq, hw); @@ -474,7 +474,7 @@ static int xics_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int xics_host_xlate(struct irq_host *h, struct device_node *ct, +static int xics_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/sysdev/cpm1.c b/arch/powerpc/sysdev/cpm1.c index 0085212..2f78da2 100644 --- a/arch/powerpc/sysdev/cpm1.c +++ b/arch/powerpc/sysdev/cpm1.c @@ -54,7 +54,7 @@ cpm8xx_t __iomem *cpmp; /* Pointer to comm processor space */ immap_t __iomem *mpc8xx_immr; static cpic8xx_t __iomem *cpic_reg; -static struct irq_host *cpm_pic_host; +static struct irq_domain *cpm_pic_host; static void cpm_mask_irq(unsigned int irq) { @@ -98,7 +98,7 @@ int cpm_get_irq(void) return irq_linear_revmap(cpm_pic_host, cpm_vec); } -static int cpm_pic_host_map(struct irq_host *h, unsigned int virq, +static int cpm_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { pr_debug("cpm_pic_host_map(%d, 0x%lx)\n", virq, hw); diff --git a/arch/powerpc/sysdev/cpm2_pic.c b/arch/powerpc/sysdev/cpm2_pic.c index fcea4ff..4e18a8b 100644 --- a/arch/powerpc/sysdev/cpm2_pic.c +++ b/arch/powerpc/sysdev/cpm2_pic.c @@ -50,7 +50,7 @@ static intctl_cpm2_t __iomem *cpm2_intctl; -static struct irq_host *cpm2_pic_host; +static struct irq_domain *cpm2_pic_host; #define NR_MASK_WORDS ((NR_IRQS + 31) / 32) static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS]; @@ -221,7 +221,7 @@ unsigned int cpm2_get_irq(void) return irq_linear_revmap(cpm2_pic_host, irq); } -static int cpm2_pic_host_map(struct irq_host *h, unsigned int virq, +static int cpm2_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { pr_debug("cpm2_pic_host_map(%d, 0x%lx)\n", virq, hw); @@ -231,7 +231,7 @@ static int cpm2_pic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int cpm2_pic_host_xlate(struct irq_host *h, struct device_node *ct, +static int cpm2_pic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) { diff --git a/arch/powerpc/sysdev/fsl_msi.c b/arch/powerpc/sysdev/fsl_msi.c index 108d76f..977c5e9 100644 --- a/arch/powerpc/sysdev/fsl_msi.c +++ b/arch/powerpc/sysdev/fsl_msi.c @@ -58,7 +58,7 @@ static struct irq_chip fsl_msi_chip = { .name = "FSL-MSI", }; -static int fsl_msi_host_map(struct irq_host *h, unsigned int virq, +static int fsl_msi_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct fsl_msi *msi_data = h->host_data; diff --git a/arch/powerpc/sysdev/fsl_msi.h b/arch/powerpc/sysdev/fsl_msi.h index 624580c..3852988 100644 --- a/arch/powerpc/sysdev/fsl_msi.h +++ b/arch/powerpc/sysdev/fsl_msi.h @@ -24,7 +24,7 @@ #define FSL_PIC_IP_IPIC 0x00000002 struct fsl_msi { - struct irq_host *irqhost; + struct irq_domain *irqhost; unsigned long cascade_irq; diff --git a/arch/powerpc/sysdev/i8259.c b/arch/powerpc/sysdev/i8259.c index 6323e70..ccb2892 100644 --- a/arch/powerpc/sysdev/i8259.c +++ b/arch/powerpc/sysdev/i8259.c @@ -25,7 +25,7 @@ static unsigned char cached_8259[2] = { 0xff, 0xff }; static DEFINE_RAW_SPINLOCK(i8259_lock); -static struct irq_host *i8259_host; +static struct irq_domain *i8259_host; /* * Acknowledge the IRQ using either the PCI host bridge's interrupt @@ -163,12 +163,12 @@ static struct resource pic_edgectrl_iores = { .flags = IORESOURCE_BUSY, }; -static int i8259_host_match(struct irq_host *h, struct device_node *node) +static int i8259_host_match(struct irq_domain *h, struct device_node *node) { return h->of_node == NULL || h->of_node == node; } -static int i8259_host_map(struct irq_host *h, unsigned int virq, +static int i8259_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { pr_debug("i8259_host_map(%d, 0x%lx)\n", virq, hw); @@ -185,7 +185,7 @@ static int i8259_host_map(struct irq_host *h, unsigned int virq, return 0; } -static void i8259_host_unmap(struct irq_host *h, unsigned int virq) +static void i8259_host_unmap(struct irq_domain *h, unsigned int virq) { /* Make sure irq is masked in hardware */ i8259_mask_irq(virq); @@ -197,7 +197,7 @@ static void i8259_host_unmap(struct irq_host *h, unsigned int virq) synchronize_irq(virq); } -static int i8259_host_xlate(struct irq_host *h, struct device_node *ct, +static int i8259_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) { @@ -224,7 +224,7 @@ static struct irq_host_ops i8259_host_ops = { .xlate = i8259_host_xlate, }; -struct irq_host *i8259_get_host(void) +struct irq_domain *i8259_get_host(void) { return i8259_host; } diff --git a/arch/powerpc/sysdev/ipic.c b/arch/powerpc/sysdev/ipic.c index d7b9b9c..ac0bd54 100644 --- a/arch/powerpc/sysdev/ipic.c +++ b/arch/powerpc/sysdev/ipic.c @@ -676,13 +676,13 @@ static struct irq_chip ipic_edge_irq_chip = { .set_type = ipic_set_irq_type, }; -static int ipic_host_match(struct irq_host *h, struct device_node *node) +static int ipic_host_match(struct irq_domain *h, struct device_node *node) { /* Exact match, unless ipic node is NULL */ return h->of_node == NULL || h->of_node == node; } -static int ipic_host_map(struct irq_host *h, unsigned int virq, +static int ipic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct ipic *ipic = h->host_data; @@ -696,7 +696,7 @@ static int ipic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int ipic_host_xlate(struct irq_host *h, struct device_node *ct, +static int ipic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/sysdev/ipic.h b/arch/powerpc/sysdev/ipic.h index 9391c57..fe31a00 100644 --- a/arch/powerpc/sysdev/ipic.h +++ b/arch/powerpc/sysdev/ipic.h @@ -43,7 +43,7 @@ struct ipic { volatile u32 __iomem *regs; /* The remapper for this IPIC */ - struct irq_host *irqhost; + struct irq_domain *irqhost; }; struct ipic_info { diff --git a/arch/powerpc/sysdev/mpc8xx_pic.c b/arch/powerpc/sysdev/mpc8xx_pic.c index 8c27d26..f4bf039 100644 --- a/arch/powerpc/sysdev/mpc8xx_pic.c +++ b/arch/powerpc/sysdev/mpc8xx_pic.c @@ -18,7 +18,7 @@ extern int cpm_get_irq(struct pt_regs *regs); -static struct irq_host *mpc8xx_pic_host; +static struct irq_domain *mpc8xx_pic_host; #define NR_MASK_WORDS ((NR_IRQS + 31) / 32) static unsigned long ppc_cached_irq_mask[NR_MASK_WORDS]; static sysconf8xx_t __iomem *siu_reg; @@ -118,7 +118,7 @@ unsigned int mpc8xx_get_irq(void) } -static int mpc8xx_pic_host_map(struct irq_host *h, unsigned int virq, +static int mpc8xx_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { pr_debug("mpc8xx_pic_host_map(%d, 0x%lx)\n", virq, hw); @@ -129,7 +129,7 @@ static int mpc8xx_pic_host_map(struct irq_host *h, unsigned int virq, } -static int mpc8xx_pic_host_xlate(struct irq_host *h, struct device_node *ct, +static int mpc8xx_pic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) { diff --git a/arch/powerpc/sysdev/mpc8xxx_gpio.c b/arch/powerpc/sysdev/mpc8xxx_gpio.c index c48cd81..7fa32f1 100644 --- a/arch/powerpc/sysdev/mpc8xxx_gpio.c +++ b/arch/powerpc/sysdev/mpc8xxx_gpio.c @@ -37,7 +37,7 @@ struct mpc8xxx_gpio_chip { * open drain mode safely */ u32 data; - struct irq_host *irq; + struct irq_domain *irq; void *of_dev_id_data; }; @@ -270,7 +270,7 @@ static struct irq_chip mpc8xxx_irq_chip = { .set_type = mpc8xxx_irq_set_type, }; -static int mpc8xxx_gpio_irq_map(struct irq_host *h, unsigned int virq, +static int mpc8xxx_gpio_irq_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct mpc8xxx_gpio_chip *mpc8xxx_gc = h->host_data; @@ -285,7 +285,7 @@ static int mpc8xxx_gpio_irq_map(struct irq_host *h, unsigned int virq, return 0; } -static int mpc8xxx_gpio_irq_xlate(struct irq_host *h, struct device_node *ct, +static int mpc8xxx_gpio_irq_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c index 7c13426..a52e257 100644 --- a/arch/powerpc/sysdev/mpic.c +++ b/arch/powerpc/sysdev/mpic.c @@ -931,13 +931,13 @@ static struct irq_chip mpic_irq_ht_chip = { #endif /* CONFIG_MPIC_U3_HT_IRQS */ -static int mpic_host_match(struct irq_host *h, struct device_node *node) +static int mpic_host_match(struct irq_domain *h, struct device_node *node) { /* Exact match, unless mpic node is NULL */ return h->of_node == NULL || h->of_node == node; } -static int mpic_host_map(struct irq_host *h, unsigned int virq, +static int mpic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct mpic *mpic = h->host_data; @@ -987,7 +987,7 @@ static int mpic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int mpic_host_xlate(struct irq_host *h, struct device_node *ct, +static int mpic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/sysdev/mv64x60_pic.c b/arch/powerpc/sysdev/mv64x60_pic.c index 485b924..33fbc90 100644 --- a/arch/powerpc/sysdev/mv64x60_pic.c +++ b/arch/powerpc/sysdev/mv64x60_pic.c @@ -70,7 +70,7 @@ static u32 mv64x60_cached_low_mask; static u32 mv64x60_cached_high_mask = MV64X60_HIGH_GPP_GROUPS; static u32 mv64x60_cached_gpp_mask; -static struct irq_host *mv64x60_irq_host; +static struct irq_domain *mv64x60_irq_host; /* * mv64x60_chip_low functions @@ -208,7 +208,7 @@ static struct irq_chip *mv64x60_chips[] = { [MV64x60_LEVEL1_GPP] = &mv64x60_chip_gpp, }; -static int mv64x60_host_map(struct irq_host *h, unsigned int virq, +static int mv64x60_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) { int level1; diff --git a/arch/powerpc/sysdev/qe_lib/qe_ic.c b/arch/powerpc/sysdev/qe_lib/qe_ic.c index 541ba98..f28fd8f 100644 --- a/arch/powerpc/sysdev/qe_lib/qe_ic.c +++ b/arch/powerpc/sysdev/qe_lib/qe_ic.c @@ -243,13 +243,13 @@ static struct irq_chip qe_ic_irq_chip = { .mask_ack = qe_ic_mask_irq, }; -static int qe_ic_host_match(struct irq_host *h, struct device_node *node) +static int qe_ic_host_match(struct irq_domain *h, struct device_node *node) { /* Exact match, unless qe_ic node is NULL */ return h->of_node == NULL || h->of_node == node; } -static int qe_ic_host_map(struct irq_host *h, unsigned int virq, +static int qe_ic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct qe_ic *qe_ic = h->host_data; @@ -270,7 +270,7 @@ static int qe_ic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int qe_ic_host_xlate(struct irq_host *h, struct device_node *ct, +static int qe_ic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 * intspec, unsigned int intsize, irq_hw_number_t * out_hwirq, unsigned int *out_flags) diff --git a/arch/powerpc/sysdev/qe_lib/qe_ic.h b/arch/powerpc/sysdev/qe_lib/qe_ic.h index c1361d0..c327872 100644 --- a/arch/powerpc/sysdev/qe_lib/qe_ic.h +++ b/arch/powerpc/sysdev/qe_lib/qe_ic.h @@ -79,7 +79,7 @@ struct qe_ic { volatile u32 __iomem *regs; /* The remapper for this QEIC */ - struct irq_host *irqhost; + struct irq_domain *irqhost; /* The "linux" controller struct */ struct irq_chip hc_irq; diff --git a/arch/powerpc/sysdev/tsi108_pci.c b/arch/powerpc/sysdev/tsi108_pci.c index 0ab9281..7a9b37a 100644 --- a/arch/powerpc/sysdev/tsi108_pci.c +++ b/arch/powerpc/sysdev/tsi108_pci.c @@ -51,7 +51,7 @@ u32 tsi108_pci_cfg_base; static u32 tsi108_pci_cfg_phys; u32 tsi108_csr_vir_base; -static struct irq_host *pci_irq_host; +static struct irq_domain *pci_irq_host; extern u32 get_vir_csrbase(void); extern u32 tsi108_read_reg(u32 reg_offset); @@ -382,7 +382,7 @@ static struct irq_chip tsi108_pci_irq = { .unmask = tsi108_pci_irq_enable, }; -static int pci_irq_host_xlate(struct irq_host *h, struct device_node *ct, +static int pci_irq_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) { @@ -391,7 +391,7 @@ static int pci_irq_host_xlate(struct irq_host *h, struct device_node *ct, return 0; } -static int pci_irq_host_map(struct irq_host *h, unsigned int virq, +static int pci_irq_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { unsigned int irq; DBG("%s(%d, 0x%lx)\n", __func__, virq, hw); diff --git a/arch/powerpc/sysdev/uic.c b/arch/powerpc/sysdev/uic.c index 0038fb7..3c835f5 100644 --- a/arch/powerpc/sysdev/uic.c +++ b/arch/powerpc/sysdev/uic.c @@ -52,7 +52,7 @@ struct uic { spinlock_t lock; /* The remapper for this UIC */ - struct irq_host *irqhost; + struct irq_domain *irqhost; }; static void uic_unmask_irq(unsigned int virq) @@ -185,7 +185,7 @@ static struct irq_chip uic_irq_chip = { .set_type = uic_set_irq_type, }; -static int uic_host_map(struct irq_host *h, unsigned int virq, +static int uic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hw) { struct uic *uic = h->host_data; @@ -201,7 +201,7 @@ static int uic_host_map(struct irq_host *h, unsigned int virq, return 0; } -static int uic_host_xlate(struct irq_host *h, struct device_node *ct, +static int uic_host_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_type) diff --git a/arch/powerpc/sysdev/xilinx_intc.c b/arch/powerpc/sysdev/xilinx_intc.c index 1e0ccfa..f6d18cb 100644 --- a/arch/powerpc/sysdev/xilinx_intc.c +++ b/arch/powerpc/sysdev/xilinx_intc.c @@ -40,7 +40,7 @@ #define XINTC_IVR 24 /* Interrupt Vector */ #define XINTC_MER 28 /* Master Enable */ -static struct irq_host *master_irqhost; +static struct irq_domain *master_irqhost; #define XILINX_INTC_MAXIRQS (32) @@ -147,7 +147,7 @@ static struct irq_chip xilinx_intc_edge_irqchip = { /** * xilinx_intc_xlate - translate virq# from device tree interrupts property */ -static int xilinx_intc_xlate(struct irq_host *h, struct device_node *ct, +static int xilinx_intc_xlate(struct irq_domain *h, struct device_node *ct, const u32 *intspec, unsigned int intsize, irq_hw_number_t *out_hwirq, unsigned int *out_flags) @@ -167,7 +167,7 @@ static int xilinx_intc_xlate(struct irq_host *h, struct device_node *ct, return 0; } -static int xilinx_intc_map(struct irq_host *h, unsigned int virq, +static int xilinx_intc_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t irq) { set_irq_chip_data(virq, h->host_data); @@ -188,10 +188,10 @@ static struct irq_host_ops xilinx_intc_ops = { .xlate = xilinx_intc_xlate, }; -struct irq_host * __init +struct irq_domain * __init xilinx_intc_init(struct device_node *np) { - struct irq_host * irq; + struct irq_domain * irq; void * regs; /* Find and map the intc registers */ @@ -206,7 +206,7 @@ xilinx_intc_init(struct device_node *np) out_be32(regs + XINTC_IAR, ~(u32) 0); /* Acknowledge pending irqs */ out_be32(regs + XINTC_MER, 0x3UL); /* Turn on the Master Enable. */ - /* Allocate and initialize an irq_host structure. */ + /* Allocate and initialize an irq_domain structure. */ irq = irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, XILINX_INTC_MAXIRQS, &xilinx_intc_ops, -1); if (!irq)