From patchwork Tue Dec 1 21:35:32 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mark gross X-Patchwork-Id: 64038 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id nB1La0gw020494 for ; Tue, 1 Dec 2009 21:36:00 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754627AbZLAVf3 (ORCPT ); Tue, 1 Dec 2009 16:35:29 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754624AbZLAVf3 (ORCPT ); Tue, 1 Dec 2009 16:35:29 -0500 Received: from mga09.intel.com ([134.134.136.24]:58271 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750929AbZLAVf2 (ORCPT ); Tue, 1 Dec 2009 16:35:28 -0500 Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga102.jf.intel.com with ESMTP; 01 Dec 2009 13:35:06 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.47,322,1257148800"; d="scan'208";a="574735133" Received: from mgross-hp8510w.jf.intel.com (HELO localhost) ([134.134.156.70]) by orsmga001.jf.intel.com with ESMTP; 01 Dec 2009 13:35:21 -0800 Date: Tue, 1 Dec 2009 13:35:32 -0800 From: mark gross To: linux-pm Cc: lkml , linux-wireless@vger.kernel.org Subject: [PATCH]PM_QOS-to-use-handle-based-requests-wireless-update 4/5 Message-ID: <20091201213532.GD19688@linux.intel.com> Reply-To: mgross@linux.intel.com MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.20 (2009-06-14) Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org diff --git a/drivers/net/wireless/ipw2x00/ipw2100.c b/drivers/net/wireless/ipw2x00/ipw2100.c index 6e2fc0c..6fe87f0 100644 --- a/drivers/net/wireless/ipw2x00/ipw2100.c +++ b/drivers/net/wireless/ipw2x00/ipw2100.c @@ -174,6 +174,8 @@ that only one external action is invoked at a time. #define DRV_DESCRIPTION "Intel(R) PRO/Wireless 2100 Network Driver" #define DRV_COPYRIGHT "Copyright(c) 2003-2006 Intel Corporation" +struct pm_qos_request_list *ipw2100_pm_qos_req; + /* Debugging stuff */ #ifdef CONFIG_IPW2100_DEBUG #define IPW2100_RX_DEBUG /* Reception debugging */ @@ -1708,7 +1710,7 @@ static int ipw2100_up(struct ipw2100_priv *priv, int deferred) /* the ipw2100 hardware really doesn't want power management delays * longer than 175usec */ - pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY, "ipw2100", 175); + pm_qos_update_request(ipw2100_pm_qos_req, 175); /* If the interrupt is enabled, turn it off... */ spin_lock_irqsave(&priv->low_lock, flags); @@ -1863,8 +1865,7 @@ static void ipw2100_down(struct ipw2100_priv *priv) ipw2100_disable_interrupts(priv); spin_unlock_irqrestore(&priv->low_lock, flags); - pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY, "ipw2100", - PM_QOS_DEFAULT_VALUE); + pm_qos_update_request(ipw2100_pm_qos_req, PM_QOS_DEFAULT_VALUE); /* We have to signal any supplicant if we are disassociating */ if (associated) @@ -6572,7 +6573,7 @@ static int __init ipw2100_init(void) if (ret) goto out; - pm_qos_add_requirement(PM_QOS_CPU_DMA_LATENCY, "ipw2100", + ipw2100_pm_qos_req = pm_qos_add_request(PM_QOS_CPU_DMA_LATENCY, PM_QOS_DEFAULT_VALUE); #ifdef CONFIG_IPW2100_DEBUG ipw2100_debug_level = debug; @@ -6595,7 +6596,7 @@ static void __exit ipw2100_exit(void) &driver_attr_debug_level); #endif pci_unregister_driver(&ipw2100_pci_driver); - pm_qos_remove_requirement(PM_QOS_CPU_DMA_LATENCY, "ipw2100"); + pm_qos_remove_request(ipw2100_pm_qos_req); } module_init(ipw2100_init); diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index dc5049d..ed1d2dd 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -696,7 +696,7 @@ void ieee80211_recalc_ps(struct ieee80211_local *local, s32 latency) s32 beaconint_us; if (latency < 0) - latency = pm_qos_requirement(PM_QOS_NETWORK_LATENCY); + latency = pm_qos_request(PM_QOS_NETWORK_LATENCY); beaconint_us = ieee80211_tu_to_usec( found->vif.bss_conf.beacon_int);