diff options
Diffstat (limited to 'drivers/of/irq.c')
-rw-r--r-- | drivers/of/irq.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/of/irq.c b/drivers/of/irq.c index 1a7980692f25..3cf7a01f557f 100644 --- a/drivers/of/irq.c +++ b/drivers/of/irq.c | |||
@@ -252,8 +252,6 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq) | |||
252 | * Successfully parsed an interrrupt-map translation; copy new | 252 | * Successfully parsed an interrrupt-map translation; copy new |
253 | * interrupt specifier into the out_irq structure | 253 | * interrupt specifier into the out_irq structure |
254 | */ | 254 | */ |
255 | out_irq->np = newpar; | ||
256 | |||
257 | match_array = imap - newaddrsize - newintsize; | 255 | match_array = imap - newaddrsize - newintsize; |
258 | for (i = 0; i < newintsize; i++) | 256 | for (i = 0; i < newintsize; i++) |
259 | out_irq->args[i] = be32_to_cpup(imap - newintsize + i); | 257 | out_irq->args[i] = be32_to_cpup(imap - newintsize + i); |
@@ -262,6 +260,7 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq) | |||
262 | 260 | ||
263 | skiplevel: | 261 | skiplevel: |
264 | /* Iterate again with new parent */ | 262 | /* Iterate again with new parent */ |
263 | out_irq->np = newpar; | ||
265 | pr_debug(" -> new parent: %s\n", of_node_full_name(newpar)); | 264 | pr_debug(" -> new parent: %s\n", of_node_full_name(newpar)); |
266 | of_node_put(ipar); | 265 | of_node_put(ipar); |
267 | ipar = newpar; | 266 | ipar = newpar; |
@@ -469,7 +468,7 @@ int of_irq_to_resource_table(struct device_node *dev, struct resource *res, | |||
469 | } | 468 | } |
470 | EXPORT_SYMBOL_GPL(of_irq_to_resource_table); | 469 | EXPORT_SYMBOL_GPL(of_irq_to_resource_table); |
471 | 470 | ||
472 | struct intc_desc { | 471 | struct of_intc_desc { |
473 | struct list_head list; | 472 | struct list_head list; |
474 | struct device_node *dev; | 473 | struct device_node *dev; |
475 | struct device_node *interrupt_parent; | 474 | struct device_node *interrupt_parent; |
@@ -485,7 +484,7 @@ struct intc_desc { | |||
485 | void __init of_irq_init(const struct of_device_id *matches) | 484 | void __init of_irq_init(const struct of_device_id *matches) |
486 | { | 485 | { |
487 | struct device_node *np, *parent = NULL; | 486 | struct device_node *np, *parent = NULL; |
488 | struct intc_desc *desc, *temp_desc; | 487 | struct of_intc_desc *desc, *temp_desc; |
489 | struct list_head intc_desc_list, intc_parent_list; | 488 | struct list_head intc_desc_list, intc_parent_list; |
490 | 489 | ||
491 | INIT_LIST_HEAD(&intc_desc_list); | 490 | INIT_LIST_HEAD(&intc_desc_list); |
@@ -496,7 +495,7 @@ void __init of_irq_init(const struct of_device_id *matches) | |||
496 | !of_device_is_available(np)) | 495 | !of_device_is_available(np)) |
497 | continue; | 496 | continue; |
498 | /* | 497 | /* |
499 | * Here, we allocate and populate an intc_desc with the node | 498 | * Here, we allocate and populate an of_intc_desc with the node |
500 | * pointer, interrupt-parent device_node etc. | 499 | * pointer, interrupt-parent device_node etc. |
501 | */ | 500 | */ |
502 | desc = kzalloc(sizeof(*desc), GFP_KERNEL); | 501 | desc = kzalloc(sizeof(*desc), GFP_KERNEL); |