wifi: RR MU scheduler sets the preamble type of DL MU PPDUs earlier
This commit is contained in:
committed by
Stefano Avallone
parent
caf9e4547f
commit
a8237503c8
@@ -708,8 +708,17 @@ RrMultiUserScheduler::TrySendingDlMuPpdu()
|
||||
WifiTxVector suTxVector =
|
||||
GetWifiRemoteStationManager(m_linkId)->GetDataTxVector(mpdu->GetHeader(),
|
||||
m_allowedWidth);
|
||||
|
||||
WifiTxVector txVectorCopy = m_txParams.m_txVector;
|
||||
|
||||
// the first candidate STA determines the preamble type for the DL MU PPDU
|
||||
if (m_candidates.empty() &&
|
||||
suTxVector.GetPreambleType() == WIFI_PREAMBLE_EHT_MU)
|
||||
{
|
||||
m_txParams.m_txVector.SetPreambleType(WIFI_PREAMBLE_EHT_MU);
|
||||
m_txParams.m_txVector.SetEhtPpduType(0); // indicates DL OFDMA transmission
|
||||
}
|
||||
|
||||
m_txParams.m_txVector.SetHeMuUserInfo(staIt->aid,
|
||||
{{currRuType, 1, true},
|
||||
suTxVector.GetMode().GetMcsValue(),
|
||||
@@ -737,17 +746,6 @@ RrMultiUserScheduler::TrySendingDlMuPpdu()
|
||||
}
|
||||
}
|
||||
|
||||
// the first candidate STA determines the preamble type for the DL MU PPDU
|
||||
if (m_candidates.size() == 1)
|
||||
{
|
||||
if (m_apMac->GetEhtSupported() && m_apMac->GetEhtSupported(staIt->address))
|
||||
{
|
||||
m_txParams.m_txVector.SetPreambleType(WIFI_PREAMBLE_EHT_MU);
|
||||
m_txParams.m_txVector.SetEhtPpduType(0); // indicates DL OFDMA transmission
|
||||
}
|
||||
// TODO otherwise, make sure the TX width does not exceed 160 MHz
|
||||
}
|
||||
|
||||
// move to the next station in the list
|
||||
staIt++;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user