epoc32/include/bluetooth/hci/hciopcodes.h
branchSymbian2
changeset 2 2fe1408b6811
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/bluetooth/hci/hciopcodes.h	Tue Mar 16 16:12:26 2010 +0000
     1.3 @@ -0,0 +1,219 @@
     1.4 +// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5 +// All rights reserved.
     1.6 +// This component and the accompanying materials are made available
     1.7 +// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     1.8 +// which accompanies this distribution, and is available
     1.9 +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.10 +//
    1.11 +// Initial Contributors:
    1.12 +// Nokia Corporation - initial contribution.
    1.13 +//
    1.14 +// Contributors:
    1.15 +//
    1.16 +// Description:
    1.17 +//
    1.18 +
    1.19 +
    1.20 +
    1.21 +/**
    1.22 + @file
    1.23 + @publishedPartner
    1.24 + @released
    1.25 +*/
    1.26 +
    1.27 +#ifndef HCIOPCODES_H
    1.28 +#define HCIOPCODES_H
    1.29 +
    1.30 +#include <e32base.h>
    1.31 +
    1.32 +/** Definition of the THCIOpcode type */
    1.33 +typedef TUint16 THCIOpcode;
    1.34 +
    1.35 +// HCI Command opcodes are built up as follows:
    1.36 +//
    1.37 +//		lower 10 bit OCF | upper 6 bit OGF
    1.38 +//
    1.39 +// The OGF distinguishes the command subgroup and the OCF 
    1.40 +// determines the command within the subgroup.	Here
    1.41 +// individual opcodes are constructed by shifting the OGF 
    1.42 +// up by 10 and or'ing with the command OCF.
    1.43 +
    1.44 +// ************* HCI Command Opcodes ***********************
    1.45 +const THCIOpcode KOGFMask									=0xFC00; /*!< Opcode Group Field Mask of the top six bits of opcode */
    1.46 +
    1.47 +// NOP No OPeration opcode.
    1.48 +const THCIOpcode KNopOpcode									=0x0000; /*!< No Operation Opcode */
    1.49 +
    1.50 +// SUBGROUP 0x01 - LINK CONTROL
    1.51 +const THCIOpcode KLinkControlOGF							=0x0001<<10; /*!< Link Control Opcode Group Field */
    1.52 +const THCIOpcode KInquiryOpcode 							=0x0001|KLinkControlOGF; /*!< Inquiry Opcode */
    1.53 +const THCIOpcode KInquiryCancelOpcode						=0x0002|KLinkControlOGF; /*!< InquiryCancel Opcode*/
    1.54 +const THCIOpcode KPeriodicInquiryModeOpcode 				=0x0003|KLinkControlOGF; /*!< Periodic Inquiry Mode Opcode */
    1.55 +const THCIOpcode KExitPeriodicInquiryModeOpcode 			=0x0004|KLinkControlOGF; /*!< Exit Periodic Inquiry Mode Opcode */
    1.56 +const THCIOpcode KCreateACLConnectionOpcode 				=0x0005|KLinkControlOGF; /*!< Create ACL Connection Opcode */
    1.57 +const THCIOpcode KDisconnectOpcode							=0x0006|KLinkControlOGF; /*!< Disconnect Opcode */
    1.58 +const THCIOpcode KAddSCOConnectionOpcode					=0x0007|KLinkControlOGF; /*!< Add SCO Connection Opcode */
    1.59 +const THCIOpcode KCreateConnectionCancelOpcode				=0x0008|KLinkControlOGF; /*!< Create Connection Cancel Opcode */
    1.60 +const THCIOpcode KAcceptConnectionRequestOpcode 			=0x0009|KLinkControlOGF; /*!< Accept Connection Request Opcode */
    1.61 +const THCIOpcode KRejectConnectionRequestOpcode 			=0x000a|KLinkControlOGF; /*!< Reject Connection Request Opcode */
    1.62 +const THCIOpcode KLinkKeyRequestReplyOpcode 				=0x000b|KLinkControlOGF; /*!< Link Key Request Reply Opcode */		 
    1.63 +const THCIOpcode KLinkKeyRequestReplyNegativeOpcode 		=0x000c|KLinkControlOGF; /*!< Link Key Request Reply Negative Opcode */
    1.64 +const THCIOpcode KPINCodeRequestReplyOpcode 				=0x000d|KLinkControlOGF; /*!< PIN Request Reply Opcode */		
    1.65 +const THCIOpcode KPINCodeRequestReplyNegativeOpcode 		=0x000e|KLinkControlOGF; /*!< PIN Request Reply Negative Opcode */
    1.66 +const THCIOpcode KChangeConnectionPacketTypeOpcode			=0x000f|KLinkControlOGF; /*!< Change Connection Packet Type Opcode */
    1.67 +const THCIOpcode KAuthenticationRequestedOpcode 			=0x0011|KLinkControlOGF; /*!< Authentication Requested Opcode */
    1.68 +const THCIOpcode KSetConnectionEncryptionOpcode 			=0x0013|KLinkControlOGF; /*!< Set Connection Encryption Opcode */
    1.69 +const THCIOpcode KChangeLinkKeyOpcode						=0x0015|KLinkControlOGF; /*!< Change Link Key Opcode */
    1.70 +const THCIOpcode KMasterLinkKeyOpcode 						=0x0017|KLinkControlOGF; /*!< Master Link Key Opcode */
    1.71 +const THCIOpcode KRemoteNameRequestOpcode					=0x0019|KLinkControlOGF; /*!< Remote Name Request Opcode */
    1.72 +const THCIOpcode KRemoteNameRequestCancelOpcode				=0x001a|KLinkControlOGF; /*!< Remote Name Request Cancel Opcode */
    1.73 +const THCIOpcode KReadRemoteSupportedFeaturesOpcode 		=0x001b|KLinkControlOGF; /*!< Read Remote Supported Features Opcode */
    1.74 +const THCIOpcode KReadRemoteExtendedFeaturesOpcode 			=0x001c|KLinkControlOGF; /*!< Read Remote Extended Features Opcode */
    1.75 +const THCIOpcode KReadRemoteVersionInfoOpcode				=0x001d|KLinkControlOGF; /*!< Read Remote Version Info Opcode */
    1.76 +const THCIOpcode KReadClockOffsetOpcode 					=0x001f|KLinkControlOGF; /*!< Read Clock Offset Opcode */
    1.77 +const THCIOpcode KReadLMPHandleOpcode						=0x0020|KLinkControlOGF; /*!< Read LMP Handle Opcode */
    1.78 +const THCIOpcode KSetupSynchronousConnectionOpcode			=0x0028|KLinkControlOGF; /*!< Read Clock Offset Opcode */
    1.79 +const THCIOpcode KAcceptSynchronousConnectionRequestOpcode 	=0x0029|KLinkControlOGF; /*!< Accept Synchronous Connection Request Opcode */
    1.80 +const THCIOpcode KRejectSynchronousConnectionRequestOpcode 	=0x002A|KLinkControlOGF; /*!< Reject Synchronous Connection Request Opcode */
    1.81 +const THCIOpcode KIOCapabilityRequestReplyOpcode				=0x002B|KLinkControlOGF; /*!< IO Capability Request Reply Opcode */
    1.82 +const THCIOpcode KUserConfirmationRequestReplyOpcode			=0x002C|KLinkControlOGF; /*!< User Confirmation Request Reply Opcode */
    1.83 +const THCIOpcode KUserConfirmationRequestNegativeReplyOpcode	=0x002D|KLinkControlOGF; /*!< User Confirmation Request Negative Reply Opcode */
    1.84 +const THCIOpcode KUserPasskeyRequestReplyOpcode					=0x002E|KLinkControlOGF; /*!< User Passkey Request Reply Opcode */
    1.85 +const THCIOpcode KUserPasskeyRequestNegativeReplyOpcode			=0x002F|KLinkControlOGF; /*!< User Passkey Request Negative Reply Opcode */
    1.86 +const THCIOpcode KRemoteOOBDataRequestReplyOpcode				=0x0030|KLinkControlOGF; /*!< Remote OOB Data Request Reply Opcode */
    1.87 +const THCIOpcode KRemoteOOBDataRequestNegativeReplyOpcode		=0x0033|KLinkControlOGF; /*!< Remote OOB Data Request Negative Reply Opcode */
    1.88 +const THCIOpcode KIOCapabilityRequestNegativeReplyOpcode		=0x0034|KLinkControlOGF; /*!< IO Capability Request Negative Reply Opcode */
    1.89 +
    1.90 +// SUBGROUP 0x02 - LINK POLICY
    1.91 +const THCIOpcode KLinkPolicyOGF 							=0x0002<<10; /*!< Link Policy Opcode Group Field */
    1.92 +const THCIOpcode KHoldModeOpcode							=0x0001|KLinkPolicyOGF; /*!< Hold Mode Opcode */
    1.93 +const THCIOpcode KSniffModeOpcode							=0x0003|KLinkPolicyOGF; /*!< Sniff Mode Opcode */
    1.94 +const THCIOpcode KExitSniffModeOpcode						=0x0004|KLinkPolicyOGF; /*!< Exit Sniff Mode Opcode */
    1.95 +const THCIOpcode KParkModeOpcode							=0x0005|KLinkPolicyOGF; /*!< Park Mode Opcode */
    1.96 +const THCIOpcode KExitParkModeOpcode						=0x0006|KLinkPolicyOGF; /*!< Exit Park Mode Opcode */
    1.97 +const THCIOpcode KQOSSetupOpcode							=0x0007|KLinkPolicyOGF; /*!< QOS Setup Opcode */
    1.98 +const THCIOpcode KRoleDiscoveryOpcode						=0x0009|KLinkPolicyOGF; /*!< Role Discovery Opcode */
    1.99 +const THCIOpcode KSwitchRoleOpcode							=0x000b|KLinkPolicyOGF; /*!< Switch Role Opcode */
   1.100 +const THCIOpcode KReadLinkPolicySettingsOpcode				=0x000c|KLinkPolicyOGF; /*!< Read Link Policy Settings Opcode */
   1.101 +const THCIOpcode KWriteLinkPolicySettingsOpcode 			=0x000d|KLinkPolicyOGF; /*!< Write Link Policy Settings Opcode */
   1.102 +const THCIOpcode KReadDefaultLinkPolicySettingsOpcode 		=0x000e|KLinkPolicyOGF; /*!< Read Default Link Policy Settings Opcode */
   1.103 +const THCIOpcode KWriteDefaultLinkPolicySettingsOpcode 		=0x000f|KLinkPolicyOGF; /*!< Write Default Link Policy Settings Opcode */
   1.104 +const THCIOpcode KFlowSpecificationOpcode 					=0x0010|KLinkPolicyOGF; /*!< Flow Specification Opcode */
   1.105 +const THCIOpcode KSniffSubratingOpcode						=0x0011|KLinkPolicyOGF; /*!< Sniff Subrating Opcode */
   1.106 +
   1.107 +// SUBGROUP 0x03 - HOST CONTROLLER AND BASEBAND
   1.108 +const THCIOpcode KHCBasebandOGF 							=0x0003<<10; /*!< HC Baseband Opcode Group Field */
   1.109 +const THCIOpcode KSetEventMaskOpcode						=0x0001|KHCBasebandOGF; /*!< Set Event Mask Opcode */
   1.110 +const THCIOpcode KResetOpcode								=0x0003|KHCBasebandOGF; /*!< Reset Opcode */
   1.111 +const THCIOpcode KSetEventFilterOpcode						=0x0005|KHCBasebandOGF; /*!< Set Event Filter Opcode */
   1.112 +const THCIOpcode KFlushOpcode								=0x0008|KHCBasebandOGF; /*!< Flush Opcode */
   1.113 +const THCIOpcode KReadPINTypeOpcode 						=0x0009|KHCBasebandOGF; /*!< Read PIN Type Opcode */
   1.114 +const THCIOpcode KWritePINTypeOpcode						=0x000a|KHCBasebandOGF; /*!< Write PIN Type Opcode */
   1.115 +const THCIOpcode KCreateNewUnitKeyOpcode					=0x000b|KHCBasebandOGF; /*!< Create New Unit Key Opcode */
   1.116 +const THCIOpcode KReadStoredLinkKeyOpcode					=0x000d|KHCBasebandOGF; /*!< Read Stored Link Key Opcode */
   1.117 +const THCIOpcode KWriteStoredLinkKeyOpcode					=0x0011|KHCBasebandOGF; /*!< Write Stored Link Key Opcode */
   1.118 +const THCIOpcode KDeleteStoredLinkKeyOpcode 				=0x0012|KHCBasebandOGF; /*!< Delete Stored Link Key Opcode */
   1.119 +const THCIOpcode KWriteLocalNameOpcode	 					=0x0013|KHCBasebandOGF; /*!< Write Local Name Opcode */
   1.120 +const THCIOpcode KReadLocalNameOpcode						=0x0014|KHCBasebandOGF; /*!< Read Local Name Opcode */
   1.121 +const THCIOpcode KReadConnectionAcceptTimeoutOpcode 		=0x0015|KHCBasebandOGF; /*!< Read Connection Accept Timeout Opcode */
   1.122 +const THCIOpcode KWriteConnectionAcceptTimeoutOpcode		=0x0016|KHCBasebandOGF; /*!< Write Connection Accept Timeout Opcode */
   1.123 +const THCIOpcode KReadPageTimeoutOpcode 					=0x0017|KHCBasebandOGF; /*!< Read Page Timeout Opcode */
   1.124 +const THCIOpcode KWritePageTimeoutOpcode					=0x0018|KHCBasebandOGF; /*!< Write Page Timeout Opcode */
   1.125 +const THCIOpcode KReadScanEnableOpcode						=0x0019|KHCBasebandOGF; /*!< Read Scan Enable Opcode */
   1.126 +const THCIOpcode KWriteScanEnableOpcode 					=0x001a|KHCBasebandOGF; /*!< Write Scan Enable Opcode */
   1.127 +const THCIOpcode KReadPageScanActivityOpcode				=0x001b|KHCBasebandOGF; /*!< Read Page Scan Activity Opcode */
   1.128 +const THCIOpcode KWritePageScanActivityOpcode				=0x001c|KHCBasebandOGF; /*!< Write Page Scan Activity Opcode */
   1.129 +const THCIOpcode KReadInquiryScanActivityOpcode 			=0x001d|KHCBasebandOGF; /*!< Read Inquiry Scan Activity Opcode */
   1.130 +const THCIOpcode KWriteInquiryScanActivityOpcode			=0x001e|KHCBasebandOGF; /*!< Write Inquiry Scan Activity Opcode */
   1.131 +const THCIOpcode KReadAuthenticationEnableOpcode			=0x001f|KHCBasebandOGF; /*!< Read Authentication Enable Opcode */
   1.132 +const THCIOpcode KWriteAuthenticationEnableOpcode			=0x0020|KHCBasebandOGF; /*!< Write Authentication Enable Opcode */
   1.133 +const THCIOpcode KReadEncryptionModeOpcode					=0x0021|KHCBasebandOGF; /*!< Read Encryption Mode Opcode */
   1.134 +const THCIOpcode KWriteEncryptionModeOpcode 				=0x0022|KHCBasebandOGF; /*!< Write Encryption Mode Opcode */
   1.135 +const THCIOpcode KReadClassOfDeviceOpcode					=0x0023|KHCBasebandOGF; /*!< Read Class Of Device Opcode */
   1.136 +const THCIOpcode KWriteClassOfDeviceOpcode					=0x0024|KHCBasebandOGF; /*!< Write Class Of Device Opcode */
   1.137 +const THCIOpcode KReadVoiceSettingOpcode					=0x0025|KHCBasebandOGF; /*!< Read Voice Setting Opcode */
   1.138 +const THCIOpcode KWriteVoiceSettingOpcode					=0x0026|KHCBasebandOGF; /*!< Write Voice Setting Opcode */
   1.139 +const THCIOpcode KReadAutomaticFlushTimeoutOpcode			=0x0027|KHCBasebandOGF; /*!< Read Automatic Flush Timeout Opcode */
   1.140 +const THCIOpcode KWriteAutomaticFlushTimeoutOpcode			=0x0028|KHCBasebandOGF; /*!< Write Automatic Flush Timeout Opcode */
   1.141 +const THCIOpcode KReadNumBroadcastRetransmissionsOpcode 	=0x0029|KHCBasebandOGF; /*!< Read Num Broadcast Retransmissions Opcode */
   1.142 +const THCIOpcode KWriteNumBroadcastRetransmissionsOpcode	=0x002A|KHCBasebandOGF; /*!< Write Num Broadcast Retransmissions Opcode */
   1.143 +const THCIOpcode KReadHoldModeActivityOpcode				=0x002B|KHCBasebandOGF; /*!< Read Hold Mode Activity Opcode */
   1.144 +const THCIOpcode KWriteHoldModeActivityOpcode				=0x002C|KHCBasebandOGF; /*!< Write Hold Mode Activity Opcode */
   1.145 +const THCIOpcode KReadTransmitPowerLevelOpcode				=0x002D|KHCBasebandOGF; /*!< Read Transmit Power Level Opcode */
   1.146 +const THCIOpcode KReadSynchronousFlowControlEnableOpcode	=0x002E|KHCBasebandOGF; /*!< Read SCO Flow Control Enable Opcode */
   1.147 +const THCIOpcode KWriteSynchronousFlowControlEnableOpcode	=0x002F|KHCBasebandOGF; /*!< Write SCO Flow Control Enable Opcode */
   1.148 +const THCIOpcode KSetControllerToHostFlowControlOpcode 		=0x0031|KHCBasebandOGF; /*!< Set Controller To Host Flow Control Opcode */
   1.149 +const THCIOpcode KHostBufferSizeOpcode						=0x0033|KHCBasebandOGF; /*!< Host Buffer Size Opcode */
   1.150 +const THCIOpcode KHostNumberOfCompletedPacketsOpcode		=0x0035|KHCBasebandOGF; /*!< Host Number Of Completed Packets Opcode */
   1.151 +const THCIOpcode KReadLinkSupervisionTimeoutOpcode			=0x0036|KHCBasebandOGF; /*!< Read Link Supervision Timeout Opcode */
   1.152 +const THCIOpcode KWriteLinkSupervisionTimeoutOpcode 		=0x0037|KHCBasebandOGF; /*!< Write Link Supervision Timeout Opcode */
   1.153 +const THCIOpcode KReadNumberOfSupportedIACOpcode			=0x0038|KHCBasebandOGF; /*!< Read Number Of Supported Inquiry Access Code Opcode */
   1.154 +const THCIOpcode KReadCurrentIACLAPOpcode					=0x0039|KHCBasebandOGF; /*!< Read Current Inquiry Access Code Lower Address Part Opcode */
   1.155 +const THCIOpcode KWriteCurrentIACLAPOpcode					=0x003A|KHCBasebandOGF; /*!< Write Current Inquiry Access Code Lower Address Part Opcode */
   1.156 +const THCIOpcode KReadPageScanPeriodOpcode					=0x003B|KHCBasebandOGF; /*!< Read Page Scan Period Opcode */
   1.157 +const THCIOpcode KWritePageScanPeriodOpcode 				=0x003C|KHCBasebandOGF; /*!< Write Page Scan Period Opcode */
   1.158 +const THCIOpcode KReadPageScanOpcode						=0x003D|KHCBasebandOGF; /*!< Read Page Scan Opcode */
   1.159 +const THCIOpcode KWritePageScanOpcode						=0x003E|KHCBasebandOGF; /*!< Write Page Scan Opcode */
   1.160 +const THCIOpcode KSetAFHHostChannelClassificationOpcode 	=0x003F|KHCBasebandOGF; /*!< AFH Host Channel Classification Opcode */
   1.161 +const THCIOpcode KReadInquiryScanTypeOpcode					=0x0042|KHCBasebandOGF; /*!< Read Inquiry Scan Type Opcode */
   1.162 +const THCIOpcode KWriteInquiryScanTypeOpcode				=0x0043|KHCBasebandOGF; /*!< Write Inquiry Scan Type Opcode */
   1.163 +const THCIOpcode KReadInquiryModeOpcode						=0x0044|KHCBasebandOGF; /*!< Read Inquiry Mode Opcode */
   1.164 +const THCIOpcode KWriteInquiryModeOpcode					=0x0045|KHCBasebandOGF; /*!< Write Inquiry Mode Opcode */
   1.165 +const THCIOpcode KReadPageScanTypeOpcode					=0x0046|KHCBasebandOGF; /*!< Read Page Scan Type Opcode */
   1.166 +const THCIOpcode KWritePageScanTypeOpcode					=0x0047|KHCBasebandOGF; /*!< Read Page Scan Type Opcode */
   1.167 +const THCIOpcode KReadAFHChannelAssessmentModeOpcode		=0x0048|KHCBasebandOGF; /*!< Read AFH Channel Assessment Mode Scan Opcode */
   1.168 +const THCIOpcode KWriteAFHChannelAssessmentModeOpcode		=0x0049|KHCBasebandOGF; /*!< Write AFH Channel Assessment Mode Scan Opcode */
   1.169 +const THCIOpcode KReadExtendedInquiryResponseOpcode			=0x0051|KHCBasebandOGF; /*!< Read Extended Inquiry Response Opcode */
   1.170 +const THCIOpcode KWriteExtendedInquiryResponseOpcode		=0x0052|KHCBasebandOGF; /*!< Write Extended Inquiry Response Opcode */
   1.171 +const THCIOpcode KRefreshEncryptionKeyOpcode				=0x0053|KHCBasebandOGF; /*!< Refresh Encryption Key Opcode */
   1.172 +const THCIOpcode KReadSimplePairingModeOpcode				=0x0055|KHCBasebandOGF; /*!< Read Simple Pairing Mode Opcode */
   1.173 +const THCIOpcode KWriteSimplePairingModeOpcode				=0x0056|KHCBasebandOGF; /*!< Write Simple Pairing Mode Opcode */
   1.174 +const THCIOpcode KReadLocalOOBDataOpcode					=0x0057|KHCBasebandOGF; /*!< Read Local OOB Data Opcode */
   1.175 +const THCIOpcode KReadInquiryResponseTransmitPowerLevelOpcode	=0x0058|KHCBasebandOGF; /*!< Read Inquiry Response Transmit Power Level Opcode */
   1.176 +const THCIOpcode KWriteInquiryResponseTransmitPowerLevelOpcode	=0x0059|KHCBasebandOGF; /*!< Write Inquiry Response Transmit Power Level Opcode */
   1.177 +const THCIOpcode KSendKeypressNotificationOpcode			=0x0060|KHCBasebandOGF; /*!< Send Keypress Notification Opcode */
   1.178 +const THCIOpcode KReadDefaultErroneousDataReportingOpcode	=0x005A|KHCBasebandOGF; /*!< Read Default Erroneous Data Reporting Opcode */
   1.179 +const THCIOpcode KWriteDefaultErroneousDataReportingOpcode	=0x005B|KHCBasebandOGF; /*!< Write Default Erroneous Data Reporting Opcode */
   1.180 +const THCIOpcode KEnhancedFlushOpcode						=0x005F|KHCBasebandOGF; /*!< Enhanced Flush Opcode */
   1.181 +
   1.182 +// SUBGROUP 0x04 - INFORMATIONAL
   1.183 +const THCIOpcode KInfoOGF									=0x0004<<10; /*!< Info Opcode Group Field */
   1.184 +const THCIOpcode KReadLocalVersionInfoOpcode				=0x0001|KInfoOGF; /*!< Read Local Version Info Opcode */
   1.185 +const THCIOpcode KReadLocalSupportedCommandsOpcode			=0x0002|KInfoOGF; /*!< Read Local Supported Commands Opcode */
   1.186 +const THCIOpcode KReadLocalSupportedFeaturesOpcode			=0x0003|KInfoOGF; /*!< Read Local Supported Features Opcode */
   1.187 +const THCIOpcode KReadLocalExtendedFeaturesOpcode			=0x0004|KInfoOGF; /*!< Read Local Extended Features Opcode */
   1.188 +const THCIOpcode KReadBufferSizeOpcode						=0x0005|KInfoOGF; /*!< Read Buffer Size Opcode */
   1.189 +const THCIOpcode KReadCountryCodeOpcode 					=0x0007|KInfoOGF; /*!< Read Country Code Opcode */
   1.190 +const THCIOpcode KReadBdaddrOpcode							=0x0009|KInfoOGF; /*!< Read Bdaddr Opcode */
   1.191 +
   1.192 +// SUBGROUP 0x05 - STATUS
   1.193 +const THCIOpcode KStatusOGF 								=0x0005<<10; /*!< Status Opcode Group Field */
   1.194 +const THCIOpcode KReadFailedContactCounterOpcode			=0x0001|KStatusOGF; /*!< Read Failed Contact Counter Opcode */
   1.195 +const THCIOpcode KResetFailedContactCounterOpcode			=0x0002|KStatusOGF; /*!< Reset Failed Contact Counter Opcode */
   1.196 +const THCIOpcode KReadLinkQualityOpcode						=0x0003|KStatusOGF; /*!< Read Link Quality Opcode */
   1.197 +const THCIOpcode KReadRSSIOpcode							=0x0005|KStatusOGF; /*!< Read RSSI Opcode */				  
   1.198 +const THCIOpcode KReadAFHChannelMapOpcode					=0x0006|KStatusOGF; /*!< Read AFH Channel Map Opcode */
   1.199 +const THCIOpcode KReadClockOpcode							=0x0007|KStatusOGF; /*!< Read Clock Opcode */ 
   1.200 +
   1.201 +// SUBGROUP 0x06 - TESTING
   1.202 +const THCIOpcode KTestingOGF								=0x0006<<10; /*!< Testing Opcode Group Field */
   1.203 +const THCIOpcode KReadLoopbackModeOpcode					=0x0001|KTestingOGF; /*!< Read Loopback Mode Opcode */
   1.204 +const THCIOpcode KWriteLoopbackModeOpcode					=0x0002|KTestingOGF; /*!< Write Loopback Mode Opcode */
   1.205 +const THCIOpcode KEnableDeviceUnderTestModeOpcode			=0x0003|KTestingOGF; /*!< Enable Device Under Test Mode Opcode */
   1.206 +const THCIOpcode KWriteSimplePairingDebugModeOpcode			=0x0004|KTestingOGF; /*!< Write Simple Pairing Debug Mode Opcode */
   1.207 +
   1.208 +// SUBGROUP 0x3F - Vendor Specific Commands
   1.209 +const THCIOpcode KVendorDebugOGF							=0x003f<<10; /*!< VendorDebug Opcode Group Field */
   1.210 +const THCIOpcode KSomeVendorSpecificCommand 				=0x0001|KVendorDebugOGF; /*!< Deprecated: an example of a Vendor Specific Command. Usage of this definition is deprecated */
   1.211 +
   1.212 +// To maintain backwards compatibility for HCI v1
   1.213 +const THCIOpcode KChangeLocalNameOpcode = KWriteLocalNameOpcode;
   1.214 +const THCIOpcode KSetHostControllerToHostFlowOpcode = KSetControllerToHostFlowControlOpcode;
   1.215 +const THCIOpcode KAcceptSynchronousConnectionOpcode = KAcceptSynchronousConnectionRequestOpcode;
   1.216 +const THCIOpcode KReadSCOFlowControlEnableOpcode = KReadSynchronousFlowControlEnableOpcode;
   1.217 +const THCIOpcode KChangeMasterLinkKeyOpcode = KMasterLinkKeyOpcode;
   1.218 +const THCIOpcode KWriteSCOFlowControlEnableOpcode = KWriteSynchronousFlowControlEnableOpcode;
   1.219 +const THCIOpcode KGetLinkQualityOpcode = KReadLinkQualityOpcode;
   1.220 +const THCIOpcode KRejectSynchronousConnectionOpcode = KRejectSynchronousConnectionRequestOpcode;
   1.221 +
   1.222 +#endif // HCIOPCODES_H