mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-23 15:27:29 +00:00
irq_domain/powerpc: Use common irq_domain structure instead of irq_host
This patch drops the powerpc-specific irq_host structures and uses the common irq_domain strucutres defined in linux/irqdomain.h. It also fixes all the users to use the new structure names. Renaming irq_host to irq_domain has been discussed for a long time, and this patch is a step in the process of generalizing the powerpc virq code to be usable by all architecture. An astute reader will notice that this patch actually removes the irq_host structure instead of renaming it. This is because the irq_domain structure already exists in include/linux/irqdomain.h and has the needed data members. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Milton Miller <miltonm@bga.com> Tested-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
parent
644bd95431
commit
bae1d8f199
43 changed files with 277 additions and 348 deletions
|
@ -49,7 +49,7 @@ struct uic {
|
|||
raw_spinlock_t lock;
|
||||
|
||||
/* The remapper for this UIC */
|
||||
struct irq_host *irqhost;
|
||||
struct irq_domain *irqhost;
|
||||
};
|
||||
|
||||
static void uic_unmask_irq(struct irq_data *d)
|
||||
|
@ -174,7 +174,7 @@ static struct irq_chip uic_irq_chip = {
|
|||
.irq_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;
|
||||
|
@ -190,7 +190,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)
|
||||
|
||||
|
@ -202,7 +202,7 @@ static int uic_host_xlate(struct irq_host *h, struct device_node *ct,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static struct irq_host_ops uic_host_ops = {
|
||||
static struct irq_domain_ops uic_host_ops = {
|
||||
.map = uic_host_map,
|
||||
.xlate = uic_host_xlate,
|
||||
};
|
||||
|
@ -270,7 +270,7 @@ static struct uic * __init uic_init_one(struct device_node *node)
|
|||
}
|
||||
uic->dcrbase = *dcrreg;
|
||||
|
||||
uic->irqhost = irq_alloc_host(node, IRQ_HOST_MAP_LINEAR,
|
||||
uic->irqhost = irq_alloc_host(node, IRQ_DOMAIN_MAP_LINEAR,
|
||||
NR_UIC_INTS, &uic_host_ops, -1);
|
||||
if (! uic->irqhost)
|
||||
return NULL; /* FIXME: panic? */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue