From patchwork Wed Jul 18 00:15:08 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Luis R. Rodriguez" X-Patchwork-Id: 1208111 Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id 5286B3FD9C for ; Wed, 18 Jul 2012 00:15:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757923Ab2GRAPk (ORCPT ); Tue, 17 Jul 2012 20:15:40 -0400 Received: from wolverine02.qualcomm.com ([199.106.114.251]:32592 "EHLO wolverine02.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757808Ab2GRAPe (ORCPT ); Tue, 17 Jul 2012 20:15:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=qca.qualcomm.com; i=@qca.qualcomm.com; q=dns/txt; s=qcdkim; t=1342570535; x=1374106535; h=from:cc:to:subject:date:message-id:mime-version; bh=m8ZXYWk1WLTWvZvrkYrqcljsGU7a0+nnBnt8qx5AVvs=; b=oXAMvQU+grUWjIHUouv+DY+8NhBQFxELUpR0GLfNM9OSQ3qfhgNq3UYF jyoIwEIiRlENZyCOY6ffOvT5Utv8uqnuzzPa089fKWue0UALw0UrUX4HO ynejHtK4bRvG0lOHbLNSJDvc59SKKUAdjSCM1RrZXDPXAbh2EzIK7Smae o=; X-IronPort-AV: E=McAfee;i="5400,1158,6775"; a="209346662" Received: from ironmsg04-l.qualcomm.com ([172.30.48.19]) by wolverine02.qualcomm.com with ESMTP; 17 Jul 2012 17:15:13 -0700 From: "Luis R. Rodriguez" Cc: , "Luis R. Rodriguez" X-IronPort-AV: E=Sophos;i="4.77,606,1336374000"; d="scan'208";a="261570600" Received: from nasanexhc06.na.qualcomm.com ([172.30.48.21]) by Ironmsg04-L.qualcomm.com with ESMTP/TLS/RC4-SHA; 17 Jul 2012 17:15:13 -0700 Received: from nasanexhc05.na.qualcomm.com (172.30.48.2) by nasanexhc06.na.qualcomm.com (172.30.48.21) with Microsoft SMTP Server (TLS) id 14.2.309.2; Tue, 17 Jul 2012 17:15:11 -0700 Received: from tux (172.30.48.1) by qcmail1.qualcomm.com (172.30.48.2) with Microsoft SMTP Server (TLS) id 14.2.309.2; Tue, 17 Jul 2012 17:15:10 -0700 Received: by tux (sSMTP sendmail emulation); Tue, 17 Jul 2012 17:15:09 -0700 To: , , Subject: [RFC v2] ath: add feature to enable cell base station regulatory hints Date: Tue, 17 Jul 2012 17:15:08 -0700 Message-ID: <1342570508-8373-1-git-send-email-mcgrof@qca.qualcomm.com> X-Mailer: git-send-email 1.7.10.rc1.22.gf5241 MIME-Version: 1.0 X-Originating-IP: [172.30.48.1] Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org From: "Luis R. Rodriguez" This enables the capability to enable cellular base station regulatory hint support to ath5k, ath9k, ath9k_htc and carl9170. Signed-off-by: Luis R. Rodriguez --- This adds a URL for documentation / reference. Other drivers should consider doing the same. drivers/net/wireless/ath/Kconfig | 18 ++++++++++++++++++ drivers/net/wireless/ath/regd.c | 12 ++++++++++++ 2 files changed, 30 insertions(+) diff --git a/drivers/net/wireless/ath/Kconfig b/drivers/net/wireless/ath/Kconfig index 0960224..99f1f5b 100644 --- a/drivers/net/wireless/ath/Kconfig +++ b/drivers/net/wireless/ath/Kconfig @@ -22,6 +22,24 @@ config ATH_DEBUG Say Y, if you want to debug atheros wireless drivers. Right now only ath9k makes use of this. +config ATH_CELL_STATION_HINT + bool "Atheros common cell base station hint support" + depends on (ATH9K || ATH9K_HTC || ATH5K || CARL9170) + depends on CFG80211_CERTIFICATION_ONUS + default n + ---help--- + You should disable this feature unless you are a system + integrator and want to enable cellular base station + regulatory hint support onto either or these drivers: + ath5k, ath9k, ath9k_htc, carl9170. You should disable + this feature unless you are building a specific system + you are providing complete oversight over and are willing + and able to test regulatory compliance for it. + + For more details refer to: + + http://wireless.kernel.org/en/developers/Regulatory/processing_rules#Cellular_base_station_regulatory_hints + source "drivers/net/wireless/ath/ath5k/Kconfig" source "drivers/net/wireless/ath/ath9k/Kconfig" source "drivers/net/wireless/ath/carl9170/Kconfig" diff --git a/drivers/net/wireless/ath/regd.c b/drivers/net/wireless/ath/regd.c index d816980..6751533 100644 --- a/drivers/net/wireless/ath/regd.c +++ b/drivers/net/wireless/ath/regd.c @@ -504,6 +504,17 @@ ath_get_regpair(int regdmn) return NULL; } +#ifdef CONFIG_ATH_CELL_STATION_HINT +static void ath_regd_features(struct wiphy *wiphy) +{ + wiphy->features |= NL80211_FEATURE_CELL_BASE_REG_HINTS; +} +#else +static void ath_regd_features(struct wiphy *wiphy) +{ +} +#endif + static int ath_regd_init_wiphy(struct ath_regulatory *reg, struct wiphy *wiphy, @@ -514,6 +525,7 @@ ath_regd_init_wiphy(struct ath_regulatory *reg, wiphy->reg_notifier = reg_notifier; wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY; + ath_regd_features(wiphy); if (ath_is_world_regd(reg)) { /*