<?xml version="1.0" encoding="UTF-8"?>
<!-- Carrier policy XML for KDDI with LTE in Home and G/W/L in Roam
Power up and LPM is in Full RAT mode.
-->
<policy name = "generic"
enabled = "true"
schema_ver = "1"
policy_ver = "91.1.0"
>
<initial>
<actions>
<!-- List of the HOME MCCs -->
<mcc_list name="volte_only_mccs"> 440 441 </mcc_list>
<!-- List of China MCCs -->
<mcc_list name="china_mccs"> 460 </mcc_list>
<!-- Define the OOS timer with a 2 minute interval -->
<define_timer name="noservice" interval="2" units="min" id="1" />
<!-- Define device configuration as Single SIM -->
<device_configuration num_sims="1" max_active="1" specialization="volte_e911_calls">
<config>
<subs id="1" feature="normal">
<rat_capability base="none" >
<include> CDMA HDR GSM WCDMA LTE </include>
</rat_capability>
</subs>
</config>
</device_configuration>
<!-- UE mode is always NORMAL -->
<ue_mode> NORMAL </ue_mode>
<!-- On any boot, start RAT capability as GWL -->
<rat_capability base="none" >
<include> GSM WCDMA LTE </include>
</rat_capability>
<!-- On any boot, set bands to all bands -->
<rf_bands>
<gw_bands base="hardware" />
<lte_bands base="hardware" />
<tds_bands base="hardware" />
</rf_bands>
<!-- On any boot, power up in Limited camping -->
<svc_mode> LIMITED </svc_mode>
<boolean_define name="include_hlos_mcc" initial="true" />
</actions>
</initial>
<!--
====================================================================
Rules to handle OOS situations.
====================================================================
-->
<!-- RULE #1 -->
<!-- If VoLTE information is not available or UE is PWROFF,
stay in same config
-->
<rule precond="none">
<conditions>
<any_of>
<volte_enabled state="undef" />
<phone_operating_mode> PWROFF </phone_operating_mode>
</any_of>
</conditions>
<actions />
</rule>
<!-- RULE #2 -->
<!-- If VoLTE is enabled and CSIM is present,
full RAT mode includes CH and excludes T
-->
<rule precond="none">
<conditions>
<phone_operating_mode> ONLINE </phone_operating_mode>
<volte_enabled />
<enforce_full_rat />
<sim_type> CSIM </sim_type>
</conditions>
<actions>
<rat_capability base="none">
<include> CDMA HDR GSM WCDMA LTE </include>
</rat_capability>
<svc_mode> LIMITED </svc_mode>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
<!-- RULE #3 -->
<!-- If VoLTE is enabled and CSIM is *not* present,
full RAT mode excludes CH and includes T
-->
<rule precond="none">
<conditions>
<phone_operating_mode> ONLINE </phone_operating_mode>
<volte_enabled />
<enforce_full_rat />
</conditions>
<actions>
<rat_capability base="none">
<include> GSM WCDMA LTE TDSCDMA </include>
</rat_capability>
<svc_mode> LIMITED </svc_mode>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
<!-- RULE #4 -->
<!-- In LPM, reset the timer and go to GWL.
-->
<rule precond="none">
<conditions>
<phone_operating_mode> SLEEP </phone_operating_mode>
</conditions>
<actions>
<timer_stop name="noservice" />
<rat_capability base="none" >
<include> GSM WCDMA LTE </include>
</rat_capability>
<svc_mode> LIMITED </svc_mode>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
<!-- RULE #5 -->
<!-- If VoLTE is OFF,
use CHGWLT and normal E911 calls
-->
<rule precond="none">
<conditions>
<phone_operating_mode> ONLINE </phone_operating_mode>
<not> <volte_enabled /> </not>
</conditions>
<actions>
<rat_capability base="hardware" />
<svc_mode> FULL </svc_mode>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
<!-- RULE #6 -->
<!-- If the oos timer has expired, VoLTE is enabled, there is no service,
and CSIM is present,
enable Full RAT mode (CHGWL) and restart the timer
-->
<rule precond="none">
<conditions>
<timer_expired name="noservice" />
<volte_enabled />
<not> <have_service /> </not>
<sim_type> CSIM </sim_type>
</conditions>
<actions>
<expired_timer_handled name="noservice" />
<rat_capability base="none">
<include> CDMA HDR GSM WCDMA LTE </include>
</rat_capability>
<svc_mode> LIMITED </svc_mode>
<call_mode> NORMAL </call_mode>
<timer_start name="noservice" />
</actions>
</rule>
<!-- RULE #7 -->
<!-- If the oos timer has expired, VoLTE is enabled, there is no service,
and CSIM is not present,
enable Full RAT mode (GWLT) and restart the timer
-->
<rule precond="none">
<conditions>
<timer_expired name="noservice" />
<volte_enabled />
<not> <have_service /> </not>
</conditions>
<actions>
<expired_timer_handled name="noservice" />
<rat_capability base="none">
<include> GSM WCDMA LTE TDSCDMA </include>
</rat_capability>
<svc_mode> LIMITED </svc_mode>
<call_mode> NORMAL </call_mode>
<timer_start name="noservice" />
</actions>
</rule>
<!-- RULE #8 -->
<!-- If we have no service then we will just wait until we get it - the OOS
timer will have put us into full-RAT mode when it expired.
-->
<rule precond="none">
<conditions>
<phone_operating_mode> ONLINE </phone_operating_mode>
<not> <have_service /> </not>
</conditions>
<actions>
<timer_start name="noservice" />
</actions>
</rule>
<!-- RULE #9 -->
<!-- This rule only runs when we have some sort of service (rule #7 will fire
if we don't); set service mode to FULL and continue to set RATs/bands/etc.
based on location.
-->
<rule precond="none">
<conditions>
<true />
</conditions>
<actions>
<timer_stop name="noservice" />
<svc_mode> FULL </svc_mode>
<continue />
</actions>
</rule>
<!--
====================================================================
Rules to handle KDDI VoLTE-only and roaming requirements.
====================================================================
-->
<!-- RULE #10 -->
<!-- If in Japan and if VoLTE is enabled,
restrict RATs to LTE and set VoLTE-only E911 call mode
-->
<rule>
<conditions>
<volte_enabled />
<location_mcc_in list="volte_only_mccs" />
</conditions>
<actions>
<rat_capability base="none">
<include> LTE </include>
</rat_capability>
<call_mode> VOLTE </call_mode>
</actions>
</rule>
<!-- RULE #11 -->
<!-- If in China, VoLTE is enabled, and CSIM is present,
Normal call mode on TGWL
-->
<rule>
<conditions>
<volte_enabled />
<location_mcc_in list="china_mccs" />
<sim_type> CSIM </sim_type>
</conditions>
<actions>
<rat_capability base="none">
<include> CDMA HDR GSM WCDMA LTE </include>
</rat_capability>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
<!-- RULE #12 -->
<!-- If in China, VoLTE is enabled, and CSIM *not* present,
Normal call mode on TGWL
-->
<rule>
<conditions>
<volte_enabled />
<location_mcc_in list="china_mccs" />
</conditions>
<actions>
<rat_capability base="none">
<include> TDSCDMA GSM WCDMA LTE </include>
</rat_capability>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
<!-- RULE #13 -->
<!-- In all other cases (roaming),
use CHGWL and normal E911 calls
-->
<rule>
<conditions>
<true />
</conditions>
<actions>
<rat_capability base="hardware" >
<exclude> TDSCDMA </exclude>
</rat_capability>
<call_mode> NORMAL </call_mode>
</actions>
</rule>
</policy>