Moving to new layout, chromiumos-overlays protos to src/config/protos.

Moving to the new layout expressed in:

https://photos.app.goo.gl/4D1tD6epQw2kSNCH6

This brings the chromeos-overlays protos directly into the
src/config/proto location. Generation will not use these protos until we
have other proto dependencies moved and ready to go.

BUG=chromium:1041872
TEST=None, will be via presubmits when generate.sh changes to point here

Change-Id: I6e00482d406eb97fd6578a0e511e9583fc838f04
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/config/+/2052556
Reviewed-by: Chris McDonald <cjmcdonald@chromium.org>
Commit-Queue: David Burger <dburger@chromium.org>
Tested-by: David Burger <dburger@chromium.org>
diff --git a/proto/audio_config.proto b/proto/audio_config.proto
new file mode 100644
index 0000000..615900d
--- /dev/null
+++ b/proto/audio_config.proto
@@ -0,0 +1,23 @@
+syntax = "proto3";
+
+option go_package = "go.chromium.org/chromiumos/config/go/src/config/proto";
+
+package chromiumos_config;
+
+// Note that all files should be specified as paths relative to the root of a
+// chromiumos checkout, e.g. "src/overlays/overlay-<target>/audio/HiFi.conf".
+message AudioConfig {
+    // The name of the audio card.
+    string card_name = 1;
+
+    // Path to the CRAS card configuration file.
+    // See https://chromium.googlesource.com/chromiumos/third_party/adhd/+/master/cras/#card-configuration.
+    string card_config_file = 2;
+
+    // Path to the dsp.ini configuration file.
+    string dsp_file = 3;
+
+    // Path to the UCM file. Note that this is the UCM verb file (e.g.
+    // "HiFi.conf"), NOT the UCM master file (e.g. <sound card name>.conf).
+    string ucm_file = 4;
+}
diff --git a/proto/brand_config.proto b/proto/brand_config.proto
new file mode 100644
index 0000000..c329cff
--- /dev/null
+++ b/proto/brand_config.proto
@@ -0,0 +1,13 @@
+syntax = "proto3";
+
+package chromiumos_config;
+
+option go_package = "go.chromium.org/chromiumos/config/go/src/config/proto";
+
+import "src/config/proto/identity/identity_scan_config.proto";
+
+// TODO(shapiroc): Delete after config is migrated.
+message BrandConfig {
+  chromeos_config.IdentityScanConfig.BrandId scan_config = 1;
+  string wallpaper = 2;
+}
diff --git a/proto/build_target_id.proto b/proto/build_target_id.proto
new file mode 100644
index 0000000..4d5259a
--- /dev/null
+++ b/proto/build_target_id.proto
@@ -0,0 +1,12 @@
+syntax = "proto3";
+
+package chromiumos_config;
+
+option go_package = "go.chromium.org/chromiumos/config/go/src/config/proto";
+
+// An id that other messages can use as a foreign key to specify a
+// BuildTarget. Id messages are equal iff their binary serialization is
+// equal.
+message BuildTargetId {
+  string value = 1;
+}
diff --git a/proto/design_config_build_payload.proto b/proto/design_config_build_payload.proto
new file mode 100644
index 0000000..f344ad7
--- /dev/null
+++ b/proto/design_config_build_payload.proto
@@ -0,0 +1,24 @@
+syntax = "proto3";
+
+package chromiumos_config;
+
+option go_package = "go.chromium.org/chromiumos/config/go/src/config/proto";
+
+import "src/config/proto/audio/audio_config.proto";
+import "src/config/proto/firmware_config.proto";
+import "src/config/proto/bluetooth/config.proto";
+import "src/config/proto/identity/identity_scan_config.proto";
+import "src/config/proto/power_manager/config.proto";
+
+// TODO(shapiroc): Delete after config is migrated.
+message DesignConfigBuildPayload {
+  chromeos_config.IdentityScanConfig.DesignConfigId scan_config = 1;
+
+  firmware.FirmwareConfig firmware = 2;
+
+  bluetooth.BluetoothConfig bluetooth_config = 3;
+
+  power_manager.PowerManagerConfig power_manager_config = 4;
+
+  AudioConfig audio_config = 5;
+}
diff --git a/proto/firmware_config.proto b/proto/firmware_config.proto
new file mode 100644
index 0000000..5a7e9e8
--- /dev/null
+++ b/proto/firmware_config.proto
@@ -0,0 +1,47 @@
+syntax = "proto3";
+
+package firmware;
+
+option go_package = "go.chromium.org/chromiumos/config/go/src/third_party/chromiumos-overlay/proto";
+
+// The type of a firmware binary.
+message FirmwareType {
+  enum Type {
+    UNKNOWN = 0;
+    MAIN = 1;
+    EC = 2;
+  }
+}
+
+// Specifies the version of a firmware binary.
+message Version {
+  int32 major = 1;
+  int32 minor = 2;
+}
+
+// Specifies the location of a firmware binary.
+message FirmwarePayload {
+  // The build target the firmware was built for.
+  string build_target_name = 1;
+
+  // The name of the firmware image used by the firmware updater. Typically
+  // the device name, but can differ when a device may have two or more
+  // different firmware images.
+  string firmware_image_name = 2;
+
+  FirmwareType.Type type = 3;
+
+  Version version = 4;
+}
+
+// Specifies different firmware payloads to use in a build.
+message FirmwareConfig {
+  // The main read-only firmware.
+  FirmwarePayload main_ro_payload = 1;
+
+  // The main read-write firmware.
+  FirmwarePayload main_rw_payload = 2;
+
+  // The embedded controller read-only firmware.
+  FirmwarePayload ec_ro_payload = 3;
+}