Search Linux Wireless

Re: [PATCHv5 3/8] nl80211/cfg80211: add radar detection command/event

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

 



On Thu, 2012-12-13 at 14:58 +0100, Simon Wunderlich wrote:

> +++ b/include/net/cfg80211.h
> @@ -133,6 +133,11 @@ enum ieee80211_channel_flags {
>   *	to enable this, this is useful only on 5 GHz band.
>   * @orig_mag: internal use
>   * @orig_mpwr: internal use
> + * @radar_detect_timeout: this timeout indicates the end of the channel
> + *	availability check for radar channels (in jiffies), only after this
> + *	period the user may initiate the tx on the channel.
> + * @cac_type: indicates that channel availability check is started for this
> + *	channel type.
>   */
>  struct ieee80211_channel {
>  	enum ieee80211_band band;
> @@ -145,6 +150,9 @@ struct ieee80211_channel {
>  	bool beacon_found;
>  	u32 orig_flags;
>  	int orig_mag, orig_mpwr;
> +	unsigned long radar_detect_timeout;
> +	enum nl80211_channel_type cac_type;
> +	bool cac_started;

Since we lock a channel, all of these should probably move to the
rdev/wiphy struct, I think.

And then the code checking channel contexts needs to be extended to not
allow another while a channel context is in use:

> +	mutex_lock(&rdev->devlist_mtx);
> +	err = cfg80211_can_use_chan(rdev, wdev, chandef.chan,
> +				    CHAN_MODE_SINGLE_ONLY);
> +	mutex_unlock(&rdev->devlist_mtx);

This only does a spot check, keeping state needs to be handled
separately.

johannes

--
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