[WLAN_HT_CAP_SM_PS_DISABLED] = WMI_PEER_SMPS_PS_NONE,
 };
 
-static int ath12k_start_vdev_delay(struct ieee80211_hw *hw,
-                                  struct ieee80211_vif *vif);
+static int ath12k_start_vdev_delay(struct ath12k *ar,
+                                  struct ath12k_vif *arvif);
 
 static const char *ath12k_mac_phymode_str(enum wmi_phy_mode mode)
 {
        if (ab->hw_params->vdev_start_delay &&
            !arvif->is_started &&
            arvif->vdev_type != WMI_VDEV_TYPE_AP) {
-               ret = ath12k_start_vdev_delay(ar->hw, vif);
+               ret = ath12k_start_vdev_delay(ar, arvif);
                if (ret) {
                        ath12k_warn(ab, "failed to delay vdev start: %d\n", ret);
                        goto free_peer;
        mutex_unlock(&ar->conf_mutex);
 }
 
-static int ath12k_start_vdev_delay(struct ieee80211_hw *hw,
-                                  struct ieee80211_vif *vif)
+static int ath12k_start_vdev_delay(struct ath12k *ar,
+                                  struct ath12k_vif *arvif)
 {
-       struct ath12k *ar = hw->priv;
        struct ath12k_base *ab = ar->ab;
-       struct ath12k_vif *arvif = ath12k_vif_to_arvif(vif);
+       struct ieee80211_vif *vif = arvif->vif;
        int ret;
 
        if (WARN_ON(arvif->is_started))