|
@@ -4364,7 +4364,9 @@ static int ath10k_add_interface(struct ieee80211_hw *hw,
|
|
|
arvif->vdev_type = WMI_VDEV_TYPE_IBSS;
|
|
arvif->vdev_type = WMI_VDEV_TYPE_IBSS;
|
|
|
break;
|
|
break;
|
|
|
case NL80211_IFTYPE_MESH_POINT:
|
|
case NL80211_IFTYPE_MESH_POINT:
|
|
|
- if (!test_bit(ATH10K_FLAG_RAW_MODE, &ar->dev_flags)) {
|
|
|
|
|
|
|
+ if (test_bit(WMI_SERVICE_MESH, ar->wmi.svc_map)) {
|
|
|
|
|
+ arvif->vdev_subtype = WMI_VDEV_SUBTYPE_MESH;
|
|
|
|
|
+ } else if (!test_bit(ATH10K_FLAG_RAW_MODE, &ar->dev_flags)) {
|
|
|
ret = -EINVAL;
|
|
ret = -EINVAL;
|
|
|
ath10k_warn(ar, "must load driver with rawmode=1 to add mesh interfaces\n");
|
|
ath10k_warn(ar, "must load driver with rawmode=1 to add mesh interfaces\n");
|
|
|
goto err;
|
|
goto err;
|