Merge "Allow android.hardware.tv.tuner V2 to be used" into udc-dev
diff --git a/automotive/evs/aidl/android/hardware/automotive/evs/ExposureParameters.aidl b/automotive/evs/aidl/android/hardware/automotive/evs/ExposureParameters.aidl
index 6a85ade..e644fed 100644
--- a/automotive/evs/aidl/android/hardware/automotive/evs/ExposureParameters.aidl
+++ b/automotive/evs/aidl/android/hardware/automotive/evs/ExposureParameters.aidl
@@ -42,7 +42,7 @@
     /** Remainder exposure time in clocks. */
     long fineIntegrationTimeInPixelClocks;
     /**
-     * Logarthm value of coarse integration time multiplier.
+     * Logarithm value of coarse integration time multiplier.
      */
     int coarseIntegrationTimeLShift;
 }
diff --git a/automotive/evs/aidl/android/hardware/automotive/evs/GridStatistics.aidl b/automotive/evs/aidl/android/hardware/automotive/evs/GridStatistics.aidl
index e66c51e..57f72ea 100644
--- a/automotive/evs/aidl/android/hardware/automotive/evs/GridStatistics.aidl
+++ b/automotive/evs/aidl/android/hardware/automotive/evs/GridStatistics.aidl
@@ -25,7 +25,7 @@
  */
 @VintfStability
 parcelable GridStatistics {
-    /** */
+    /** Descriptors of grid statistics in shared memory. */
     GridStatisticDesc[] descriptors;
     /**
      * Shared memory object containing one or more grid statistics.
diff --git a/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl b/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
index 8a3ab90..19c3376 100644
--- a/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
+++ b/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
@@ -873,7 +873,17 @@
     HVAC_DUAL_ON = 0x0509 + 0x10000000 + 0x05000000
             + 0x00200000, // VehiclePropertyGroup:SYSTEM,VehicleArea:SEAT,VehiclePropertyType:BOOLEAN
     /**
-     * On/off automatic mode
+     * On/off automatic climate control.
+     *
+     * If true, automatic climate control is on. If false, automatic climate control is off.
+     *
+     * If the vehicle does not support directly turning off automatic climate control, then OEMs
+     * should add logic in their VHAL implementation so that setting HVAC_AUTO_ON to false would
+     * change the necessary HVAC settings to indirectly turn off HVAC_AUTO_ON. Ideally, this should
+     * not be disruptive to the user, so OEMs should change back to the previous state any settings
+     * that were modified once automatic climate control is off. That way the only outcome should be
+     * that HVAC_AUTO_ON is off. If restoring the HVAC settings to its previous settings is not
+     * possible, then the OEM should choose the least disruptive change and implement that.
      *
      * This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to
      * implement it as VehiclePropertyAccess.READ only.
diff --git a/bluetooth/aidl/TEST_MAPPING b/bluetooth/aidl/TEST_MAPPING
index f059c04..d1de251 100644
--- a/bluetooth/aidl/TEST_MAPPING
+++ b/bluetooth/aidl/TEST_MAPPING
@@ -9,5 +9,16 @@
         }
       ]
     }
+  ],
+  "hwasan-presubmit" : [
+    {
+      "name" : "VtsHalBluetoothTargetTest",
+      "options": [
+        {
+          // TODO(b/275847929)
+          "exclude-filter": "VtsHalBluetoothTargetTest.PerInstance/BluetoothAidlTest#Cdd_C_12_1_Bluetooth5Requirements/0_android_hardware_bluetooth_IBluetoothHci_default"
+        }
+      ]
+    }
   ]
 }
diff --git a/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp b/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp
index 5ea6ae2..317f02e 100644
--- a/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp
+++ b/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp
@@ -6346,7 +6346,7 @@
         AvailableStream depthPreviewThreshold = {kMaxPreviewWidth, kMaxPreviewHeight,
                                                  static_cast<int32_t>(PixelFormat::Y16)};
         const AvailableStream* depthThreshold =
-                (threshold != nullptr) ? threshold : &depthPreviewThreshold;
+                isDepthOnly(staticMeta) ? &depthPreviewThreshold : threshold;
         fillOutputStreams(&depthEntry, outputStreams, depthThreshold,
                           ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_OUTPUT);
     }
diff --git a/camera/provider/aidl/vts/camera_aidl_test.cpp b/camera/provider/aidl/vts/camera_aidl_test.cpp
index c315879..7bd82b6 100644
--- a/camera/provider/aidl/vts/camera_aidl_test.cpp
+++ b/camera/provider/aidl/vts/camera_aidl_test.cpp
@@ -336,7 +336,7 @@
     int retcode = find_camera_metadata_ro_entry(metadata,
             ANDROID_CONTROL_AVAILABLE_SETTINGS_OVERRIDES, &entry);
     bool supportSettingsOverride = false;
-    if ((0 == retcode) && (entry.count > 0)) {
+    if (0 == retcode) {
         supportSettingsOverride = true;
         bool hasOff = false;
         for (size_t i = 0; i < entry.count; i++) {
@@ -845,7 +845,7 @@
         AvailableStream depthPreviewThreshold = {kMaxPreviewWidth, kMaxPreviewHeight,
                                                  static_cast<int32_t>(PixelFormat::Y16)};
         const AvailableStream* depthThreshold =
-                (threshold != nullptr) ? threshold : &depthPreviewThreshold;
+                isDepthOnly(staticMeta) ? &depthPreviewThreshold : threshold;
         fillOutputStreams(&depthEntry, outputStreams, depthThreshold,
                           ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_OUTPUT);
     }
diff --git a/compatibility_matrices/compatibility_matrix.8.xml b/compatibility_matrices/compatibility_matrix.8.xml
index 3940a0f..4ac95f5 100644
--- a/compatibility_matrices/compatibility_matrix.8.xml
+++ b/compatibility_matrices/compatibility_matrix.8.xml
@@ -78,9 +78,9 @@
     </hal>
     <hal format="aidl" optional="true">
         <name>android.hardware.automotive.evs</name>
+        <version>1-2</version>
         <interface>
             <name>IEvsEnumerator</name>
-            <instance>default</instance>
             <regex-instance>[a-z]+/[0-9]+</regex-instance>
         </interface>
     </hal>
diff --git a/graphics/composer/2.1/utils/hal/include/composer-hal/2.1/ComposerCommandEngine.h b/graphics/composer/2.1/utils/hal/include/composer-hal/2.1/ComposerCommandEngine.h
index ab67eb1..9ae6173 100644
--- a/graphics/composer/2.1/utils/hal/include/composer-hal/2.1/ComposerCommandEngine.h
+++ b/graphics/composer/2.1/utils/hal/include/composer-hal/2.1/ComposerCommandEngine.h
@@ -207,7 +207,7 @@
 
     bool executeSetClientTarget(uint16_t length) {
         // 4 parameters followed by N rectangles
-        if ((length - 4) % 4 != 0) {
+        if (!length || (length - 4) % 4 != 0) {
             return false;
         }
 
diff --git a/graphics/composer/2.3/utils/command-buffer/include/composer-command-buffer/2.3/ComposerCommandBuffer.h b/graphics/composer/2.3/utils/command-buffer/include/composer-command-buffer/2.3/ComposerCommandBuffer.h
index afc22d8..5e9a287 100644
--- a/graphics/composer/2.3/utils/command-buffer/include/composer-command-buffer/2.3/ComposerCommandBuffer.h
+++ b/graphics/composer/2.3/utils/command-buffer/include/composer-command-buffer/2.3/ComposerCommandBuffer.h
@@ -87,6 +87,10 @@
             return;
         }
 
+        if (metadata.size() == 0) {
+            return;
+        }
+
         // space for numElements
         commandLength += 1;
 
diff --git a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl
index 0cc01c5..25d704e 100644
--- a/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl
+++ b/uwb/aidl/aidl_api/android.hardware.uwb.fira_android/current/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl
@@ -44,6 +44,7 @@
   CCC_SUPPORTED_PULSE_SHAPE_COMBOS = 166,
   CCC_SUPPORTED_RAN_MULTIPLIER = 167,
   CCC_SUPPORTED_MAX_RANGING_SESSION_NUMBER = 168,
+  CCC_SUPPORTED_MIN_UWB_INITIATION_TIME_MS = 169,
   SUPPORTED_AOA_RESULT_REQ_ANTENNA_INTERLEAVING = 227,
   SUPPORTED_MIN_RANGING_INTERVAL_MS = 228,
   SUPPORTED_RANGE_DATA_NTF_CONFIG = 229,
diff --git a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl
index 891b6f0..22b7bfe 100644
--- a/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl
+++ b/uwb/aidl/android/hardware/uwb/fira_android/UwbVendorCapabilityTlvTypes.aidl
@@ -144,6 +144,11 @@
      */
     CCC_SUPPORTED_MAX_RANGING_SESSION_NUMBER = 0xA8,
 
+    /**
+     * Int value to indicate the smallest supported CCC uwb initiation time in ms
+     */
+    CCC_SUPPORTED_MIN_UWB_INITIATION_TIME_MS = 0xA9,
+
     /*********************************************
      * FIRA specific
      ********************************************/