Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 1 | # Copyright (c) 2020 The Chromium OS Authors. All rights reserved. |
| 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
| 5 | |
| 6 | from autotest_lib.client.common_lib import global_config |
| 7 | _CONFIG = global_config.global_config |
| 8 | |
| 9 | # Names of the host attributes in the database that represent the values for |
| 10 | # the servo_host and servo_port for a servo connected to the DUT. |
| 11 | SERVO_HOST_ATTR = 'servo_host' |
| 12 | SERVO_PORT_ATTR = 'servo_port' |
| 13 | SERVO_BOARD_ATTR = 'servo_board' |
| 14 | # Model is inferred from host labels. |
| 15 | SERVO_MODEL_ATTR = 'servo_model' |
| 16 | SERVO_SERIAL_ATTR = 'servo_serial' |
Garry Wang | cb06f3b | 2020-10-08 20:56:21 -0700 | [diff] [blame] | 17 | # Indicates what type of servo setup, example value: REGULAR or DUAL_V4. |
| 18 | SERVO_SETUP_ATTR = 'servo_setup' |
| 19 | SERVO_SETUP_VALUE_DUAL_V4 = 'DUAL_V4' |
Otabek Kasimov | 1b70e8d | 2020-12-30 13:51:00 -0800 | [diff] [blame^] | 20 | SERVO_RECOVERY_MODE = 'servo_recovery' |
Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 21 | SERVO_ATTR_KEYS = ( |
| 22 | SERVO_BOARD_ATTR, |
| 23 | SERVO_HOST_ATTR, |
| 24 | SERVO_PORT_ATTR, |
| 25 | SERVO_SERIAL_ATTR, |
Garry Wang | cb06f3b | 2020-10-08 20:56:21 -0700 | [diff] [blame] | 26 | SERVO_SETUP_ATTR, |
Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 27 | ) |
| 28 | |
Garry Wang | 6a68006 | 2020-11-03 13:40:29 -0800 | [diff] [blame] | 29 | # Additional args that will be appended to servod start command. |
| 30 | ADDITIONAL_SERVOD_ARGS = 'additional_servod_args' |
| 31 | |
Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 32 | # Timeout value for stop/start servod process. |
| 33 | SERVOD_TEARDOWN_TIMEOUT = 3 |
| 34 | SERVOD_QUICK_STARTUP_TIMEOUT = 20 |
| 35 | SERVOD_STARTUP_TIMEOUT = 60 |
| 36 | |
Garry Wang | b5cee3e | 2020-09-16 14:58:13 -0700 | [diff] [blame] | 37 | # Prefix of pools that require servod cr50 config. |
| 38 | CR50_CONFIG_POOL_PREFIX = 'faft-cr50' |
| 39 | |
Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 40 | ENABLE_SSH_TUNNEL_FOR_SERVO = _CONFIG.get_config_value( |
| 41 | 'CROS', 'enable_ssh_tunnel_for_servo', type=bool, default=False) |
| 42 | |
Otabek Kasimov | e756528 | 2020-04-14 13:26:12 -0700 | [diff] [blame] | 43 | SERVO_TYPE_LABEL_PREFIX = 'servo_type' |
Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 44 | SERVO_STATE_LABEL_PREFIX = 'servo_state' |
Otabek Kasimov | 646812c | 2020-06-23 20:01:36 -0700 | [diff] [blame] | 45 | |
| 46 | # constants to support whole list of states for servo |
Garry Wang | 11b5e87 | 2020-03-11 15:14:08 -0700 | [diff] [blame] | 47 | SERVO_STATE_UNKNOWN = 'UNKNOWN' |
Otabek Kasimov | 646812c | 2020-06-23 20:01:36 -0700 | [diff] [blame] | 48 | SERVO_STATE_MISSING_CONFIG = 'MISSING_CONFIG' |
| 49 | SERVO_STATE_WRONG_CONFIG = 'WRONG_CONFIG' |
| 50 | SERVO_STATE_NO_SSH = 'NO_SSH' |
| 51 | SERVO_STATE_NOT_CONNECTED = 'NOT_CONNECTED' |
| 52 | SERVO_STATE_NEED_REPLACEMENT = 'NEED_REPLACEMENT' |
Otabek Kasimov | bb3bc46 | 2020-11-03 16:40:33 -0800 | [diff] [blame] | 53 | SERVO_STATE_CR50_CONSOLE_MISSING = 'CR50_CONSOLE_MISSING' |
Otabek Kasimov | 646812c | 2020-06-23 20:01:36 -0700 | [diff] [blame] | 54 | SERVO_STATE_CCD_TESTLAB_ISSUE = 'CCD_TESTLAB_ISSUE' |
| 55 | SERVO_STATE_SERVOD_ISSUE = 'SERVOD_ISSUE' |
| 56 | SERVO_STATE_LID_OPEN_FAILED = 'LID_OPEN_FAILED' |
| 57 | SERVO_STATE_BAD_RIBBON_CABLE = 'BAD_RIBBON_CABLE' |
Otabek Kasimov | 01bceb3 | 2020-10-28 15:40:28 -0700 | [diff] [blame] | 58 | SERVO_STATE_TOPOLOGY_ISSUE = 'TOPOLOGY_ISSUE' |
Otabek Kasimov | a7eb4dc | 2020-09-16 10:25:17 -0700 | [diff] [blame] | 59 | SERVO_STATE_DUT_NOT_CONNECTED = 'DUT_NOT_CONNECTED' |
Otabek Kasimov | 646812c | 2020-06-23 20:01:36 -0700 | [diff] [blame] | 60 | SERVO_STATE_EC_BROKEN = 'EC_BROKEN' |
| 61 | SERVO_STATE_BROKEN = 'BROKEN' |
| 62 | SERVO_STATE_WORKING = 'WORKING' |
Garry Wang | ffbd216 | 2020-04-17 16:13:48 -0700 | [diff] [blame] | 63 | |
| 64 | # constants to support reset servo via smart usbhub. |
Garry Wang | 000c6c0 | 2020-05-11 21:27:23 -0700 | [diff] [blame] | 65 | SMART_USBHUB_LABEL = 'smart_usbhub' |
Garry Wang | ffbd216 | 2020-04-17 16:13:48 -0700 | [diff] [blame] | 66 | SERVO_RESET_TIMEOUT_SECONDS = 20 |
Garry Wang | ad24500 | 2020-05-15 15:20:23 -0700 | [diff] [blame] | 67 | ERROR_MESSAGE_USB_HUB_NOT_COMPATIBLE = ('Be sure the hub is a supported' |
| 68 | ' smart hub') |
Garry Wang | ffbd216 | 2020-04-17 16:13:48 -0700 | [diff] [blame] | 69 | # a servo serial number should be fed to this constant |
| 70 | ERROR_MESSAGE_DEVICE_NOT_FOUND = 'Device with serial \'%s\' not found.' |