aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms
diff options
context:
space:
mode:
authorMichael Ellerman <michael@ellerman.id.au>2007-08-28 04:47:55 -0400
committerPaul Mackerras <paulus@samba.org>2007-09-13 11:33:20 -0400
commit6815800601d3e46b976c868e4e85fb6de32b9133 (patch)
treedf047ed69d7b2b1a744625fd6b2b6f49ada47df4 /arch/powerpc/platforms
parent8528ab84ebe7a1eeed9b0acc808df86663d506c0 (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.c7
-rw-r--r--arch/powerpc/platforms/82xx/mpc82xx_ads.c6
-rw-r--r--arch/powerpc/platforms/cell/axon_msi.c6
-rw-r--r--arch/powerpc/platforms/cell/spider-pic.c6
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
244static 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
250static int mpc52xx_irqhost_xlate(struct irq_host *h, struct device_node *ct, 244static 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
369static struct irq_host_ops mpc52xx_irqhost_ops = { 363static 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
401static int pci_pic_host_match(struct irq_host *h, struct device_node *node)
402{
403 return h->of_node == node;
404}
405
406static int pci_pic_host_map(struct irq_host *h, unsigned int virq, 401static 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
420static struct irq_host_ops pci_pic_host_ops = { 415static 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
297static int msic_host_match(struct irq_host *host, struct device_node *dn)
298{
299 return host->of_node == dn;
300}
301
302static struct irq_host_ops msic_host_ops = { 297static 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
178static int spider_host_match(struct irq_host *h, struct device_node *node)
179{
180 return h->of_node == node;
181}
182
183static int spider_host_map(struct irq_host *h, unsigned int virq, 178static 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
208static struct irq_host_ops spider_host_ops = { 203static 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};