| // Copyright 2019 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto3"; |
| |
| package lab; |
| |
| option go_package = "go.chromium.org/chromiumos/infra/proto/go/lab"; |
| |
| import "lab/chromeos_device_id.proto"; |
| |
| // This proto defines status labels in lab config of a DUT. |
| |
| // Next Tag: 8 |
| message DutState { |
| ChromeOSDeviceID id = 1; |
| PeripheralState servo = 2; |
| PeripheralState chameleon = 3; |
| PeripheralState audio_loopback_dongle = 4; |
| // Indicate how many working bluetooth btpeer for a device. |
| int32 working_bluetooth_btpeer = 5; |
| |
| // CR50-related configs by definition shouldn't be a state config, but a build config. |
| // However, we don't have a way to source it from any external configuration system, |
| // and it's changed frequently enough to handle cr50 tests, which makes |
| // it basically imposible for manual updatings: See crbug.com/1057145 for the |
| // troubles it causes. |
| // |
| // So we temporarily set it in state config so that repair job can update it. |
| // For further changes of it, please see tracking bug crbug.com/1057719. |
| // |
| // phases for cr50 module. Next Tag: 3 |
| enum CR50Phase { |
| CR50_PHASE_INVALID = 0; |
| CR50_PHASE_PREPVT = 1; |
| CR50_PHASE_PVT = 2; |
| } |
| |
| CR50Phase cr50_phase = 6; |
| |
| // key env for cr50 RW version. Next Tag: 3 |
| enum CR50KeyEnv { |
| CR50_KEYENV_INVALID = 0; |
| CR50_KEYENV_PROD = 1; |
| CR50_KEYENV_DEV = 2; |
| } |
| // Detected based on the cr50 RW version that the DUT is running on. |
| CR50KeyEnv cr50_key_env = 7; |
| } |
| |
| // Next Tag: 5 |
| enum PeripheralState { |
| // keep for all unknown states except working & not_connected. |
| UNKNOWN = 0; |
| WORKING = 1; |
| NOT_CONNECTED = 2; |
| BROKEN = 3; |
| WRONG_CONFIG = 4; |
| } |