diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-12-19 12:30:17 -0800 |
---|---|---|
committer | Richard Zhu <Richard.Zhu@freescale.com> | 2014-11-07 12:56:37 +0800 |
commit | c397af53ebaf1671e05045c8bef71b09236510d7 (patch) | |
tree | db02d683b84f5e44345c014b77ceaa88f62e4ed6 /include | |
parent | 9ed68f522fc84ca65c6f0fe28e7d1316837516dd (diff) |
PCI/MSI: Export MSI mode using attributes, not kobjects
The PCI MSI sysfs code is a mess with kobjects for things that don't really
need to be kobjects. This patch creates attributes dynamically for the MSI
interrupts instead of using kobjects.
Note, this removes a directory from sysfs. Old MSI kobjects:
pci_device
└── msi_irqs
└── 40
└── mode
New MSI attributes:
pci_device
└── msi_irqs
└── 40
As there was only one file "mode" with the kobject model, the interrupt
number is now a file that returns the "mode" of the interrupt (msi vs.
msix).
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
(cherry picked from commit 1c51b50c2995f543d145d3bce78029ac9f8ca6b3)
Conflicts:
drivers/pci/msi.c
(cherry picked from commit 9018185784be55fe8d04a63c687083db58f85bf0)
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/pci.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/pci.h b/include/linux/pci.h index 24ea555b8c65..8b915cf92724 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -340,7 +340,7 @@ struct pci_dev { struct bin_attribute *res_attr_wc[DEVICE_COUNT_RESOURCE]; /* sysfs file for WC mapping of resources */ #ifdef CONFIG_PCI_MSI struct list_head msi_list; - struct kset *msi_kset; + const struct attribute_group **msi_irq_groups; #endif struct pci_vpd *vpd; #ifdef CONFIG_PCI_ATS |