From 76372496a7754d94079b7fb6315a4ef64e4f6c3b Mon Sep 17 00:00:00 2001 From: Sanket Padawe Date: Thu, 27 Oct 2016 13:20:49 -0700 Subject: [PATCH] Develop HIDL interface for radio (RIL). Test: Only built the hidl interface as there isn't anything else to test. Bug: 32020264 Change-Id: Ibf62feb9c562992cffb9ba6d1ec85a7e9c22f359 --- radio/1.0/Android.bp | 24 +- radio/1.0/Android.mk | 1428 ++++++++++++++++- radio/1.0/IRadio.hal | 898 ++++++++++- ...RadioCallback.hal => IRadioIndication.hal} | 20 +- radio/1.0/IRadioResponse.hal | 1061 ++++++++++++ radio/1.0/types.hal | 969 +++++++++-- 6 files changed, 4193 insertions(+), 207 deletions(-) rename radio/1.0/{IRadioCallback.hal => IRadioIndication.hal} (66%) create mode 100644 radio/1.0/IRadioResponse.hal diff --git a/radio/1.0/Android.bp b/radio/1.0/Android.bp index 34eaf33d0e..6e122fd27b 100644 --- a/radio/1.0/Android.bp +++ b/radio/1.0/Android.bp @@ -7,12 +7,14 @@ genrule { srcs: [ "types.hal", "IRadio.hal", - "IRadioCallback.hal", + "IRadioIndication.hal", + "IRadioResponse.hal", ], out: [ "android/hardware/radio/1.0/types.cpp", "android/hardware/radio/1.0/RadioAll.cpp", - "android/hardware/radio/1.0/RadioCallbackAll.cpp", + "android/hardware/radio/1.0/RadioIndicationAll.cpp", + "android/hardware/radio/1.0/RadioResponseAll.cpp", ], } @@ -23,7 +25,8 @@ genrule { srcs: [ "types.hal", "IRadio.hal", - "IRadioCallback.hal", + "IRadioIndication.hal", + "IRadioResponse.hal", ], out: [ "android/hardware/radio/1.0/types.h", @@ -32,11 +35,16 @@ genrule { "android/hardware/radio/1.0/BnRadio.h", "android/hardware/radio/1.0/BpRadio.h", "android/hardware/radio/1.0/BsRadio.h", - "android/hardware/radio/1.0/IRadioCallback.h", - "android/hardware/radio/1.0/IHwRadioCallback.h", - "android/hardware/radio/1.0/BnRadioCallback.h", - "android/hardware/radio/1.0/BpRadioCallback.h", - "android/hardware/radio/1.0/BsRadioCallback.h", + "android/hardware/radio/1.0/IRadioIndication.h", + "android/hardware/radio/1.0/IHwRadioIndication.h", + "android/hardware/radio/1.0/BnRadioIndication.h", + "android/hardware/radio/1.0/BpRadioIndication.h", + "android/hardware/radio/1.0/BsRadioIndication.h", + "android/hardware/radio/1.0/IRadioResponse.h", + "android/hardware/radio/1.0/IHwRadioResponse.h", + "android/hardware/radio/1.0/BnRadioResponse.h", + "android/hardware/radio/1.0/BpRadioResponse.h", + "android/hardware/radio/1.0/BsRadioResponse.h", ], } diff --git a/radio/1.0/Android.mk b/radio/1.0/Android.mk index b8365bf429..1ad78ac8d6 100644 --- a/radio/1.0/Android.mk +++ b/radio/1.0/Android.mk @@ -13,9 +13,9 @@ intermediates := $(local-generated-sources-dir) HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX) # -# Build types.hal (RadioAppState) +# Build types.hal (AppState) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioAppState.java +GEN := $(intermediates)/android/hardware/radio/1.0/AppState.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -23,16 +23,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioAppState + android.hardware.radio@1.0::types.AppState $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioAppStatus) +# Build types.hal (AppStatus) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioAppStatus.java +GEN := $(intermediates)/android/hardware/radio/1.0/AppStatus.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -40,16 +40,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioAppStatus + android.hardware.radio@1.0::types.AppStatus $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioAppType) +# Build types.hal (AppType) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioAppType.java +GEN := $(intermediates)/android/hardware/radio/1.0/AppType.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -57,16 +57,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioAppType + android.hardware.radio@1.0::types.AppType $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioCardState) +# Build types.hal (Call) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioCardState.java +GEN := $(intermediates)/android/hardware/radio/1.0/Call.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -74,16 +74,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioCardState + android.hardware.radio@1.0::types.Call $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioCardStatus) +# Build types.hal (CallForwardInfo) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioCardStatus.java +GEN := $(intermediates)/android/hardware/radio/1.0/CallForwardInfo.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -91,7 +91,398 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioCardStatus + android.hardware.radio@1.0::types.CallForwardInfo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CallForwardInfoStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CallForwardInfoStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CallForwardInfoStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CallPresentation) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CallPresentation.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CallPresentation + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CallState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CallState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CallState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CardState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CardState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CardState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CardStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CardStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CardStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CdmaSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CdmaSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CdmaSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (ClipStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/ClipStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.ClipStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (Clir) +# +GEN := $(intermediates)/android/hardware/radio/1.0/Clir.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.Clir + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (DataCallFailCause) +# +GEN := $(intermediates)/android/hardware/radio/1.0/DataCallFailCause.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.DataCallFailCause + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (DataProfile) +# +GEN := $(intermediates)/android/hardware/radio/1.0/DataProfile.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.DataProfile + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (DataRegStateResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/DataRegStateResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.DataRegStateResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (Dial) +# +GEN := $(intermediates)/android/hardware/radio/1.0/Dial.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.Dial + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (EvdoSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/EvdoSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.EvdoSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (GwSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/GwSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.GwSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (IccIo) +# +GEN := $(intermediates)/android/hardware/radio/1.0/IccIo.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.IccIo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (IccIoResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/IccIoResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.IccIoResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (LastCallFailCause) +# +GEN := $(intermediates)/android/hardware/radio/1.0/LastCallFailCause.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.LastCallFailCause + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (LteSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/LteSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.LteSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (OperatorInfo) +# +GEN := $(intermediates)/android/hardware/radio/1.0/OperatorInfo.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.OperatorInfo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (OperatorStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/OperatorStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.OperatorStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (PersoSubstate) +# +GEN := $(intermediates)/android/hardware/radio/1.0/PersoSubstate.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.PersoSubstate + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (PinState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/PinState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.PinState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (RadioBandMode) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RadioBandMode.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RadioBandMode $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) @@ -132,9 +523,9 @@ $(GEN): $(LOCAL_PATH)/types.hal LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioPersoSubstate) +# Build types.hal (RadioError) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioPersoSubstate.java +GEN := $(intermediates)/android/hardware/radio/1.0/RadioError.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -142,16 +533,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioPersoSubstate + android.hardware.radio@1.0::types.RadioError $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioPinState) +# Build types.hal (RadioResponseInfo) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioPinState.java +GEN := $(intermediates)/android/hardware/radio/1.0/RadioResponseInfo.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -159,16 +550,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioPinState + android.hardware.radio@1.0::types.RadioResponseInfo $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioRestrictedState) +# Build types.hal (RadioResponseType) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioRestrictedState.java +GEN := $(intermediates)/android/hardware/radio/1.0/RadioResponseType.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -176,7 +567,7 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioRestrictedState + android.hardware.radio@1.0::types.RadioResponseType $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) @@ -199,6 +590,244 @@ $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) +# +# Build types.hal (RadioTechnology) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RadioTechnology.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RadioTechnology + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (RegState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RegState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RegState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (RestrictedState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RestrictedState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RestrictedState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SendSmsResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SendSmsResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SendSmsResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SetupDataCallResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SetupDataCallResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SetupDataCallResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SmsAcknowledgeFailCause) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SmsAcknowledgeFailCause.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SmsAcknowledgeFailCause + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SmsWriteArgs) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SmsWriteArgs.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SmsWriteArgs + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SmsWriteArgsStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SmsWriteArgsStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SmsWriteArgsStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (TdScdmaSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/TdScdmaSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.TdScdmaSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (UusDcs) +# +GEN := $(intermediates)/android/hardware/radio/1.0/UusDcs.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.UusDcs + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (UusInfo) +# +GEN := $(intermediates)/android/hardware/radio/1.0/UusInfo.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.UusInfo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (UusType) +# +GEN := $(intermediates)/android/hardware/radio/1.0/UusType.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.UusType + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (VoiceRegStateResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/VoiceRegStateResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.VoiceRegStateResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + # # Build IRadio.hal # @@ -206,8 +835,12 @@ GEN := $(intermediates)/android/hardware/radio/1.0/IRadio.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadio.hal -$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IRadioCallback.hal -$(GEN): $(LOCAL_PATH)/IRadioCallback.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IRadioIndication.hal +$(GEN): $(LOCAL_PATH)/IRadioIndication.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IRadioResponse.hal +$(GEN): $(LOCAL_PATH)/IRadioResponse.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal +$(GEN): $(LOCAL_PATH)/types.hal $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ @@ -219,21 +852,40 @@ $(GEN): $(LOCAL_PATH)/IRadio.hal LOCAL_GENERATED_SOURCES += $(GEN) # -# Build IRadioCallback.hal +# Build IRadioIndication.hal # -GEN := $(intermediates)/android/hardware/radio/1.0/IRadioCallback.java +GEN := $(intermediates)/android/hardware/radio/1.0/IRadioIndication.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) -$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioCallback.hal +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioIndication.hal $(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal $(GEN): $(LOCAL_PATH)/types.hal $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::IRadioCallback + android.hardware.radio@1.0::IRadioIndication -$(GEN): $(LOCAL_PATH)/IRadioCallback.hal +$(GEN): $(LOCAL_PATH)/IRadioIndication.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build IRadioResponse.hal +# +GEN := $(intermediates)/android/hardware/radio/1.0/IRadioResponse.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioResponse.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal +$(GEN): $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::IRadioResponse + +$(GEN): $(LOCAL_PATH)/IRadioResponse.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) include $(BUILD_JAVA_LIBRARY) @@ -250,9 +902,9 @@ intermediates := $(local-generated-sources-dir) HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX) # -# Build types.hal (RadioAppState) +# Build types.hal (AppState) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioAppState.java +GEN := $(intermediates)/android/hardware/radio/1.0/AppState.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -260,16 +912,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioAppState + android.hardware.radio@1.0::types.AppState $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioAppStatus) +# Build types.hal (AppStatus) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioAppStatus.java +GEN := $(intermediates)/android/hardware/radio/1.0/AppStatus.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -277,16 +929,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioAppStatus + android.hardware.radio@1.0::types.AppStatus $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioAppType) +# Build types.hal (AppType) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioAppType.java +GEN := $(intermediates)/android/hardware/radio/1.0/AppType.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -294,16 +946,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioAppType + android.hardware.radio@1.0::types.AppType $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioCardState) +# Build types.hal (Call) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioCardState.java +GEN := $(intermediates)/android/hardware/radio/1.0/Call.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -311,16 +963,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioCardState + android.hardware.radio@1.0::types.Call $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioCardStatus) +# Build types.hal (CallForwardInfo) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioCardStatus.java +GEN := $(intermediates)/android/hardware/radio/1.0/CallForwardInfo.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -328,7 +980,398 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioCardStatus + android.hardware.radio@1.0::types.CallForwardInfo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CallForwardInfoStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CallForwardInfoStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CallForwardInfoStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CallPresentation) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CallPresentation.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CallPresentation + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CallState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CallState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CallState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CardState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CardState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CardState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CardStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CardStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CardStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (CdmaSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/CdmaSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.CdmaSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (ClipStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/ClipStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.ClipStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (Clir) +# +GEN := $(intermediates)/android/hardware/radio/1.0/Clir.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.Clir + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (DataCallFailCause) +# +GEN := $(intermediates)/android/hardware/radio/1.0/DataCallFailCause.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.DataCallFailCause + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (DataProfile) +# +GEN := $(intermediates)/android/hardware/radio/1.0/DataProfile.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.DataProfile + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (DataRegStateResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/DataRegStateResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.DataRegStateResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (Dial) +# +GEN := $(intermediates)/android/hardware/radio/1.0/Dial.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.Dial + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (EvdoSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/EvdoSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.EvdoSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (GwSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/GwSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.GwSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (IccIo) +# +GEN := $(intermediates)/android/hardware/radio/1.0/IccIo.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.IccIo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (IccIoResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/IccIoResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.IccIoResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (LastCallFailCause) +# +GEN := $(intermediates)/android/hardware/radio/1.0/LastCallFailCause.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.LastCallFailCause + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (LteSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/LteSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.LteSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (OperatorInfo) +# +GEN := $(intermediates)/android/hardware/radio/1.0/OperatorInfo.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.OperatorInfo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (OperatorStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/OperatorStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.OperatorStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (PersoSubstate) +# +GEN := $(intermediates)/android/hardware/radio/1.0/PersoSubstate.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.PersoSubstate + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (PinState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/PinState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.PinState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (RadioBandMode) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RadioBandMode.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RadioBandMode $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) @@ -369,9 +1412,9 @@ $(GEN): $(LOCAL_PATH)/types.hal LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioPersoSubstate) +# Build types.hal (RadioError) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioPersoSubstate.java +GEN := $(intermediates)/android/hardware/radio/1.0/RadioError.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -379,16 +1422,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioPersoSubstate + android.hardware.radio@1.0::types.RadioError $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioPinState) +# Build types.hal (RadioResponseInfo) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioPinState.java +GEN := $(intermediates)/android/hardware/radio/1.0/RadioResponseInfo.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -396,16 +1439,16 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioPinState + android.hardware.radio@1.0::types.RadioResponseInfo $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) # -# Build types.hal (RadioRestrictedState) +# Build types.hal (RadioResponseType) # -GEN := $(intermediates)/android/hardware/radio/1.0/RadioRestrictedState.java +GEN := $(intermediates)/android/hardware/radio/1.0/RadioResponseType.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal @@ -413,7 +1456,7 @@ $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::types.RadioRestrictedState + android.hardware.radio@1.0::types.RadioResponseType $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) @@ -436,6 +1479,244 @@ $(GEN): $(LOCAL_PATH)/types.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) +# +# Build types.hal (RadioTechnology) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RadioTechnology.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RadioTechnology + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (RegState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RegState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RegState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (RestrictedState) +# +GEN := $(intermediates)/android/hardware/radio/1.0/RestrictedState.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.RestrictedState + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SendSmsResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SendSmsResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SendSmsResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SetupDataCallResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SetupDataCallResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SetupDataCallResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SmsAcknowledgeFailCause) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SmsAcknowledgeFailCause.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SmsAcknowledgeFailCause + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SmsWriteArgs) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SmsWriteArgs.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SmsWriteArgs + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (SmsWriteArgsStatus) +# +GEN := $(intermediates)/android/hardware/radio/1.0/SmsWriteArgsStatus.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.SmsWriteArgsStatus + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (TdScdmaSignalStrength) +# +GEN := $(intermediates)/android/hardware/radio/1.0/TdScdmaSignalStrength.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.TdScdmaSignalStrength + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (UusDcs) +# +GEN := $(intermediates)/android/hardware/radio/1.0/UusDcs.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.UusDcs + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (UusInfo) +# +GEN := $(intermediates)/android/hardware/radio/1.0/UusInfo.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.UusInfo + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (UusType) +# +GEN := $(intermediates)/android/hardware/radio/1.0/UusType.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.UusType + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build types.hal (VoiceRegStateResult) +# +GEN := $(intermediates)/android/hardware/radio/1.0/VoiceRegStateResult.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::types.VoiceRegStateResult + +$(GEN): $(LOCAL_PATH)/types.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + # # Build IRadio.hal # @@ -443,8 +1724,12 @@ GEN := $(intermediates)/android/hardware/radio/1.0/IRadio.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) $(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadio.hal -$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IRadioCallback.hal -$(GEN): $(LOCAL_PATH)/IRadioCallback.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IRadioIndication.hal +$(GEN): $(LOCAL_PATH)/IRadioIndication.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/IRadioResponse.hal +$(GEN): $(LOCAL_PATH)/IRadioResponse.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal +$(GEN): $(LOCAL_PATH)/types.hal $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ @@ -456,21 +1741,40 @@ $(GEN): $(LOCAL_PATH)/IRadio.hal LOCAL_GENERATED_SOURCES += $(GEN) # -# Build IRadioCallback.hal +# Build IRadioIndication.hal # -GEN := $(intermediates)/android/hardware/radio/1.0/IRadioCallback.java +GEN := $(intermediates)/android/hardware/radio/1.0/IRadioIndication.java $(GEN): $(HIDL) $(GEN): PRIVATE_HIDL := $(HIDL) -$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioCallback.hal +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioIndication.hal $(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal $(GEN): $(LOCAL_PATH)/types.hal $(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) $(GEN): PRIVATE_CUSTOM_TOOL = \ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ -Ljava -randroid.hardware:hardware/interfaces \ - android.hardware.radio@1.0::IRadioCallback + android.hardware.radio@1.0::IRadioIndication -$(GEN): $(LOCAL_PATH)/IRadioCallback.hal +$(GEN): $(LOCAL_PATH)/IRadioIndication.hal + $(transform-generated-source) +LOCAL_GENERATED_SOURCES += $(GEN) + +# +# Build IRadioResponse.hal +# +GEN := $(intermediates)/android/hardware/radio/1.0/IRadioResponse.java +$(GEN): $(HIDL) +$(GEN): PRIVATE_HIDL := $(HIDL) +$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioResponse.hal +$(GEN): PRIVATE_DEPS += $(LOCAL_PATH)/types.hal +$(GEN): $(LOCAL_PATH)/types.hal +$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates) +$(GEN): PRIVATE_CUSTOM_TOOL = \ + $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \ + -Ljava -randroid.hardware:hardware/interfaces \ + android.hardware.radio@1.0::IRadioResponse + +$(GEN): $(LOCAL_PATH)/IRadioResponse.hal $(transform-generated-source) LOCAL_GENERATED_SOURCES += $(GEN) include $(BUILD_STATIC_JAVA_LIBRARY) diff --git a/radio/1.0/IRadio.hal b/radio/1.0/IRadio.hal index 7725e63dab..38c36e8588 100644 --- a/radio/1.0/IRadio.hal +++ b/radio/1.0/IRadio.hal @@ -16,27 +16,901 @@ package android.hardware.radio@1.0; -import IRadioCallback; +import IRadioResponse; +import IRadioIndication; +/* + * This interface is used by telephony & telecom to talk to cellular radio. + * All the functions have minimum two parameters: + * slotId: which corresponds to sim slot id. + * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the + * duration of a method call. If clients provide colliding serials (including passing the same + * serial to different methods), multiple responses (one for each method call) must still be served. + */ interface IRadio { - /** - * Set callback that has response functions for requests + /* + * Set response functions for radio requests & radio indications. * * @param slotId SIM slot id for which the function is called; needed for multi-sim - * @param radioCallback Object containing response callbacks + * @param radioResponse Object containing response functions + * @param radioIndication Object containing radio indications */ - setCallback(int32_t slotId, IRadioCallback radioCallback); + setResponseFunctions(int32_t slotId, IRadioResponse radioResponse, + IRadioIndication radioIndication); - /** + /* * Requests status of the ICC card * - * Response callback is IRadioCallback.responseGetSimStatus() + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. * - * Valid errors: - * Must never fail for a valid slot id + * Response function is IRadioResponse.getIccCardStatusResponse() + * + */ + oneway getIccCardStatus(int32_t slotId, int32_t serial); + + /* + * Supplies ICC PIN. Only called if CardStatus has AppState.PIN state * * @param slotId SIM slot id for which the function is called; needed for multi-sim - * @param serial Serial number of request + * @param serial Serial number of request. + * @param pin PIN value + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.supplyIccPinForAppResponse() + * */ - oneway requestGetSimStatus(int32_t slotId, int32_t serial); -}; + oneway supplyIccPinForApp(int32_t slotId, int32_t serial, string pin, string aid); + + /* + * Supplies ICC PUK and new PIN. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param puk PUK value + * @param pin New PIN value + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.supplyIccPukForAppResponse() + * + */ + oneway supplyIccPukForApp(int32_t slotId, int32_t serial, string puk, string pin, string aid); + + /* + * Supplies ICC PIN2. Only called following operation where SIM_PIN2 was + * returned as a a failure from a previous operation. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param pin2 PIN2 value + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.supplyIccPin2ForAppResponse() + * + */ + oneway supplyIccPin2ForApp(int32_t slotId, int32_t serial, string pin2, string aid); + + /* + * Supplies ICC PUK2 and new PIN2. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param puk2 PUK2 value + * @param pin2 New PIN2 value + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.supplyIccPuk2ForAppResponse() + * + */ + oneway supplyIccPuk2ForApp(int32_t slotId, int32_t serial, string puk2, string pin2, + string aid); + + /* + * Supplies old ICC PIN and new PIN. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param oldPin Old pin value + * @param newPin New pin value + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.changeIccPinForAppResponse() + * + */ + oneway changeIccPinForApp(int32_t slotId, int32_t serial, string oldPin, string newPin, + string aid); + + /* + * Supplies old ICC PIN2 and new PIN2. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param oldPin2 Old pin2 value + * @param newPin2 New pin2 value + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.changeIccPin2ForAppResponse() + * + */ + oneway changeIccPin2ForApp(int32_t slotId, int32_t serial, string oldPin2, string newPin2, + string aid); + + /* + * Requests that network personalization be deactivated + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param netPin Network depersonlization code + * + * Response function is IRadioResponse.supplyNetworkDepersonalizationResponse() + * + */ + oneway supplyNetworkDepersonalization(int32_t slotId, int32_t serial, string netPin); + + /* + * Requests current call list + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getCurrentCallsResponse() + * + */ + oneway getCurrentCalls(int32_t slotId, int32_t serial); + + /* + * Initiate voice call. + * This method is never used for supplementary service codes + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param dialInfo Dial struct + * + * Response function is IRadioResponse.dialResponse() + * + */ + oneway dial(int32_t slotId, int32_t serial, Dial dialInfo); + + /* + * Get the SIM IMSI + * Only valid when radio state is "RADIO_STATE_ON" + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * + * Response function is IRadioResponse.getImsiForAppResponse() + * + */ + oneway getImsiForApp(int32_t slotId, int32_t serial, string aid); + + /* + * Hang up a specific line (like AT+CHLD=1x) + * After this HANGUP request returns, Radio must show the connection is NOT + * active anymore in next requestGetCurrentCalls query. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param gsmIndex Connection index (value of 'x' in CHLD above) + * + * Response function is IRadioResponse.hangupResponse() + * + */ + oneway hangup(int32_t slotId, int32_t serial, int32_t gsmIndex); + + /* + * Hang up waiting or held (like AT+CHLD=0) + * After this HANGUP request returns, Radio must show the connection is NOT + * active anymore in next getCurrentCalls() query. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.hangupWaitingOrBackgroundResponse() + * + */ + oneway hangupWaitingOrBackground(int32_t slotId, int32_t serial); + + /* + * Hang up waiting or held (like AT+CHLD=1) + * After this HANGUP request returns, Radio must show the connection is NOT + * active anymore in next getCurrentCalls query. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.hangupForegroundResumeBackgroundResponse() + * + */ + oneway hangupForegroundResumeBackground(int32_t slotId, int32_t serial); + + /* + * Switch waiting or holding call and active call (like AT+CHLD=2) + * State transitions must be as follows: + * + * Call transitions must happen as shown below. + * + * BEFORE AFTER + * Call 1 Call 2 Call 1 Call 2 + * ACTIVE HOLDING HOLDING ACTIVE + * ACTIVE WAITING HOLDING ACTIVE + * HOLDING WAITING HOLDING ACTIVE + * ACTIVE IDLE HOLDING IDLE + * IDLE IDLE IDLE IDLE + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.switchWaitingOrHoldingAndActiveResponse() + * + */ + oneway switchWaitingOrHoldingAndActive(int32_t slotId, int32_t serial); + + /* + * Conference holding and active (like AT+CHLD=3) + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.conferenceResponse() + * + */ + oneway conference(int32_t slotId, int32_t serial); + + /* + * Send UDUB (user determined user busy) to ringing or + * waiting call answer) + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.rejectCallResponse() + * + */ + oneway rejectCall(int32_t slotId, int32_t serial); + + /* + * Requests the failure cause code for the most recently terminated call. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getLastCallFailCauseResponse() + * + */ + oneway getLastCallFailCause(int32_t slotId, int32_t serial); + + /* + * Requests current signal strength and associated information. + * Must succeed if radio is on. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getSignalStrengthResponse() + */ + oneway getSignalStrength(int32_t slotId, int32_t serial); + + /* + * Request current voice registration state + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getVoiceRegistrationStateResponse() + */ + oneway getVoiceRegistrationState(int32_t slotId, int32_t serial); + + /* + * Request current data registration state + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getDataRegistrationStateResponse() + */ + oneway getDataRegistrationState(int32_t slotId, int32_t serial); + + /* + * Request current operator ONS or EONS + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getOperatorResponse() + */ + oneway getOperator(int32_t slotId, int32_t serial); + + /* + * Toggle radio on and off (for "airplane" mode) + * If the radio is turned off/on the radio modem subsystem + * is expected return to an initialized state. For instance, + * any voice and data calls must be terminated and all associated + * lists emptied. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param on To turn on radio -> on = true, to turn off radio -> on = false. + * + * Response function is IRadioResponse.setRadioPowerResponse() + */ + oneway setRadioPower(int32_t slotId, int32_t serial, bool on); + + /* + * Send a DTMF tone + * + * If the implementation is currently playing a tone requested via + * startDtmf(), that tone must be cancelled and the new tone + * must be played instead + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param s string with single char having one of 12 values: 0-9, *, # + * + * Response function is IRadioResponse.sendDtmfResponse() + */ + oneway sendDtmf(int32_t slotId, int32_t serial, string s); + + /* + * Send an SMS message + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param smscPDU is SMSC address in GSM BCD format prefixed by a length byte + * (as expected by TS 27.005) or empty string for default SMSC + * @param pdu is SMS in PDU format as an ASCII hex string less the SMSC address + * TP-Layer-Length is be "strlen(pdu)/2" + * + * Response function is IRadioResponse.sendSmsResponse() + * + * Based on the return error, caller decides to resend if sending sms + * fails. RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332) + * and RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500) + */ + oneway sendSms(int32_t slotId, int32_t serial, string smscPDU, string pdu); + + /* + * Send an SMS message. Identical to sendSms, + * except that more messages are expected to be sent soon. If possible, + * keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command) + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param smscPDU is SMSC address in GSM BCD format prefixed by a length byte + * (as expected by TS 27.005) or empty string for default SMSC + * @param pdu is SMS in PDU format as an ASCII hex string less the SMSC address + * TP-Layer-Length is be "strlen(pdu)/2" + * + * Response function is IRadioResponse.sendSMSExpectMoreResponse() + * + * Based on the return error, caller decides to resend if sending sms + * fails. RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332) + * and RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500) + */ + oneway sendSMSExpectMore(int32_t slotId, int32_t serial, string smscPDU, string pdu); + + /* + * Setup a packet data connection. If DataCallResponse.status + * return DataCallFailCause:NONE it is added to the list of data calls and a + * unsolDataCallListChanged() is sent. The call remains in the + * list until deactivateDataCall() is issued or the + * radio is powered off/on. This list is returned by getDataCallList() + * and dataCallListChanged(). + * + * The RIL is expected to: + * - Create one data call context. + * - Create and configure a dedicated interface for the context + * - The interface must be point to point. + * - The interface is configured with one or more addresses and + * is capable of sending and receiving packets. The prefix length + * of the addresses must be /32 for IPv4 and /128 for IPv6. + * - Must NOT change the linux routing table. + * - Support up to getDataRegistrationState response[5] + * number of simultaneous data call contexts. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param radioTechnology Radio technology to use: 0-CDMA, 1-GSM/UMTS, 2... + * for values above 2 this is RadioTechnology + 2. + * @param profile is a RadioDataProfile (support is optional) + * @param apn is the APN to connect to if radio technology is GSM/UMTS. This APN must + * override the one in the profile. empty string indicates no APN overrride. + * @param user is the username for APN, or empty string + * @param password is the password for APN, or empty string + * @param authType is the PAP / CHAP auth type. Values: + * 0 => PAP and CHAP is never performed. + * 1 => PAP may be performed; CHAP is never performed. + * 2 => CHAP may be performed; PAP is never performed. + * 3 => PAP / CHAP may be performed - baseband dependent. + * @param protocol is the connection type to request must be one of the + * PDP_type values in TS 27.007 section 10.1.1. + * For example, "IP", "IPV6", "IPV4V6", or "PPP". + * + * Response function is IRadioResponse.setupDataCallResponse() + */ + oneway setupDataCall(int32_t slotId, int32_t serial, int32_t radioTechnology, + int32_t profile, string apn, string user, string password, int32_t authType, + string protocol); + + /* + * Request ICC I/O operation. + * This is similar to the TS 27.007 "restricted SIM" operation + * where it assumes all of the EF selection must be done by the + * callee + * + * Arguments and responses that are unused for certain + * values of "command" must be ignored or set to empty string + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param iccIo IccIo + * + * Please note that IccIo has a "PIN2" field which may be empty string, + * or may specify a PIN2 for operations that require a PIN2 (eg + * updating FDN records) + * + * Response function is IRadioResponse.iccIOForAppResponse() + */ + oneway iccIOForApp(int32_t slotId, int32_t serial, IccIo iccIo); + + /* + * Send a USSD message. + * + * If a USSD session already exists, the message must be sent in the + * context of that session. Otherwise, a new session must be created. + * + * The network reply must be reported via unsolOnUssd + * + * Only one USSD session must exist at a time, and the session is assumed + * to exist until: + * a) The android system invokes cancelUssd() + * b) The implementation sends a unsolOnUssd() with a type code + * of "0" (USSD-Notify/no further action) or "2" (session terminated) + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param ussd string containing the USSD request in UTF-8 format + * + * Response function is IRadioResponse.sendUssdResponse() + * + * See also requestCancelUssd, unsolOnUssd + */ + oneway sendUssd(int32_t slotId, int32_t serial, string ussd); + + /* + * Cancel the current USSD session if one exists. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.cancelPendingUssdResponse() + */ + oneway cancelPendingUssd(int32_t slotId, int32_t serial); + + /* + * Gets current CLIR status + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getClirResponse() + */ + oneway getClir(int32_t slotId, int32_t serial); + + /* + * Set current CLIR status + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param status "n" parameter from TS 27.007 7.7 + * + * Response function is IRadioResponse.setClirResponse() + */ + oneway setClir(int32_t slotId, int32_t serial, int32_t status); + + /* + * Request call forward status. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param callInfo CallForwardInfo + * + * Response function is IRadioResponse.getCallForwardStatusResponse() + */ + oneway getCallForwardStatus(int32_t slotId, int32_t serial, + CallForwardInfo callInfo); + + /* + * Configure call forward rule + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param callInfo CallForwardInfo + * + * Response function is IRadioResponse.setCallForwardResponse() + */ + oneway setCallForward(int32_t slotId, int32_t serial, CallForwardInfo callInfo); + + /* + * Query current call waiting state + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param serviceClass Service class is the TS 27.007 service class to query + * + * Response function is IRadioResponse.getCallWaitingResponse() + */ + oneway getCallWaiting(int32_t slotId, int32_t serial, int32_t serviceClass); + + /* + * Configure current call waiting state + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param enable is false for "disabled" and true for "enabled" + * @param serviceClass is the TS 27.007 service class bit vector of services to modify + * + * Response function is IRadioResponse.setCallWaitingResponse() + */ + oneway setCallWaiting(int32_t slotId, int32_t serial, bool enable, + int32_t serviceClass); + + /* + * Acknowledge successful or failed receipt of SMS previously indicated + * via unsolResponseNewSms + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param success is true on successful receipt + * (basically, AT+CNMA=1 from TS 27.005 is 0 on failed receipt + * (basically, AT+CNMA=2 from TS 27.005) + * @param cause: if success is false, this contains the failure cause as defined + * in TS 23.040, 9.2.3.22. + * + * Response function is IRadioResponse.acknowledgeLastIncomingGsmSmsResponse() + */ + oneway acknowledgeLastIncomingGsmSms(int32_t slotId, int32_t serial, bool success, + SmsAcknowledgeFailCause cause); + + /* + * Answer incoming call + * Must not be called for WAITING calls. + * switchWaitingOrHoldingAndActive() must be used in this case + * instead + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.acceptCallResponse() + */ + oneway acceptCall(int32_t slotId, int32_t serial); + + /* + * Deactivate packet data connection and remove from the + * data call list if RadioError:NONE is returned. Any other return + * values must also try to remove the call from the list. An + * unsolDataCallListChanged must be + * issued because of an deactivateDataCall. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param cid Indicates CID + * @param reasonRadioShutDown Indicates Disconnect Reason + * false => No specific reason specified + * true => Radio shutdown requested + * + * Response function is IRadioResponse.deactivateDataCallResponse() + */ + oneway deactivateDataCall(int32_t slotId, int32_t serial, int32_t cid, + bool reasonRadioShutDown); + + /* + * Query the status of a facility lock state + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param facility is the facility string code from TS 27.007 7.4 + * (eg "AO" for BAOC, "SC" for SIM lock) + * @param password is the password, or "" if not required + * @param serviceClass is the TS 27.007 service class bit vector of services to query + * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests. + * + * Response function is IRadioResponse.getFacilityLockForAppResponse() + */ + oneway getFacilityLockForApp(int32_t slotId, int32_t serial, string facility, + string password, int32_t serviceClass, string appId); + + /* + * Enable/disable one facility lock + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param facility is the facility string code from TS 27.007 7.4 (eg "AO" for BAOC) + * @param lockState false for "unlock" and true for "lock" + * @param password is the password + * @param serviceClass is string representation of decimal TS 27.007 + * service class bit vector. Eg, the string + * "1" means "set this facility for voice services" + * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value. + * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests. + * + * Response function is IRadioResponse.setFacilityLockForAppResponse() + */ + oneway setFacilityLockForApp(int32_t slotId, int32_t serial, string facility, bool lockState, + string password, int32_t serviceClass, string appId); + + /* + * Change call barring facility password + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param facility facility string code from TS 27.007 7.4 (eg "AO" for BAOC) + * @param oldPassword old password + * @param newPassword new password + * + * Response function is IRadioResponse.setBarringPasswordResponse() + */ + oneway setBarringPassword(int32_t slotId, int32_t serial, string facility, + string oldPassword, string newPassword); + + /* + * Query current network selection mode + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getNetworkSelectionModeResponse() + */ + oneway getNetworkSelectionMode(int32_t slotId, int32_t serial); + + /* + * Specify that the network must be selected automatically. + * This request must not respond until the new operator is selected and registered. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.setNetworkSelectionModeAutomaticResponse() + */ + oneway setNetworkSelectionModeAutomatic(int32_t slotId, int32_t serial); + + /* + * Manually select a specified network. + * This request must not respond until the new operator is selected and registered. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param operatorNumeric string specifying MCCMNC of network to select (eg "310170") + * + * Response function is IRadioResponse.setNetworkSelectionModeManualResponse() + */ + oneway setNetworkSelectionModeManual(int32_t slotId, int32_t serial, string operatorNumeric); + + /* + * Scans for available networks + * This request must not respond until the new operator is selected and registered. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getAvailableNetworksResponse() + */ + oneway getAvailableNetworks(int32_t slotId, int32_t serial); + + /* + * Start playing a DTMF tone. Continue playing DTMF tone until + * stopDtmf is received. + * If a startDtmf() is received while a tone is currently playing, + * it must cancel the previous tone and play the new one. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param s string having a single character with one of 12 values: 0-9,*,# + * + * Response function is IRadioResponse.startDtmfResponse() + */ + oneway startDtmf(int32_t slotId, int32_t serial, string s); + + /* + * Stop playing a currently playing DTMF tone. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.stopDtmfResponse() + */ + oneway stopDtmf(int32_t slotId, int32_t serial); + + /* + * Return string value indicating baseband version, eg response from AT+CGMR + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getBasebandVersionResponse() + */ + oneway getBasebandVersion(int32_t slotId, int32_t serial); + + /* + * Separate a party from a multiparty call placing the multiparty call + * (less the specified party) on hold and leaving the specified party + * as the only other member of the current (active) call + * + * Like AT+CHLD=2x + * + * See TS 22.084 1.3.8.2 (iii) + * TS 22.030 6.5.5 "Entering "2X followed by send" + * TS 27.007 "AT+CHLD=2x" + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param gsmIndex contains Connection index (value of 'x' in CHLD above) + * + * Response function is IRadioResponse.separateConnectionResponse() + */ + oneway separateConnection(int32_t slotId, int32_t serial, int32_t gsmIndex); + + /* + * Turn on or off uplink (microphone) mute. + * Must only be sent while voice call is active. + * Must always be reset to "disable mute" when a new voice call is initiated + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param enable true for "enable mute" and false for "disable mute" + * + * Response function is IRadioResponse.setMuteResponse() + */ + oneway setMute(int32_t slotId, int32_t serial, bool enable); + + /* + * Queries the current state of the uplink mute setting + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getMuteResponse() + */ + oneway getMute(int32_t slotId, int32_t serial); + + /* + * Queries the status of the CLIP supplementary service + * (for MMI code "*#30#") + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getClipResponse() + */ + oneway getClip(int32_t slotId, int32_t serial); + + /* + * Returns the data call list. An entry is added when a + * setupDataCall() is issued and removed on a + * deactivateDataCall(). The list is emptied when + * setRadioPower() off/on is issued. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getDataCallListResponse() + */ + oneway getDataCallList(int32_t slotId, int32_t serial); + + /* + * This request is reserved for OEM-specific uses. It passes raw byte arrays back and forth. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param data data passed as raw bytes to oem + * + * Response function is IRadioResponse.sendOemRilRequestRawResponse() + */ + oneway sendOemRilRequestRaw(int32_t slotId, int32_t serial, vec data); + + /* + * This request is reserved for OEM-specific uses. It passes strings back and forth. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param data data passed as strings to oem + * + * Response function is IRadioResponse.sendOemRilRequestStringsResponse() + */ + oneway sendOemRilRequestStrings(int32_t slotId, int32_t serial, vec data); + + /* + * Indicates the current state of the screen. When the screen is off, the + * Radio must notify the baseband to suppress certain notifications (eg, + * signal strength and changes in LAC/CID or BID/SID/NID/latitude/longitude) + * in an effort to conserve power. These notifications must resume when the + * screen is on. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param enable true = screen on, false = screen off. + * + * Response function is IRadioResponse.sendScreenStateResponse() + */ + oneway sendScreenState(int32_t slotId, int32_t serial, bool enable); + + /* + * Enables/disables supplementary service related notifications from the network. + * Notifications are reported via unsolSuppSvcNotification(). + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param enable true = notifications enabled, false = notifications disabled. + * + * Response function is IRadioResponse.setSuppServiceNotificationsResponse() + */ + oneway setSuppServiceNotifications(int32_t slotId, int32_t serial, bool enable); + + /* + * Stores a SMS message to SIM memory. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param smsWriteArgs SmsWriteArgs defined in types.hal + * + * Response function is IRadioResponse.writeSmsToSimResponse() + */ + oneway writeSmsToSim(int32_t slotId, int32_t serial, SmsWriteArgs smsWriteArgs); + + /* + * Deletes a SMS message from SIM memory. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param index Record index of the message to delete. + * + * Response function is IRadioResponse.deleteSmsOnSimResponse() + */ + oneway deleteSmsOnSim(int32_t slotId, int32_t serial, int32_t index); + + /* + * Assign a specified band for RF configuration. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param mode RadioBandMode defined in types.hal + * + * Response function is IRadioResponse.setBandModeResponse() + */ + oneway setBandMode(int32_t slotId, int32_t serial, RadioBandMode mode); + + /* + * Get the list of band modes supported by RF. + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * + * Response function is IRadioResponse.getAvailableBandModesResponse() + */ + oneway getAvailableBandModes(int32_t slotId, int32_t serial); + + /* + * Requests to send a SAT/USAT envelope command to SIM. + * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111 + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param command SAT/USAT command in hexadecimal format string starting with command tag + * + * Response function is IRadioResponse.sendEnvelopeResponse() + */ + oneway sendEnvelope(int32_t slotId, int32_t serial, string command); + + /* + * Requests to send a terminal response to SIM for a received proactive command + * + * @param slotId SIM slot id for which the function is called; needed for multi-sim + * @param serial Serial number of request. + * @param commandResponse SAT/USAT response in hexadecimal format string starting with + * first byte of response data + * + * Response function is IRadioResponse.sendTerminalResponseResponseToSim() + */ + oneway sendTerminalResponseToSim(int32_t slotId, int32_t serial, string commandResponse); +}; \ No newline at end of file diff --git a/radio/1.0/IRadioCallback.hal b/radio/1.0/IRadioIndication.hal similarity index 66% rename from radio/1.0/IRadioCallback.hal rename to radio/1.0/IRadioIndication.hal index c27d168709..8f28e3ff6f 100644 --- a/radio/1.0/IRadioCallback.hal +++ b/radio/1.0/IRadioIndication.hal @@ -16,20 +16,14 @@ package android.hardware.radio@1.0; -interface IRadioCallback { - /** - * Response callback for IRadio.requestGetSimStatus() - * - * @param serial Serial number of request - * @param cardStatus ICC card status - */ - responseGetSimStatus(int32_t serial, RadioCardStatus cardStatus); - - // ONLY UNSOLICITED CALLBACKS BELOW - /** +/* + * Interface declaring unsolicited radio indications. + */ +interface IRadioIndication { + /* * Called when radio state changes. * * @param radioState Current radio state */ - oneway unsolRadioStateChanged(RadioState radioState); -}; + oneway radioStateChanged(RadioState radioState); +}; \ No newline at end of file diff --git a/radio/1.0/IRadioResponse.hal b/radio/1.0/IRadioResponse.hal new file mode 100644 index 0000000000..9efd028082 --- /dev/null +++ b/radio/1.0/IRadioResponse.hal @@ -0,0 +1,1061 @@ +/* + * Copyright (C) 2016 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.hardware.radio@1.0; + +/* + * Interface declaring response functions to solicited radio requests. + * Response functions defined in this interface are as per following convention: + * Response is response to IRadio. + */ +interface IRadioResponse { + /* + * @param info Response info struct containing response type, serial no. & error + * @param cardStatus ICC card status as defined by CardStatus in types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + */ + oneway iccCardStatusResponse(RadioResponseInfo info, CardStatus cardStatus); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT + */ + oneway supplyIccPinForAppResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT (PUK is invalid) + */ + oneway supplyIccPukForAppResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT + */ + oneway supplyIccPin2ForAppResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT (PUK is invalid) + */ + oneway supplyIccPuk2ForAppResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT + */ + oneway changeIccPinForAppResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT (old PIN2 is invalid) + */ + oneway changeIccPin2ForAppResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:PASSWORD_INCORRECT (code is invalid) + */ + oneway supplyNetworkDepersonalizationResponse(RadioResponseInfo info, int32_t remainingRetries); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param calls Current call list + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE (request will be made again in a few hundred msec) + * RadioError:NO_MEMORY + */ + oneway getCurrentCallsResponse(RadioResponseInfo info, vec calls); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + * RadioError:DIAL_MODIFIED_TO_USSD + * RadioError:DIAL_MODIFIED_TO_SS + * RadioError:DIAL_MODIFIED_TO_DIAL + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:INVALID_STATE + * RadioError:NO_RESOURCES + * RadioError:INTERNAL_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:MODEM_ERR + * RadioError:NO_SUBSCRIPTION + * RadioError:NO_NETWORK_FOUND + * RadioError:INVALID_CALL_ID + * RadioError:DEVICE_IN_USE + * RadioError:MODE_NOT_SUPPORTED + * RadioError:ABORTED + */ + oneway dialResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param imsi String containing the IMSI + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:GENERIC_FAILURE + */ + oneway getIMSIForAppResponse(RadioResponseInfo info, string imsi); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:INVALID_STATE + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:GENERIC_FAILURE + */ + oneway hangupConnectionResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:INVALID_STATE + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:NO_RESOURCES + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway hangupWaitingOrBackgroundResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:INVALID_STATE + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:NO_RESOURCES + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway hangupForegroundResumeBackgroundResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:INVALID_STATE + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_STATE + * RadioError:INVALID_CALL_ID + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway switchWaitingOrHoldingAndActiveResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_STATE + * RadioError:INVALID_CALL_ID + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway conferenceResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE (radio resetting) + * RadioError:INVALID_STATE + * RadioError:NO_RESOURCES + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway rejectCallResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param failCause failCause is LastCallFailCause. GSM failure reasons are + * mapped to cause codes defined in TS 24.008 Annex H where possible. CDMA + * failure reasons are derived from the possible call failure scenarios + * described in the "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard. + * + * The implementation must return LastCallFailCause:ERROR_UNSPECIFIED for blocked + * MO calls by restricted state (See unsolRestrictedStateChanged) + * + * If the implementation does not have access to the exact cause codes, + * then it must return one of the values listed in LastCallFailCause, + * as the UI layer needs to distinguish these cases for tone generation or + * error notification. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:NO_MEMORY + * RadioError:GENERIC_FAILURE + */ + oneway getLastCallFailCauseResponse(RadioResponseInfo info, LastCallFailCause failCause); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param sigStrength Current signal strength + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + */ + oneway getSignalStrengthResponse(RadioResponseInfo info, SignalStrength sigStrength); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param voiceRegResponse Current Voice registration response as defined by VoiceRegStateResult + * in types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + */ + oneway getVoiceRegistrationStateResponse(RadioResponseInfo info, + VoiceRegStateResult voiceRegResponse); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param dataRegResponse Current Data registration response as defined by DataRegStateResult in + * types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + */ + oneway getDataRegistrationStateResponse(RadioResponseInfo info, + DataRegStateResult dataRegResponse); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param longName is long alpha ONS or EONS or empty string if unregistered + * @param shortName is short alpha ONS or EONS or empty string if unregistered + * @param numeric is 5 or 6 digit numeric code (MCC + MNC) or empty string if unregistered + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + */ + oneway getOperatorResponse(RadioResponseInfo info, string longName, string shortName, + string numeric); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + * RadioError:OPERATION_NOT_ALLOWED + */ + oneway setRadioPowerResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_RESOURCES + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INVALID_CALL_ID + * RadioError:GENERIC_FAILURE + */ + oneway sendDtmfResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param sms Response to sms sent as defined by SendSmsResult in types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SMS_SEND_FAIL_RETRY + * RadioError:NETWORK_REJECT + * RadioError:INVALID_STATE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:REQUEST_RATE_LIMITED + * RadioError:INVALID_SMS_FORMAT + * RadioError:SYSTEM_ERR + * RadioError:ENCODING_ERR + * RadioError:INVALID_SMSC_ADDRESS + * RadioError:MODEM_ERR + * RadioError:NETWORK_ERR + * RadioError:MODE_NOT_SUPPORTED + * RadioError:GENERIC_FAILURE + */ + oneway sendSmsResponse(RadioResponseInfo info, SendSmsResult sms); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param sms Response to sms sent as defined by SendSmsResult in types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SMS_SEND_FAIL_RETRY + * RadioError:NETWORK_REJECT + * RadioError:INVALID_STATE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:REQUEST_RATE_LIMITED + * RadioError:INVALID_SMS_FORMAT + * RadioError:SYSTEM_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:ENCODING_ERR + * RadioError:INVALID_SMSC_ADDRESS + * RadioError:MODEM_ERR + * RadioError:NETWORK_ERR + * RadioError:MODE_NOT_SUPPORTED + * RadioError:GENERIC_FAILURE + */ + oneway sendSMSExpectMoreResponse(RadioResponseInfo info, SendSmsResult sms); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param dcResponse SetupDataCallResult defined in types.hal + * + * Valid errors returned: + * RadioError:NONE must be returned on both success and failure of setup with the + * DataCallResponse.status containing the actual status + * For all other errors the DataCallResponse is ignored. + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:OP_NOT_ALLOWED_BEFORE_REG_TO_NW + * RadioError:OP_NOT_ALLOWED_DURING_VOICE_CALL + * RadioError:REQUEST_NOT_SUPPORTED + * RadioError:GENERIC_FAILURE + */ + oneway setupDataCallResponse(RadioResponseInfo info, SetupDataCallResult dcResponse); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param iccIo ICC io operation response as defined by IccIoResult in types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SIM_PIN2 + * RadioError:SIM_PUK2 + * RadioError:GENERIC_FAILURE + */ + oneway iccIOForApp(RadioResponseInfo info, IccIoResult iccIo); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:FDN_CHECK_FAILURE + * RadioError:USSD_MODIFIED_TO_DIAL + * RadioError:USSD_MODIFIED_TO_SS + * RadioError:USSD_MODIFIED_TO_USSD + * RadioError:SIM_BUSY + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:ABORTED + * RadioError:SYSTEM_ERR + * RadioError:INVALID_STATE + * RadioError:GENERIC_FAILURE + */ + oneway sendUssdResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SIM_BUSY + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:NO_MEMORY + * RadioError:INVALID_STATE + * RadioError:GENERIC_FAILURE + */ + oneway cancelPendingUssdResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param n is "n" parameter from TS 27.007 7.7 + * @param m is "m" parameter from TS 27.007 7.7 + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:SYSTEM_ERR + * RadioError:GENERIC_FAILURE + */ + oneway getClirResponse(RadioResponseInfo info, int32_t n, int32_t m); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:SYSTEM_ERR + * RadioError:GENERIC_FAILURE + */ + oneway setClirResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param callForwardInfos points to a vector of CallForwardInfo, one for + * each distinct registered phone number. + * + * For example, if data is forwarded to +18005551212 and voice is forwarded + * to +18005559999, then two separate CallForwardInfo's must be returned + * + * If, however, both data and voice are forwarded to +18005551212, then + * a single CallForwardInfo must be returned with the service class + * set to "data + voice = 3") + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway getCallForwardStatusResponse(RadioResponseInfo info, + vec callForwardInfos); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_STATE + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway setCallForwardResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param enable If current call waiting state is disabled, enable = false else true + * @param serviceClass If enable, then callWaitingResp[1] + * must follow, with the TS 27.007 service class bit vector of services + * for which call waiting is enabled. + * For example, if callWaitingResp[0] is 1 and + * callWaitingResp[1] is 3, then call waiting is enabled for data + * and voice and disabled for everything else. + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway getCallWaitingResponse(RadioResponseInfo info, bool enable, int32_t serviceClass); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_STATE + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway setCallWaitingResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + */ + oneway acknowledgeLastIncomingGsmSmsResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_STATE + * RadioError:NO_MEMORY + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:GENERIC_FAILURE + */ + oneway acceptCallResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + */ + oneway deactivateDataCallResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param response 0 is the TS 27.007 service class bit vector of + * services for which the specified barring facility + * is active. "0" means "disabled for all" + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:SYSTEM_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway getFacilityLockForAppResponse(RadioResponseInfo info, int32_t response); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param retry 0 is the number of retries remaining, or -1 if unknown + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_STATE + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway setFacilityLockForAppResponse(RadioResponseInfo info, int32_t retry); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:SYSTEM_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway setBarringPasswordResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param selection false for automatic selection, true for manual selection + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:GENERIC_FAILURE + */ + oneway getNetworkSelectionModeResponse(RadioResponseInfo info, bool manual); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:ILLEGAL_SIM_OR_ME + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + * + * Returns RadioError:ILLEGAL_SIM_OR_ME when the failure is permanent and + * no retries needed, such as illegal SIM or ME. + * Returns RadioError:GENERIC_FAILURE for all other causes that might be fixed by retries. + */ + oneway setNetworkSelectionModeAutomaticResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:ILLEGAL_SIM_OR_ME + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + * + * Returns RadioError:ILLEGAL_SIM_OR_ME when the failure is permanent and + * no retries needed, such as illegal SIM or ME. + * Returns RadioError:GENERIC_FAILURE for all other causes that might be fixed by retries. + */ + oneway setNetworkSelectionModeManualResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param networkInfos List of network operator information as OperatorInfos defined in + * types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:INVALID_ARGUMENTS + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + */ + oneway getAvailableNetworksResponse(RadioResponseInfo info, + vec networkInfos); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_RESOURCES + * RadioError:NO_MEMORY + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:GENERIC_FAILURE + */ + oneway startDtmfResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_RESOURCES + * RadioError:NO_MEMORY + * RadioError:INVALID_ARGUMENTS + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:GENERIC_FAILURE + */ + oneway stopDtmfResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param version string containing version string for log reporting + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:EMPTY_RECORD + * RadioError:GENERIC_FAILURE + */ + oneway getBasebandVersionResponse(RadioResponseInfo info, string version); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:INVALID_STATE + * RadioError:NO_RESOURCES + * RadioError:NO_MEMORY + * RadioError:MODEM_ERR + * RadioError:SYSTEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:INVALID_CALL_ID + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + */ + oneway separateConnectionResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:REQUEST_RATE_LIMITED + * RadioError:GENERIC_FAILURE + */ + oneway setMuteResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param enable true for "mute enabled" & false for "mute disabled" + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:SS_MODIFIED_TO_DIAL + * RadioError:SS_MODIFIED_TO_USSD + * RadioError:SS_MODIFIED_TO_SS + * RadioError:NO_MEMORY + * RadioError:REQUEST_RATE_LIMITED + * RadioError:GENERIC_FAILURE + */ + oneway getMuteResponse(RadioResponseInfo info, bool enable); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param status indicates CLIP status + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:FDN_CHECK_FAILURE + * RadioError:GENERIC_FAILURE + */ + oneway getClipResponse(RadioResponseInfo info, ClipStatus status); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param dcResponse List of DataCallResult as defined in types.hal + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway getDataCallListResponse(RadioResponseInfo info, vec dcResponse); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param data data returned by oem + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:OEM_ERROR_X + */ + oneway sendOemRilRequestRawResponse(RadioResponseInfo info, vec data); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param data data returned by oem + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:OEM_ERROR_X + */ + oneway sendOemRilRequestStringsResponse(RadioResponseInfo info, vec data); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway sendScreenStateResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:SIM_BUSY + * RadioError:NO_MEMORY + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:INTERNAL_ERR + * RadioError:GENERIC_FAILURE + */ + oneway setSuppServiceNotificationsResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param index record index where the message is stored + * + * Valid errors returned: + * RadioError:NONE + * RadioError:SIM_FULL + * RadioError:INVALID_ARGUMENTS + * RadioError:INVALID_SMS_FORMAT + * RadioError:INTERNAL_ERR + * RadioError:MODEM_ERR + * RadioError:ENCODING_ERR + * RadioError:NO_MEMORY + * RadioError:NO_RESOURCES + * RadioError:INVALID_MODEM_STATE + * RadioError:MODE_NOT_SUPPORTED + * RadioError:INVALID_SMSC_ADDRESS + * RadioError:GENERIC_FAILURE + */ + oneway writeSmsToSimResponse(RadioResponseInfo info, int32_t index); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:SIM_FULL + * RadioError:INVALID_ARGUMENTS + * RadioError:NO_MEMORY + * RadioError:REQUEST_RATE_LIMITED + * RadioError:SYSTEM_ERR + * RadioError:MODEM_ERR + * RadioError:NO_SUCH_ENTRY + * RadioError:GENERIC_FAILURE + */ + oneway deleteSmsOnSimResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + */ + oneway setBandModeResponse(RadioResponseInfo info); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param bandModes List of RadioBandMode listing supported modes + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:GENERIC_FAILURE + */ + oneway getAvailableBandModesResponse(RadioResponseInfo info, vec bandModes); + + /* + * @param info Response info struct containing response type, serial no. & error + * @param commandResponse SAT/USAT response in hexadecimal format + * string starting with first byte of response + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:SIM_BUSY + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + */ + oneway sendEnvelopeResponse(RadioResponseInfo info, string commandResponse); + + /* + * @param info Response info struct containing response type, serial no. & error + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INVALID_ARGUMENTS + * RadioError:OPERATION_NOT_ALLOWED + * RadioError:GENERIC_FAILURE + */ + oneway sendTerminalResponseToSimResponse(RadioResponseInfo info); +}; diff --git a/radio/1.0/types.hal b/radio/1.0/types.hal index e5bbe15e30..11834a1d65 100644 --- a/radio/1.0/types.hal +++ b/radio/1.0/types.hal @@ -54,7 +54,111 @@ enum RadioCdmaSmsConst : int32_t { IP_ADDRESS_SIZE = 4, }; -enum RadioRestrictedState : int32_t { +enum RadioError : int32_t { + NONE = 0, // Success + RADIO_NOT_AVAILABLE = 1, // If radio did not start or is resetting + GENERIC_FAILURE = 2, + PASSWORD_INCORRECT = 3, // for PIN/PIN2 methods only + SIM_PIN2 = 4, // Operation requires SIM PIN2 to be entered + SIM_PUK2 = 5, // Operation requires SIM PIN2 to be entered + REQUEST_NOT_SUPPORTED = 6, + CANCELLED = 7, + OP_NOT_ALLOWED_DURING_VOICE_CALL = 8, // data ops are not allowed during voice + // call on a Class C GPRS device + OP_NOT_ALLOWED_BEFORE_REG_TO_NW = 9, // data ops are not allowed before device + // registers in network + SMS_SEND_FAIL_RETRY = 10, // fail to send sms and need retry + SIM_ABSENT = 11, // fail to set the location where CDMA subscription + // shall be retrieved because of SIM or RUIM + // card absent + SUBSCRIPTION_NOT_AVAILABLE = 12, // fail to find CDMA subscription from specified + // location + MODE_NOT_SUPPORTED = 13, // HW does not support preferred network type + FDN_CHECK_FAILURE = 14, // command failed because recipient is not on FDN list + ILLEGAL_SIM_OR_ME = 15, // network selection failed due to illegal SIM or ME + MISSING_RESOURCE = 16, // no logical channel available + NO_SUCH_ELEMENT = 17, // application not found on SIM + DIAL_MODIFIED_TO_USSD = 18, // DIAL request modified to USSD + DIAL_MODIFIED_TO_SS = 19, // DIAL request modified to SS + DIAL_MODIFIED_TO_DIAL = 20, // DIAL request modified to DIAL with different data + USSD_MODIFIED_TO_DIAL = 21, // USSD request modified to DIAL + USSD_MODIFIED_TO_SS = 22, // USSD request modified to SS + USSD_MODIFIED_TO_USSD = 23, // USSD request modified to different USSD request + SS_MODIFIED_TO_DIAL = 24, // SS request modified to DIAL + SS_MODIFIED_TO_USSD = 25, // SS request modified to USSD + SUBSCRIPTION_NOT_SUPPORTED = 26, // Subscription not supported by RIL + SS_MODIFIED_TO_SS = 27, // SS request modified to different SS request + LCE_NOT_SUPPORTED = 36, // LCE service not supported(36 in RILConstants.java) + NO_MEMORY = 37, // Not sufficient memory to process the request + INTERNAL_ERR = 38, // Hit unexpected vendor internal error scenario + SYSTEM_ERR = 39, // Hit platform or system error + MODEM_ERR = 40, // Hit unexpected modem error + INVALID_STATE = 41, // Unexpected request for the current state + NO_RESOURCES = 42, // Not sufficient resource to process the request + SIM_ERR = 43, // Received error from SIM card + INVALID_ARGUMENTS = 44, // Received invalid arguments in request + INVALID_SIM_STATE = 45, // Cannot process the request in current SIM state + INVALID_MODEM_STATE = 46, // Cannot process the request in current Modem state + INVALID_CALL_ID = 47, // Received invalid call id in request + NO_SMS_TO_ACK = 48, // ACK received when there is no SMS to ack + NETWORK_ERR = 49, // Received error from network + REQUEST_RATE_LIMITED = 50, // Operation denied due to overly-frequent requests + SIM_BUSY = 51, // SIM is busy + SIM_FULL = 52, // The target EF is full + NETWORK_REJECT = 53, // Request is rejected by network + OPERATION_NOT_ALLOWED = 54, // Not allowed the request now + EMPTY_RECORD = 55, // The request record is empty + INVALID_SMS_FORMAT = 56, // Invalid sms format + ENCODING_ERR = 57, // Message not encoded properly + INVALID_SMSC_ADDRESS = 58, // SMSC address specified is invalid + NO_SUCH_ENTRY = 59, // No such entry present to perform the request + NETWORK_NOT_READY = 60, // Network is not ready to perform the request + NOT_PROVISIONED = 61, // Device doesnot have this value provisioned + NO_SUBSCRIPTION = 62, // Device doesnot have subscription + NO_NETWORK_FOUND = 63, // Network cannot be found + DEVICE_IN_USE = 64, // Operation cannot be performed because the device + // is currently in use + RIL_E_ABORTED = 65, // Operation aborted + + // TODO(May be moved to vendor HAL extension) + // OEM specific error codes. To be used by OEM when they don't want to reveal + // specific error codes which would be replaced by Generic failure. + OEM_ERROR_1 = 501, + OEM_ERROR_2 = 502, + OEM_ERROR_3 = 503, + OEM_ERROR_4 = 504, + OEM_ERROR_5 = 505, + OEM_ERROR_6 = 506, + OEM_ERROR_7 = 507, + OEM_ERROR_8 = 508, + OEM_ERROR_9 = 509, + OEM_ERROR_10 = 510, + OEM_ERROR_11 = 511, + OEM_ERROR_12 = 512, + OEM_ERROR_13 = 513, + OEM_ERROR_14 = 514, + OEM_ERROR_15 = 515, + OEM_ERROR_16 = 516, + OEM_ERROR_17 = 517, + OEM_ERROR_18 = 518, + OEM_ERROR_19 = 519, + OEM_ERROR_20 = 520, + OEM_ERROR_21 = 521, + OEM_ERROR_22 = 522, + OEM_ERROR_23 = 523, + OEM_ERROR_24 = 524, + OEM_ERROR_25 = 525, +}; + +enum RadioResponseType : int32_t { + RESPONSE_SOLICITED, + RESPONSE_UNSOLICITED, + RESPONSE_SOLICITED_ACK, + RESPONSE_SOLICITED_ACK_EXP, + RESPONSE_UNSOLICITED_ACK_EXP, +}; + +enum RestrictedState : int32_t { NONE = 0x00, CS_EMERGENCY = 0x01, CS_NORMAL = 0x02, @@ -62,130 +166,771 @@ enum RadioRestrictedState : int32_t { PS_ALL = 0x10, }; -enum RadioCardState : int32_t { - ABSENT = 0, - PRESENT = 1, - ERROR = 2, - /* card is present but not usable due to carrier restrictions.*/ - RESTRICTED = 3, +enum CardState : int32_t { + ABSENT, + PRESENT, + ERROR, + RESTRICTED, // card is present but not usable due to carrier + // restrictions }; -enum RadioPinState : int32_t { - UNKNOWN = 0, - ENABLED_NOT_VERIFIED = 1, - ENABLED_VERIFIED = 2, - DISABLED = 3, - ENABLED_BLOCKED = 4, - ENABLED_PERM_BLOCKED = 5, +enum PinState : int32_t { + UNKNOWN, + ENABLED_NOT_VERIFIED, + ENABLED_VERIFIED, + DISABLED, + ENABLED_BLOCKED, + ENABLED_PERM_BLOCKED, }; -enum RadioAppType : int32_t { - UNKNOWN = 0, - SIM = 1, - USIM = 2, - RUIM = 3, - CSIM = 4, - ISIM = 5, +enum AppType : int32_t { + UNKNOWN, + SIM, + USIM, + RUIM, + CSIM, + ISIM, }; -enum RadioAppState : int32_t { - UNKNOWN = 0, - DETECTED = 1, - PIN = 2, - /* If PIN1 or UPin is required */ - PUK = 3, - /* If PUK1 or Puk for UPin is required */ - SUBSCRIPTION_PERSO = 4, - /* perso_substate should be look at when app_state is assigned to this value */ - READY = 5, +enum AppState : int32_t { + UNKNOWN, + DETECTED, + PIN, // If PIN1 or UPin is required + PUK, // If PUK1 or Puk for UPin is required + SUBSCRIPTION_PERSO, // perso_substate must be look at when app_state is + // assigned to this value + READY, }; -enum RadioPersoSubstate : int32_t { - UNKNOWN = 0, - /* initial state */ - IN_PROGRESS = 1, - /* in between each lock transition */ - READY = 2, - /* when either SIM or RUIM Perso is finished since each app can only have 1 active perso - involved */ - SIM_NETWORK = 3, - SIM_NETWORK_SUBSET = 4, - SIM_CORPORATE = 5, - SIM_SERVICE_PROVIDER = 6, - SIM_SIM = 7, - SIM_NETWORK_PUK = 8, - /* The corresponding perso lock is blocked */ - SIM_NETWORK_SUBSET_PUK = 9, - SIM_CORPORATE_PUK = 10, - SIM_SERVICE_PROVIDER_PUK = 11, - SIM_SIM_PUK = 12, - RUIM_NETWORK1 = 13, - RUIM_NETWORK2 = 14, - RUIM_HRPD = 15, - RUIM_CORPORATE = 16, - RUIM_SERVICE_PROVIDER = 17, - RUIM_RUIM = 18, - RUIM_NETWORK1_PUK = 19, - /* The corresponding perso lock is blocked */ - RUIM_NETWORK2_PUK = 20, - RUIM_HRPD_PUK = 21, - RUIM_CORPORATE_PUK = 22, - RUIM_SERVICE_PROVIDER_PUK = 23, - RUIM_RUIM_PUK = 24, +enum PersoSubstate : int32_t { + UNKNOWN, // initial state + IN_PROGRESS, // in between each lock transition + READY, // when either SIM or RUIM Perso is finished since each + // app must only have 1 active perso involved + SIM_NETWORK, + SIM_NETWORK_SUBSET, + SIM_CORPORATE, + SIM_SERVICE_PROVIDER, + SIM_SIM, + SIM_NETWORK_PUK, // The corresponding perso lock is blocked + SIM_NETWORK_SUBSET_PUK, + SIM_CORPORATE_PUK, + SIM_SERVICE_PROVIDER_PUK, + SIM_SIM_PUK, + RUIM_NETWORK1, + RUIM_NETWORK2, + RUIM_HRPD, + RUIM_CORPORATE, + RUIM_SERVICE_PROVIDER, + RUIM_RUIM, + RUIM_NETWORK1_PUK, // The corresponding perso lock is blocked + RUIM_NETWORK2_PUK, + RUIM_HRPD_PUK, + RUIM_CORPORATE_PUK, + RUIM_SERVICE_PROVIDER_PUK, + RUIM_RUIM_PUK, }; -enum RadioState : int32_t { - OFF = 0, - /* Radio explictly powered off (eg CFUN=0) */ - UNAVAILABLE = 1, - /* States 2-9 below are deprecated. Just leaving them here for backward compatibility. */ - SIM_NOT_READY = 2, - /* Radio is on, but the SIM interface is not ready */ - SIM_LOCKED_OR_ABSENT = 3, - /* SIM PIN locked, PUK required, network - personalization locked, or SIM absent */ - SIM_READY = 4, - /* Radio is on and SIM interface is available */ - RUIM_NOT_READY = 5, - /* Radio is on, but the RUIM interface is not ready */ - RUIM_READY = 6, - /* Radio is on and the RUIM interface is available */ - RUIM_LOCKED_OR_ABSENT = 7, - /* RUIM PIN locked, PUK required, network - personalization locked, or RUIM absent */ - NV_NOT_READY = 8, - /* Radio is on, but the NV interface is not available */ - NV_READY = 9, - /* Radio is on */ - ON = 10, +enum RadioState : int32_t { + OFF, // Radio explictly powered off (eg CFUN=0) + UNAVAILABLE, // Radio unavailable (eg, resetting or not booted) }; -struct RadioAppStatus { - RadioAppType appType; - RadioAppState appState; - RadioPersoSubstate persoSubstate; - /* applicable only if app_state == SUBSCRIPTION_PERSO */ - string aidPtr; - /* null terminated string, e.g., from 0xA0, 0x00 -> 0x41, 0x30, 0x30, 0x30 */ +enum CallState : int32_t { + ACTIVE, + HOLDING, + DIALING, // MO call only + ALERTING, // MO call only + INCOMING, // MT call only + WAITING, // MT call only +}; + +/* + * User-to-User signaling Info activation types derived from 3GPP 23.087 v8.0 + */ +enum UusType : int32_t { + TYPE1_IMPLICIT, + TYPE1_REQUIRED, + TYPE1_NOT_REQUIRED, + TYPE2_REQUIRED, + TYPE2_NOT_REQUIRED, + TYPE3_REQUIRED, + TYPE3_NOT_REQUIRED, +}; + +/* + * User-to-User Signaling Information data coding schemes. Possible values for + * Octet 3 (Protocol Discriminator field) in the UUIE. The values have been + * specified in section 10.5.4.25 of 3GPP TS 24.008 + */ +enum UusDcs : int32_t { + USP, // User specified protocol + OSIHLP, // OSI higher layer protocol + X244, // X.244 + RMCF, // Reserved for system mangement convergence function + IA5C, // IA5 characters +}; + +enum CallPresentation : int32_t { + ALLOWED, + RESTRICTED, + UNKNOWN, + PAYPHONE, +}; + +enum Clir : int32_t { + DEFAULT, // "use subscription default value" + INVOCATION, // restrict CLI presentation + SUPPRESSION, // allow CLI presentation +}; + +enum LastCallFailCause : int32_t { + UNOBTAINABLE_NUMBER = 1, + NO_ROUTE_TO_DESTINATION = 3, + CHANNEL_UNACCEPTABLE = 6, + OPERATOR_DETERMINED_BARRING = 8, + NORMAL = 16, + BUSY = 17, + NO_USER_RESPONDING = 18, + NO_ANSWER_FROM_USER = 19, + CALL_REJECTED = 21, + NUMBER_CHANGED = 22, + PREEMPTION = 25, + DESTINATION_OUT_OF_ORDER = 27, + INVALID_NUMBER_FORMAT = 28, + FACILITY_REJECTED = 29, + RESP_TO_STATUS_ENQUIRY = 30, + NORMAL_UNSPECIFIED = 31, + CONGESTION = 34, + NETWORK_OUT_OF_ORDER = 38, + TEMPORARY_FAILURE = 41, + SWITCHING_EQUIPMENT_CONGESTION = 42, + ACCESS_INFORMATION_DISCARDED = 43, + REQUESTED_CIRCUIT_OR_CHANNEL_NOT_AVAILABLE = 44, + RESOURCES_UNAVAILABLE_OR_UNSPECIFIED = 47, + QOS_UNAVAILABLE = 49, + REQUESTED_FACILITY_NOT_SUBSCRIBED = 50, + INCOMING_CALLS_BARRED_WITHIN_CUG = 55, + BEARER_CAPABILITY_NOT_AUTHORIZED = 57, + BEARER_CAPABILITY_UNAVAILABLE = 58, + SERVICE_OPTION_NOT_AVAILABLE = 63, + BEARER_SERVICE_NOT_IMPLEMENTED = 65, + ACM_LIMIT_EXCEEDED = 68, + REQUESTED_FACILITY_NOT_IMPLEMENTED = 69, + ONLY_DIGITAL_INFORMATION_BEARER_AVAILABLE = 70, + SERVICE_OR_OPTION_NOT_IMPLEMENTED = 79, + INVALID_TRANSACTION_IDENTIFIER = 81, + USER_NOT_MEMBER_OF_CUG = 87, + INCOMPATIBLE_DESTINATION = 88, + INVALID_TRANSIT_NW_SELECTION = 91, + SEMANTICALLY_INCORRECT_MESSAGE = 95, + INVALID_MANDATORY_INFORMATION = 96, + MESSAGE_TYPE_NON_IMPLEMENTED = 97, + MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98, + INFORMATION_ELEMENT_NON_EXISTENT = 99, + CONDITIONAL_IE_ERROR = 100, + MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101, + RECOVERY_ON_TIMER_EXPIRED = 102, + PROTOCOL_ERROR_UNSPECIFIED = 111, + INTERWORKING_UNSPECIFIED = 127, + CALL_BARRED = 240, + FDN_BLOCKED = 241, + IMSI_UNKNOWN_IN_VLR = 242, + IMEI_NOT_ACCEPTED = 243, + DIAL_MODIFIED_TO_USSD = 244, // STK Call Control + DIAL_MODIFIED_TO_SS = 245, + DIAL_MODIFIED_TO_DIAL = 246, + CDMA_LOCKED_UNTIL_POWER_CYCLE = 1000, + CDMA_DROP = 1001, + CDMA_INTERCEPT = 1002, + CDMA_REORDER = 1003, + CDMA_SO_REJECT = 1004, + CDMA_RETRY_ORDER = 1005, + CDMA_ACCESS_FAILURE = 1006, + CDMA_PREEMPTED = 1007, + CDMA_NOT_EMERGENCY = 1008, // For non-emergency number dialed during emergency + // callback mode + CDMA_ACCESS_BLOCKED = 1009, // This error will be deprecated soon, + // vendor code must make sure to map error + // code to specific error + ERROR_UNSPECIFIED = 0xffff, +}; + +enum DataCallFailCause : int32_t { + NONE = 0, // an integer cause code defined in TS 24.008 + // section 6.1.3.1.3 or TS 24.301 Release 8+ Annex B. + // If the implementation does not have access to the exact + // cause codes, then it must return one of the + // following values, as the UI layer needs to distinguish + // these cases for error notification and potential + // retries. + OPERATOR_BARRED = 0x08, // no retry + NAS_SIGNALLING = 0x0E, // PDP_FAIL_LLC_SNDCP = 0x19, + INSUFFICIENT_RESOURCES = 0x1A, + MISSING_UKNOWN_APN = 0x1B, // no retry + UNKNOWN_PDP_ADDRESS_TYPE = 0x1C, // no retry + USER_AUTHENTICATION = 0x1D, // no retry + ACTIVATION_REJECT_GGSN = 0x1E, // no retry + ACTIVATION_REJECT_UNSPECIFIED = 0x1F, + SERVICE_OPTION_NOT_SUPPORTED = 0x20, // no retry + SERVICE_OPTION_NOT_SUBSCRIBED = 0x21, // no retry + SERVICE_OPTION_OUT_OF_ORDER = 0x22, + NSAPI_IN_USE = 0x23, // no retry + REGULAR_DEACTIVATION = 0x24, // possibly restart radio, + // based on framework config + QOS_NOT_ACCEPTED = 0x25, + NETWORK_FAILURE = 0x26, + UMTS_REACTIVATION_REQ = 0x27, + FEATURE_NOT_SUPP = 0x28, + TFT_SEMANTIC_ERROR = 0x29, + TFT_SYTAX_ERROR = 0x2A, + UNKNOWN_PDP_CONTEXT = 0x2B, + FILTER_SEMANTIC_ERROR = 0x2C, + FILTER_SYTAX_ERROR = 0x2D, + PDP_WITHOUT_ACTIVE_TFT = 0x2E, + ONLY_IPV4_ALLOWED = 0x32, // no retry + ONLY_IPV6_ALLOWED = 0x33, // no retry + ONLY_SINGLE_BEARER_ALLOWED = 0x34, + ESM_INFO_NOT_RECEIVED = 0x35, + PDN_CONN_DOES_NOT_EXIST = 0x36, + MULTI_CONN_TO_SAME_PDN_NOT_ALLOWED = 0x37, + MAX_ACTIVE_PDP_CONTEXT_REACHED = 0x41, + UNSUPPORTED_APN_IN_CURRENT_PLMN = 0x42, + INVALID_TRANSACTION_ID = 0x51, + MESSAGE_INCORRECT_SEMANTIC = 0x5F, + INVALID_MANDATORY_INFO = 0x60, + MESSAGE_TYPE_UNSUPPORTED = 0x61, + MSG_TYPE_NONCOMPATIBLE_STATE = 0x62, + UNKNOWN_INFO_ELEMENT = 0x63, + CONDITIONAL_IE_ERROR = 0x64, + MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE = 0x65, + PROTOCOL_ERRORS = 0x6F, // no retry + APN_TYPE_CONFLICT = 0x70, + INVALID_PCSCF_ADDR = 0x71, + INTERNAL_CALL_PREEMPT_BY_HIGH_PRIO_APN = 0x72, + EMM_ACCESS_BARRED = 0x73, + EMERGENCY_IFACE_ONLY = 0x74, + IFACE_MISMATCH = 0x75, + COMPANION_IFACE_IN_USE = 0x76, + IP_ADDRESS_MISMATCH = 0x77, + IFACE_AND_POL_FAMILY_MISMATCH = 0x78, + EMM_ACCESS_BARRED_INFINITE_RETRY = 0x79, + AUTH_FAILURE_ON_EMERGENCY_CALL = 0x7A, + OEM_DCFAILCAUSE_1 = 0x1001, + + // OEM specific error codes. To be used by OEMs when they don't want to + // reveal error code which would be replaced by PDP_FAIL_ERROR_UNSPECIFIED + // TODO(May be moved to vendor HAL extension) + OEM_DCFAILCAUSE_2 = 0x1002, + OEM_DCFAILCAUSE_3 = 0x1003, + OEM_DCFAILCAUSE_4 = 0x1004, + OEM_DCFAILCAUSE_5 = 0x1005, + OEM_DCFAILCAUSE_6 = 0x1006, + OEM_DCFAILCAUSE_7 = 0x1007, + OEM_DCFAILCAUSE_8 = 0x1008, + OEM_DCFAILCAUSE_9 = 0x1009, + OEM_DCFAILCAUSE_10 = 0x100A, + OEM_DCFAILCAUSE_11 = 0x100B, + OEM_DCFAILCAUSE_12 = 0x100C, + OEM_DCFAILCAUSE_13 = 0x100D, + OEM_DCFAILCAUSE_14 = 0x100E, + OEM_DCFAILCAUSE_15 = 0x100F, + + // Not mentioned in the specification + VOICE_REGISTRATION_FAIL = -1, + DATA_REGISTRATION_FAIL = -2, + + // reasons for data call drop - network/modem disconnect + SIGNAL_LOST = -3, + PREF_RADIO_TECH_CHANGED = -4, // preferred technology has changed, must retry + // with parameters appropriate for new technology + RADIO_POWER_OFF = -5, // data call was disconnected because radio was resetting, + // powered off - no retry + TETHERED_CALL_ACTIVE = -6, // data call was disconnected by modem because tethered + // mode was up on same APN/data profile - no retry until + // tethered call is off + ERROR_UNSPECIFIED = 0xffff, +}; + +/* + * Please note that registration state UNKNOWN is + * treated as "out of service" in the Android telephony. + * Registration state REG_DENIED must be returned if Location Update + * Reject (with cause 17 - Network Failure) is received + * repeatedly from the network, to facilitate + * "managed roaming" + */ +enum RegState : int32_t { + NOT_REG_MT_NOT_SEARCHING_OP, // Not registered, MT is not currently searching + // a new operator to register + REG_HOME, // Registered, home network + NOT_REG_MT_SEARCHING_OP, // Not registered, but MT is currently searching + // a new operator to register + REG_DENIED, // Registration denied + UNKNOWN, // Unknown + REG_ROAMING, // Registered, roaming + NOT_REG_MT_NOT_SEARCHING_OP_EM, // Same as NOT_REG_MT_NOT_SEARCHING_OP but indicates that + // emergency calls are enabled. + NOT_REG_MT_SEARCHING_OP_EM, // Same as NOT_REG_MT_SEARCHING_OP but indicates that + // emergency calls are enabled. + REG_DENIED_EM, // Same as REG_DENIED but indicates that + // emergency calls are enabled. + UNKNOWN_EM // Same as UNKNOWN but indicates that + // emergency calls are enabled. +}; + +enum RadioTechnology : int32_t { + UNKNOWN, + GPRS, + EDGE, + UMTS, + IS95A, + IS95B, + ONE_X_RTT, + EVDO_0, + EVDO_A, + HSDPA, + HSUPA, + HSPA, + EVDO_B, + EHRPD, + LTE, + HSPAP, // HSPA+ + GSM, // Only supports voice + TD_SCDMA, + IWLAN, + LTE_CA, +}; + +enum DataProfile : int32_t { + DEFAULT = 0, + TETHERED = 1, + IMS = 2, + FOTA = 3, + CBS = 4, + OEM_BASE = 1000, // Start of OEM-specific profiles + INVALID = 0xFFFFFFFF, +}; + +enum SmsAcknowledgeFailCause : int32_t { + MEMORY_CAPAPCITY_EXCEEDED = 0xD3, + UNSPECIFIED_ERROR = 0XFF, +}; + +enum CallForwardInfoStatus : int32_t { + ACTIVE, + INACTIVE, + DISABLE, + ENABLE, + INTERROGATE, + REGISTRATION, + ERASURE, +}; + +enum ClipStatus : int32_t { + CLIP_PROVISIONED, // CLIP provisioned + CLIP_UNPROVISIONED, // CLIP not provisioned + UNKOWN, // unknown, e.g. no network etc +}; + +enum SmsWriteArgsStatus : int32_t { + REC_UNREAD, + REC_READ, + STO_UNSENT, + STO_SENT, +}; + +enum RadioBandMode : int32_t { + BAND_MODE_UNSPECIFIED, // "unspecified" (selected by baseband automatically) + BAND_MODE_EURO, // "EURO band" (GSM-900 / DCS-1800 / WCDMA-IMT-2000) + BAND_MODE_USA, // "US band" + // (GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900) + BAND_MODE_JPN, // "JPN band" (WCDMA-800 / WCDMA-IMT-2000) + BAND_MODE_AUS, // "AUS band" + // (GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000) + BAND_MODE_AUS_2, // "AUS band 2" (GSM-900 / DCS-1800 / WCDMA-850) + BAND_MODE_CELL_800, // "Cellular" (800-MHz Band) + BAND_MODE_PCS, // "PCS" (1900-MHz Band) + BAND_MODE_JTACS, // "Band Class 3" (JTACS Band) + BAND_MODE_KOREA_PCS, // "Band Class 4" (Korean PCS Band) + BAND_MODE_5_450M, // "Band Class 5" (450-MHz Band) + BAND_MODE_IMT2000, // "Band Class 6" (2-GMHz IMT2000 Band) + BAND_MODE_7_700M_2, // "Band Class 7" (Upper 700-MHz Band) + BAND_MODE_8_1800M, // "Band Class 8" (1800-MHz Band) + BAND_MODE_9_900M, // "Band Class 9" (900-MHz Band) + BAND_MODE_10_800M_2, // "Band Class 10" (Secondary 800-MHz Band) + BAND_MODE_EURO_PAMR_400M, // "Band Class 11" (400-MHz European PAMR Band) + BAND_MODE_AWS, // "Band Class 15" (AWS Band) + BAND_MODE_USA_2500M, // "Band Class 16" (US 2.5-GHz Band) +}; + +enum OperatorStatus : int32_t { + UNKNOWN, + AVAILABLE, + CURRENT, + FORBIDDEN, +}; + +struct RadioResponseInfo { + RadioResponseType type; // Response type + int32_t serial; // Serial number of the request + RadioError error; // Response error +}; + +struct AppStatus { + AppType appType; + AppState appState; + PersoSubstate persoSubstate; // applicable only if app_state == SUBSCRIPTION_PERSO + string aidPtr; // e.g., from 0xA0, 0x00 -> 0x41, + // 0x30, 0x30, 0x30 string appLabelPtr; - /* null terminated string */ - int32_t pin1Replaced; - /* applicable to USIM, CSIM & ISIM */ - RadioPinState pin1; - RadioPinState pin2; + int32_t pin1Replaced; // applicable to USIM, CSIM & ISIM + PinState pin1; + PinState pin2; }; -struct RadioCardStatus { - RadioCardState cardState; - RadioPinState universalPinState; - /* applicable to USIM and CSIM */ - int32_t gsmUmtsSubscriptionAppIndex; - /* value < RADIO_CARD_MAX_APPS, -1 if none */ - int32_t cdmaSubscriptionAppIndex; - /* value < RADIO_CARD_MAX_APPS, -1 if none */ - int32_t imsSubscriptionAppIndex; - /* value < RADIO_CARD_MAX_APPS, -1 if none */ - int32_t numApplications; - /* value <= RADIO_CARD_MAX_APPS */ - RadioAppStatus[RadioConst:RADIO_CARD_MAX_APPS] applications; +struct CardStatus { + CardState cardState; + PinState universalPinState; // applicable to USIM and CSIM + int32_t gsmUmtsSubscriptionAppIndex; // value < RADIO_CARD_MAX_APPS, -1 if none + int32_t cdmaSubscriptionAppIndex; // value < RADIO_CARD_MAX_APPS, -1 if none + int32_t imsSubscriptionAppIndex; // value < RADIO_CARD_MAX_APPS, -1 if none + int32_t numApplications; // value <= RADIO_CARD_MAX_APPS + AppStatus[RadioConst:RADIO_CARD_MAX_APPS] applications; +}; + +/* + * User-to-User Signaling Information defined in 3GPP 23.087 v8.0 + * This data is passed in RADIO_ExtensionRecord and rec contains this + * structure when type is RADIO_UUS_INFO_EXT_REC + */ +struct UusInfo { + UusType uusType; // UUS Type + UusDcs uusDcs; // UUS Data Coding Scheme + int32_t uusLength; // Length of UUS Data + string uusData; // UUS data +}; + +struct Call { + CallState state; + int32_t index; // Connection Index for use with, eg, AT+CHLD + int32_t toa; // type of address, eg 145 = intl + bool isMpty; // true if is mpty call + bool isMT; // true if call is mobile terminated + uint8_t als; // ALS line indicator if available (0 = line 1) + bool isVoice; // true if this is is a voice call + bool isVoicePrivacy; // true if CDMA voice privacy mode is active + string number; // Remote party number + CallPresentation numberPresentation; + string name; // Remote party name + CallPresentation namePresentation; + vec uusInfo; // Vector of User-User Signaling Information +}; + +struct Dial { + string address; + Clir clir; + vec uusInfo; // Vector of User-User Signaling Information +}; + +struct GwSignalStrength { + uint32_t signalStrength; // Valid values are (0-31, 99) as defined in + // TS 27.007 8.5 + uint32_t bitErrorRate; // bit error rate (0-7, 99) as defined in TS 27.007 8.5 +}; + +struct CdmaSignalStrength { + uint32_t dbm; // This value is the actual RSSI + // value multiplied by -1. Example: If the + // actual RSSI is -75, then this response value will + // be 75. + uint32_t ecio; // This value is the actual + // Ec/Io multiplied by -10. Example: If the + // actual Ec/Io is -12.5 dB, then this response value + // will be 125. +}; + +struct EvdoSignalStrength { + uint32_t dbm; // This value is the actual + // RSSI value multiplied by -1. + // Example: If the actual RSSI is -75, + // then this response value will be 75. + uint32_t ecio; // This value is the actual + // Ec/Io multiplied by -10. Example: If the + // actual Ec/Io is -12.5 dB, then this response value + // will be 125. + uint32_t signalNoiseRatio; // Valid values are 0-8. 8 is the highest signal to + // noise ratio. +}; + +struct LteSignalStrength { + uint32_t signalStrength; // Valid values are (0-31, 99) as defined in + // TS 27.007 8.5 + uint32_t rsrp; // The current Reference Signal Receive Power in dBm + // multipled by -1. + // Range: 44 to 140 dBm + // INT_MAX: 0x7FFFFFFF denotes invalid value. + // Reference: 3GPP TS 36.133 9.1.4 + uint32_t rsrq; // The current Reference Signal Receive Quality in dB + // multiplied by -1. + // Range: 20 to 3 dB. + // INT_MAX: 0x7FFFFFFF denotes invalid value. + // Reference: 3GPP TS 36.133 9.1.7 + int32_t rssnr; // The current reference signal signal-to-noise ratio in + // 0.1 dB units. + // Range: -200 to +300 (-200 = -20.0 dB, +300 = 30dB). + // INT_MAX : 0x7FFFFFFF denotes invalid value. + // Reference: 3GPP TS 36.101 8.1.1 + uint32_t cqi; // The current Channel Quality Indicator. + // Range: 0 to 15. + // INT_MAX : 0x7FFFFFFF denotes invalid value. + // Reference: 3GPP TS 36.101 9.2, 9.3, A.4 + uint32_t timingAdvance; // timing advance in micro seconds for a one way trip + // from cell to device. + // Approximate distance is calculated using + // 300m/us * timingAdvance. + // Range: 0 to 0x7FFFFFFE + // INT_MAX : 0x7FFFFFFF denotes invalid value. + // Reference: 3GPP 36.321 section 6.1.3.5 + // also: http://www.cellular-planningoptimization.com/2010/02/timing-advance-with-calculation.html +}; + +struct TdScdmaSignalStrength { + uint32_t rscp; // The Received Signal Code Power in dBm multipled by -1. + // Range : 25 to 120 + // INT_MAX: 0x7FFFFFFF denotes invalid value. + // Reference: 3GPP TS 25.123, section 9.1.1.1 +}; + +struct SignalStrength { + GwSignalStrength gw; + CdmaSignalStrength cdma; + EvdoSignalStrength evdo; + LteSignalStrength lte; + TdScdmaSignalStrength tdScdma; +}; + +struct SendSmsResult { + int32_t messageRef; // TP-Message-Reference for GSM, and BearerData MessageId + // for CDMA (See 3GPP2 C.S0015-B, v2.0, table 4.5-1) + string ackPDU; // or empty string if n/a + int32_t errorCode; // See 3GPP 27.005, 3.2.5 for GSM/UMTS, + // 3GPP2 N.S0005 (IS-41C) Table 171 for CDMA, + // -1 if unknown or not applicable +}; + +struct SetupDataCallResult { + int32_t status; // A RadioDataCallFailCause, 0 which is + // RadioDataCallFailCause:NONE if no error + int32_t suggestedRetryTime; // If status != 0, this fields indicates the suggested + // retry back-off timer value RIL wants to override the + // one pre-configured in FW. + // The unit is miliseconds. + // 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 cid; // Context ID, uniquely identifies this call + int32_t active; // 0=inactive, 1=active/physical link down, + // 2=active/physical link up */ + string type; // One of the PDP_type values in TS 27.007 section 10.1.1. + // For example, "IP", "IPV6", "IPV4V6", or "PPP". If + // status is + // RadioDataCallFailCause:ONLY_SINGLE_BEARER_ALLOWED this + // is the type supported such as "IP" or "IPV6" + string ifname; // The network interface name + string addresses; // A space-delimited list of addresses with optional "/" + // prefix length, e.g., "192.0.1.3" or + // "192.0.1.11/16 2001:db8::1/64". + // Typically 1 IPv4 or 1 IPv6 or + // one of each. If the prefix length is absent the + // addresses are assumed to be point to point with IPv4 + // having a prefix length of 32 and IPv6 128. + string dnses; // A space-delimited 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. + string gateways; // A space-delimited 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. + string pcscf; // the Proxy Call State Control Function address + // via PCO(Protocol Configuration Option) for IMS client. + int32_t mtu; // MTU received from network + // Value <= 0 means network has either not sent a + // value or sent an invalid value +}; + +struct IccIo { + int32_t command; // one of the commands listed for TS 27.007 +CRSM + int32_t fileid; // EF id + string path; // "pathid" from TS 27.007 +CRSM command. + // Path is in hex asciii format eg "7f205f70" + // Path must always be provided. + int32_t p1; // Values of p1, p2 & p3 defined as per 3GPP TS 51.011 + int32_t p2; + int32_t p3; + string data; // information to be written to the SIM + string pin2; + string aidPtr; // AID value, See ETSI 102.221 8.1 and 101.220 4, empty + // string if no value. +}; + +struct IccIoResult { + int32_t sw1; + int32_t sw2; + string simResponse; // In hex string format ([a-fA-F0-9]*), except for + // SIM_AUTHENTICATION response for which it is in + // Base64 format, see 3GPP TS 31.102 7.1.2 +}; + +struct VoiceRegStateResult { + RegState regState; + int32_t lac; // LAC if registered on a GSM/WCDMA system or + // -1 if not.Valid LAC are 0x0000 - 0xffff + int32_t cid; // CID. if registered on a * GSM/WCDMA or -1 if not + // Valid CID are 0x00000000 - 0xffffffff + // In GSM, CID is Cell ID (see TS 27.007) in 16 bits + // In UMTS, CID is UMTS Cell Identity (see TS 25.331) + // in 28 bits + int32_t rat; // indicates the available voice radio technology, + // valid values as defined by RIL_RadioTechnology. + int32_t baseStationId; // Base Station ID. if registered on a CDMA + // system or -1 if not. Base Station ID in decimal format + int32_t baseStationLatitude; // Base Station latitude. if registered on a + // CDMA system or -1 if not. Base Station latitude is a + // decimal number as specified in 3GPP2 C.S0005-A v6.0. + // It is represented in units of 0.25 seconds and ranges + // from -1296000 to 1296000, both values inclusive + // (corresponding to a range of -90 to +90 degrees). + int32_t baseStationLongitude; // Base Station longitude. if registered on a + // CDMA system or -1 if not. Base Station + // longitude is a decimal number as specified in + // 3GPP2 C.S0005-A v6.0. It is represented in + // units of 0.25 seconds and ranges from -2592000 + // to 2592000, both values inclusive (corresponding + // to a range of -180 to +180 degrees). + bool cssSupported; // concurrent services support indicator. if + // registered on a CDMA system. + // false - Concurrent services not supported, + // true - Concurrent services supported + int32_t systemId; // System ID. if registered on a CDMA system or + // -1 if not. Valid System ID are 0 - 32767 + int32_t networkId; // Network ID. if registered on a CDMA system or + // -1 if not. Valid System ID are 0 - 65535 + int32_t roamingIndicator; // TSB-58 Roaming Indicator if registered + // on a CDMA or EVDO system or -1 if not. + // Valid values are 0-255. + int32_t systemIsInPrl; // indicates whether the current system is in the + // PRL if registered on a CDMA or EVDO system or -1 if + // not. 0=not in the PRL, 1=in the PRL + int32_t defaultRoamingIndicator; // default Roaming Indicator from the PRL, + // if registered on a CDMA or EVDO system or -1 if not. + // Valid values are 0-255. + int32_t reasonForDenial; // reasonForDenial if registration state is 3 + // (Registration denied) this is an enumerated reason why + // registration was denied. See 3GPP TS 24.008, + // 10.5.3.6 and Annex G. + // 0 - General + // 1 - Authentication Failure + // 2 - IMSI unknown in HLR + // 3 - Illegal MS + // 4 - Illegal ME + // 5 - PLMN not allowed + // 6 - Location area not allowed + // 7 - Roaming not allowed + // 8 - No Suitable Cells in this Location Area + // 9 - Network failure + // 10 - Persistent location update reject + // 11 - PLMN not allowed + // 12 - Location area not allowed + // 13 - Roaming not allowed in this Location Area + // 15 - No Suitable Cells in this Location Area + // 17 - Network Failure + // 20 - MAC Failure + // 21 - Sync Failure + // 22 - Congestion + // 23 - GSM Authentication unacceptable + // 25 - Not Authorized for this CSG + // 32 - Service option not supported + // 33 - Requested service option not subscribed + // 34 - Service option temporarily out of order + // 38 - Call cannot be identified + // 48-63 - Retry upon entry into a new cell + // 95 - Semantically incorrect message + // 96 - Invalid mandatory information + // 97 - Message type non-existent or not implemented + // 98 - Message type not compatible with protocol state + // 99 - Information element non-existent or not implemented + // 100 - Conditional IE error + // 101 - Message not compatible with protocol state + // 111 - Protocol error, unspecified + int32_t psc; // Primary Scrambling Code of the current + // cell as described in TS 25.331, in hexadecimal + // format, or -1 if unknown or not registered + // to a UMTS network. +}; + +struct DataRegStateResult { + RegState regState; // Valid reg states are NOT_REG_MT_NOT_SEARCHING_OP, + // REG_HOME, NOT_REG_MT_SEARCHING_OP, REG_DENIED, + // UNKNOWN, REG_ROAMING defined in RegState + int32_t lac; // LAC if registered or -1 if not + // valid LAC are 0x0000 - 0xffff + int32_t cid; // CID if registered or -1 if not + // valid CID are 0x00000000 - 0x0fffffff + int32_t rat; // indicates the available data radio technology, + // valid values as defined by RIL_RadioTechnology. + int32_t reasonDataDenied; // if registration state is 3 (Registration + // denied) this is an enumerated reason why + // registration was denied. See 3GPP TS 24.008, + // Annex G.6 "Additonal cause codes for GMM". + // 7 == GPRS services not allowed + // 8 == GPRS services and non-GPRS services not allowed + // 9 == MS identity cannot be derived by the network + // 10 == Implicitly detached + // 14 == GPRS services not allowed in this PLMN + // 16 == MSC temporarily not reachable + // 40 == No PDP context activated + int32_t maxDataCalls; // The maximum number of simultaneous Data Calls that + // must be established using requestSetupDataCall(). + // The values below are optional LTE location information in decimal. + // If a value is unknown that value must be -1. + int32_t tac; // a 16-bit Tracking Area Code. + int32_t phyCid; // a 0-503 Physical Cell Identifier. + int32_t eci; // a 28-bit E-UTRAN Cell Identifier. + int32_t csgid; // a 27-bit Closed Subscriber Group Identity. + int32_t tadv; // a 6-bit timing advance value. +}; + +// See also com.android.internal.telephony.gsm.CallForwardInfo +struct CallForwardInfo { + CallForwardInfoStatus status; // For queryCallForwardStatus() + // status must be ACTIVE, INACTIVE + // For setCallForward(): + // status must be + // DISABLE, ENABLE, INTERROGATE, REGISTRATION, ERASURE + int32_t reason; // from TS 27.007 7.11 "reason" + int32_t serviceClass; // From 27.007 +CCFC/+CLCK "class" + // See table for Android mapping from + // MMI service code + // 0 means user doesnt input class + int32_t toa; // "type" from TS 27.007 7.11 + string number; // "number" from TS 27.007 7.11. + int32_t timeSeconds; +}; + +// Response struct used in responseQueryAvailableNetworks +struct OperatorInfo { + string alphaLong; // long alpha ONS or EONS + string alphaShort; // short alpha ONS or EONS + string operatorNumeric; // 5 or 6 digit numeric code (MCC + MNC) + OperatorStatus status; +}; + +struct SmsWriteArgs { + SmsWriteArgsStatus status; // Status of message. See TS 27.005 3.1 + string pdu; // PDU of message to write, as an ASCII hex string less + // the SMSC address, the TP-layer length is strlen(pdu)/2. + string smsc; // SMSC address in GSM BCD format prefixed by a length + // byte (as expected by TS 27.005) or NULL for default + // SMSC }; \ No newline at end of file