Commit 24d2176d authored by Emmanuel Grumbach's avatar Emmanuel Grumbach Committed by Luca Coelho
Browse files

iwlwifi: remove the code under IWLWIFI_PCIE_RTPM



This flag should never be set unless integration work with the
platform is done.  We don't support any platforms officially and don't
plan to do so in the near future, so we can remove this option
entirely in order to avoid having it enabled by mistake.

This has been marked with "depends on EXPERT", so there shouldn't be
many systems running with it set.  And, if there are systems, they
should not be using this flag.

Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
parent 3596ad2b
Loading
Loading
Loading
Loading
+0 −14
Original line number Diff line number Diff line
@@ -92,20 +92,6 @@ config IWLWIFI_BCAST_FILTERING
	  If unsure, don't enable this option, as some programs might
	  expect incoming broadcasts for their normal operations.

config IWLWIFI_PCIE_RTPM
       bool "Enable runtime power management mode for PCIe devices"
       depends on IWLMVM && PM && EXPERT
       help
         Say Y here to enable runtime power management for PCIe
         devices.  If enabled, the device will go into low power mode
         when idle for a short period of time, allowing for improved
         power saving during runtime. Note that this feature requires
         a tight integration with the platform. It is not recommended
         to enable this feature without proper validation with the
         specific target platform.

	 If unsure, say N.

menu "Debugging Options"

config IWLWIFI_DEBUG
+0 −71
Original line number Diff line number Diff line
@@ -1269,80 +1269,9 @@ err:
	return ret;
}

#ifdef CONFIG_IWLWIFI_PCIE_RTPM
static int iwl_pci_runtime_suspend(struct device *device)
{
	struct pci_dev *pdev = to_pci_dev(device);
	struct iwl_trans *trans = pci_get_drvdata(pdev);
	int ret;

	IWL_DEBUG_RPM(trans, "entering runtime suspend\n");

	if (test_bit(STATUS_DEVICE_ENABLED, &trans->status)) {
		ret = iwl_pci_fw_enter_d0i3(trans);
		if (ret < 0)
			return ret;
	}

	trans->system_pm_mode = IWL_PLAT_PM_MODE_D0I3;

	iwl_trans_d3_suspend(trans, false, false);

	return 0;
}

static int iwl_pci_runtime_resume(struct device *device)
{
	struct pci_dev *pdev = to_pci_dev(device);
	struct iwl_trans *trans = pci_get_drvdata(pdev);
	enum iwl_d3_status d3_status;

	IWL_DEBUG_RPM(trans, "exiting runtime suspend (resume)\n");

	iwl_trans_d3_resume(trans, &d3_status, false, false);

	if (test_bit(STATUS_DEVICE_ENABLED, &trans->status))
		return iwl_pci_fw_exit_d0i3(trans);

	return 0;
}

static int iwl_pci_system_prepare(struct device *device)
{
	struct pci_dev *pdev = to_pci_dev(device);
	struct iwl_trans *trans = pci_get_drvdata(pdev);

	IWL_DEBUG_RPM(trans, "preparing for system suspend\n");

	/* Wake the device up from runtime suspend before going to
	 * platform suspend.  This is needed because we don't know
	 * whether wowlan any is set and, if it's not, mac80211 will
	 * disconnect (in which case, we can't be in D0i3).
	 */
	pm_runtime_resume(device);

	return 0;
}

static void iwl_pci_system_complete(struct device *device)
{
	struct pci_dev *pdev = to_pci_dev(device);
	struct iwl_trans *trans = pci_get_drvdata(pdev);

	IWL_DEBUG_RPM(trans, "completing system suspend\n");
}
#endif /* CONFIG_IWLWIFI_PCIE_RTPM */

static const struct dev_pm_ops iwl_dev_pm_ops = {
	SET_SYSTEM_SLEEP_PM_OPS(iwl_pci_suspend,
				iwl_pci_resume)
#ifdef CONFIG_IWLWIFI_PCIE_RTPM
	SET_RUNTIME_PM_OPS(iwl_pci_runtime_suspend,
			   iwl_pci_runtime_resume,
			   NULL)
	.prepare = iwl_pci_system_prepare,
	.complete = iwl_pci_system_complete,
#endif /* CONFIG_IWLWIFI_PCIE_RTPM */
};

#define IWL_PM_OPS	(&iwl_dev_pm_ops)
+0 −4
Original line number Diff line number Diff line
@@ -3654,11 +3654,7 @@ struct iwl_trans *iwl_trans_pcie_alloc(struct pci_dev *pdev,
						   WQ_HIGHPRI | WQ_UNBOUND, 1);
	INIT_WORK(&trans_pcie->rba.rx_alloc, iwl_pcie_rx_allocator_work);

#ifdef CONFIG_IWLWIFI_PCIE_RTPM
	trans->runtime_pm_mode = IWL_PLAT_PM_MODE_D0I3;
#else
	trans->runtime_pm_mode = IWL_PLAT_PM_MODE_DISABLED;
#endif /* CONFIG_IWLWIFI_PCIE_RTPM */

#ifdef CONFIG_IWLWIFI_DEBUGFS
	trans_pcie->fw_mon_data.state = IWL_FW_MON_DBGFS_STATE_CLOSED;