220 lines
6.8 KiB
Protocol Buffer
220 lines
6.8 KiB
Protocol Buffer
/*
|
|
* Copyright 2018 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.bluetooth;
|
|
|
|
option java_outer_classname = "BluetoothProtoEnums";
|
|
option java_multiple_files = true;
|
|
|
|
// Bluetooth connection states.
|
|
enum ConnectionStateEnum {
|
|
CONNECTION_STATE_DISCONNECTED = 0;
|
|
CONNECTION_STATE_CONNECTING = 1;
|
|
CONNECTION_STATE_CONNECTED = 2;
|
|
CONNECTION_STATE_DISCONNECTING = 3;
|
|
}
|
|
|
|
// Bluetooth Adapter Enable and Disable Reasons
|
|
enum EnableDisableReasonEnum {
|
|
ENABLE_DISABLE_REASON_UNSPECIFIED = 0;
|
|
ENABLE_DISABLE_REASON_APPLICATION_REQUEST = 1;
|
|
ENABLE_DISABLE_REASON_AIRPLANE_MODE = 2;
|
|
ENABLE_DISABLE_REASON_DISALLOWED = 3;
|
|
ENABLE_DISABLE_REASON_RESTARTED = 4;
|
|
ENABLE_DISABLE_REASON_START_ERROR = 5;
|
|
ENABLE_DISABLE_REASON_SYSTEM_BOOT = 6;
|
|
ENABLE_DISABLE_REASON_CRASH = 7;
|
|
ENABLE_DISABLE_REASON_USER_SWITCH = 8;
|
|
ENABLE_DISABLE_REASON_RESTORE_USER_SETTING = 9;
|
|
ENABLE_DISABLE_REASON_FACTORY_RESET = 10;
|
|
ENABLE_DISABLE_REASON_INIT_FLAGS_CHANGED = 11;
|
|
}
|
|
|
|
enum DirectionEnum {
|
|
DIRECTION_UNKNOWN = 0;
|
|
DIRECTION_OUTGOING = 1;
|
|
DIRECTION_INCOMING = 2;
|
|
}
|
|
|
|
// First item is the default value, other values follow Bluetooth spec definition
|
|
enum LinkTypeEnum {
|
|
// Link type is at most 1 byte (0xFF), thus 0xFFF must not be a valid value
|
|
LINK_TYPE_UNKNOWN = 0xFFF;
|
|
LINK_TYPE_SCO = 0x00;
|
|
LINK_TYPE_ACL = 0x01;
|
|
LINK_TYPE_ESCO = 0x02;
|
|
}
|
|
|
|
enum DeviceInfoSrcEnum {
|
|
DEVICE_INFO_SRC_UNKNOWN = 0;
|
|
// Within Android Bluetooth stack
|
|
DEVICE_INFO_INTERNAL = 1;
|
|
// Outside Android Bluetooth stack
|
|
DEVICE_INFO_EXTERNAL = 2;
|
|
}
|
|
|
|
enum DeviceTypeEnum {
|
|
DEVICE_TYPE_UNKNOWN = 0;
|
|
DEVICE_TYPE_CLASSIC = 1;
|
|
DEVICE_TYPE_LE = 2;
|
|
DEVICE_TYPE_DUAL = 3;
|
|
}
|
|
|
|
// Defined in frameworks/base/core/java/android/bluetooth/BluetoothDevice.java
|
|
enum TransportTypeEnum {
|
|
TRANSPORT_TYPE_AUTO = 0;
|
|
TRANSPORT_TYPE_BREDR = 1;
|
|
TRANSPORT_TYPE_LE = 2;
|
|
}
|
|
|
|
// Bond state enum
|
|
// Defined in frameworks/base/core/java/android/bluetooth/BluetoothDevice.java
|
|
enum BondStateEnum {
|
|
BOND_STATE_UNKNOWN = 0;
|
|
BOND_STATE_NONE = 10;
|
|
BOND_STATE_BONDING = 11;
|
|
BOND_STATE_BONDED = 12;
|
|
}
|
|
|
|
// Sub states within the bonding general state
|
|
enum BondSubStateEnum {
|
|
BOND_SUB_STATE_UNKNOWN = 0;
|
|
BOND_SUB_STATE_LOCAL_OOB_DATA_PROVIDED = 1;
|
|
BOND_SUB_STATE_LOCAL_PIN_REQUESTED = 2;
|
|
BOND_SUB_STATE_LOCAL_PIN_REPLIED = 3;
|
|
BOND_SUB_STATE_LOCAL_SSP_REQUESTED = 4;
|
|
BOND_SUB_STATE_LOCAL_SSP_REPLIED = 5;
|
|
BOND_SUB_STATE_LOCAL_BOND_STATE_INTENT_SENT = 6;
|
|
BOND_SUB_STATE_LOCAL_START_PAIRING = 7;
|
|
BOND_SUB_STATE_LOCAL_START_PAIRING_OOB = 8;
|
|
}
|
|
|
|
enum UnbondReasonEnum {
|
|
UNBOND_REASON_UNKNOWN = 0;
|
|
UNBOND_REASON_AUTH_FAILED = 1;
|
|
UNBOND_REASON_AUTH_REJECTED = 2;
|
|
UNBOND_REASON_AUTH_CANCELED = 3;
|
|
UNBOND_REASON_REMOTE_DEVICE_DOWN = 4;
|
|
UNBOND_REASON_DISCOVERY_IN_PROGRESS = 5;
|
|
UNBOND_REASON_AUTH_TIMEOUT = 6;
|
|
UNBOND_REASON_REPEATED_ATTEMPTS = 7;
|
|
UNBOND_REASON_REMOTE_AUTH_CANCELED = 8;
|
|
UNBOND_REASON_REMOVED = 9;
|
|
}
|
|
|
|
enum SocketTypeEnum {
|
|
SOCKET_TYPE_UNKNOWN = 0;
|
|
SOCKET_TYPE_RFCOMM = 1;
|
|
SOCKET_TYPE_SCO = 2;
|
|
SOCKET_TYPE_L2CAP_BREDR = 3;
|
|
SOCKET_TYPE_L2CAP_LE = 4;
|
|
}
|
|
|
|
enum SocketConnectionstateEnum {
|
|
SOCKET_CONNECTION_STATE_UNKNOWN = 0;
|
|
// Socket acts as a server waiting for connection
|
|
SOCKET_CONNECTION_STATE_LISTENING = 1;
|
|
// Socket acts as a client trying to connect
|
|
SOCKET_CONNECTION_STATE_CONNECTING = 2;
|
|
// Socket is connected
|
|
SOCKET_CONNECTION_STATE_CONNECTED = 3;
|
|
// Socket tries to disconnect from remote
|
|
SOCKET_CONNECTION_STATE_DISCONNECTING = 4;
|
|
// This socket is closed
|
|
SOCKET_CONNECTION_STATE_DISCONNECTED = 5;
|
|
}
|
|
|
|
enum SocketRoleEnum {
|
|
SOCKET_ROLE_UNKNOWN = 0;
|
|
SOCKET_ROLE_LISTEN = 1;
|
|
SOCKET_ROLE_CONNECTION = 2;
|
|
}
|
|
|
|
enum L2capCocConnectionResult {
|
|
RESULT_L2CAP_CONN_UNKNOWN = 0;
|
|
RESULT_L2CAP_CONN_SUCCESS = 1;
|
|
RESULT_L2CAP_CONN_TIMEOUT = 2;
|
|
RESULT_L2CAP_CONN_PENDING = 3;
|
|
RESULT_L2CAP_CONN_NO_PSM = 4;
|
|
RESULT_L2CAP_CONN_SECURITY_BLOCK = 5;
|
|
RESULT_L2CAP_CONN_NO_RESOURCES = 6;
|
|
RESULT_L2CAP_CONN_NO_LINK = 7;
|
|
RESULT_L2CAP_CONN_CANCEL = 8;
|
|
}
|
|
|
|
enum CodePathCounterKeyEnum {
|
|
KEY_UNKNOWN = 0;
|
|
// Reserver smaller counters for very important bt features
|
|
|
|
// [100,000 - 120,000) profile connection related
|
|
|
|
// [100,000 - 100,100) L2CAP
|
|
L2CAP_SUCCESS = 100000;
|
|
L2CAP_CONNECT_CONFIRM_NEG= 100001;
|
|
L2CAP_NO_COMPATIBLE_CHANNEL_AT_CSM_CLOSED = 100002;
|
|
L2CAP_SECURITY_NEG_AT_CSM_CLOSED= 100003;
|
|
L2CAP_TIMEOUT_AT_CSM_CLOSED = 100004;
|
|
L2CAP_CREDIT_BASED_CONNECT_RSP_NEG = 100005;
|
|
L2CAP_CONNECT_RSP_NEG = 100006;
|
|
L2CAP_INFO_NO_COMPATIBLE_CHANNEL_AT_RSP = 100007;
|
|
L2CAP_CONFIG_REQ_FAILURE = 100008;
|
|
L2CAP_CONFIG_RSP_NEG = 100009;
|
|
L2CAP_NO_COMPATIBLE_CHANNEL_AT_W4_SEC = 100010;
|
|
L2CAP_SECURITY_NEG_AT_W4_SEC= 100011;
|
|
L2CAP_TIMEOUT_AT_CONNECT_RSP = 100012;
|
|
L2CAP_CONN_OTHER_ERROR_AT_CONNECT_RSP = 100013;
|
|
|
|
// [100,100 - 100,200) SDP
|
|
SDP_SUCCESS = 100100;
|
|
SDP_FAILURE = 100101;
|
|
|
|
// [101,000 - 102,000) HFP
|
|
|
|
// [101,000 - 101,100) RFCOMM
|
|
RFCOMM_CONNECTION_SUCCESS_IND = 101000;
|
|
RFCOMM_CONNECTION_SUCCESS_CNF = 101001;
|
|
RFCOMM_PORT_START_CNF_FAILED = 101002;
|
|
RFCOMM_PORT_START_CLOSE = 101003;
|
|
RFCOMM_PORT_START_FAILED = 101004;
|
|
RFCOMM_PORT_NEG_FAILED = 101005;
|
|
RFCOMM_PORT_CLOSED = 101006;
|
|
RFCOMM_PORT_PEER_CONNECTION_FAILED = 101007;
|
|
RFCOMM_PORT_PEER_TIMEOUT = 101008;
|
|
|
|
// [101,100 - 101,200) HFP (btif)
|
|
|
|
// [102,000 - 103,000) A2DP
|
|
A2DP_CONNECTION_SUCCESS = 102000;
|
|
A2DP_CONNECTION_ACL_DISCONNECTED = 102001;
|
|
A2DP_CONNECTION_REJECT_EVT = 102002;
|
|
A2DP_CONNECTION_FAILURE = 102003;
|
|
A2DP_CONNECTION_UNKNOWN_EVENT = 102004;
|
|
A2DP_ALREADY_CONNECTING = 102005;
|
|
A2DP_OFFLOAD_START_REQ_FAILURE = 102006;
|
|
A2DP_CONNECTION_CLOSE = 102007;
|
|
A2DP_CONNECTION_DISCONNECTED = 102008;
|
|
A2DP_CONNECTION_TIMEOUT = 102009;
|
|
|
|
}
|
|
|
|
enum AddressTypeEnum {
|
|
ADDRESS_TYPE_PUBLIC = 0;
|
|
ADDRESS_TYPE_RANDOM = 1;
|
|
ADDRESS_TYPE_UNKNOWN = 0xFFFF;
|
|
}
|
|
|