Replace ImsFailureReason with SuggestedAction

Bug: 219242990
Bug: 246678554
Test: atest FrameworksTelephonyTests:ImsPhoneCallTrackerTest#testUpdateImsRegistrationInfo
Change-Id: I013d9f4937a67178f9a396d3e701373dba2add00
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsRegistration.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsRegistration.aidl
index 84ae2cb..1c4c12a 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsRegistration.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsRegistration.aidl
@@ -36,7 +36,7 @@
 parcelable ImsRegistration {
   android.hardware.radio.ims.ImsRegistrationState regState;
   android.hardware.radio.AccessNetwork accessNetworkType;
-  android.hardware.radio.ims.ImsFailureReason reason;
+  android.hardware.radio.ims.SuggestedAction suggestedAction;
   int capabilities;
   const int IMS_MMTEL_CAPABILITY_NONE = 0;
   const int IMS_MMTEL_CAPABILITY_VOICE = 1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsFailureReason.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/SuggestedAction.aidl
similarity index 95%
rename from radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsFailureReason.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/SuggestedAction.aidl
index 918ae3a..da19774 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/ImsFailureReason.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims/current/android/hardware/radio/ims/SuggestedAction.aidl
@@ -33,9 +33,8 @@
 
 package android.hardware.radio.ims;
 @Backing(type="int") @JavaDerive(toString=true) @VintfStability
-enum ImsFailureReason {
+enum SuggestedAction {
   NONE = 0,
-  FATAL_ERROR = 1,
-  REPEATED_ERROR = 2,
-  TEMPORARY_ERROR = 3,
+  TRIGGER_PLMN_BLOCK = 1,
+  TRIGGER_PLMN_BLOCK_WITH_TIMEOUT = 2,
 }
diff --git a/radio/aidl/android/hardware/radio/ims/ImsRegistration.aidl b/radio/aidl/android/hardware/radio/ims/ImsRegistration.aidl
index b727af0..662f9e9 100644
--- a/radio/aidl/android/hardware/radio/ims/ImsRegistration.aidl
+++ b/radio/aidl/android/hardware/radio/ims/ImsRegistration.aidl
@@ -17,8 +17,8 @@
 package android.hardware.radio.ims;
 
 import android.hardware.radio.AccessNetwork;
-import android.hardware.radio.ims.ImsFailureReason;
 import android.hardware.radio.ims.ImsRegistrationState;
+import android.hardware.radio.ims.SuggestedAction;
 
 @VintfStability
 @JavaDerive(toString=true)
@@ -42,8 +42,8 @@
      */
     AccessNetwork accessNetworkType;
 
-    /** Indicates a failure reason for IMS registration. */
-    ImsFailureReason reason;
+    /** Indicates the expected action for the radio to do. */
+    SuggestedAction suggestedAction;
 
     /**
      * Values are bitwise ORs of IMS_MMTEL_CAPABILITY_* constants and IMS_RCS_CAPABILITIES.
diff --git a/radio/aidl/android/hardware/radio/ims/ImsFailureReason.aidl b/radio/aidl/android/hardware/radio/ims/SuggestedAction.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/ims/ImsFailureReason.aidl
rename to radio/aidl/android/hardware/radio/ims/SuggestedAction.aidl
index 21da582..a17b8a4 100644
--- a/radio/aidl/android/hardware/radio/ims/ImsFailureReason.aidl
+++ b/radio/aidl/android/hardware/radio/ims/SuggestedAction.aidl
@@ -19,26 +19,19 @@
 @VintfStability
 @JavaDerive(toString=true)
 @Backing(type="int")
-enum ImsFailureReason {
+enum SuggestedAction {
     /** Default value */
-    NONE,
-
+    NONE = 0,
     /**
      * Indicates that the IMS registration is failed with fatal error such as 403 or 404
      * on all P-CSCF addresses. The radio shall block the current PLMN or disable
      * the RAT as per the carrier requirements.
      */
-    FATAL_ERROR,
-
+    TRIGGER_PLMN_BLOCK = 1 << 0,
     /**
      * Indicates that the IMS registration on current PLMN failed multiple times.
-     * The radio shall block the current PLMN or disable the RAT as per the
-     * carrier requirements.
+     * The radio shall block the current PLMN or disable the RAT during EPS or 5GS mobility
+     * management timer value as per the carrier requirements.
      */
-    REPEATED_ERROR,
-
-    /**
-     * Indicates that IMS registration has failed temporarily. A retry will be done shortly.
-     */
-    TEMPORARY_ERROR,
+    TRIGGER_PLMN_BLOCK_WITH_TIMEOUT = 1 << 1,
 }