| /* |
| * Copyright (C) 2020 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| syntax = "proto2"; |
| |
| package android.stats.hdmi; |
| option java_multiple_files = true; |
| option java_outer_classname = "HdmiStatsEnums"; |
| |
| // HDMI CEC logical addresses. |
| // Values correspond to "CEC Table 5 Logical Addresses" in the HDMI CEC 1.4b spec. |
| enum LogicalAddress { |
| LOGICAL_ADDRESS_UNKNOWN = -1; |
| TV = 0; |
| RECORDING_DEVICE_1 = 1; |
| RECORDING_DEVICE_2 = 2; |
| TUNER_1 = 3; |
| PLAYBACK_DEVICE_1 = 4; |
| AUDIO_SYSTEM = 5; |
| TUNER_2 = 6; |
| TUNER_3 = 7; |
| PLAYBACK_DEVICE_2 = 8; |
| RECORDING_DEVICE_3 = 9; |
| TUNER_4 = 10; |
| PLAYBACK_DEVICE_3 = 11; |
| RESERVED_1 = 12; |
| RESERVED_2 = 13; |
| SPECIFIC_USE = 14; |
| UNREGISTERED_OR_BROADCAST = 15; |
| } |
| |
| // The relationship between two paths. |
| // Values correspond exactly to PathRelationship in com.android.server.hdmi.Constants. |
| enum PathRelationship { |
| RELATIONSHIP_TO_ACTIVE_SOURCE_UNKNOWN = 0; |
| DIFFERENT_BRANCH = 1; |
| ANCESTOR = 2; |
| DESCENDANT = 3; |
| SIBLING = 4; |
| SAME = 5; |
| } |
| |
| // The result of attempting to send a HDMI CEC message. |
| // Values correspond to the constants in android.hardware.tv.cec.V1_0.SendMessageResult, |
| // offset by 10. |
| enum SendMessageResult { |
| SEND_MESSAGE_RESULT_UNKNOWN = 0; |
| SUCCESS = 10; |
| NACK = 11; |
| BUSY = 12; |
| FAIL = 13; |
| } |
| |
| // Whether a HDMI CEC message is sent from this device, to this device, or neither. |
| enum MessageDirection { |
| MESSAGE_DIRECTION_UNKNOWN = 0; |
| MESSAGE_DIRECTION_OTHER = 1; // None of the other options. |
| OUTGOING = 2; // Sent from this device. |
| INCOMING = 3; // Sent to this device. |
| TO_SELF = 4; // Sent from this device, to this device. Indicates a bug. |
| } |
| |
| // User control commands. Each value can represent an individual command, or a set of commands. |
| // Values correspond to "CEC Table 30 UI Command Codes" in the HDMI CEC 1.4b spec, offset by 0x100. |
| enum UserControlPressedCommand { |
| USER_CONTROL_PRESSED_COMMAND_UNKNOWN = 0; |
| |
| // Represents all codes that are not represented by another value. |
| USER_CONTROL_PRESSED_COMMAND_OTHER = 1; |
| |
| // Represents all number codes (codes 0x1E through 0x29). |
| NUMBER = 2; |
| |
| // Navigation |
| SELECT = 0x100; |
| UP = 0x101; |
| DOWN = 0x102; |
| LEFT = 0x103; |
| RIGHT = 0x104; |
| RIGHT_UP = 0x105; |
| RIGHT_DOWN = 0x106; |
| LEFT_UP = 0x107; |
| LEFT_DOWN = 0x108; |
| EXIT = 0x10D; |
| |
| // Volume |
| VOLUME_UP = 0x141; |
| VOLUME_DOWN = 0x142; |
| VOLUME_MUTE = 0x143; |
| |
| // Power |
| POWER = 0x140; |
| POWER_TOGGLE = 0x16B; |
| POWER_OFF = 0x16C; |
| POWER_ON = 0x16D; |
| |
| // TV Functions |
| INPUT_SELECT = 0x134; |
| } |
| |
| // Reason parameter of the <Feature Abort> message. |
| // Values correspond to "CEC Table 29 Operand Descriptions" in the HDMI CEC 1.4b spec, |
| // offset by 10. |
| enum FeatureAbortReason { |
| FEATURE_ABORT_REASON_UNKNOWN = 0; |
| UNRECOGNIZED_OPCODE = 10; |
| NOT_IN_CORRECT_MODE_TO_RESPOND = 11; |
| CANNOT_PROVIDE_SOURCE = 12; |
| INVALID_OPERAND = 13; |
| REFUSED = 14; |
| UNABLE_TO_DETERMINE = 15; |
| } |
| |
| // State of the eARC connection. |
| // Values correspond to EarcStatus in com.android.server.hdmi.Constants, offset by 1. |
| enum ConnectionState { |
| HDMI_EARC_STATUS_UNKNOWN = 0; |
| HDMI_EARC_STATUS_IDLE = 1; |
| HDMI_EARC_STATUS_EARC_PENDING = 2; |
| HDMI_EARC_STATUS_ARC_PENDING = 3; |
| HDMI_EARC_STATUS_EARC_CONNECTED = 4; |
| |
| } |
| |
| // Reason parameter of the eARC connection state logging. |
| enum LogReason { |
| LOG_REASON_UNKNOWN = 0; |
| LOG_REASON_WAKE = 1; |
| LOG_REASON_EARC_STATUS_CHANGED = 2; |
| LOG_REASON_EARC_STATUS_CHANGED_UNSUPPORTED_PORT = 3; |
| LOG_REASON_EARC_STATUS_CHANGED_WRONG_STATE = 4; |
| } |
| |
| // Reason parameter of the Dynamic soundbar mode state logging. |
| enum DynamicSoundbarModeLogReason { |
| LOG_REASON_DSM_UNKNOWN = 0; |
| LOG_REASON_DSM_WAKE = 1; |
| LOG_REASON_DSM_SETTING_TOGGLED = 2; |
| } |