aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2012-11-13 06:35:43 -0500
committerJohannes Berg <johannes.berg@intel.com>2012-11-14 05:07:45 -0500
commit9f904b382ff61b8ec1f81f8afe76f12a5ac8b4cf (patch)
tree85ee85bdbb745a80959f44cdbc2789ae17d697a3 /drivers
parentdbeca583f9b8e35aa08279b81d5340dac3a60aff (diff)
iwlwifi: don't enable interrupt as a W/A when MSI is enabled
This is not needed, the comment there was wrong, it is only needed when MSI was *not* enabled. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/iwlwifi/pcie/trans.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/net/wireless/iwlwifi/pcie/trans.c b/drivers/net/wireless/iwlwifi/pcie/trans.c
index a1b9d07b9d01..7eb5f483f77d 100644
--- a/drivers/net/wireless/iwlwifi/pcie/trans.c
+++ b/drivers/net/wireless/iwlwifi/pcie/trans.c
@@ -2184,9 +2184,16 @@ struct iwl_trans *iwl_trans_pcie_alloc(struct pci_dev *pdev,
2184 pci_write_config_byte(pdev, PCI_CFG_RETRY_TIMEOUT, 0x00); 2184 pci_write_config_byte(pdev, PCI_CFG_RETRY_TIMEOUT, 0x00);
2185 2185
2186 err = pci_enable_msi(pdev); 2186 err = pci_enable_msi(pdev);
2187 if (err) 2187 if (err) {
2188 dev_printk(KERN_ERR, &pdev->dev, 2188 dev_printk(KERN_ERR, &pdev->dev,
2189 "pci_enable_msi failed(0X%x)\n", err); 2189 "pci_enable_msi failed(0X%x)\n", err);
2190 /* enable rfkill interrupt: hw bug w/a */
2191 pci_read_config_word(pdev, PCI_COMMAND, &pci_cmd);
2192 if (pci_cmd & PCI_COMMAND_INTX_DISABLE) {
2193 pci_cmd &= ~PCI_COMMAND_INTX_DISABLE;
2194 pci_write_config_word(pdev, PCI_COMMAND, pci_cmd);
2195 }
2196 }
2190 2197
2191 trans->dev = &pdev->dev; 2198 trans->dev = &pdev->dev;
2192 trans_pcie->irq = pdev->irq; 2199 trans_pcie->irq = pdev->irq;
@@ -2196,14 +2203,6 @@ struct iwl_trans *iwl_trans_pcie_alloc(struct pci_dev *pdev,
2196 snprintf(trans->hw_id_str, sizeof(trans->hw_id_str), 2203 snprintf(trans->hw_id_str, sizeof(trans->hw_id_str),
2197 "PCI ID: 0x%04X:0x%04X", pdev->device, pdev->subsystem_device); 2204 "PCI ID: 0x%04X:0x%04X", pdev->device, pdev->subsystem_device);
2198 2205
2199 /* TODO: Move this away, not needed if not MSI */
2200 /* enable rfkill interrupt: hw bug w/a */
2201 pci_read_config_word(pdev, PCI_COMMAND, &pci_cmd);
2202 if (pci_cmd & PCI_COMMAND_INTX_DISABLE) {
2203 pci_cmd &= ~PCI_COMMAND_INTX_DISABLE;
2204 pci_write_config_word(pdev, PCI_COMMAND, pci_cmd);
2205 }
2206
2207 /* Initialize the wait queue for commands */ 2206 /* Initialize the wait queue for commands */
2208 init_waitqueue_head(&trans_pcie->wait_command_queue); 2207 init_waitqueue_head(&trans_pcie->wait_command_queue);
2209 spin_lock_init(&trans->reg_lock); 2208 spin_lock_init(&trans->reg_lock);