.acpi_guid = NULL,
                .supports_dynamic_smps_6ghz = true,
  
 +              .iova_mask = 0,
++
+               .supports_aspm = false,
        },
        {
                .name = "wcn7850 hw2.0",
                .acpi_guid = &wcn7850_uuid,
                .supports_dynamic_smps_6ghz = false,
  
 +              .iova_mask = ATH12K_PCIE_MAX_PAYLOAD_SIZE - 1,
++
+               .supports_aspm = true,
        },
        {
                .name = "qcn9274 hw2.0",
                .acpi_guid = NULL,
                .supports_dynamic_smps_6ghz = true,
  
 +              .iova_mask = 0,
++
+               .supports_aspm = false,
        },
  };
  
 
                u8 iwl_band = iwl_mvm_phy_band_from_nl80211(band);
  
                cfg->flags = cpu_to_le32(flags | n_aps_flag);
-               cfg->v2.channel_num = channels[i]->hw_value;
+               cfg->channel_num = channels[i]->hw_value;
                if (cfg80211_channel_is_psc(channels[i]))
                        cfg->flags = 0;
 +
 +              if (band == NL80211_BAND_6GHZ) {
 +                      /* 6 GHz channels should only appear in a scan request
 +                       * that has scan_6ghz set. The only exception is MLO
 +                       * scan, which has to be passive.
 +                       */
 +                      WARN_ON_ONCE(cfg->flags != 0);
 +                      cfg->flags =
 +                              cpu_to_le32(IWL_UHB_CHAN_CFG_FLAG_FORCE_PASSIVE);
 +              }
 +
                cfg->v2.iter_count = 1;
                cfg->v2.iter_interval = 0;
                if (version < 17)