Commit-ID:  59b47ddc0b4d7ea8a625512e802832730c1feeb4
Gitweb:     http://git.kernel.org/tip/59b47ddc0b4d7ea8a625512e802832730c1feeb4
Author:     Thomas Gleixner <[email protected]>
AuthorDate: Wed, 7 May 2014 15:44:08 +0000
Committer:  Thomas Gleixner <[email protected]>
CommitDate: Fri, 16 May 2014 14:05:19 +0200

x86: htirq: Use irq_alloc/free_irq()

No functional change, just cleaned up a bit.

This does not replace the requirement to move x86 to irq domains, but
it limits the mess to some degree.

Signed-off-by: Thomas Gleixner <[email protected]>
Reviewed-by: Grant Likely <[email protected]>
Cc: Tony Luck <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Acked-by: Bjorn Helgaas <[email protected]>
Cc: [email protected]
Cc: [email protected]
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Thomas Gleixner <[email protected]>
---
 drivers/pci/htirq.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/htirq.c b/drivers/pci/htirq.c
index 6e373ea..d68b030 100644
--- a/drivers/pci/htirq.c
+++ b/drivers/pci/htirq.c
@@ -87,12 +87,9 @@ void unmask_ht_irq(struct irq_data *data)
 int __ht_create_irq(struct pci_dev *dev, int idx, ht_irq_update_t *update)
 {
        struct ht_irq_cfg *cfg;
+       int max_irq, pos, irq;
        unsigned long flags;
        u32 data;
-       int max_irq;
-       int pos;
-       int irq;
-       int node;
 
        pos = pci_find_ht_capability(dev, HT_CAPTYPE_IRQ);
        if (!pos)
@@ -120,10 +117,8 @@ int __ht_create_irq(struct pci_dev *dev, int idx, 
ht_irq_update_t *update)
        cfg->msg.address_lo = 0xffffffff;
        cfg->msg.address_hi = 0xffffffff;
 
-       node = dev_to_node(&dev->dev);
-       irq = create_irq_nr(0, node);
-
-       if (irq <= 0) {
+       irq = irq_alloc_hwirq(dev_to_node(&dev->dev));
+       if (!irq) {
                kfree(cfg);
                return -EBUSY;
        }
@@ -166,7 +161,7 @@ void ht_destroy_irq(unsigned int irq)
        cfg = irq_get_handler_data(irq);
        irq_set_chip(irq, NULL);
        irq_set_handler_data(irq, NULL);
-       destroy_irq(irq);
+       irq_free_hwirq(irq);
 
        kfree(cfg);
 }
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to