Added SSC mode 3 support am: 7f6c8d03e7
am: ce8f0170bb
Change-Id: I98d6f01aa08819fade22e0db6953b2428c8fad32
This commit is contained in:
commit
2a20c5cee5
7 changed files with 119 additions and 15 deletions
|
@ -610,10 +610,10 @@ a64467bae843569f0d465c5be7f0c7a5b987985b55a3ef4794dd5afc68538650 android.hardwar
|
||||||
619fc9839ec6e369cfa9b28e3e9412e6885720ff8f9b5750c1b6ffb905120391 android.hardware.wifi.supplicant@1.3::ISupplicantStaIfaceCallback
|
619fc9839ec6e369cfa9b28e3e9412e6885720ff8f9b5750c1b6ffb905120391 android.hardware.wifi.supplicant@1.3::ISupplicantStaIfaceCallback
|
||||||
c9273429fcf98d797d3bb07fdba6f1be95bf960f9255cde169fd1ca4db85f856 android.hardware.wifi.supplicant@1.3::ISupplicantStaNetwork
|
c9273429fcf98d797d3bb07fdba6f1be95bf960f9255cde169fd1ca4db85f856 android.hardware.wifi.supplicant@1.3::ISupplicantStaNetwork
|
||||||
9b0a3ab6f4f74b971ed094426d8a443e29b512ff03e1ab50c07156396cdb2483 android.hardware.wifi.supplicant@1.3::types
|
9b0a3ab6f4f74b971ed094426d8a443e29b512ff03e1ab50c07156396cdb2483 android.hardware.wifi.supplicant@1.3::types
|
||||||
0e3c23f1c815469fdcdc39bc33a486817771c7c6b6e5303f2f25569499fc6c69 android.hardware.radio@1.5::types
|
c897388b19e902a3c4989e0b5d59831e07c0cf14d16195d26ebc760ec353f750 android.hardware.radio@1.5::types
|
||||||
2bc87cde08fcd8d9a0f5d4a2b8560ea793264d94f5b763a6b22d4a63d0f3cd5a android.hardware.radio@1.5::IRadio
|
5ae0401fdaad9b85de7bebc5bdd7388a4ea661c46f1e4929341981b0540c67de android.hardware.radio@1.5::IRadio
|
||||||
3afac66f21a33bc9c4b80481c7d5540038348651d9a7d8af64ea13610af138da android.hardware.radio@1.5::IRadioIndication
|
3afac66f21a33bc9c4b80481c7d5540038348651d9a7d8af64ea13610af138da android.hardware.radio@1.5::IRadioIndication
|
||||||
67c8d90dab3f5b8f1e9cf123d6d1f9e581d382846eacc14476335798b9670885 android.hardware.radio@1.5::IRadioResponse
|
f4888f9676890b43a459c6380f335fea7a6ad32ed3bafafeb018a88d6c0be8a4 android.hardware.radio@1.5::IRadioResponse
|
||||||
55f0a15642869ec98a55ea0a5ac049d3e1a6245ff7750deb6bcb7182057eee83 android.hardware.radio.config@1.3::types
|
55f0a15642869ec98a55ea0a5ac049d3e1a6245ff7750deb6bcb7182057eee83 android.hardware.radio.config@1.3::types
|
||||||
b27ab0cd40b0b078cdcd024bfe1061c4c4c065f3519eeb9347fa359a3268a5ae android.hardware.radio.config@1.3::IRadioConfig
|
b27ab0cd40b0b078cdcd024bfe1061c4c4c065f3519eeb9347fa359a3268a5ae android.hardware.radio.config@1.3::IRadioConfig
|
||||||
742360c775313438b0f82256eac62fb5bbc76a6ae6f388573f3aa142fb2c1eea android.hardware.radio.config@1.3::IRadioConfigIndication
|
742360c775313438b0f82256eac62fb5bbc76a6ae6f388573f3aa142fb2c1eea android.hardware.radio.config@1.3::IRadioConfigIndication
|
||||||
|
|
|
@ -18,8 +18,10 @@ package android.hardware.radio@1.5;
|
||||||
|
|
||||||
import @1.2::DataRequestReason;
|
import @1.2::DataRequestReason;
|
||||||
import @1.4::IRadio;
|
import @1.4::IRadio;
|
||||||
|
import @1.4::DataProfileInfo;
|
||||||
import @1.5::AccessNetwork;
|
import @1.5::AccessNetwork;
|
||||||
import @1.5::DataProfileInfo;
|
import @1.5::DataProfileInfo;
|
||||||
|
import @1.5::LinkAddress;
|
||||||
import @1.5::NetworkScanRequest;
|
import @1.5::NetworkScanRequest;
|
||||||
import @1.5::RadioAccessSpecifier;
|
import @1.5::RadioAccessSpecifier;
|
||||||
import @1.5::SignalThresholdInfo;
|
import @1.5::SignalThresholdInfo;
|
||||||
|
@ -149,11 +151,7 @@ interface IRadio extends @1.4::IRadio {
|
||||||
* @param reason The request reason. Must be DataRequestReason.NORMAL or
|
* @param reason The request reason. Must be DataRequestReason.NORMAL or
|
||||||
* DataRequestReason.HANDOVER.
|
* DataRequestReason.HANDOVER.
|
||||||
* @param addresses If the reason is DataRequestReason.HANDOVER, this indicates the list of link
|
* @param addresses If the reason is DataRequestReason.HANDOVER, this indicates the list of link
|
||||||
* addresses of the existing data connection. The format is IP address with optional "/"
|
* addresses of the existing data connection. This parameter must be ignored
|
||||||
* prefix length (The format is defined in RFC-4291 section 2.3). For example, "192.0.1.3",
|
|
||||||
* "192.0.1.11/16", or "2001:db8::1/64". Typically one IPv4 or one IPv6 or one of each. If
|
|
||||||
* the prefix length is absent, then the addresses are assumed to be point to point with
|
|
||||||
* IPv4 with prefix length 32 or IPv6 with prefix length 128. This parameter must be ignored
|
|
||||||
* unless reason is DataRequestReason.HANDOVER.
|
* unless reason is DataRequestReason.HANDOVER.
|
||||||
* @param dnses If the reason is DataRequestReason.HANDOVER, this indicates the list of DNS
|
* @param dnses If the reason is DataRequestReason.HANDOVER, this indicates the list of DNS
|
||||||
* addresses of the existing data connection. The format is defined in RFC-4291 section
|
* addresses of the existing data connection. The format is defined in RFC-4291 section
|
||||||
|
@ -167,7 +165,7 @@ interface IRadio extends @1.4::IRadio {
|
||||||
*/
|
*/
|
||||||
oneway setupDataCall_1_5(int32_t serial, AccessNetwork accessNetwork,
|
oneway setupDataCall_1_5(int32_t serial, AccessNetwork accessNetwork,
|
||||||
DataProfileInfo dataProfileInfo, bool roamingAllowed,
|
DataProfileInfo dataProfileInfo, bool roamingAllowed,
|
||||||
DataRequestReason reason, vec<string> addresses, vec<string> dnses);
|
DataRequestReason reason, vec<LinkAddress> addresses, vec<string> dnses);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set an apn to initial attach network
|
* Set an apn to initial attach network
|
||||||
|
@ -191,7 +189,7 @@ interface IRadio extends @1.4::IRadio {
|
||||||
* Response callback is IRadioResponse.setDataProfileResponse_1_5()
|
* Response callback is IRadioResponse.setDataProfileResponse_1_5()
|
||||||
*
|
*
|
||||||
* Note this API is the same as the 1.4 version except using the 1.5 DataProfileInfo
|
* Note this API is the same as the 1.4 version except using the 1.5 DataProfileInfo
|
||||||
* as the input param.
|
* and LinkAddress as the input param.
|
||||||
*/
|
*/
|
||||||
oneway setDataProfile_1_5(int32_t serial, vec<DataProfileInfo> profiles);
|
oneway setDataProfile_1_5(int32_t serial, vec<DataProfileInfo> profiles);
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@ package android.hardware.radio@1.5;
|
||||||
|
|
||||||
import @1.0::RadioResponseInfo;
|
import @1.0::RadioResponseInfo;
|
||||||
import @1.4::IRadioResponse;
|
import @1.4::IRadioResponse;
|
||||||
import @1.4::SetupDataCallResult;
|
import @1.5::SetupDataCallResult;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Interface declaring response functions to solicited radio requests.
|
* Interface declaring response functions to solicited radio requests.
|
||||||
|
|
|
@ -25,7 +25,10 @@ import @1.1::UtranBands;
|
||||||
import @1.2::NetworkScanRequest;
|
import @1.2::NetworkScanRequest;
|
||||||
import @1.4::AccessNetwork;
|
import @1.4::AccessNetwork;
|
||||||
import @1.4::ApnTypes;
|
import @1.4::ApnTypes;
|
||||||
|
import @1.4::DataCallFailCause;
|
||||||
|
import @1.4::DataConnActiveStatus;
|
||||||
import @1.4::DataProfileInfo;
|
import @1.4::DataProfileInfo;
|
||||||
|
import @1.4::PdpProtocolType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Defining signal strength type.
|
* Defining signal strength type.
|
||||||
|
@ -289,3 +292,105 @@ struct DataProfileInfo {
|
||||||
/** Supported APN types bitmap. See ApnTypes for the value of each bit. */
|
/** Supported APN types bitmap. See ApnTypes for the value of each bit. */
|
||||||
bitfield<ApnTypes> supportedApnTypesBitmap;
|
bitfield<ApnTypes> supportedApnTypesBitmap;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The properties of the link address. This enum reflects the definition in
|
||||||
|
* if_addr.h in Linux kernel.
|
||||||
|
*/
|
||||||
|
enum AddressProperty : int32_t {
|
||||||
|
NONE = 0,
|
||||||
|
|
||||||
|
/** Indicates this address is deprecated */
|
||||||
|
DEPRECATED = 0x20,
|
||||||
|
};
|
||||||
|
|
||||||
|
struct LinkAddress {
|
||||||
|
/**
|
||||||
|
* The format is IP address with optional "/"
|
||||||
|
* prefix length (The format is defined in RFC-4291 section 2.3). For example, "192.0.1.3",
|
||||||
|
* "192.0.1.11/16", or "2001:db8::1/64". Typically one IPv4 or one IPv6 or one of each. If
|
||||||
|
* the prefix length is absent, then the addresses are assumed to be point to point with
|
||||||
|
* IPv4 with prefix length 32 or IPv6 with prefix length 128.
|
||||||
|
*/
|
||||||
|
string address;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The properties of the link address
|
||||||
|
*/
|
||||||
|
bitfield<AddressProperty> properties;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The UTC time that this link address will be deprecated. 0 indicates this information is not
|
||||||
|
* available.
|
||||||
|
*/
|
||||||
|
uint64_t deprecatedTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The UTC time that this link address will expire and no longer valid. 0 indicates this
|
||||||
|
* information is not available.
|
||||||
|
*/
|
||||||
|
uint64_t expiredTime;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Overwritten from @1.4::SetupDataCallResult in order to update the addresses to 1.5
|
||||||
|
* version.
|
||||||
|
*/
|
||||||
|
struct SetupDataCallResult {
|
||||||
|
/** Data call fail cause. DataCallFailCause.NONE if no error. */
|
||||||
|
DataCallFailCause cause;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If status != DataCallFailCause.NONE, this field indicates the suggested retry back-off timer
|
||||||
|
* value RIL wants to override the one pre-configured in FW. The unit is milliseconds.
|
||||||
|
* The value < 0 means no value is suggested.
|
||||||
|
* The value 0 means retry must be done ASAP.
|
||||||
|
* The value of INT_MAX(0x7fffffff) means no retry.
|
||||||
|
*/
|
||||||
|
int32_t suggestedRetryTime;
|
||||||
|
|
||||||
|
/** Context ID, uniquely identifies this call. */
|
||||||
|
int32_t cid;
|
||||||
|
|
||||||
|
/** Data connection active status. */
|
||||||
|
DataConnActiveStatus active;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* PDP_type values. If cause is DataCallFailCause.ONLY_SINGLE_BEARER_ALLOWED, this is the type
|
||||||
|
* supported such as "IP" or "IPV6".
|
||||||
|
*/
|
||||||
|
PdpProtocolType type;
|
||||||
|
|
||||||
|
/** The network interface name. */
|
||||||
|
string ifname;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of link address.
|
||||||
|
*/
|
||||||
|
vec<LinkAddress> addresses;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of DNS server addresses, e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1". Empty if no dns
|
||||||
|
* server addresses returned.
|
||||||
|
*/
|
||||||
|
vec<string> dnses;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of default gateway addresses, e.g., "192.0.1.3" or "192.0.1.11 2001:db8::1".
|
||||||
|
* When empty, the addresses represent point to point connections.
|
||||||
|
*/
|
||||||
|
vec<string> gateways;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List of P-CSCF(Proxy Call State Control Function) addresses via PCO(Protocol Configuration
|
||||||
|
* Option), e.g., "2001:db8::1 2001:db8::2 2001:db8::3". Empty if not IMS client.
|
||||||
|
*/
|
||||||
|
vec<string> pcscf;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* MTU received from network. Value <= 0 means network has either not sent a value or sent an
|
||||||
|
* invalid value.
|
||||||
|
*/
|
||||||
|
int32_t mtu;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
@ -853,10 +853,11 @@ TEST_F(RadioHidlTest_v1_5, setupDataCall_1_5) {
|
||||||
|
|
||||||
bool roamingAllowed = false;
|
bool roamingAllowed = false;
|
||||||
|
|
||||||
|
std::vector<::android::hardware::radio::V1_5::LinkAddress> addresses = {};
|
||||||
|
std::vector<hidl_string> dnses = {};
|
||||||
|
|
||||||
::android::hardware::radio::V1_2::DataRequestReason reason =
|
::android::hardware::radio::V1_2::DataRequestReason reason =
|
||||||
::android::hardware::radio::V1_2::DataRequestReason::NORMAL;
|
::android::hardware::radio::V1_2::DataRequestReason::NORMAL;
|
||||||
std::vector<hidl_string> addresses = {""};
|
|
||||||
std::vector<hidl_string> dnses = {""};
|
|
||||||
|
|
||||||
Return<void> res = radio_v1_5->setupDataCall_1_5(serial, accessNetwork, dataProfileInfo,
|
Return<void> res = radio_v1_5->setupDataCall_1_5(serial, accessNetwork, dataProfileInfo,
|
||||||
roamingAllowed, reason, addresses, dnses);
|
roamingAllowed, reason, addresses, dnses);
|
||||||
|
|
|
@ -544,7 +544,7 @@ class RadioResponse_v1_5 : public ::android::hardware::radio::V1_5::IRadioRespon
|
||||||
|
|
||||||
Return<void> setupDataCallResponse_1_5(
|
Return<void> setupDataCallResponse_1_5(
|
||||||
const RadioResponseInfo& info,
|
const RadioResponseInfo& info,
|
||||||
const android::hardware::radio::V1_4::SetupDataCallResult& dcResponse);
|
const android::hardware::radio::V1_5::SetupDataCallResult& dcResponse);
|
||||||
|
|
||||||
Return<void> setInitialAttachApnResponse_1_5(const RadioResponseInfo& info);
|
Return<void> setInitialAttachApnResponse_1_5(const RadioResponseInfo& info);
|
||||||
|
|
||||||
|
|
|
@ -931,7 +931,7 @@ Return<void> RadioResponse_v1_5::startNetworkScanResponse_1_5(const RadioRespons
|
||||||
|
|
||||||
Return<void> RadioResponse_v1_5::setupDataCallResponse_1_5(
|
Return<void> RadioResponse_v1_5::setupDataCallResponse_1_5(
|
||||||
const RadioResponseInfo& info,
|
const RadioResponseInfo& info,
|
||||||
const android::hardware::radio::V1_4::SetupDataCallResult& /* dcResponse */) {
|
const android::hardware::radio::V1_5::SetupDataCallResult& /* dcResponse */) {
|
||||||
rspInfo = info;
|
rspInfo = info;
|
||||||
parent_v1_5.notify(info.serial);
|
parent_v1_5.notify(info.serial);
|
||||||
return Void();
|
return Void();
|
||||||
|
|
Loading…
Reference in a new issue