On Tue, Jun 7, 2011 at 9:43 AM, Pavel Roskin <pro...@gnu.org> wrote:
> Hello!
>
> You may want to copy to linux-wireless as well.  You'll get more eyeballs
> looking at your code.

Thanks for reviewing.

> On 06/06/2011 08:55 PM, Javier Cardona wrote:
>>
>> More specifically, enable AP-style beaconing on mesh ifaces, honor
>> FIF_OTHER_BSS filter and change the hw capabilities to reflect mesh
>> support.
>>
>> Tested on two TP-Link TL-WN821N and with this patch we could establish
>> peer
>> links and ping.
>
> ...
>>
>> +       case NL80211_IFTYPE_MESH_POINT:
>> +               /* 802.11s defines a different beaconing method for mesh
>> points
>> +                * that closely resembles AP-style beaconing.  Until that
>> is
>> +                * implemented, just use AP-style beaconing for mesh
>> points. */
>> +               /* Fall through */
>>        case NL80211_IFTYPE_AP:
>>                ath9k_htc_beacon_config_ap(priv, cur_conf);
>
> Is it fundamentally impossible for AP and mesh VIFs to coexist?  If it's
> possible, you may want to use NL80211_IFTYPE_AP even if there is a mesh VIF
> and use num_ap_vif and num_mbss_vif to code needed for AP and mesh
> respectively.

It is not precluded by the standard, but requires that the hardware
can do dual-beaconing given that mesh and AP beacons are different:
different MAC address, frequency. etc.

> Having distinct global opmodes would stand in the way if AP and mesh
> coexistence is to be implemented.

Noted.  It is definitively a doable and desired use case so we plan
the driver as if there will soon be hardware that can do it.  (Or
maybe there is, do you know?)

> By the way, we may want to use distinctive names for the common opmodes to
> avoid confusion with the VIF modes.
>
>> +       if (priv->num_mbss_vif ||
>> +           (priv->nvifs&&  vif->type == NL80211_IFTYPE_MESH_POINT)) {
>> +               ath_err(common, "Mesh BSS coexistence with other modes is
>> not allowed\n");
>> +               mutex_unlock(&priv->mutex);
>> +               return -ENOBUFS;
>> +       }
>
> This code appears to allow only one mesh interface.  Is that your intention?
>  I think you just copied the code from Ad-Hoc without realizing what it
> does.

Again I thought the hardware could not do dual beaconning.  If it can,
then there is no need to limit the number of mesh vifs.

>> +       if (priv->rxfilter&  FIF_OTHER_BSS)
>> +               rfilt |= ATH9K_RX_FILTER_MCAST_BCAST_ALL;
>
> I think this could be a separate patch.  It may have effect beyond mesh
> support.

Noted.

Thanks!

Javier


-- 
Javier Cardona
cozybit Inc.
http://www.cozybit.com
_______________________________________________
Devel mailing list
Devel@lists.open80211s.org
http://open80211s.com/mailman/listinfo/devel

Reply via email to