Loading src/java/com/android/internal/telephony/NetworkTypeController.java +7 −8 Original line number Diff line number Diff line Loading @@ -612,15 +612,14 @@ public class NetworkTypeController extends StateMachine { // ignored break; case EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED: if (!mIsPhysicalChannelConfig16Supported) { // ignore break; } if (mIsPhysicalChannelConfig16Supported) { mPhysicalLinkState = getPhysicalLinkStateFromPhysicalChannelConfig(); if (mIsTimerResetEnabledForLegacyStateRRCIdle && !isPhysicalLinkActive()) { resetAllTimers(); updateOverrideNetworkType(); } } // Update in case of LTE/LTE+ switch updateOverrideNetworkType(); break; case EVENT_PHYSICAL_LINK_STATE_CHANGED: AsyncResult ar = (AsyncResult) msg.obj; Loading src/java/com/android/internal/telephony/ServiceStateTracker.java +1 −1 Original line number Diff line number Diff line Loading @@ -1717,7 +1717,6 @@ public class ServiceStateTracker extends Handler { log("EVENT_PHYSICAL_CHANNEL_CONFIG: size=" + list.size() + " list=" + list); } mPhone.notifyPhysicalChannelConfig(list); mLastPhysicalChannelConfigList = list; boolean hasChanged = false; if (updateNrStateFromPhysicalChannelConfigs(list, mSS)) { Loading @@ -1731,6 +1730,7 @@ public class ServiceStateTracker extends Handler { hasChanged |= RatRatcheter .updateBandwidths(getBandwidthsFromConfigs(list), mSS); mPhone.notifyPhysicalChannelConfig(list); // Notify NR frequency, NR connection status or bandwidths changed. if (hasChanged) { mPhone.notifyServiceStateChanged(mSS); Loading tests/telephonytests/src/com/android/internal/telephony/NetworkTypeControllerTest.java +17 −1 Original line number Diff line number Diff line Loading @@ -478,7 +478,6 @@ public class NetworkTypeControllerTest extends TelephonyTest { mBundle.putInt(CarrierConfigManager.KEY_NR_ADVANCED_CAPABLE_PCO_ID_INT, 0xFF03); broadcastCarrierConfigs(); mNetworkTypeController.sendMessage(EVENT_PCO_DATA_CHANGED, new AsyncResult(null, new PcoData(cid, "", 0xff03, contents), null)); mNetworkTypeController.sendMessage(NetworkTypeController.EVENT_UPDATE); Loading Loading @@ -565,6 +564,23 @@ public class NetworkTypeControllerTest extends TelephonyTest { assertEquals("not_restricted_rrc_con", getCurrentState().getName()); } @Test public void testPhysicalChannelChangeFromLteToLteCa() throws Exception { testTransitionToCurrentStateLegacy(); doReturn(TelephonyManager.NETWORK_TYPE_LTE).when(mServiceState).getDataNetworkType(); updateOverrideNetworkType(); assertEquals(TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_NONE, mNetworkTypeController.getOverrideNetworkType()); doReturn(true).when(mServiceState).isUsingCarrierAggregation(); doReturn(new int[] {30000}).when(mServiceState).getCellBandwidths(); mNetworkTypeController.sendMessage(EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED); processAllMessages(); assertEquals(TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_LTE_CA, mNetworkTypeController.getOverrideNetworkType()); } @Test public void testEventPhysicalLinkStateChanged() throws Exception { testTransitionToCurrentStateLteConnected(); Loading Loading
src/java/com/android/internal/telephony/NetworkTypeController.java +7 −8 Original line number Diff line number Diff line Loading @@ -612,15 +612,14 @@ public class NetworkTypeController extends StateMachine { // ignored break; case EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED: if (!mIsPhysicalChannelConfig16Supported) { // ignore break; } if (mIsPhysicalChannelConfig16Supported) { mPhysicalLinkState = getPhysicalLinkStateFromPhysicalChannelConfig(); if (mIsTimerResetEnabledForLegacyStateRRCIdle && !isPhysicalLinkActive()) { resetAllTimers(); updateOverrideNetworkType(); } } // Update in case of LTE/LTE+ switch updateOverrideNetworkType(); break; case EVENT_PHYSICAL_LINK_STATE_CHANGED: AsyncResult ar = (AsyncResult) msg.obj; Loading
src/java/com/android/internal/telephony/ServiceStateTracker.java +1 −1 Original line number Diff line number Diff line Loading @@ -1717,7 +1717,6 @@ public class ServiceStateTracker extends Handler { log("EVENT_PHYSICAL_CHANNEL_CONFIG: size=" + list.size() + " list=" + list); } mPhone.notifyPhysicalChannelConfig(list); mLastPhysicalChannelConfigList = list; boolean hasChanged = false; if (updateNrStateFromPhysicalChannelConfigs(list, mSS)) { Loading @@ -1731,6 +1730,7 @@ public class ServiceStateTracker extends Handler { hasChanged |= RatRatcheter .updateBandwidths(getBandwidthsFromConfigs(list), mSS); mPhone.notifyPhysicalChannelConfig(list); // Notify NR frequency, NR connection status or bandwidths changed. if (hasChanged) { mPhone.notifyServiceStateChanged(mSS); Loading
tests/telephonytests/src/com/android/internal/telephony/NetworkTypeControllerTest.java +17 −1 Original line number Diff line number Diff line Loading @@ -478,7 +478,6 @@ public class NetworkTypeControllerTest extends TelephonyTest { mBundle.putInt(CarrierConfigManager.KEY_NR_ADVANCED_CAPABLE_PCO_ID_INT, 0xFF03); broadcastCarrierConfigs(); mNetworkTypeController.sendMessage(EVENT_PCO_DATA_CHANGED, new AsyncResult(null, new PcoData(cid, "", 0xff03, contents), null)); mNetworkTypeController.sendMessage(NetworkTypeController.EVENT_UPDATE); Loading Loading @@ -565,6 +564,23 @@ public class NetworkTypeControllerTest extends TelephonyTest { assertEquals("not_restricted_rrc_con", getCurrentState().getName()); } @Test public void testPhysicalChannelChangeFromLteToLteCa() throws Exception { testTransitionToCurrentStateLegacy(); doReturn(TelephonyManager.NETWORK_TYPE_LTE).when(mServiceState).getDataNetworkType(); updateOverrideNetworkType(); assertEquals(TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_NONE, mNetworkTypeController.getOverrideNetworkType()); doReturn(true).when(mServiceState).isUsingCarrierAggregation(); doReturn(new int[] {30000}).when(mServiceState).getCellBandwidths(); mNetworkTypeController.sendMessage(EVENT_PHYSICAL_CHANNEL_CONFIG_CHANGED); processAllMessages(); assertEquals(TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_LTE_CA, mNetworkTypeController.getOverrideNetworkType()); } @Test public void testEventPhysicalLinkStateChanged() throws Exception { testTransitionToCurrentStateLteConnected(); Loading