blob: b9a8f5959c2b700e948988b379b3f1d7399119bd [file] [log] [blame]
// 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 impossible 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;
}