diff options
author | Rob Herring <robh@kernel.org> | 2015-08-29 19:01:22 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2015-09-16 10:53:38 -0400 |
commit | d17cab4451df1f25f3a46369e0aaeaa18390fa6b (patch) | |
tree | 4a936f3cbd3869c552a437b5bc9e1ada24c1453f /drivers/irqchip | |
parent | ca0141de743dc7760fdfeb9210b82dadf6d9b221 (diff) |
irqchip: Kill off set_irq_flags usage
set_irq_flags is ARM specific with custom flags which have genirq
equivalents. Convert drivers to use the genirq interfaces directly, so we
can kill off set_irq_flags. The translation of flags is as follows:
IRQF_VALID -> !IRQ_NOREQUEST
IRQF_PROBE -> !IRQ_NOPROBE
IRQF_NOAUTOEN -> IRQ_NOAUTOEN
For IRQs managed by an irqdomain, the irqdomain core code handles clearing
and setting IRQ_NOREQUEST already, so there is no need to do this in
.map() functions and we can simply remove the set_irq_flags calls. Some
users also modify IRQ_NOPROBE and this has been maintained although it
is not clear that is really needed. There appears to be a great deal of
blind copy and paste of this code.
Signed-off-by: Rob Herring <robh@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Cc: Lee Jones <lee@kernel.org>
Cc: Alexander Shiyan <shc_work@mail.ru>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Link: http://lkml.kernel.org/r/1440889285-5637-3-git-send-email-robh@kernel.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/irqchip')
-rw-r--r-- | drivers/irqchip/exynos-combiner.c | 2 | ||||
-rw-r--r-- | drivers/irqchip/irq-armada-370-xp.c | 3 | ||||
-rw-r--r-- | drivers/irqchip/irq-bcm2835.c | 2 | ||||
-rw-r--r-- | drivers/irqchip/irq-clps711x.c | 6 | ||||
-rw-r--r-- | drivers/irqchip/irq-gic-v3.c | 5 | ||||
-rw-r--r-- | drivers/irqchip/irq-gic.c | 4 | ||||
-rw-r--r-- | drivers/irqchip/irq-hip04.c | 4 | ||||
-rw-r--r-- | drivers/irqchip/irq-keystone.c | 2 | ||||
-rw-r--r-- | drivers/irqchip/irq-mmp.c | 3 | ||||
-rw-r--r-- | drivers/irqchip/irq-mxs.c | 1 | ||||
-rw-r--r-- | drivers/irqchip/irq-renesas-intc-irqpin.c | 1 | ||||
-rw-r--r-- | drivers/irqchip/irq-s3c24xx.c | 14 | ||||
-rw-r--r-- | drivers/irqchip/irq-sun4i.c | 2 | ||||
-rw-r--r-- | drivers/irqchip/irq-versatile-fpga.c | 2 | ||||
-rw-r--r-- | drivers/irqchip/irq-vic.c | 2 | ||||
-rw-r--r-- | drivers/irqchip/irq-vt8500.c | 1 | ||||
-rw-r--r-- | drivers/irqchip/spear-shirq.c | 1 |
17 files changed, 18 insertions, 37 deletions
diff --git a/drivers/irqchip/exynos-combiner.c b/drivers/irqchip/exynos-combiner.c index 94ddc96f2f7d..cd7d3bc78e34 100644 --- a/drivers/irqchip/exynos-combiner.c +++ b/drivers/irqchip/exynos-combiner.c | |||
@@ -163,7 +163,7 @@ static int combiner_irq_domain_map(struct irq_domain *d, unsigned int irq, | |||
163 | 163 | ||
164 | irq_set_chip_and_handler(irq, &combiner_chip, handle_level_irq); | 164 | irq_set_chip_and_handler(irq, &combiner_chip, handle_level_irq); |
165 | irq_set_chip_data(irq, &combiner_data[hw >> 3]); | 165 | irq_set_chip_data(irq, &combiner_data[hw >> 3]); |
166 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 166 | irq_set_probe(irq); |
167 | 167 | ||
168 | return 0; | 168 | return 0; |
169 | } | 169 | } |
diff --git a/drivers/irqchip/irq-armada-370-xp.c b/drivers/irqchip/irq-armada-370-xp.c index 693b9fb879bd..655cb967a1f2 100644 --- a/drivers/irqchip/irq-armada-370-xp.c +++ b/drivers/irqchip/irq-armada-370-xp.c | |||
@@ -200,7 +200,6 @@ static int armada_370_xp_msi_map(struct irq_domain *domain, unsigned int virq, | |||
200 | { | 200 | { |
201 | irq_set_chip_and_handler(virq, &armada_370_xp_msi_irq_chip, | 201 | irq_set_chip_and_handler(virq, &armada_370_xp_msi_irq_chip, |
202 | handle_simple_irq); | 202 | handle_simple_irq); |
203 | set_irq_flags(virq, IRQF_VALID); | ||
204 | 203 | ||
205 | return 0; | 204 | return 0; |
206 | } | 205 | } |
@@ -317,7 +316,7 @@ static int armada_370_xp_mpic_irq_map(struct irq_domain *h, | |||
317 | irq_set_chip_and_handler(virq, &armada_370_xp_irq_chip, | 316 | irq_set_chip_and_handler(virq, &armada_370_xp_irq_chip, |
318 | handle_level_irq); | 317 | handle_level_irq); |
319 | } | 318 | } |
320 | set_irq_flags(virq, IRQF_VALID | IRQF_PROBE); | 319 | irq_set_probe(virq); |
321 | 320 | ||
322 | return 0; | 321 | return 0; |
323 | } | 322 | } |
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c index 56c9cf488e6c..bf9cc5f2e839 100644 --- a/drivers/irqchip/irq-bcm2835.c +++ b/drivers/irqchip/irq-bcm2835.c | |||
@@ -166,7 +166,7 @@ static int __init armctrl_of_init(struct device_node *node, | |||
166 | BUG_ON(irq <= 0); | 166 | BUG_ON(irq <= 0); |
167 | irq_set_chip_and_handler(irq, &armctrl_chip, | 167 | irq_set_chip_and_handler(irq, &armctrl_chip, |
168 | handle_level_irq); | 168 | handle_level_irq); |
169 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 169 | irq_set_probe(irq); |
170 | } | 170 | } |
171 | } | 171 | } |
172 | 172 | ||
diff --git a/drivers/irqchip/irq-clps711x.c b/drivers/irqchip/irq-clps711x.c index 2dd929eed9e0..eb5eb0cd414d 100644 --- a/drivers/irqchip/irq-clps711x.c +++ b/drivers/irqchip/irq-clps711x.c | |||
@@ -132,14 +132,14 @@ static int __init clps711x_intc_irq_map(struct irq_domain *h, unsigned int virq, | |||
132 | irq_hw_number_t hw) | 132 | irq_hw_number_t hw) |
133 | { | 133 | { |
134 | irq_flow_handler_t handler = handle_level_irq; | 134 | irq_flow_handler_t handler = handle_level_irq; |
135 | unsigned int flags = IRQF_VALID | IRQF_PROBE; | 135 | unsigned int flags = 0; |
136 | 136 | ||
137 | if (!clps711x_irqs[hw].flags) | 137 | if (!clps711x_irqs[hw].flags) |
138 | return 0; | 138 | return 0; |
139 | 139 | ||
140 | if (clps711x_irqs[hw].flags & CLPS711X_FLAG_FIQ) { | 140 | if (clps711x_irqs[hw].flags & CLPS711X_FLAG_FIQ) { |
141 | handler = handle_bad_irq; | 141 | handler = handle_bad_irq; |
142 | flags |= IRQF_NOAUTOEN; | 142 | flags |= IRQ_NOAUTOEN; |
143 | } else if (clps711x_irqs[hw].eoi) { | 143 | } else if (clps711x_irqs[hw].eoi) { |
144 | handler = handle_fasteoi_irq; | 144 | handler = handle_fasteoi_irq; |
145 | } | 145 | } |
@@ -149,7 +149,7 @@ static int __init clps711x_intc_irq_map(struct irq_domain *h, unsigned int virq, | |||
149 | writel_relaxed(0, clps711x_intc->base + clps711x_irqs[hw].eoi); | 149 | writel_relaxed(0, clps711x_intc->base + clps711x_irqs[hw].eoi); |
150 | 150 | ||
151 | irq_set_chip_and_handler(virq, &clps711x_intc_chip, handler); | 151 | irq_set_chip_and_handler(virq, &clps711x_intc_chip, handler); |
152 | set_irq_flags(virq, flags); | 152 | irq_modify_status(virq, IRQ_NOPROBE, flags); |
153 | 153 | ||
154 | return 0; | 154 | return 0; |
155 | } | 155 | } |
diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c index b5418f57ddc2..36ecfc870e5a 100644 --- a/drivers/irqchip/irq-gic-v3.c +++ b/drivers/irqchip/irq-gic-v3.c | |||
@@ -752,13 +752,13 @@ static int gic_irq_domain_map(struct irq_domain *d, unsigned int irq, | |||
752 | irq_set_percpu_devid(irq); | 752 | irq_set_percpu_devid(irq); |
753 | irq_domain_set_info(d, irq, hw, chip, d->host_data, | 753 | irq_domain_set_info(d, irq, hw, chip, d->host_data, |
754 | handle_percpu_devid_irq, NULL, NULL); | 754 | handle_percpu_devid_irq, NULL, NULL); |
755 | set_irq_flags(irq, IRQF_VALID | IRQF_NOAUTOEN); | 755 | irq_set_status_flags(irq, IRQ_NOAUTOEN); |
756 | } | 756 | } |
757 | /* SPIs */ | 757 | /* SPIs */ |
758 | if (hw >= 32 && hw < gic_data.irq_nr) { | 758 | if (hw >= 32 && hw < gic_data.irq_nr) { |
759 | irq_domain_set_info(d, irq, hw, chip, d->host_data, | 759 | irq_domain_set_info(d, irq, hw, chip, d->host_data, |
760 | handle_fasteoi_irq, NULL, NULL); | 760 | handle_fasteoi_irq, NULL, NULL); |
761 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 761 | irq_set_probe(irq); |
762 | } | 762 | } |
763 | /* LPIs */ | 763 | /* LPIs */ |
764 | if (hw >= 8192 && hw < GIC_ID_NR) { | 764 | if (hw >= 8192 && hw < GIC_ID_NR) { |
@@ -766,7 +766,6 @@ static int gic_irq_domain_map(struct irq_domain *d, unsigned int irq, | |||
766 | return -EPERM; | 766 | return -EPERM; |
767 | irq_domain_set_info(d, irq, hw, chip, d->host_data, | 767 | irq_domain_set_info(d, irq, hw, chip, d->host_data, |
768 | handle_fasteoi_irq, NULL, NULL); | 768 | handle_fasteoi_irq, NULL, NULL); |
769 | set_irq_flags(irq, IRQF_VALID); | ||
770 | } | 769 | } |
771 | 770 | ||
772 | return 0; | 771 | return 0; |
diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index 00bb7c05a55e..982c09c2d791 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c | |||
@@ -890,11 +890,11 @@ static int gic_irq_domain_map(struct irq_domain *d, unsigned int irq, | |||
890 | irq_set_percpu_devid(irq); | 890 | irq_set_percpu_devid(irq); |
891 | irq_domain_set_info(d, irq, hw, chip, d->host_data, | 891 | irq_domain_set_info(d, irq, hw, chip, d->host_data, |
892 | handle_percpu_devid_irq, NULL, NULL); | 892 | handle_percpu_devid_irq, NULL, NULL); |
893 | set_irq_flags(irq, IRQF_VALID | IRQF_NOAUTOEN); | 893 | irq_set_status_flags(irq, IRQ_NOAUTOEN); |
894 | } else { | 894 | } else { |
895 | irq_domain_set_info(d, irq, hw, chip, d->host_data, | 895 | irq_domain_set_info(d, irq, hw, chip, d->host_data, |
896 | handle_fasteoi_irq, NULL, NULL); | 896 | handle_fasteoi_irq, NULL, NULL); |
897 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 897 | irq_set_probe(irq); |
898 | } | 898 | } |
899 | return 0; | 899 | return 0; |
900 | } | 900 | } |
diff --git a/drivers/irqchip/irq-hip04.c b/drivers/irqchip/irq-hip04.c index a0128c7c98dd..8f3ca8f3a62b 100644 --- a/drivers/irqchip/irq-hip04.c +++ b/drivers/irqchip/irq-hip04.c | |||
@@ -307,11 +307,11 @@ static int hip04_irq_domain_map(struct irq_domain *d, unsigned int irq, | |||
307 | irq_set_percpu_devid(irq); | 307 | irq_set_percpu_devid(irq); |
308 | irq_set_chip_and_handler(irq, &hip04_irq_chip, | 308 | irq_set_chip_and_handler(irq, &hip04_irq_chip, |
309 | handle_percpu_devid_irq); | 309 | handle_percpu_devid_irq); |
310 | set_irq_flags(irq, IRQF_VALID | IRQF_NOAUTOEN); | 310 | irq_set_status_flags(irq, IRQ_NOAUTOEN); |
311 | } else { | 311 | } else { |
312 | irq_set_chip_and_handler(irq, &hip04_irq_chip, | 312 | irq_set_chip_and_handler(irq, &hip04_irq_chip, |
313 | handle_fasteoi_irq); | 313 | handle_fasteoi_irq); |
314 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 314 | irq_set_probe(irq); |
315 | } | 315 | } |
316 | irq_set_chip_data(irq, d->host_data); | 316 | irq_set_chip_data(irq, d->host_data); |
317 | return 0; | 317 | return 0; |
diff --git a/drivers/irqchip/irq-keystone.c b/drivers/irqchip/irq-keystone.c index 7b784b692f3c..deb89d63a728 100644 --- a/drivers/irqchip/irq-keystone.c +++ b/drivers/irqchip/irq-keystone.c | |||
@@ -127,7 +127,7 @@ static int keystone_irq_map(struct irq_domain *h, unsigned int virq, | |||
127 | 127 | ||
128 | irq_set_chip_data(virq, kirq); | 128 | irq_set_chip_data(virq, kirq); |
129 | irq_set_chip_and_handler(virq, &kirq->chip, handle_level_irq); | 129 | irq_set_chip_and_handler(virq, &kirq->chip, handle_level_irq); |
130 | set_irq_flags(virq, IRQF_VALID | IRQF_PROBE); | 130 | irq_set_probe(virq); |
131 | return 0; | 131 | return 0; |
132 | } | 132 | } |
133 | 133 | ||
diff --git a/drivers/irqchip/irq-mmp.c b/drivers/irqchip/irq-mmp.c index ea6e3a96f3b3..013fc9659a84 100644 --- a/drivers/irqchip/irq-mmp.c +++ b/drivers/irqchip/irq-mmp.c | |||
@@ -164,7 +164,6 @@ static int mmp_irq_domain_map(struct irq_domain *d, unsigned int irq, | |||
164 | irq_hw_number_t hw) | 164 | irq_hw_number_t hw) |
165 | { | 165 | { |
166 | irq_set_chip_and_handler(irq, &icu_irq_chip, handle_level_irq); | 166 | irq_set_chip_and_handler(irq, &icu_irq_chip, handle_level_irq); |
167 | set_irq_flags(irq, IRQF_VALID); | ||
168 | return 0; | 167 | return 0; |
169 | } | 168 | } |
170 | 169 | ||
@@ -234,7 +233,6 @@ void __init icu_init_irq(void) | |||
234 | for (irq = 0; irq < 64; irq++) { | 233 | for (irq = 0; irq < 64; irq++) { |
235 | icu_mask_irq(irq_get_irq_data(irq)); | 234 | icu_mask_irq(irq_get_irq_data(irq)); |
236 | irq_set_chip_and_handler(irq, &icu_irq_chip, handle_level_irq); | 235 | irq_set_chip_and_handler(irq, &icu_irq_chip, handle_level_irq); |
237 | set_irq_flags(irq, IRQF_VALID); | ||
238 | } | 236 | } |
239 | irq_set_default_host(icu_data[0].domain); | 237 | irq_set_default_host(icu_data[0].domain); |
240 | set_handle_irq(mmp_handle_irq); | 238 | set_handle_irq(mmp_handle_irq); |
@@ -337,7 +335,6 @@ void __init mmp2_init_icu(void) | |||
337 | irq_set_chip_and_handler(irq, &icu_irq_chip, | 335 | irq_set_chip_and_handler(irq, &icu_irq_chip, |
338 | handle_level_irq); | 336 | handle_level_irq); |
339 | } | 337 | } |
340 | set_irq_flags(irq, IRQF_VALID); | ||
341 | } | 338 | } |
342 | irq_set_default_host(icu_data[0].domain); | 339 | irq_set_default_host(icu_data[0].domain); |
343 | set_handle_irq(mmp2_handle_irq); | 340 | set_handle_irq(mmp2_handle_irq); |
diff --git a/drivers/irqchip/irq-mxs.c b/drivers/irqchip/irq-mxs.c index 1faf812f3dc8..604df63e2edf 100644 --- a/drivers/irqchip/irq-mxs.c +++ b/drivers/irqchip/irq-mxs.c | |||
@@ -84,7 +84,6 @@ static int icoll_irq_domain_map(struct irq_domain *d, unsigned int virq, | |||
84 | irq_hw_number_t hw) | 84 | irq_hw_number_t hw) |
85 | { | 85 | { |
86 | irq_set_chip_and_handler(virq, &mxs_icoll_chip, handle_level_irq); | 86 | irq_set_chip_and_handler(virq, &mxs_icoll_chip, handle_level_irq); |
87 | set_irq_flags(virq, IRQF_VALID); | ||
88 | 87 | ||
89 | return 0; | 88 | return 0; |
90 | } | 89 | } |
diff --git a/drivers/irqchip/irq-renesas-intc-irqpin.c b/drivers/irqchip/irq-renesas-intc-irqpin.c index d3546a6f4978..9525335723f6 100644 --- a/drivers/irqchip/irq-renesas-intc-irqpin.c +++ b/drivers/irqchip/irq-renesas-intc-irqpin.c | |||
@@ -353,7 +353,6 @@ static int intc_irqpin_irq_domain_map(struct irq_domain *h, unsigned int virq, | |||
353 | irq_set_chip_data(virq, h->host_data); | 353 | irq_set_chip_data(virq, h->host_data); |
354 | irq_set_lockdep_class(virq, &intc_irqpin_irq_lock_class); | 354 | irq_set_lockdep_class(virq, &intc_irqpin_irq_lock_class); |
355 | irq_set_chip_and_handler(virq, &p->irq_chip, handle_level_irq); | 355 | irq_set_chip_and_handler(virq, &p->irq_chip, handle_level_irq); |
356 | set_irq_flags(virq, IRQF_VALID); /* kill me now */ | ||
357 | return 0; | 356 | return 0; |
358 | } | 357 | } |
359 | 358 | ||
diff --git a/drivers/irqchip/irq-s3c24xx.c b/drivers/irqchip/irq-s3c24xx.c index e47572a9bbb2..7154b011ddd2 100644 --- a/drivers/irqchip/irq-s3c24xx.c +++ b/drivers/irqchip/irq-s3c24xx.c | |||
@@ -466,13 +466,11 @@ static int s3c24xx_irq_map(struct irq_domain *h, unsigned int virq, | |||
466 | 466 | ||
467 | irq_set_chip_data(virq, irq_data); | 467 | irq_set_chip_data(virq, irq_data); |
468 | 468 | ||
469 | set_irq_flags(virq, IRQF_VALID); | ||
470 | |||
471 | if (parent_intc && irq_data->type != S3C_IRQTYPE_NONE) { | 469 | if (parent_intc && irq_data->type != S3C_IRQTYPE_NONE) { |
472 | if (irq_data->parent_irq > 31) { | 470 | if (irq_data->parent_irq > 31) { |
473 | pr_err("irq-s3c24xx: parent irq %lu is out of range\n", | 471 | pr_err("irq-s3c24xx: parent irq %lu is out of range\n", |
474 | irq_data->parent_irq); | 472 | irq_data->parent_irq); |
475 | goto err; | 473 | return -EINVAL; |
476 | } | 474 | } |
477 | 475 | ||
478 | parent_irq_data = &parent_intc->irqs[irq_data->parent_irq]; | 476 | parent_irq_data = &parent_intc->irqs[irq_data->parent_irq]; |
@@ -485,18 +483,12 @@ static int s3c24xx_irq_map(struct irq_domain *h, unsigned int virq, | |||
485 | if (!irqno) { | 483 | if (!irqno) { |
486 | pr_err("irq-s3c24xx: could not find mapping for parent irq %lu\n", | 484 | pr_err("irq-s3c24xx: could not find mapping for parent irq %lu\n", |
487 | irq_data->parent_irq); | 485 | irq_data->parent_irq); |
488 | goto err; | 486 | return -EINVAL; |
489 | } | 487 | } |
490 | irq_set_chained_handler(irqno, s3c_irq_demux); | 488 | irq_set_chained_handler(irqno, s3c_irq_demux); |
491 | } | 489 | } |
492 | 490 | ||
493 | return 0; | 491 | return 0; |
494 | |||
495 | err: | ||
496 | set_irq_flags(virq, 0); | ||
497 | |||
498 | /* the only error can result from bad mapping data*/ | ||
499 | return -EINVAL; | ||
500 | } | 492 | } |
501 | 493 | ||
502 | static const struct irq_domain_ops s3c24xx_irq_ops = { | 494 | static const struct irq_domain_ops s3c24xx_irq_ops = { |
@@ -1174,8 +1166,6 @@ static int s3c24xx_irq_map_of(struct irq_domain *h, unsigned int virq, | |||
1174 | 1166 | ||
1175 | irq_set_chip_data(virq, irq_data); | 1167 | irq_set_chip_data(virq, irq_data); |
1176 | 1168 | ||
1177 | set_irq_flags(virq, IRQF_VALID); | ||
1178 | |||
1179 | return 0; | 1169 | return 0; |
1180 | } | 1170 | } |
1181 | 1171 | ||
diff --git a/drivers/irqchip/irq-sun4i.c b/drivers/irqchip/irq-sun4i.c index 4ad3e7c69aa7..0704362f4c82 100644 --- a/drivers/irqchip/irq-sun4i.c +++ b/drivers/irqchip/irq-sun4i.c | |||
@@ -83,7 +83,7 @@ static int sun4i_irq_map(struct irq_domain *d, unsigned int virq, | |||
83 | irq_hw_number_t hw) | 83 | irq_hw_number_t hw) |
84 | { | 84 | { |
85 | irq_set_chip_and_handler(virq, &sun4i_irq_chip, handle_fasteoi_irq); | 85 | irq_set_chip_and_handler(virq, &sun4i_irq_chip, handle_fasteoi_irq); |
86 | set_irq_flags(virq, IRQF_VALID | IRQF_PROBE); | 86 | irq_set_probe(virq); |
87 | 87 | ||
88 | return 0; | 88 | return 0; |
89 | } | 89 | } |
diff --git a/drivers/irqchip/irq-versatile-fpga.c b/drivers/irqchip/irq-versatile-fpga.c index 1b1c63e8d249..598ab3f0e0ac 100644 --- a/drivers/irqchip/irq-versatile-fpga.c +++ b/drivers/irqchip/irq-versatile-fpga.c | |||
@@ -128,7 +128,7 @@ static int fpga_irqdomain_map(struct irq_domain *d, unsigned int irq, | |||
128 | irq_set_chip_data(irq, f); | 128 | irq_set_chip_data(irq, f); |
129 | irq_set_chip_and_handler(irq, &f->chip, | 129 | irq_set_chip_and_handler(irq, &f->chip, |
130 | handle_level_irq); | 130 | handle_level_irq); |
131 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 131 | irq_set_probe(irq); |
132 | return 0; | 132 | return 0; |
133 | } | 133 | } |
134 | 134 | ||
diff --git a/drivers/irqchip/irq-vic.c b/drivers/irqchip/irq-vic.c index cb85504c2ff1..b956dfffe78c 100644 --- a/drivers/irqchip/irq-vic.c +++ b/drivers/irqchip/irq-vic.c | |||
@@ -201,7 +201,7 @@ static int vic_irqdomain_map(struct irq_domain *d, unsigned int irq, | |||
201 | return -EPERM; | 201 | return -EPERM; |
202 | irq_set_chip_and_handler(irq, &vic_chip, handle_level_irq); | 202 | irq_set_chip_and_handler(irq, &vic_chip, handle_level_irq); |
203 | irq_set_chip_data(irq, v->base); | 203 | irq_set_chip_data(irq, v->base); |
204 | set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); | 204 | irq_set_probe(irq); |
205 | return 0; | 205 | return 0; |
206 | } | 206 | } |
207 | 207 | ||
diff --git a/drivers/irqchip/irq-vt8500.c b/drivers/irqchip/irq-vt8500.c index 8371d9978d31..f9af0af21751 100644 --- a/drivers/irqchip/irq-vt8500.c +++ b/drivers/irqchip/irq-vt8500.c | |||
@@ -167,7 +167,6 @@ static int vt8500_irq_map(struct irq_domain *h, unsigned int virq, | |||
167 | irq_hw_number_t hw) | 167 | irq_hw_number_t hw) |
168 | { | 168 | { |
169 | irq_set_chip_and_handler(virq, &vt8500_irq_chip, handle_level_irq); | 169 | irq_set_chip_and_handler(virq, &vt8500_irq_chip, handle_level_irq); |
170 | set_irq_flags(virq, IRQF_VALID); | ||
171 | 170 | ||
172 | return 0; | 171 | return 0; |
173 | } | 172 | } |
diff --git a/drivers/irqchip/spear-shirq.c b/drivers/irqchip/spear-shirq.c index c838c9286ea5..1ccd2abed65f 100644 --- a/drivers/irqchip/spear-shirq.c +++ b/drivers/irqchip/spear-shirq.c | |||
@@ -211,7 +211,6 @@ static void __init spear_shirq_register(struct spear_shirq *shirq, | |||
211 | for (i = 0; i < shirq->nr_irqs; i++) { | 211 | for (i = 0; i < shirq->nr_irqs; i++) { |
212 | irq_set_chip_and_handler(shirq->virq_base + i, | 212 | irq_set_chip_and_handler(shirq->virq_base + i, |
213 | shirq->irq_chip, handle_simple_irq); | 213 | shirq->irq_chip, handle_simple_irq); |
214 | set_irq_flags(shirq->virq_base + i, IRQF_VALID); | ||
215 | irq_set_chip_data(shirq->virq_base + i, shirq); | 214 | irq_set_chip_data(shirq->virq_base + i, shirq); |
216 | } | 215 | } |
217 | } | 216 | } |