From patchwork Mon Nov 1 11:52:12 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luciano Coelho X-Patchwork-Id: 294362 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id oA1CQIKp000551 for ; Mon, 1 Nov 2010 12:26:19 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757504Ab0KAM0R (ORCPT ); Mon, 1 Nov 2010 08:26:17 -0400 Received: from mgw-da01.ext.nokia.com ([147.243.128.24]:26101 "EHLO mgw-da01.nokia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757382Ab0KAMZ7 (ORCPT ); Mon, 1 Nov 2010 08:25:59 -0400 Received: from localhost.localdomain (chilepepper.research.nokia.com [172.21.50.167]) by mgw-da01.nokia.com (Switch-3.4.3/Switch-3.4.3) with ESMTP id oA1BqGcN020116 for ; Mon, 1 Nov 2010 13:52:27 +0200 From: Luciano Coelho To: linux-wireless@vger.kernel.org Subject: [RFC 11/15] mac80211: pass cfg80211 periodic scan request structure down to the driver Date: Mon, 1 Nov 2010 13:52:12 +0200 Message-Id: <1288612336-2830-12-git-send-email-luciano.coelho@nokia.com> X-Mailer: git-send-email 1.7.0.4 In-Reply-To: <1288612336-2830-1-git-send-email-luciano.coelho@nokia.com> References: <1288612336-2830-1-git-send-email-luciano.coelho@nokia.com> X-Nokia-AV: Clean Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Mon, 01 Nov 2010 12:26:19 +0000 (UTC) diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 6b50780..901debb 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -1760,7 +1760,8 @@ struct ieee80211_ops { int (*hw_scan)(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct cfg80211_scan_request *req); int (*periodic_start)(struct ieee80211_hw *hw, - struct ieee80211_vif *vif); + struct ieee80211_vif *vif, + struct cfg80211_periodic_request *req); int (*periodic_stop)(struct ieee80211_hw *hw, struct ieee80211_vif *vif); void (*sw_scan_start)(struct ieee80211_hw *hw); diff --git a/net/mac80211/driver-ops.h b/net/mac80211/driver-ops.h index c425e1c..88b5f90 100644 --- a/net/mac80211/driver-ops.h +++ b/net/mac80211/driver-ops.h @@ -192,14 +192,15 @@ static inline int drv_hw_scan(struct ieee80211_local *local, } static inline int drv_periodic_start(struct ieee80211_local *local, - struct ieee80211_sub_if_data *sdata) + struct ieee80211_sub_if_data *sdata, + struct cfg80211_periodic_request *req) { int ret; might_sleep(); - trace_drv_periodic_start(local, sdata); - ret = local->ops->periodic_start(&local->hw, &sdata->vif); + trace_drv_periodic_start(local, sdata, req); + ret = local->ops->periodic_start(&local->hw, &sdata->vif, req); trace_drv_return_int(local, ret); return ret; } diff --git a/net/mac80211/driver-trace.h b/net/mac80211/driver-trace.h index 2acdc43..8d6c7e6 100644 --- a/net/mac80211/driver-trace.h +++ b/net/mac80211/driver-trace.h @@ -441,9 +441,10 @@ TRACE_EVENT(drv_hw_scan, TRACE_EVENT(drv_periodic_start, TP_PROTO(struct ieee80211_local *local, - struct ieee80211_sub_if_data *sdata), + struct ieee80211_sub_if_data *sdata, + struct cfg80211_periodic_request *req), - TP_ARGS(local, sdata), + TP_ARGS(local, sdata, req), TP_STRUCT__entry( LOCAL_ENTRY diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c index 9273ab0..fda8d41 100644 --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c @@ -846,7 +846,7 @@ int ieee80211_request_periodic_start(struct ieee80211_sub_if_data *sdata, local->periodic_req = req; - ret = drv_periodic_start(local, sdata); + ret = drv_periodic_start(local, sdata, req); if (!ret) __set_bit(SCAN_PERIODIC_SCANNING, &local->scanning); else