ACPI: PCI: simplify struct acpi_prt_entry
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Tue, 9 Dec 2008 04:31:27 +0000 (21:31 -0700)
committerLen Brown <len.brown@intel.com>
Wed, 31 Dec 2008 02:44:52 +0000 (21:44 -0500)
Remove unused "irq" field, remove unnecessary struct,
rename "handle" to "link".

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/pci_irq.c

index 42b195e..643c4e8 100644 (file)
@@ -45,11 +45,8 @@ struct acpi_prt_entry {
        struct list_head        list;
        struct acpi_pci_id      id;
        u8                      pin;
-       struct {
-               acpi_handle             handle;
-               u32                     index;
-       }                       link;
-       u32                     irq;
+       acpi_handle             link;
+       u32                     index;          /* GSI, or link _CRS index */
 };
 
 static LIST_HEAD(acpi_prt_list);
@@ -205,6 +202,8 @@ acpi_pci_irq_add_entry(acpi_handle handle,
 
        do_prt_fixups(entry, prt);
 
+       entry->index = prt->source_index;
+
        /*
         * Type 1: Dynamic
         * ---------------
@@ -218,10 +217,9 @@ acpi_pci_irq_add_entry(acpi_handle handle,
         *       (e.g. exists somewhere 'below' this _PRT entry in the ACPI
         *       namespace).
         */
-       if (prt->source[0]) {
-               acpi_get_handle(handle, prt->source, &entry->link.handle);
-               entry->link.index = prt->source_index;
-       }
+       if (prt->source[0])
+               acpi_get_handle(handle, prt->source, &entry->link);
+
        /*
         * Type 2: Static
         * --------------
@@ -229,14 +227,12 @@ acpi_pci_irq_add_entry(acpi_handle handle,
         * the IRQ value, which is hardwired to specific interrupt inputs on
         * the interrupt controller.
         */
-       else
-               entry->link.index = prt->source_index;
 
        ACPI_DEBUG_PRINT_RAW((ACPI_DB_INFO,
                              "      %04x:%02x:%02x[%c] -> %s[%d]\n",
                              entry->id.segment, entry->id.bus,
                              entry->id.device, pin_name(entry->pin),
-                             prt->source, entry->link.index));
+                             prt->source, entry->index));
 
        spin_lock(&acpi_prt_lock);
        list_add_tail(&entry->list, &acpi_prt_list);
@@ -310,17 +306,16 @@ acpi_pci_allocate_irq(struct acpi_prt_entry *entry,
        int irq;
 
 
-       if (entry->link.handle) {
-               irq = acpi_pci_link_allocate_irq(entry->link.handle,
-                                                entry->link.index, triggering,
-                                                polarity, link);
+       if (entry->link) {
+               irq = acpi_pci_link_allocate_irq(entry->link, entry->index,
+                                                triggering, polarity, link);
                if (irq < 0) {
                        printk(KERN_WARNING PREFIX
                                      "Invalid IRQ link routing entry\n");
                        return -1;
                }
        } else {
-               irq = entry->link.index;
+               irq = entry->index;
                *triggering = ACPI_LEVEL_SENSITIVE;
                *polarity = ACPI_ACTIVE_LOW;
        }
@@ -334,10 +329,10 @@ acpi_pci_free_irq(struct acpi_prt_entry *entry)
 {
        int irq;
 
-       if (entry->link.handle) {
-               irq = acpi_pci_link_free_irq(entry->link.handle);
+       if (entry->link) {
+               irq = acpi_pci_link_free_irq(entry->link);
        } else {
-               irq = entry->link.index;
+               irq = entry->index;
        }
        return irq;
 }