diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2007-08-28 04:47:55 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-09-13 11:33:20 -0400 |
commit | 6815800601d3e46b976c868e4e85fb6de32b9133 (patch) | |
tree | df047ed69d7b2b1a744625fd6b2b6f49ada47df4 /arch/powerpc/platforms | |
parent | 8528ab84ebe7a1eeed9b0acc808df86663d506c0 (diff) |
[POWERPC] Provide a default irq_host match, which matches on an exact of_node
The most common match semantic is an exact match based on the device node.
So provide a default implementation that does this, and hook it up if no
match routine is specified.
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms')
-rw-r--r-- | arch/powerpc/platforms/52xx/mpc52xx_pic.c | 7 | ||||
-rw-r--r-- | arch/powerpc/platforms/82xx/mpc82xx_ads.c | 6 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/axon_msi.c | 6 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/spider-pic.c | 6 |
4 files changed, 0 insertions, 25 deletions
diff --git a/arch/powerpc/platforms/52xx/mpc52xx_pic.c b/arch/powerpc/platforms/52xx/mpc52xx_pic.c index 1d793e4b8d56..0f4ca8a2b777 100644 --- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c +++ b/arch/powerpc/platforms/52xx/mpc52xx_pic.c | |||
@@ -241,12 +241,6 @@ static struct irq_chip mpc52xx_sdma_irqchip = { | |||
241 | * irq_host | 241 | * irq_host |
242 | */ | 242 | */ |
243 | 243 | ||
244 | static int mpc52xx_irqhost_match(struct irq_host *h, struct device_node *node) | ||
245 | { | ||
246 | pr_debug("%s: node=%p\n", __func__, node); | ||
247 | return h->of_node == node; | ||
248 | } | ||
249 | |||
250 | static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, | 244 | static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, |
251 | u32 * intspec, unsigned int intsize, | 245 | u32 * intspec, unsigned int intsize, |
252 | irq_hw_number_t * out_hwirq, | 246 | irq_hw_number_t * out_hwirq, |
@@ -367,7 +361,6 @@ static int mpc52xx_irqhost_map(struct irq_host *h, unsigned int virq, | |||
367 | } | 361 | } |
368 | 362 | ||
369 | static struct irq_host_ops mpc52xx_irqhost_ops = { | 363 | static struct irq_host_ops mpc52xx_irqhost_ops = { |
370 | .match = mpc52xx_irqhost_match, | ||
371 | .xlate = mpc52xx_irqhost_xlate, | 364 | .xlate = mpc52xx_irqhost_xlate, |
372 | .map = mpc52xx_irqhost_map, | 365 | .map = mpc52xx_irqhost_map, |
373 | }; | 366 | }; |
diff --git a/arch/powerpc/platforms/82xx/mpc82xx_ads.c b/arch/powerpc/platforms/82xx/mpc82xx_ads.c index 91ddbd2f477d..40087952935a 100644 --- a/arch/powerpc/platforms/82xx/mpc82xx_ads.c +++ b/arch/powerpc/platforms/82xx/mpc82xx_ads.c | |||
@@ -398,11 +398,6 @@ m82xx_pci_irq_demux(unsigned int irq, struct irq_desc *desc) | |||
398 | } | 398 | } |
399 | } | 399 | } |
400 | 400 | ||
401 | static int pci_pic_host_match(struct irq_host *h, struct device_node *node) | ||
402 | { | ||
403 | return h->of_node == node; | ||
404 | } | ||
405 | |||
406 | static int pci_pic_host_map(struct irq_host *h, unsigned int virq, | 401 | static int pci_pic_host_map(struct irq_host *h, unsigned int virq, |
407 | irq_hw_number_t hw) | 402 | irq_hw_number_t hw) |
408 | { | 403 | { |
@@ -418,7 +413,6 @@ static void pci_host_unmap(struct irq_host *h, unsigned int virq) | |||
418 | } | 413 | } |
419 | 414 | ||
420 | static struct irq_host_ops pci_pic_host_ops = { | 415 | static struct irq_host_ops pci_pic_host_ops = { |
421 | .match = pci_pic_host_match, | ||
422 | .map = pci_pic_host_map, | 416 | .map = pci_pic_host_map, |
423 | .unmap = pci_host_unmap, | 417 | .unmap = pci_host_unmap, |
424 | }; | 418 | }; |
diff --git a/arch/powerpc/platforms/cell/axon_msi.c b/arch/powerpc/platforms/cell/axon_msi.c index bdd97bb2446d..74407afddf46 100644 --- a/arch/powerpc/platforms/cell/axon_msi.c +++ b/arch/powerpc/platforms/cell/axon_msi.c | |||
@@ -294,13 +294,7 @@ static int msic_host_map(struct irq_host *h, unsigned int virq, | |||
294 | return 0; | 294 | return 0; |
295 | } | 295 | } |
296 | 296 | ||
297 | static int msic_host_match(struct irq_host *host, struct device_node *dn) | ||
298 | { | ||
299 | return host->of_node == dn; | ||
300 | } | ||
301 | |||
302 | static struct irq_host_ops msic_host_ops = { | 297 | static struct irq_host_ops msic_host_ops = { |
303 | .match = msic_host_match, | ||
304 | .map = msic_host_map, | 298 | .map = msic_host_map, |
305 | }; | 299 | }; |
306 | 300 | ||
diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c index 4309c2cbbeb9..3f4b4aef756d 100644 --- a/arch/powerpc/platforms/cell/spider-pic.c +++ b/arch/powerpc/platforms/cell/spider-pic.c | |||
@@ -175,11 +175,6 @@ static struct irq_chip spider_pic = { | |||
175 | .set_type = spider_set_irq_type, | 175 | .set_type = spider_set_irq_type, |
176 | }; | 176 | }; |
177 | 177 | ||
178 | static int spider_host_match(struct irq_host *h, struct device_node *node) | ||
179 | { | ||
180 | return h->of_node == node; | ||
181 | } | ||
182 | |||
183 | static int spider_host_map(struct irq_host *h, unsigned int virq, | 178 | static int spider_host_map(struct irq_host *h, unsigned int virq, |
184 | irq_hw_number_t hw) | 179 | irq_hw_number_t hw) |
185 | { | 180 | { |
@@ -206,7 +201,6 @@ static int spider_host_xlate(struct irq_host *h, struct device_node *ct, | |||
206 | } | 201 | } |
207 | 202 | ||
208 | static struct irq_host_ops spider_host_ops = { | 203 | static struct irq_host_ops spider_host_ops = { |
209 | .match = spider_host_match, | ||
210 | .map = spider_host_map, | 204 | .map = spider_host_map, |
211 | .xlate = spider_host_xlate, | 205 | .xlate = spider_host_xlate, |
212 | }; | 206 | }; |