Loading radio/1.4/IRadio.hal +19 −12 Original line number Original line Diff line number Diff line Loading @@ -103,14 +103,14 @@ interface IRadio extends @1.3::IRadio { oneway setDataProfile_1_4(int32_t serial, vec<DataProfileInfo> profiles); oneway setDataProfile_1_4(int32_t serial, vec<DataProfileInfo> profiles); /** /** * Initiate emergency voice call, with zero or more emergency service category(s) and routing * Initiate emergency voice call, with zero or more emergency service category(s), zero or * information for handling the call. Android uses this request to make its emergency call * more emergency Uniform Resource Names (URN), and routing information for handling the call. * instead of using @1.0::IRadio.dial if the 'address' in the 'dialInfo' field is identified * Android uses this request to make its emergency call instead of using @1.0::IRadio.dial * as an emergency number by Android. * if the 'address' in the 'dialInfo' field is identified as an emergency number by Android. * * * In multi-sim senario, this radio request is sent through the IRadio service that serves * In multi-sim scenario, if the emergency number is from a specific subscription, this radio * the subscription the emergency number belongs to, no matter of the PUK/PIN state of the * request is sent through the IRadio service that serves the subscription, no matter of the * subscription and the service state. * PUK/PIN state of the subscription and the service state of the radio. * * * Some countries or carriers require some emergency numbers that must be handled with normal * Some countries or carriers require some emergency numbers that must be handled with normal * call routing or emergency routing. If the 'routing' field is specified as * call routing or emergency routing. If the 'routing' field is specified as Loading @@ -120,22 +120,29 @@ interface IRadio extends @1.3::IRadio { * @1.4::EmergencyNumberRouting#UNKNOWN, Android does not know how to handle the call. * @1.4::EmergencyNumberRouting#UNKNOWN, Android does not know how to handle the call. * * * If the dialed emergency number does not have a specified emergency service category, the * If the dialed emergency number does not have a specified emergency service category, the * 'categories' field is set to @1.4::EmergencyServiceCategory#UNSPECIFIED; if the underlying * 'categories' field is set to @1.4::EmergencyServiceCategory#UNSPECIFIED; if the dialed * technology used to request emergency services does not support the emergency service * emergency number does not have specified emergency Uniform Resource Names, the 'urns' field * category, the categories may be ignored. * is set to an empty list. If the underlying technology used to request emergency services * does not support the emergency service category or emergency uniform resource names, the * field 'categories' or 'urns' may be ignored. * * * Reference: 3gpp TS 22.101, Section 10 - Emergency Calls * Reference: 3gpp 22.101, Section 10 - Emergency Calls; * 3gpp 23.167, Section 6 - Functional description; * 3gpp 24.503, Section 5.1.6.8.1 - General; * RFC 5031 * * * @param serial Serial number of request. * @param serial Serial number of request. * @param dialInfo the same @1.0::Dial information used by @1.0::IRadio.dial. * @param dialInfo the same @1.0::Dial information used by @1.0::IRadio.dial. * @param categories bitfield<@1.4::EmergencyServiceCategory> the Emergency Service Category(s) * @param categories bitfield<@1.4::EmergencyServiceCategory> the Emergency Service Category(s) * of the call. * of the call. * @param urns the emergency Uniform Resource Names (URN) * @param routing @1.4::EmergencyCallRouting the emergency call routing information. * @param routing @1.4::EmergencyCallRouting the emergency call routing information. * * * Response function is IRadioResponse.emergencyDialResponse() * Response function is IRadioResponse.emergencyDialResponse() */ */ oneway emergencyDial(int32_t serial, Dial dialInfo, oneway emergencyDial(int32_t serial, Dial dialInfo, bitfield<EmergencyServiceCategory> categories, EmergencyCallRouting routing); bitfield<EmergencyServiceCategory> categories, vec<string> urns, EmergencyCallRouting routing); /** /** * Starts a network scan * Starts a network scan Loading radio/1.4/IRadioIndication.hal +12 −10 Original line number Original line Diff line number Diff line Loading @@ -27,22 +27,24 @@ interface IRadioIndication extends @1.3::IRadioIndication { * Report the current list of emergency numbers * Report the current list of emergency numbers * * * Each emergency number (@1.4::EmergencyNumber) in the emergency number list contains a * Each emergency number (@1.4::EmergencyNumber) in the emergency number list contains a * dialing number, zero or more service category(s), mobile country code, mobile network code, * dialing number, zero or more service category(s), zero or more emergency uniform resource * and source(s) that indicate where it comes from. * names, mobile country code, mobile network code, and source(s) that indicate where it comes * from. * * * Radio must report all the valid emergency numbers with known mobile country code, mobile * Radio must report all the valid emergency numbers with known mobile country code, mobile * network code and emergency service categories from all available sources including network * network code, emergency service categories, and emergency uniform resource names from all * signaling, sim, modem/oem configuration, and default configuration (112 and 911 must be * available sources including network signaling, sim, modem/oem configuration, and default * always available; additionally, 000, 08, 110, 999, 118 and 119 must be available when sim * configuration (112 and 911 must be always available; additionally, 000, 08, 110, 999, 118 * is not present). Radio shall not report emergency numbers that are invalid in the current * and 119 must be available when sim is not present). Radio shall not report emergency numbers * locale. The reported emergency number list must not have duplicate @1.4::EmergencyNumber * that are invalid in the current locale. The reported emergency number list must not have * entries. Please refer the documentation of @1.4::EmergencyNumber to construct each * duplicate @1.4::EmergencyNumber entries. Please refer the documentation of * emergency number to report. * @1.4::EmergencyNumber to construct each emergency number to report. * * * Radio must report the complete list of emergency numbers whenever the emergency numbers in * Radio must report the complete list of emergency numbers whenever the emergency numbers in * the list are changed or whenever the client and the radio server are connected. * the list are changed or whenever the client and the radio server are connected. * * * Reference: 3gpp 22.101, Section 10 - Emergency Calls * Reference: 3gpp 22.101, Section 10 - Emergency Calls; * 3gpp 24.008, Section 9.2.13.4 - Emergency Number List * * * @param type Type of radio indication * @param type Type of radio indication * @param emergencyNumberList Current list of emergency numbers known to radio. * @param emergencyNumberList Current list of emergency numbers known to radio. Loading radio/1.4/types.hal +22 −11 Original line number Original line Diff line number Diff line Loading @@ -52,20 +52,27 @@ enum AccessNetwork : @1.2::AccessNetwork { }; }; /** /** * Emergency number contains information of number, one or more service category(s), mobile country * Emergency number contains information of number, one or more service category(s), zero or more * code (mcc), mobile network country (mnc) and source(s) that indicate where it comes from. * emergency uniform resource names, mobile country code (mcc), mobile network country (mnc) and * source(s) that indicate where it comes from. * * * If the source of the emergency number is associated with country, field ‘mcc’ must be provided; * If the emergency number is associated with country, field ‘mcc’ must be provided, otherwise * otherwise the field ‘mcc’ must be an empty string. * field ‘mcc’ must be an empty string. If the emergency number is associated with network * operator, field ‘mcc’ and 'mnc' must be provided, otherwise field ‘mnc’ must be an empty * string. If the emergency number is specified with emergency service category(s), field * 'categories' must be provided, otherwise field 'categories' must be * @1.4::EmergencyServiceCategories::UNSPECIFIED. If the emergency number is specified with * emergency uniform resource names (URN), field 'urns' must be provided, otherwise field 'urns' * must be an empty list. * * * If the source of the emergency number is associated with network operator, field ‘mcc’ and * A unique EmergencyNumber has a unique combination of ‘number’, ‘mcc’, 'mnc', 'categories' and * 'mnc' must be provided; otherwise the field ‘mnc’ must be an empty string. * 'urns' fields. Multiple @1.4::EmergencyNumberSource should be merged into one 'sources' field * via bitwise-OR combination for the same EmergencyNumber. * * * A unique EmergencyNumber has a unique combination of ‘number’, ‘mcc’, 'mnc' and 'categories' * Reference: 3gpp 22.101, Section 10 - Emergency Calls; * fields. Multiple @1.4::EmergencyNumberSource should be merged into the bitfield for the same * 3gpp 23.167, Section 6 - Functional description; * EmergencyNumber. * 3gpp 24.503, Section 5.1.6.8.1 - General; * * RFC 5031 * Reference: 3GPP TS 22.101 version 9.1.0 Release 9 */ */ struct EmergencyNumber{ struct EmergencyNumber{ /** /** Loading @@ -86,6 +93,10 @@ struct EmergencyNumber{ * the value of each bit. * the value of each bit. */ */ bitfield<EmergencyServiceCategory> categories; bitfield<EmergencyServiceCategory> categories; /** * The list of emergency Uniform Resource Names (URN). */ vec<string> urns; /** /** * The bitfield of @1.4::EmergencyNumberSource(s). See @1.4::EmergencyNumberSource for the * The bitfield of @1.4::EmergencyNumberSource(s). See @1.4::EmergencyNumberSource for the * value of each bit. * value of each bit. Loading Loading
radio/1.4/IRadio.hal +19 −12 Original line number Original line Diff line number Diff line Loading @@ -103,14 +103,14 @@ interface IRadio extends @1.3::IRadio { oneway setDataProfile_1_4(int32_t serial, vec<DataProfileInfo> profiles); oneway setDataProfile_1_4(int32_t serial, vec<DataProfileInfo> profiles); /** /** * Initiate emergency voice call, with zero or more emergency service category(s) and routing * Initiate emergency voice call, with zero or more emergency service category(s), zero or * information for handling the call. Android uses this request to make its emergency call * more emergency Uniform Resource Names (URN), and routing information for handling the call. * instead of using @1.0::IRadio.dial if the 'address' in the 'dialInfo' field is identified * Android uses this request to make its emergency call instead of using @1.0::IRadio.dial * as an emergency number by Android. * if the 'address' in the 'dialInfo' field is identified as an emergency number by Android. * * * In multi-sim senario, this radio request is sent through the IRadio service that serves * In multi-sim scenario, if the emergency number is from a specific subscription, this radio * the subscription the emergency number belongs to, no matter of the PUK/PIN state of the * request is sent through the IRadio service that serves the subscription, no matter of the * subscription and the service state. * PUK/PIN state of the subscription and the service state of the radio. * * * Some countries or carriers require some emergency numbers that must be handled with normal * Some countries or carriers require some emergency numbers that must be handled with normal * call routing or emergency routing. If the 'routing' field is specified as * call routing or emergency routing. If the 'routing' field is specified as Loading @@ -120,22 +120,29 @@ interface IRadio extends @1.3::IRadio { * @1.4::EmergencyNumberRouting#UNKNOWN, Android does not know how to handle the call. * @1.4::EmergencyNumberRouting#UNKNOWN, Android does not know how to handle the call. * * * If the dialed emergency number does not have a specified emergency service category, the * If the dialed emergency number does not have a specified emergency service category, the * 'categories' field is set to @1.4::EmergencyServiceCategory#UNSPECIFIED; if the underlying * 'categories' field is set to @1.4::EmergencyServiceCategory#UNSPECIFIED; if the dialed * technology used to request emergency services does not support the emergency service * emergency number does not have specified emergency Uniform Resource Names, the 'urns' field * category, the categories may be ignored. * is set to an empty list. If the underlying technology used to request emergency services * does not support the emergency service category or emergency uniform resource names, the * field 'categories' or 'urns' may be ignored. * * * Reference: 3gpp TS 22.101, Section 10 - Emergency Calls * Reference: 3gpp 22.101, Section 10 - Emergency Calls; * 3gpp 23.167, Section 6 - Functional description; * 3gpp 24.503, Section 5.1.6.8.1 - General; * RFC 5031 * * * @param serial Serial number of request. * @param serial Serial number of request. * @param dialInfo the same @1.0::Dial information used by @1.0::IRadio.dial. * @param dialInfo the same @1.0::Dial information used by @1.0::IRadio.dial. * @param categories bitfield<@1.4::EmergencyServiceCategory> the Emergency Service Category(s) * @param categories bitfield<@1.4::EmergencyServiceCategory> the Emergency Service Category(s) * of the call. * of the call. * @param urns the emergency Uniform Resource Names (URN) * @param routing @1.4::EmergencyCallRouting the emergency call routing information. * @param routing @1.4::EmergencyCallRouting the emergency call routing information. * * * Response function is IRadioResponse.emergencyDialResponse() * Response function is IRadioResponse.emergencyDialResponse() */ */ oneway emergencyDial(int32_t serial, Dial dialInfo, oneway emergencyDial(int32_t serial, Dial dialInfo, bitfield<EmergencyServiceCategory> categories, EmergencyCallRouting routing); bitfield<EmergencyServiceCategory> categories, vec<string> urns, EmergencyCallRouting routing); /** /** * Starts a network scan * Starts a network scan Loading
radio/1.4/IRadioIndication.hal +12 −10 Original line number Original line Diff line number Diff line Loading @@ -27,22 +27,24 @@ interface IRadioIndication extends @1.3::IRadioIndication { * Report the current list of emergency numbers * Report the current list of emergency numbers * * * Each emergency number (@1.4::EmergencyNumber) in the emergency number list contains a * Each emergency number (@1.4::EmergencyNumber) in the emergency number list contains a * dialing number, zero or more service category(s), mobile country code, mobile network code, * dialing number, zero or more service category(s), zero or more emergency uniform resource * and source(s) that indicate where it comes from. * names, mobile country code, mobile network code, and source(s) that indicate where it comes * from. * * * Radio must report all the valid emergency numbers with known mobile country code, mobile * Radio must report all the valid emergency numbers with known mobile country code, mobile * network code and emergency service categories from all available sources including network * network code, emergency service categories, and emergency uniform resource names from all * signaling, sim, modem/oem configuration, and default configuration (112 and 911 must be * available sources including network signaling, sim, modem/oem configuration, and default * always available; additionally, 000, 08, 110, 999, 118 and 119 must be available when sim * configuration (112 and 911 must be always available; additionally, 000, 08, 110, 999, 118 * is not present). Radio shall not report emergency numbers that are invalid in the current * and 119 must be available when sim is not present). Radio shall not report emergency numbers * locale. The reported emergency number list must not have duplicate @1.4::EmergencyNumber * that are invalid in the current locale. The reported emergency number list must not have * entries. Please refer the documentation of @1.4::EmergencyNumber to construct each * duplicate @1.4::EmergencyNumber entries. Please refer the documentation of * emergency number to report. * @1.4::EmergencyNumber to construct each emergency number to report. * * * Radio must report the complete list of emergency numbers whenever the emergency numbers in * Radio must report the complete list of emergency numbers whenever the emergency numbers in * the list are changed or whenever the client and the radio server are connected. * the list are changed or whenever the client and the radio server are connected. * * * Reference: 3gpp 22.101, Section 10 - Emergency Calls * Reference: 3gpp 22.101, Section 10 - Emergency Calls; * 3gpp 24.008, Section 9.2.13.4 - Emergency Number List * * * @param type Type of radio indication * @param type Type of radio indication * @param emergencyNumberList Current list of emergency numbers known to radio. * @param emergencyNumberList Current list of emergency numbers known to radio. Loading
radio/1.4/types.hal +22 −11 Original line number Original line Diff line number Diff line Loading @@ -52,20 +52,27 @@ enum AccessNetwork : @1.2::AccessNetwork { }; }; /** /** * Emergency number contains information of number, one or more service category(s), mobile country * Emergency number contains information of number, one or more service category(s), zero or more * code (mcc), mobile network country (mnc) and source(s) that indicate where it comes from. * emergency uniform resource names, mobile country code (mcc), mobile network country (mnc) and * source(s) that indicate where it comes from. * * * If the source of the emergency number is associated with country, field ‘mcc’ must be provided; * If the emergency number is associated with country, field ‘mcc’ must be provided, otherwise * otherwise the field ‘mcc’ must be an empty string. * field ‘mcc’ must be an empty string. If the emergency number is associated with network * operator, field ‘mcc’ and 'mnc' must be provided, otherwise field ‘mnc’ must be an empty * string. If the emergency number is specified with emergency service category(s), field * 'categories' must be provided, otherwise field 'categories' must be * @1.4::EmergencyServiceCategories::UNSPECIFIED. If the emergency number is specified with * emergency uniform resource names (URN), field 'urns' must be provided, otherwise field 'urns' * must be an empty list. * * * If the source of the emergency number is associated with network operator, field ‘mcc’ and * A unique EmergencyNumber has a unique combination of ‘number’, ‘mcc’, 'mnc', 'categories' and * 'mnc' must be provided; otherwise the field ‘mnc’ must be an empty string. * 'urns' fields. Multiple @1.4::EmergencyNumberSource should be merged into one 'sources' field * via bitwise-OR combination for the same EmergencyNumber. * * * A unique EmergencyNumber has a unique combination of ‘number’, ‘mcc’, 'mnc' and 'categories' * Reference: 3gpp 22.101, Section 10 - Emergency Calls; * fields. Multiple @1.4::EmergencyNumberSource should be merged into the bitfield for the same * 3gpp 23.167, Section 6 - Functional description; * EmergencyNumber. * 3gpp 24.503, Section 5.1.6.8.1 - General; * * RFC 5031 * Reference: 3GPP TS 22.101 version 9.1.0 Release 9 */ */ struct EmergencyNumber{ struct EmergencyNumber{ /** /** Loading @@ -86,6 +93,10 @@ struct EmergencyNumber{ * the value of each bit. * the value of each bit. */ */ bitfield<EmergencyServiceCategory> categories; bitfield<EmergencyServiceCategory> categories; /** * The list of emergency Uniform Resource Names (URN). */ vec<string> urns; /** /** * The bitfield of @1.4::EmergencyNumberSource(s). See @1.4::EmergencyNumberSource for the * The bitfield of @1.4::EmergencyNumberSource(s). See @1.4::EmergencyNumberSource for the * value of each bit. * value of each bit. Loading