Add device ID and vendor ID to device properties

This CL adds device ID and vendor ID to device properties so that WebGPU
can access it to help populate GPUAdapter.name.

Bug: chromium:1231163
Change-Id: I460e5a72ffba350f88d2649789a61eaea9670135
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/64180
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
diff --git a/dawn.json b/dawn.json
index 6ee48d8..8e584d1 100644
--- a/dawn.json
+++ b/dawn.json
@@ -873,6 +873,8 @@
         "category": "structure",
         "extensible": false,
         "members": [
+            {"name": "device ID", "type": "uint32_t"},
+            {"name": "vendor ID", "type": "uint32_t"},
             {"name": "texture compression BC", "type": "bool", "default": "false"},
             {"name": "texture compression ETC2", "type": "bool", "default": "false"},
             {"name": "texture compression ASTC", "type": "bool", "default": "false"},
diff --git a/src/dawn_native/Adapter.cpp b/src/dawn_native/Adapter.cpp
index 87f873b..87b5f9a 100644
--- a/src/dawn_native/Adapter.cpp
+++ b/src/dawn_native/Adapter.cpp
@@ -65,6 +65,8 @@
 
     WGPUDeviceProperties AdapterBase::GetAdapterProperties() const {
         WGPUDeviceProperties adapterProperties = {};
+        adapterProperties.deviceID = mPCIInfo.deviceId;
+        adapterProperties.vendorID = mPCIInfo.vendorId;
 
         mSupportedExtensions.InitializeDeviceProperties(&adapterProperties);
         // This is OK for now because there are no limit extension structs.