[PATCH 2/3] ath10k: introduce DFS implementation

Kalle Valo kvalo at qca.qualcomm.com
Wed Nov 6 04:54:32 EST 2013


Marek Puzyniak <marek.puzyniak at tieto.com> writes:

> Configure interface combination for AP running on channels
> where radar detection is required. It allows only one type
> of interface - AP on DFS channel and limits number of AP
> interfaces to 8. Setup WMI channel flags accordingly to mac
> channel configuration. CAC based on additional monitor vdev
> is started if required for current channel.
>
> Signed-off-by: Marek Puzyniak <marek.puzyniak at tieto.com>
> Signed-off-by: Michal Kazior <michal.kazior at tieto.com>

[...]

> +static const struct ieee80211_iface_limit ath10k_if_dfs_limits[] = {
> +	{
> +	.max	= 8,
> +	.types	= BIT(NL80211_IFTYPE_AP)
> +	},
> +};
> +
> +static const struct ieee80211_iface_combination ath10k_if_comb[] = {
> +	{
> +		.limits = ath10k_if_limits,
> +		.n_limits = ARRAY_SIZE(ath10k_if_limits),
> +		.max_interfaces = 8,
> +		.num_different_channels = 1,
> +		.beacon_int_infra_match = true,
> +	},
> +	{
> +		.limits = ath10k_if_dfs_limits,
> +		.n_limits = ARRAY_SIZE(ath10k_if_dfs_limits),
> +		.max_interfaces = 8,
> +		.num_different_channels = 1,
> +		.beacon_int_infra_match = true,
> +		.radar_detect_widths =	BIT(NL80211_CHAN_WIDTH_20_NOHT) |
> +					BIT(NL80211_CHAN_WIDTH_20) |
> +					BIT(NL80211_CHAN_WIDTH_40) |
> +					BIT(NL80211_CHAN_WIDTH_80),
> +	}
>  };
>  
>  static struct ieee80211_sta_vht_cap ath10k_create_vht_cap(struct ath10k *ar)
> @@ -3531,8 +3667,8 @@ int ath10k_mac_register(struct ath10k *ar)
>  	 */
>  	ar->hw->queues = 4;
>  
> -	ar->hw->wiphy->iface_combinations = &ath10k_if_comb;
> -	ar->hw->wiphy->n_iface_combinations = 1;
> +	ar->hw->wiphy->iface_combinations = ath10k_if_comb;
> +	ar->hw->wiphy->n_iface_combinations = ARRAY_SIZE(ath10k_if_comb);

If ATH10K_DFS_CERTIFIED is disabled should we still enable
radar_detect_widths? Doesn't that enable DFS even it should be disabled?

-- 
Kalle Valo



More information about the ath10k mailing list