Deprecate supported value fields in VehicleAreaConfig.
Now these fields are dynamic and exposed by getSupportedValue instead.
Test: None
Bug: 371636116
Flag: EXEMPT no code change
Change-Id: I73717387ec981239f4aa6ef52adfce09eb57d806
diff --git a/automotive/vehicle/aidl/aidl_api/android.hardware.automotive.vehicle/current/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl b/automotive/vehicle/aidl/aidl_api/android.hardware.automotive.vehicle/current/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl
index 465d9d4..e3f8605 100644
--- a/automotive/vehicle/aidl/aidl_api/android.hardware.automotive.vehicle/current/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl
+++ b/automotive/vehicle/aidl/aidl_api/android.hardware.automotive.vehicle/current/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl
@@ -35,12 +35,33 @@
@JavaDerive(equals=true, toString=true) @RustDerive(Clone=true) @VintfStability
parcelable VehicleAreaConfig {
int areaId;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for {@code INT32} type property. Ignored for other types. The optional minimum value at boot time. For backward compatibility, if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true}, and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true}, this must be equal to the min supported value ({@code MinMaxSupportedValueResult.minSupportedValue}) at boot time. If no minimum or maximum value is available at boot time, both {@code minInt32Value} and {@code maxInt32Value} must be set to 0. If either one is not 0, then we assume min and max both take effect.
+ */
int minInt32Value;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for {@code INT32} type property. Ignored for other types. The optional maximum value at boot time. For backward compatibility, if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true}, and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true}, this must be equal to the max supported value ({@code MinMaxSupportedValueResult.maxSupportedValue}) at boot time. If no minimum or maximum value is available at boot time, both {@code minInt32Value} and {@code maxInt32Value} must be set to 0. If either one is not 0, then we assume min and max both take effect.
+ */
int maxInt32Value;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for {@code INT64} type property. Ignored for other types. The optional minimum value at boot time. For backward compatibility, if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true}, and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true}, this must be equal to the min supported value ({@code MinMaxSupportedValueResult.minSupportedValue}) at boot time. If no minimum or maximum value is available at boot time, both {@code minInt64Value} and {@code maxInt64Value} must be set to 0. If either one is not 0, then we assume min and max both take effect.
+ */
long minInt64Value;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for {@code INT64} type property. Ignored for other types. The optional maximum value at boot time. For backward compatibility, if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true}, and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true}, this must be equal to the max supported value ({@code MinMaxSupportedValueResult.maxSupportedValue}) at boot time. If no minimum or maximum value is available at boot time, both {@code minInt64Value} and {@code maxInt64Value} must be set to 0. If either one is not 0, then we assume min and max both take effect.
+ */
long maxInt64Value;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for {@code FLOAT} type property. Ignored for other types. The optional minimum value at boot time. For backward compatibility, if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true}, and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true}, this must be equal to the min supported value ({@code MinMaxSupportedValueResult.minSupportedValue}) at boot time. If no minimum or maximum value is available at boot time, both {@code minFloatValue} and {@code maxFloatValue} must be set to 0. If either one is not 0, then we assume min and max both take effect.
+ */
float minFloatValue;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for {@code FLOAT} type property. Ignored for other types. The optional maximum value at boot time. For backward compatibility, if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true}, and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true}, this must be equal to the max supported value ({@code MinMaxSupportedValueResult.maxSupportedValue}) at boot time. If no minimum or maximum value is available at boot time, both {@code minFloatValue} and {@code maxFloatValue} must be set to 0. If either one is not 0, then we assume min and max both take effect.
+ */
float maxFloatValue;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead. Only applicable for property with {@code @data_enum} annotation. Ignored for other properties. Optional supported subset of supported values at boot time. If the property has a @data_enum and supportedEnumValues is {@code null}, then it is assumed all @data_enum values are supported unless specified through another mechanism. For backward compatibility, if {@code HasSupportedValueInfo.hasSupportedValuesList} is {@code true} and this property has {@code data_enum} annotation, this must be set to the same as {@code SupportedValuesListResult.supportedValuesList} at boot time.
+ */
@nullable long[] supportedEnumValues;
android.hardware.automotive.vehicle.VehiclePropertyAccess access = android.hardware.automotive.vehicle.VehiclePropertyAccess.NONE;
boolean supportVariableUpdateRate;
diff --git a/automotive/vehicle/aidl/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl b/automotive/vehicle/aidl/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl
index 70a5566..62d7e21 100644
--- a/automotive/vehicle/aidl/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl
+++ b/automotive/vehicle/aidl/android/hardware/automotive/vehicle/VehicleAreaConfig.aidl
@@ -29,26 +29,142 @@
int areaId;
/**
- * If the property has @data_enum, leave the range to zero.
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
*
- * Range will be ignored in the following cases:
- * - The VehiclePropertyType is not INT32, INT64 or FLOAT.
- * - Both of min value and max value are zero.
+ * Only applicable for {@code INT32} type property. Ignored for other types.
+ *
+ * The optional minimum value at boot time.
+ *
+ * For backward compatibility,
+ * if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true},
+ * and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true},
+ * this must be equal to the min supported value
+ * ({@code MinMaxSupportedValueResult.minSupportedValue}) at boot time.
+ *
+ * If no minimum or maximum value is available at boot time, both
+ * {@code minInt32Value} and {@code maxInt32Value} must be set to 0.
+ *
+ * If either one is not 0, then we assume min and max both take effect.
*/
-
int minInt32Value;
+
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
+ *
+ * Only applicable for {@code INT32} type property. Ignored for other types.
+ *
+ * The optional maximum value at boot time.
+ *
+ * For backward compatibility,
+ * if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true},
+ * and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true},
+ * this must be equal to the max supported value
+ * ({@code MinMaxSupportedValueResult.maxSupportedValue}) at boot time.
+ *
+ * If no minimum or maximum value is available at boot time, both
+ * {@code minInt32Value} and {@code maxInt32Value} must be set to 0.
+ *
+ * If either one is not 0, then we assume min and max both take effect.
+ */
int maxInt32Value;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
+ *
+ * Only applicable for {@code INT64} type property. Ignored for other types.
+ *
+ * The optional minimum value at boot time.
+ *
+ * For backward compatibility,
+ * if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true},
+ * and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true},
+ * this must be equal to the min supported value
+ * ({@code MinMaxSupportedValueResult.minSupportedValue}) at boot time.
+ *
+ * If no minimum or maximum value is available at boot time, both
+ * {@code minInt64Value} and {@code maxInt64Value} must be set to 0.
+ *
+ * If either one is not 0, then we assume min and max both take effect.
+ */
long minInt64Value;
+
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
+ *
+ * Only applicable for {@code INT64} type property. Ignored for other types.
+ *
+ * The optional maximum value at boot time.
+ *
+ * For backward compatibility,
+ * if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true},
+ * and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true},
+ * this must be equal to the max supported value
+ * ({@code MinMaxSupportedValueResult.maxSupportedValue}) at boot time.
+ *
+ * If no minimum or maximum value is available at boot time, both
+ * {@code minInt64Value} and {@code maxInt64Value} must be set to 0.
+ *
+ * If either one is not 0, then we assume min and max both take effect.
+ */
long maxInt64Value;
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
+ *
+ * Only applicable for {@code FLOAT} type property. Ignored for other types.
+ *
+ * The optional minimum value at boot time.
+ *
+ * For backward compatibility,
+ * if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true},
+ * and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true},
+ * this must be equal to the min supported value
+ * ({@code MinMaxSupportedValueResult.minSupportedValue}) at boot time.
+ *
+ * If no minimum or maximum value is available at boot time, both
+ * {@code minFloatValue} and {@code maxFloatValue} must be set to 0.
+ *
+ * If either one is not 0, then we assume min and max both take effect.
+ */
float minFloatValue;
+
+ /**
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
+ *
+ * Only applicable for {@code FLOAT} type property. Ignored for other types.
+ *
+ * The optional maximum value at boot time.
+ *
+ * For backward compatibility,
+ * if {@code HasSupportedValueInfo.hasMinSupportedValue} is {@code true},
+ * and {@code HasSupportedValueInfo.hasMaxSupportedValue} is {@code true},
+ * this must be equal to the max supported value
+ * ({@code MinMaxSupportedValueResult.maxSupportedValue}) at boot time.
+ *
+ * If no minimum or maximum value is available at boot time, both
+ * {@code minFloatValue} and {@code maxFloatValue} must be set to 0.
+ *
+ * If either one is not 0, then we assume min and max both take effect.
+ */
float maxFloatValue;
/**
- * If the property has a @data_enum, then it is possible to specify a supported subset of the
- * @data_enum. If the property has a @data_enum and supportedEnumValues is null, then it is
- * assumed all @data_enum values are supported unless specified through another mechanism.
+ * @deprecated client should use {@code getMinMaxSupportedValue} instead.
+ *
+ * Only applicable for property with {@code @data_enum} annotation. Ignored
+ * for other properties.
+ *
+ * Optional supported subset of supported values at boot time.
+ *
+ * If the property has a @data_enum and supportedEnumValues is {@code null},
+ * then it is assumed all @data_enum values are supported unless specified
+ * through another mechanism.
+ *
+ * For backward compatibility, if
+ * {@code HasSupportedValueInfo.hasSupportedValuesList} is {@code true}
+ * and this property has {@code data_enum} annotation,
+ * this must be set to the same as
+ * {@code SupportedValuesListResult.supportedValuesList} at boot time.
*/
@nullable long[] supportedEnumValues;