Hi John, Today's linux-next merge of the wireless-next tree got a conflict in drivers/net/wireless/iwlwifi/pcie/trans.c between commit eabc4ac5d760 ("iwlwifi: pcie: disable L1 Active after pci_enable_device") from thewireless tree and commit f2532b04b2ec ("iwlwifi: pcie: don't disable L1 for newest NICs") from the wireless-next tree. I fixed it up (maybe - see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc drivers/net/wireless/iwlwifi/pcie/trans.c index 390e2f0,e52d1ce..0000000 --- a/drivers/net/wireless/iwlwifi/pcie/trans.c +++ b/drivers/net/wireless/iwlwifi/pcie/trans.c @@@ -1502,16 -1400,22 +1400,22 @@@ struct iwl_trans *iwl_trans_pcie_alloc( spin_lock_init(&trans_pcie->reg_lock); init_waitqueue_head(&trans_pcie->ucode_write_waitq); + if (pci_enable_device(pdev)) { + err = -ENODEV; + goto out_no_pci; + } + - /* W/A - seems to solve weird behavior. We need to remove this if we - * don't want to stay in L1 all the time. This wastes a lot of power */ - pci_disable_link_state(pdev, PCIE_LINK_STATE_L0S | PCIE_LINK_STATE_L1 | - PCIE_LINK_STATE_CLKPM); + if (!cfg->base_params->pcie_l1_allowed) { + /* + * W/A - seems to solve weird behavior. We need to remove this + * if we don't want to stay in L1 all the time. This wastes a + * lot of power. + */ + pci_disable_link_state(pdev, PCIE_LINK_STATE_L0S | + PCIE_LINK_STATE_L1 | + PCIE_LINK_STATE_CLKPM); + } - if (pci_enable_device(pdev)) { - err = -ENODEV; - goto out_no_pci; - } - pci_set_master(pdev); err = pci_set_dma_mask(pdev, DMA_BIT_MASK(36));
Attachment:
pgpCmZnMPoCsM.pgp
Description: PGP signature