Yijing Wang
2014-09-11 01:30:55 UTC
Both MSI and MSI-X irq will be associate to msi_desc,
Use irq_get_msi_desc() to get the msi_desc for MSI-X
to simplify code. Also use __write_msi_msg() instead
of write_msi_msg() to avoid the redundant calls.
Signed-off-by: Yijing Wang <***@huawei.com>
---
drivers/pci/msi.c | 13 ++-----------
1 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index 5a40516..9ad920a 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -119,18 +119,9 @@ static void default_restore_msi_irq(struct pci_dev *dev, int irq)
{
struct msi_desc *entry;
- entry = NULL;
- if (dev->msix_enabled) {
- list_for_each_entry(entry, &dev->msi_list, list) {
- if (irq == entry->irq)
- break;
- }
- } else if (dev->msi_enabled) {
- entry = irq_get_msi_desc(irq);
- }
-
+ entry = irq_get_msi_desc(irq);
if (entry)
- write_msi_msg(irq, &entry->msg);
+ __write_msi_msg(entry, &entry->msg);
}
void __weak arch_restore_msi_irqs(struct pci_dev *dev)
Use irq_get_msi_desc() to get the msi_desc for MSI-X
to simplify code. Also use __write_msi_msg() instead
of write_msi_msg() to avoid the redundant calls.
Signed-off-by: Yijing Wang <***@huawei.com>
---
drivers/pci/msi.c | 13 ++-----------
1 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index 5a40516..9ad920a 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -119,18 +119,9 @@ static void default_restore_msi_irq(struct pci_dev *dev, int irq)
{
struct msi_desc *entry;
- entry = NULL;
- if (dev->msix_enabled) {
- list_for_each_entry(entry, &dev->msi_list, list) {
- if (irq == entry->irq)
- break;
- }
- } else if (dev->msi_enabled) {
- entry = irq_get_msi_desc(irq);
- }
-
+ entry = irq_get_msi_desc(irq);
if (entry)
- write_msi_msg(irq, &entry->msg);
+ __write_msi_msg(entry, &entry->msg);
}
void __weak arch_restore_msi_irqs(struct pci_dev *dev)
--
1.7.1
1.7.1