Search Linux Wireless

Re: [PATCH v4 1/5] cfg80211: Add indoor only and GO concurrent channel attributes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 19, 2014 at 05:39:33PM +0200, Ilan Peer wrote:
> From: David Spinadel <david.spinadel@xxxxxxxxx>
> 
> The FCC are clarifying some soft configuration requirements,
> which among other include the following:
> 
> 1. Indoor operation, where a device can use channels requiring indoor
>    operation, subject to that it can guarantee indoor operation,
>    i.e., the device is connected to AC Power or the device is under
>    the control of a local master that is acting as an AP and is
>    connected to AC Power.
> 2. Concurrent GO operation, where devices may instantiate a P2P GO
>    while they are under the guidance of an authorized master. For example,
>    on a channel on which a BSS is connected to an authorized master, i.e.,
>    with DFS and radar detection capability in the UNII band.
> 
> See https://apps.fcc.gov/eas/comments/GetPublishedDocument.html?id=327&tn=528122
> 
> Add support for advertising Indoor-only and GO-Concurrent channel
> properties.
> 
> Signed-off-by: David Spinadel <david.spinadel@xxxxxxxxx>
> Signed-off-by: Ilan Peer <ilan.peer@xxxxxxxxx>
> ---
>  include/net/cfg80211.h       |   22 ++++++++++++++++++++++
>  include/uapi/linux/nl80211.h |    8 ++++++++
>  net/wireless/nl80211.c       |    6 ++++++
>  net/wireless/reg.c           |    2 ++
>  4 files changed, 38 insertions(+)
> 
> diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
> index 9f90554..5b2f275 100644
> --- a/include/net/cfg80211.h
> +++ b/include/net/cfg80211.h
> @@ -109,6 +109,26 @@ enum ieee80211_band {
>   *	channel as the control or any of the secondary channels.
>   *	This may be due to the driver or due to regulatory bandwidth
>   *	restrictions.
> + * @IEEE80211_CHAN_INDOOR_ONLY: Only indoor use is permitted on this channel.
> + *	A channel marked with IEEE80211_CHAN_INDOOR_ONLY can only be used when
> + *	there is a clear assessment that the device is operating in an indoor
> + *	surroundings, i.e., it is connected to AC power (and not through
> + *	portable DC inverters) or is under the control of a master that is
> + *	acting as an AP and is connected to AC power.
> + * @IEEE80211_CHAN_GO_CONCURRENT: GO operation is allowed on this channel if
> + *	it's connected concurrently to a BSS on the same channel on the 2 GHz
> + *	band or to a channel in the same UNII band (on the 5 GHz band), and
> + *	IEEE80211_CHAN_RADAR is not set
> + *	Instantiating a GO on a channel marked with IEEE80211_CHAN_GO_CONCURRENT
> + *	can be done when there is a clear assessment that the device is
> + *	operating under the guidance of an authorized master, i.e., setting up a
> + *	GO while the device is also connected to an AP with DFS and radar
> + *	detection on the UNII band.


Would make sense to add here a comment indicating what you mentioned
on the other thread about userspace being responsible for this
verification. In this case the supplicant (wpa_supplicant).

> + *
> + *	See https://apps.fcc.gov/eas/comments/GetPublishedDocument.html?id=327&tn=528122
> + *	for more information on the FCC description of the relaxations allowed
> + *	by IEEE80211_CHAN_INDOOR_ONLY and IEEE80211_CHAN_GO_CONCURRENT.
> + *
>   */
>  enum ieee80211_channel_flags {
>  	IEEE80211_CHAN_DISABLED		= 1<<0,
> @@ -120,6 +140,8 @@ enum ieee80211_channel_flags {
>  	IEEE80211_CHAN_NO_OFDM		= 1<<6,
>  	IEEE80211_CHAN_NO_80MHZ		= 1<<7,
>  	IEEE80211_CHAN_NO_160MHZ	= 1<<8,
> +	IEEE80211_CHAN_INDOOR_ONLY	= 1<<9,
> +	IEEE80211_CHAN_GO_CONCURRENT	= 1<<10,
>  };
>  
>  #define IEEE80211_CHAN_NO_HT40 \
> diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h
> index a12e6ca..da27ca4 100644
> --- a/include/uapi/linux/nl80211.h
> +++ b/include/uapi/linux/nl80211.h
> @@ -2329,6 +2329,12 @@ enum nl80211_band_attr {
>   * @NL80211_FREQUENCY_ATTR_NO_160MHZ: any 160 MHz (but not 80+80) channel
>   *	using this channel as the primary or any of the secondary channels
>   *	isn't possible
> + * @NL80211_FREQUENCY_ATTR_INDOOR_ONLY: Indoor only use is permitted
> + *	on this channel in current regulatory domain

I'd prefer the more verbose documentation to go here as this is
the userspace API. What you can do is on the IEEE80211_CHAN_INDOOR_ONLY
documetnation refer for further information to
%NL80211_FREQUENCY_ATTR_INDOOR_ONLY.

> + * @NL80211_FREQUENCY_ATTR_GO_CONCURRENT: GO operation is allowed on this
> + *      channel if it's connected concurrently to a BSS on the same channel on
> + *      the 2 GHz band or to a channel in the same UNII band (on the 5 GHz
> + *      band), and NL80211_FREQUENCY_ATTR_RADAR is not set

Same here.

  Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux