[Tracing] Add proto configuration for the ETW proto.

This is the follow up CL to adding the ETW proto. This adds the necessary config to Perfetto.

In upcoming CLs:
- Support ETW context switch in trace processor
- Display ETW context switch in UI

Bug: 303263148

Change-Id: I5075c9f3287aa95e90265d2b71e468e0d5fdb960
diff --git a/Android.bp b/Android.bp
index 3e523f5..c2a5340 100644
--- a/Android.bp
+++ b/Android.bp
@@ -37,6 +37,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -124,6 +126,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -305,6 +309,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -401,6 +407,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -510,6 +518,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -616,6 +626,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -754,6 +766,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -839,6 +853,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -925,6 +941,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -1014,6 +1032,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -1067,6 +1087,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -1148,6 +1170,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -1226,6 +1250,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -1316,6 +1342,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -1448,6 +1476,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -1519,6 +1549,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -1614,6 +1646,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -1732,6 +1766,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -1803,6 +1839,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -2113,6 +2151,9 @@
         ":perfetto_protos_perfetto_config_android_lite_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_lite_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_lite_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
@@ -2387,6 +2428,9 @@
         "perfetto_protos_perfetto_config_android_lite_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_lite_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_lite_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
@@ -3010,6 +3054,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -3045,6 +3090,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -3109,6 +3155,7 @@
         "protos/perfetto/config/chrome/chrome_config.proto",
         "protos/perfetto/config/chrome/scenario_config.proto",
         "protos/perfetto/config/data_source_config.proto",
+        "protos/perfetto/config/etw/etw_config.proto",
         "protos/perfetto/config/ftrace/ftrace_config.proto",
         "protos/perfetto/config/gpu/gpu_counter_config.proto",
         "protos/perfetto/config/gpu/vulkan_memory_config.proto",
@@ -3138,6 +3185,136 @@
     ],
 }
 
+// GN: //protos/perfetto/config/etw:cpp
+filegroup {
+    name: "perfetto_protos_perfetto_config_etw_cpp",
+    srcs: [
+        "protos/perfetto/config/etw/etw_config.proto",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:cpp
+genrule {
+    name: "perfetto_protos_perfetto_config_etw_cpp_gen",
+    srcs: [
+        ":perfetto_protos_perfetto_config_etw_cpp",
+    ],
+    tools: [
+        "aprotoc",
+        "perfetto_src_protozero_protoc_plugin_cppgen_plugin",
+    ],
+    cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location perfetto_src_protozero_protoc_plugin_cppgen_plugin) --plugin_out=wrapper_namespace=gen:$(genDir)/external/perfetto/ $(locations :perfetto_protos_perfetto_config_etw_cpp)",
+    out: [
+        "external/perfetto/protos/perfetto/config/etw/etw_config.gen.cc",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:cpp
+genrule {
+    name: "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+    srcs: [
+        ":perfetto_protos_perfetto_config_etw_cpp",
+    ],
+    tools: [
+        "aprotoc",
+        "perfetto_src_protozero_protoc_plugin_cppgen_plugin",
+    ],
+    cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location perfetto_src_protozero_protoc_plugin_cppgen_plugin) --plugin_out=wrapper_namespace=gen:$(genDir)/external/perfetto/ $(locations :perfetto_protos_perfetto_config_etw_cpp)",
+    out: [
+        "external/perfetto/protos/perfetto/config/etw/etw_config.gen.h",
+    ],
+    export_include_dirs: [
+        ".",
+        "protos",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:lite
+filegroup {
+    name: "perfetto_protos_perfetto_config_etw_lite",
+    srcs: [
+        "protos/perfetto/config/etw/etw_config.proto",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:lite
+genrule {
+    name: "perfetto_protos_perfetto_config_etw_lite_gen",
+    srcs: [
+        ":perfetto_protos_perfetto_config_etw_lite",
+    ],
+    tools: [
+        "aprotoc",
+    ],
+    cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --cpp_out=lite=true:$(genDir)/external/perfetto/ $(locations :perfetto_protos_perfetto_config_etw_lite)",
+    out: [
+        "external/perfetto/protos/perfetto/config/etw/etw_config.pb.cc",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:lite
+genrule {
+    name: "perfetto_protos_perfetto_config_etw_lite_gen_headers",
+    srcs: [
+        ":perfetto_protos_perfetto_config_etw_lite",
+    ],
+    tools: [
+        "aprotoc",
+    ],
+    cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --cpp_out=lite=true:$(genDir)/external/perfetto/ $(locations :perfetto_protos_perfetto_config_etw_lite)",
+    out: [
+        "external/perfetto/protos/perfetto/config/etw/etw_config.pb.h",
+    ],
+    export_include_dirs: [
+        ".",
+        "protos",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:zero
+filegroup {
+    name: "perfetto_protos_perfetto_config_etw_zero",
+    srcs: [
+        "protos/perfetto/config/etw/etw_config.proto",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:zero
+genrule {
+    name: "perfetto_protos_perfetto_config_etw_zero_gen",
+    srcs: [
+        ":perfetto_protos_perfetto_config_etw_zero",
+    ],
+    tools: [
+        "aprotoc",
+        "protozero_plugin",
+    ],
+    cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location protozero_plugin) --plugin_out=wrapper_namespace=pbzero:$(genDir)/external/perfetto/ $(locations :perfetto_protos_perfetto_config_etw_zero)",
+    out: [
+        "external/perfetto/protos/perfetto/config/etw/etw_config.pbzero.cc",
+    ],
+}
+
+// GN: //protos/perfetto/config/etw:zero
+genrule {
+    name: "perfetto_protos_perfetto_config_etw_zero_gen_headers",
+    srcs: [
+        ":perfetto_protos_perfetto_config_etw_zero",
+    ],
+    tools: [
+        "aprotoc",
+        "protozero_plugin",
+    ],
+    cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location protozero_plugin) --plugin_out=wrapper_namespace=pbzero:$(genDir)/external/perfetto/ $(locations :perfetto_protos_perfetto_config_etw_zero)",
+    out: [
+        "external/perfetto/protos/perfetto/config/etw/etw_config.pbzero.h",
+    ],
+    export_include_dirs: [
+        ".",
+        "protos",
+    ],
+}
+
 // GN: //protos/perfetto/config/ftrace:cpp
 filegroup {
     name: "perfetto_protos_perfetto_config_ftrace_cpp",
@@ -3693,6 +3870,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite",
         ":perfetto_protos_perfetto_config_android_lite",
+        ":perfetto_protos_perfetto_config_etw_lite",
         ":perfetto_protos_perfetto_config_ftrace_lite",
         ":perfetto_protos_perfetto_config_gpu_lite",
         ":perfetto_protos_perfetto_config_inode_file_lite",
@@ -3727,6 +3905,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite",
         ":perfetto_protos_perfetto_config_android_lite",
+        ":perfetto_protos_perfetto_config_etw_lite",
         ":perfetto_protos_perfetto_config_ftrace_lite",
         ":perfetto_protos_perfetto_config_gpu_lite",
         ":perfetto_protos_perfetto_config_inode_file_lite",
@@ -4734,6 +4913,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_zero",
         ":perfetto_protos_perfetto_config_android_zero",
+        ":perfetto_protos_perfetto_config_etw_zero",
         ":perfetto_protos_perfetto_config_ftrace_zero",
         ":perfetto_protos_perfetto_config_gpu_zero",
         ":perfetto_protos_perfetto_config_inode_file_zero",
@@ -4769,6 +4949,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_zero",
         ":perfetto_protos_perfetto_config_android_zero",
+        ":perfetto_protos_perfetto_config_etw_zero",
         ":perfetto_protos_perfetto_config_ftrace_zero",
         ":perfetto_protos_perfetto_config_gpu_zero",
         ":perfetto_protos_perfetto_config_inode_file_zero",
@@ -4818,6 +4999,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -4849,6 +5031,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -4893,6 +5076,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -4926,6 +5110,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -5676,6 +5861,7 @@
         "protos/perfetto/config/chrome/chrome_config.proto",
         "protos/perfetto/config/chrome/scenario_config.proto",
         "protos/perfetto/config/data_source_config.proto",
+        "protos/perfetto/config/etw/etw_config.proto",
         "protos/perfetto/config/ftrace/ftrace_config.proto",
         "protos/perfetto/config/gpu/gpu_counter_config.proto",
         "protos/perfetto/config/gpu/vulkan_memory_config.proto",
@@ -7197,6 +7383,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -7230,6 +7417,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -7277,6 +7465,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite",
         ":perfetto_protos_perfetto_config_android_lite",
+        ":perfetto_protos_perfetto_config_etw_lite",
         ":perfetto_protos_perfetto_config_ftrace_lite",
         ":perfetto_protos_perfetto_config_gpu_lite",
         ":perfetto_protos_perfetto_config_inode_file_lite",
@@ -7309,6 +7498,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite",
         ":perfetto_protos_perfetto_config_android_lite",
+        ":perfetto_protos_perfetto_config_etw_lite",
         ":perfetto_protos_perfetto_config_ftrace_lite",
         ":perfetto_protos_perfetto_config_gpu_lite",
         ":perfetto_protos_perfetto_config_inode_file_lite",
@@ -7356,6 +7546,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_zero",
         ":perfetto_protos_perfetto_config_android_zero",
+        ":perfetto_protos_perfetto_config_etw_zero",
         ":perfetto_protos_perfetto_config_ftrace_zero",
         ":perfetto_protos_perfetto_config_gpu_zero",
         ":perfetto_protos_perfetto_config_inode_file_zero",
@@ -7389,6 +7580,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_zero",
         ":perfetto_protos_perfetto_config_android_zero",
+        ":perfetto_protos_perfetto_config_etw_zero",
         ":perfetto_protos_perfetto_config_ftrace_zero",
         ":perfetto_protos_perfetto_config_gpu_zero",
         ":perfetto_protos_perfetto_config_inode_file_zero",
@@ -7442,6 +7634,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -7496,6 +7689,7 @@
         ":perfetto_protos_perfetto_common_cpp",
         ":perfetto_protos_perfetto_config_android_cpp",
         ":perfetto_protos_perfetto_config_cpp",
+        ":perfetto_protos_perfetto_config_etw_cpp",
         ":perfetto_protos_perfetto_config_ftrace_cpp",
         ":perfetto_protos_perfetto_config_gpu_cpp",
         ":perfetto_protos_perfetto_config_inode_file_cpp",
@@ -7568,6 +7762,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite",
         ":perfetto_protos_perfetto_config_android_lite",
+        ":perfetto_protos_perfetto_config_etw_lite",
         ":perfetto_protos_perfetto_config_ftrace_lite",
         ":perfetto_protos_perfetto_config_gpu_lite",
         ":perfetto_protos_perfetto_config_inode_file_lite",
@@ -7621,6 +7816,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite",
         ":perfetto_protos_perfetto_config_android_lite",
+        ":perfetto_protos_perfetto_config_etw_lite",
         ":perfetto_protos_perfetto_config_ftrace_lite",
         ":perfetto_protos_perfetto_config_gpu_lite",
         ":perfetto_protos_perfetto_config_inode_file_lite",
@@ -7693,6 +7889,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_zero",
         ":perfetto_protos_perfetto_config_android_zero",
+        ":perfetto_protos_perfetto_config_etw_zero",
         ":perfetto_protos_perfetto_config_ftrace_zero",
         ":perfetto_protos_perfetto_config_gpu_zero",
         ":perfetto_protos_perfetto_config_inode_file_zero",
@@ -7747,6 +7944,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_zero",
         ":perfetto_protos_perfetto_config_android_zero",
+        ":perfetto_protos_perfetto_config_etw_zero",
         ":perfetto_protos_perfetto_config_ftrace_zero",
         ":perfetto_protos_perfetto_config_gpu_zero",
         ":perfetto_protos_perfetto_config_inode_file_zero",
@@ -13093,6 +13291,7 @@
         "protos/perfetto/config/chrome/chrome_config.proto",
         "protos/perfetto/config/chrome/scenario_config.proto",
         "protos/perfetto/config/data_source_config.proto",
+        "protos/perfetto/config/etw/etw_config.proto",
         "protos/perfetto/config/ftrace/ftrace_config.proto",
         "protos/perfetto/config/gpu/gpu_counter_config.proto",
         "protos/perfetto/config/gpu/vulkan_memory_config.proto",
@@ -13274,6 +13473,7 @@
     srcs: [
         ":perfetto_protos_perfetto_common_lite_gen",
         ":perfetto_protos_perfetto_config_android_lite_gen",
+        ":perfetto_protos_perfetto_config_etw_lite_gen",
         ":perfetto_protos_perfetto_config_ftrace_lite_gen",
         ":perfetto_protos_perfetto_config_gpu_lite_gen",
         ":perfetto_protos_perfetto_config_inode_file_lite_gen",
@@ -13312,6 +13512,7 @@
     generated_headers: [
         "perfetto_protos_perfetto_common_lite_gen_headers",
         "perfetto_protos_perfetto_config_android_lite_gen_headers",
+        "perfetto_protos_perfetto_config_etw_lite_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_lite_gen_headers",
         "perfetto_protos_perfetto_config_gpu_lite_gen_headers",
         "perfetto_protos_perfetto_config_inode_file_lite_gen_headers",
@@ -13346,6 +13547,7 @@
     export_generated_headers: [
         "perfetto_protos_perfetto_common_lite_gen_headers",
         "perfetto_protos_perfetto_config_android_lite_gen_headers",
+        "perfetto_protos_perfetto_config_etw_lite_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_lite_gen_headers",
         "perfetto_protos_perfetto_config_gpu_lite_gen_headers",
         "perfetto_protos_perfetto_config_inode_file_lite_gen_headers",
@@ -13433,6 +13635,9 @@
         ":perfetto_protos_perfetto_config_android_lite_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_lite_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_lite_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
@@ -13786,6 +13991,9 @@
         "perfetto_protos_perfetto_config_android_lite_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_lite_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_lite_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
@@ -13966,6 +14174,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -14091,6 +14301,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -14162,6 +14374,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -14279,6 +14493,7 @@
         ":perfetto_include_perfetto_trace_processor_trace_processor",
         ":perfetto_protos_perfetto_common_zero_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_zero_gen",
         ":perfetto_protos_perfetto_config_inode_file_zero_gen",
@@ -14397,6 +14612,7 @@
     generated_headers: [
         "perfetto_protos_perfetto_common_zero_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_zero_gen_headers",
         "perfetto_protos_perfetto_config_inode_file_zero_gen_headers",
@@ -14515,6 +14731,7 @@
         ":perfetto_include_perfetto_trace_processor_trace_processor",
         ":perfetto_protos_perfetto_common_zero_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_zero_gen",
         ":perfetto_protos_perfetto_config_inode_file_zero_gen",
@@ -14634,6 +14851,7 @@
     generated_headers: [
         "perfetto_protos_perfetto_common_zero_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_zero_gen_headers",
         "perfetto_protos_perfetto_config_inode_file_zero_gen_headers",
@@ -14748,6 +14966,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -14847,6 +15067,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",
@@ -14955,6 +15177,8 @@
         ":perfetto_protos_perfetto_config_android_cpp_gen",
         ":perfetto_protos_perfetto_config_android_zero_gen",
         ":perfetto_protos_perfetto_config_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_cpp_gen",
+        ":perfetto_protos_perfetto_config_etw_zero_gen",
         ":perfetto_protos_perfetto_config_ftrace_cpp_gen",
         ":perfetto_protos_perfetto_config_ftrace_zero_gen",
         ":perfetto_protos_perfetto_config_gpu_cpp_gen",
@@ -15029,6 +15253,8 @@
         "perfetto_protos_perfetto_config_android_cpp_gen_headers",
         "perfetto_protos_perfetto_config_android_zero_gen_headers",
         "perfetto_protos_perfetto_config_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_cpp_gen_headers",
+        "perfetto_protos_perfetto_config_etw_zero_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_cpp_gen_headers",
         "perfetto_protos_perfetto_config_ftrace_zero_gen_headers",
         "perfetto_protos_perfetto_config_gpu_cpp_gen_headers",