aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@secretlab.ca>2012-02-14 16:06:50 -0500
committerGrant Likely <grant.likely@secretlab.ca>2012-02-14 16:06:50 -0500
commitbae1d8f19983fbfa25559aa3cb6a81a84aa82a18 (patch)
tree387012cc698159bfb5851c5022d5b55db2dafadc /drivers
parent644bd954313254b54e08b69077e16831b6e04dfa (diff)
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>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpio/gpio-mpc8xxx.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpio/gpio-mpc8xxx.c b/drivers/gpio/gpio-mpc8xxx.c
index 5cd04b65c556..9efd59732eeb 100644
--- a/drivers/gpio/gpio-mpc8xxx.c
+++ b/drivers/gpio/gpio-mpc8xxx.c
@@ -37,7 +37,7 @@ struct mpc8xxx_gpio_chip {
37 * open drain mode safely 37 * open drain mode safely
38 */ 38 */
39 u32 data; 39 u32 data;
40 struct irq_host *irq; 40 struct irq_domain *irq;
41 void *of_dev_id_data; 41 void *of_dev_id_data;
42}; 42};
43 43
@@ -281,7 +281,7 @@ static struct irq_chip mpc8xxx_irq_chip = {
281 .irq_set_type = mpc8xxx_irq_set_type, 281 .irq_set_type = mpc8xxx_irq_set_type,
282}; 282};
283 283
284static int mpc8xxx_gpio_irq_map(struct irq_host *h, unsigned int virq, 284static int mpc8xxx_gpio_irq_map(struct irq_domain *h, unsigned int virq,
285 irq_hw_number_t hw) 285 irq_hw_number_t hw)
286{ 286{
287 struct mpc8xxx_gpio_chip *mpc8xxx_gc = h->host_data; 287 struct mpc8xxx_gpio_chip *mpc8xxx_gc = h->host_data;
@@ -296,7 +296,7 @@ static int mpc8xxx_gpio_irq_map(struct irq_host *h, unsigned int virq,
296 return 0; 296 return 0;
297} 297}
298 298
299static int mpc8xxx_gpio_irq_xlate(struct irq_host *h, struct device_node *ct, 299static int mpc8xxx_gpio_irq_xlate(struct irq_domain *h, struct device_node *ct,
300 const u32 *intspec, unsigned int intsize, 300 const u32 *intspec, unsigned int intsize,
301 irq_hw_number_t *out_hwirq, 301 irq_hw_number_t *out_hwirq,
302 unsigned int *out_flags) 302 unsigned int *out_flags)
@@ -311,7 +311,7 @@ static int mpc8xxx_gpio_irq_xlate(struct irq_host *h, struct device_node *ct,
311 return 0; 311 return 0;
312} 312}
313 313
314static struct irq_host_ops mpc8xxx_gpio_irq_ops = { 314static struct irq_domain_ops mpc8xxx_gpio_irq_ops = {
315 .map = mpc8xxx_gpio_irq_map, 315 .map = mpc8xxx_gpio_irq_map,
316 .xlate = mpc8xxx_gpio_irq_xlate, 316 .xlate = mpc8xxx_gpio_irq_xlate,
317}; 317};
@@ -365,7 +365,7 @@ static void __init mpc8xxx_add_controller(struct device_node *np)
365 goto skip_irq; 365 goto skip_irq;
366 366
367 mpc8xxx_gc->irq = 367 mpc8xxx_gc->irq =
368 irq_alloc_host(np, IRQ_HOST_MAP_LINEAR, MPC8XXX_GPIO_PINS, 368 irq_alloc_host(np, IRQ_DOMAIN_MAP_LINEAR, MPC8XXX_GPIO_PINS,
369 &mpc8xxx_gpio_irq_ops, MPC8XXX_GPIO_PINS); 369 &mpc8xxx_gpio_irq_ops, MPC8XXX_GPIO_PINS);
370 if (!mpc8xxx_gc->irq) 370 if (!mpc8xxx_gc->irq)
371 goto skip_irq; 371 goto skip_irq;