Add Handover Failure Mode to Radio Hal
On a handover request failure, the modem can now determine
whether or not to fallback. There is also the option to revert
to the legacy logic. Following the legacy logic is the default
behavior.
Test: FrameworkTelephonyTests
Bug: 161572465
Change-Id: Iad778e83ffc264ee25f57f54ff58532d6a8c5cbf
Merged-In: Iad778e83ffc264ee25f57f54ff58532d6a8c5cbf
diff --git a/radio/1.6/types.hal b/radio/1.6/types.hal
index fbcbe97..4bd3cd6 100644
--- a/radio/1.6/types.hal
+++ b/radio/1.6/types.hal
@@ -157,7 +157,7 @@
QosFilterDirection direction;
/**
- * Specified the order in which the filter needs to be matched.
+ * Specifies the order in which the filter needs to be matched.
* A lower numerical(positive) value has a higher precedence.
* Set -1 when unspecified.
*/
@@ -176,6 +176,30 @@
vec<QosFilter> qosFilters;
};
+/** The allowed failure modes on an IWLAN handover failure. */
+enum HandoverFailureMode : int32_t {
+ /**
+ * On data handover failure, fallback to the source data transport when the
+ * fail cause is due to a hand off preference change.
+ */
+ LEGACY = 0,
+
+ /** On data handover failure, fallback to the source data transport. */
+ DO_FALLBACK = 1,
+
+ /**
+ * On data handover failure, retry the handover instead of falling back to
+ * the source data transport.
+ */
+ NO_FALLBACK_RETRY_HANDOVER = 2,
+
+ /**
+ * On data handover failure, setup a new data connection by sending a normal
+ * request to the underlying data service.
+ */
+ NO_FALLBACK_RETRY_SETUP_NORMAL = 3
+};
+
struct SetupDataCallResult {
@1.5::SetupDataCallResult base;
@@ -187,4 +211,7 @@
* PDNs that support dedicated bearers.
*/
vec<QosSession> qosSessions;
+
+ /** Specifies the fallback mode on an IWLAN handover failure. */
+ HandoverFailureMode handoverFailureMode;
};