Dawn: Enable UsePackedDepth24UnormStencil8Format by default for QC D3D12

This CL make UsePackedDepth24UnormStencil8Format toggle enabled by
default for Qualcomm D3D12 devices to workaround WebGPU CTS failures
of depth24plus-stencil8 texture loading/sampling.

Bug: 411268750
Change-Id: Ie6129b06493029c4681dc5b94eff9cb19771797f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/237554
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Zhaoming Jiang <zhaoming.jiang@microsoft.com>
Reviewed-by: Loko Kung <lokokung@google.com>
diff --git a/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp b/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp
index 3d15e00..ce5ca24 100644
--- a/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp
+++ b/src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp
@@ -830,6 +830,13 @@
         deviceToggles->Default(Toggle::D3D12ExpandShaderResourceStateTransitionsToCopySource, true);
     }
 
+    // Use packed DXGI_FORMAT_D24_UNORM_S8_UINT format on Qualcomm devices to workaround texture
+    // loading/sampling issues for depth24plus-stencil8 texture.
+    // See https://crbug.com/411268750 for more information.
+    if (gpu_info::IsQualcomm_ACPI(vendorId) || gpu_info::IsQualcomm_PCI(vendorId)) {
+        deviceToggles->Default(Toggle::UsePackedDepth24UnormStencil8Format, true);
+    }
+
     // Use the Tint IR backend by default if the corresponding platform feature is enabled.
     deviceToggles->Default(Toggle::UseTintIR,
                            platform->IsFeatureEnabled(platform::Features::kWebGPUUseTintIR));