diff options
author | Sharon Dvir <sharon.dvir@intel.com> | 2016-08-17 08:35:09 -0400 |
---|---|---|
committer | Luca Coelho <luciano.coelho@intel.com> | 2016-10-19 05:46:33 -0400 |
commit | 64fa3aff89785b5a924ce3934f6595c35b4dffee (patch) | |
tree | 3ee2f7aeba5326da1b8e841631a171cdc5c4418c /drivers/net/wireless/intel | |
parent | 65e254821cee1a63f3f6d23270e90b33432b2bef (diff) |
iwlwifi: pcie: give a meaningful name to interrupt request
Instead of passing DRV_NAME pass a string that
represents the reason for the interrupt.
Signed-off-by: Sharon Dvir <sharon.dvir@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/pcie/trans.c | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c index ae95533e587d..b10e3633df1a 100644 --- a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c +++ b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c | |||
@@ -1598,6 +1598,29 @@ static void iwl_pcie_irq_set_affinity(struct iwl_trans *trans) | |||
1598 | } | 1598 | } |
1599 | } | 1599 | } |
1600 | 1600 | ||
1601 | static const char *queue_name(struct device *dev, | ||
1602 | struct iwl_trans_pcie *trans_p, int i) | ||
1603 | { | ||
1604 | if (trans_p->shared_vec_mask) { | ||
1605 | int vec = trans_p->shared_vec_mask & | ||
1606 | IWL_SHARED_IRQ_FIRST_RSS ? 1 : 0; | ||
1607 | |||
1608 | if (i == 0) | ||
1609 | return DRV_NAME ": shared IRQ"; | ||
1610 | |||
1611 | return devm_kasprintf(dev, GFP_KERNEL, | ||
1612 | DRV_NAME ": queue %d", i + vec); | ||
1613 | } | ||
1614 | if (i == 0) | ||
1615 | return DRV_NAME ": default queue"; | ||
1616 | |||
1617 | if (i == trans_p->alloc_vecs - 1) | ||
1618 | return DRV_NAME ": exception"; | ||
1619 | |||
1620 | return devm_kasprintf(dev, GFP_KERNEL, | ||
1621 | DRV_NAME ": queue %d", i); | ||
1622 | } | ||
1623 | |||
1601 | static int iwl_pcie_init_msix_handler(struct pci_dev *pdev, | 1624 | static int iwl_pcie_init_msix_handler(struct pci_dev *pdev, |
1602 | struct iwl_trans_pcie *trans_pcie) | 1625 | struct iwl_trans_pcie *trans_pcie) |
1603 | { | 1626 | { |
@@ -1606,6 +1629,10 @@ static int iwl_pcie_init_msix_handler(struct pci_dev *pdev, | |||
1606 | for (i = 0; i < trans_pcie->alloc_vecs; i++) { | 1629 | for (i = 0; i < trans_pcie->alloc_vecs; i++) { |
1607 | int ret; | 1630 | int ret; |
1608 | struct msix_entry *msix_entry; | 1631 | struct msix_entry *msix_entry; |
1632 | const char *qname = queue_name(&pdev->dev, trans_pcie, i); | ||
1633 | |||
1634 | if (!qname) | ||
1635 | return -ENOMEM; | ||
1609 | 1636 | ||
1610 | msix_entry = &trans_pcie->msix_entries[i]; | 1637 | msix_entry = &trans_pcie->msix_entries[i]; |
1611 | ret = devm_request_threaded_irq(&pdev->dev, | 1638 | ret = devm_request_threaded_irq(&pdev->dev, |
@@ -1615,7 +1642,7 @@ static int iwl_pcie_init_msix_handler(struct pci_dev *pdev, | |||
1615 | iwl_pcie_irq_msix_handler : | 1642 | iwl_pcie_irq_msix_handler : |
1616 | iwl_pcie_irq_rx_msix_handler, | 1643 | iwl_pcie_irq_rx_msix_handler, |
1617 | IRQF_SHARED, | 1644 | IRQF_SHARED, |
1618 | DRV_NAME, | 1645 | qname, |
1619 | msix_entry); | 1646 | msix_entry); |
1620 | if (ret) { | 1647 | if (ret) { |
1621 | IWL_ERR(trans_pcie->trans, | 1648 | IWL_ERR(trans_pcie->trans, |