postpone eNB TX mode reconf to rx of RRC CONN RECONF COMPLETED

This commit is contained in:
Nicola Baldo
2012-12-14 13:02:17 +01:00
parent 2f0f5a7d72
commit ec7fac9f5c
2 changed files with 17 additions and 9 deletions

View File

@@ -138,7 +138,8 @@ UeManager::UeManager (Ptr<LteEnbRrc> rrc, uint16_t rnti, State s)
m_state (s),
m_pendingRrcConnectionReconfiguration (false),
m_sourceX2apId (0),
m_sourceCellId (0)
m_sourceCellId (0),
m_needTransmissionModeConfiguration (false)
{
NS_LOG_FUNCTION (this);
}
@@ -701,6 +702,19 @@ UeManager::RecvRrcConnectionReconfigurationCompleted (LteRrcSap::RrcConnectionRe
{
case CONNECTION_RECONFIGURATION:
StartDataRadioBearers ();
if (m_needTransmissionModeConfiguration)
{
// configure MAC (and scheduler)
LteEnbCmacSapProvider::UeConfig req;
req.m_rnti = m_rnti;
req.m_transmissionMode = m_physicalConfigDedicated.antennaInfo.transmissionMode;
m_rrc->m_cmacSapProvider->UeUpdateConfigurationReq (req);
// configure PHY
m_rrc->m_cphySapProvider->SetTransmissionMode (req.m_rnti, req.m_transmissionMode);
m_needTransmissionModeConfiguration = false;
}
SwitchToState (CONNECTED_NORMALLY);
m_rrc->m_connectionReconfigurationTrace (m_imsi, m_rrc->m_cellId, m_rnti);
break;
@@ -765,14 +779,7 @@ UeManager::CmacUeConfigUpdateInd (LteEnbCmacSapUser::UeConfig cmacParams)
m_physicalConfigDedicated.antennaInfo.transmissionMode = cmacParams.m_transmissionMode;
// configure MAC (and scheduler)
LteEnbCmacSapProvider::UeConfig req;
req.m_rnti = m_rnti;
req.m_transmissionMode = m_physicalConfigDedicated.antennaInfo.transmissionMode;
m_rrc->m_cmacSapProvider->UeUpdateConfigurationReq (req);
// configure PHY
m_rrc->m_cphySapProvider->SetTransmissionMode (req.m_rnti, req.m_transmissionMode);
m_needTransmissionModeConfiguration = true;
// reconfigure the UE RRC
ScheduleRrcConnectionReconfiguration ();

View File

@@ -388,6 +388,7 @@ private:
uint16_t m_sourceCellId;
uint16_t m_targetCellId;
std::list<uint8_t> m_drbsToBeStarted;
bool m_needTransmissionModeConfiguration;
};