[OpenWrt-Devel] Ath10k mesh with OpenWRT question

Ben Greear greearb at candelatech.com
Sat Dec 19 08:27:00 EST 2015

On 12/19/2015 01:26 AM, Sven Eckelmann wrote:
> On Friday 18 December 2015 14:14:38 Zach Sherin wrote:
>> I'm trying to use bmx6 to mesh together some routers but keep coming up
>> against roadblocks trying to get the wireless chipsets into IBSS mode. Do
>> you have any suggestions or places to start? If not, no worries. Thank you
>> very much for your time, and I hope to hear from you soon.
> My suggestion is to use 802.11s (load ath10k_core with rawmode=1 - for example
> add it as parameter for ath10k_core to in the *ath10k file in /etc/modules.d/)
> instead of adhoc/ibss when using a recent QCA988* firmware. You have to set
> the mesh_ttl=1 and mesh_fwding=0 when you want to use bmx instead of the
> 802.11s mesh protocol(s). The wireless configuration could for example look
> like this:
>      config wifi-iface 'wmesh0'
>              option device 'radio0'
>              option ifname 'mesh0'
>              option network 'mesh'
>              option mode 'mesh'
>              option mesh_id 'myownmesh' # change this
>              option disabled '0'
>              option mcast_rate '18000'
>              option macaddr '02:11:22:33:44:55' # change this
>              option mesh_ttl 1
>              option mesh_fwding 0
>              option encryption 'none'
> But don't expect encryption to work with authsae/wpa_supplicant. I also heard
> that IBSS should work with the qca6174 (TLV) firmware but I never tested it
> and therefore cannot confirm it.
> If you really want IBSS with QCA988x then you have to try the firmware fork of
> Ben Greear [1]. But it was never really working for me and also still had bugs
> in AP mode which were only fixed in the official firmware from QCA. Don't
> forget that you still need the driver patches from Ben Greear.

If you just want IBSS, then you only need this patch (this is against a recent upstream kernel) to make it work with
my latest firmware:

diff --git a/drivers/net/wireless/ath/ath10k/mac.c
index 95a55405..9fef34e 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -6936,6 +6936,10 @@ static const struct ieee80211_iface_limit
ath10k_10x_if_limits[] = {
                 | BIT(NL80211_IFTYPE_MESH_POINT)
+       {
+       .max    = 1,
+       .types  = BIT(NL80211_IFTYPE_ADHOC)
+       },

  static const struct ieee80211_iface_combination ath10k_if_comb[] = {
@@ -7298,6 +7302,7 @@ int ath10k_mac_register(struct ath10k *ar)
                 ar->hw->wiphy->iface_combinations = ath10k_10x_if_comb;
                 ar->hw->wiphy->n_iface_combinations =
+               ar->hw->wiphy->interface_modes |= BIT(NL80211_IFTYPE_ADHOC);
         case ATH10K_FW_WMI_OP_VERSION_10_4:
                 ar->hw->wiphy->iface_combinations = ath10k_10_4_if_comb;

I'm not aware of any AP-mode bugs in recent CT firmware, but possibly they still exist.

We do see the occasional crash that appears due to CE engine issues.

IBSS on CT (and maybe other firmware) doesn't support encryption though,
so possibly mesh is still a better idea.


> Kind regards,
> 	Sven
> [1] http://www.candelatech.com/ath10k.php
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list