|
@@ -339,9 +339,6 @@ static QDF_STATUS pmo_core_mc_addr_flitering_sanity(
|
|
|
return QDF_STATUS_E_INVAL;
|
|
|
}
|
|
|
|
|
|
- if (!pmo_core_is_vdev_connected(vdev))
|
|
|
- return QDF_STATUS_E_INVAL;
|
|
|
-
|
|
|
return QDF_STATUS_SUCCESS;
|
|
|
}
|
|
|
QDF_STATUS pmo_core_cache_mc_addr_list(
|
|
@@ -380,6 +377,7 @@ QDF_STATUS pmo_core_cache_mc_addr_list(
|
|
|
mc_list_config->vdev_id, mc_list_config->psoc);
|
|
|
|
|
|
status = pmo_core_cache_mc_addr_list_in_vdev_priv(mc_list_config, vdev);
|
|
|
+
|
|
|
dec_ref:
|
|
|
pmo_vdev_put_ref(vdev);
|
|
|
out:
|
|
@@ -516,6 +514,11 @@ QDF_STATUS pmo_core_enable_mc_addr_filtering_in_fwr(
|
|
|
if (status != QDF_STATUS_SUCCESS)
|
|
|
goto put_vdev;
|
|
|
|
|
|
+ if (!pmo_core_is_vdev_connected(vdev)) {
|
|
|
+ status = QDF_STATUS_E_INVAL;
|
|
|
+ goto put_vdev;
|
|
|
+ }
|
|
|
+
|
|
|
pmo_debug("enable mclist trigger: %d", trigger);
|
|
|
status = pmo_core_handle_enable_mc_list_trigger(vdev, trigger);
|
|
|
|
|
@@ -613,6 +616,11 @@ QDF_STATUS pmo_core_disable_mc_addr_filtering_in_fwr(
|
|
|
if (status != QDF_STATUS_SUCCESS)
|
|
|
goto put_ref;
|
|
|
|
|
|
+ if (!pmo_core_is_vdev_connected(vdev)) {
|
|
|
+ status = QDF_STATUS_E_INVAL;
|
|
|
+ goto put_ref;
|
|
|
+ }
|
|
|
+
|
|
|
pmo_debug("disable mclist trigger: %d", trigger);
|
|
|
|
|
|
status = pmo_core_handle_disable_mc_list_trigger(vdev, trigger);
|