bthci/bthci2/CommandsEvents/generator/Commands.txt
changeset 0 29b1cd4cb562
child 4 28479eeba3fb
equal deleted inserted replaced
-1:000000000000 0:29b1cd4cb562
       
     1 # Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 # All rights reserved.
       
     3 # This component and the accompanying materials are made available
       
     4 # under the terms of the License "Symbian Foundation License v1.0"
       
     5 # which accompanies this distribution, and is available
       
     6 # at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
       
     7 #
       
     8 # Initial Contributors:
       
     9 # Nokia Corporation - initial contribution.
       
    10 #
       
    11 # Contributors:
       
    12 #
       
    13 # Description:
       
    14 #
       
    15 
       
    16 # Bluetooth HCI Commands to be generated
       
    17 # Syntax is documented below. ("[]" brackets are used for grouping with regexp wildcards, and wildcard operators will only directly follow a ']')
       
    18 #
       
    19 # COMMAND_NAME(COMMAND_CREDITS,EXPECTS_COMMAND_STATUS,EXPECTS_COMMAND_COMPLETE[,Match,MATCHING_EVENT_NAME,CONCLUDES_COMMAND,CONTINUE_MATCHING[,MATCH_OPERANDS]*]*): COMMAND_PARAMETERS
       
    20 #
       
    21 # Variables:
       
    22 # COMMAND_NAME = The name of the command for which a class will be generated.
       
    23 # COMMAND_CREDITS = The number of "command credits" this command consumes when sent to a controller.
       
    24 # EXPECTS_COMMAND_STATUS = Boolean specifying whether the command expects a command status event from the controller in response.
       
    25 # EXPECTS_COMMAND_COMPLETE = Boolean specifying whether the command expects a command complete event from the controller.
       
    26 # MATCHING_EVENT_NAME = The name of an event that will be "matched" with this command
       
    27 # CONCLUDES_COMMAND = Boolean specifying whether the matched event represents the conclusion of the request made by the command.
       
    28 # CONTINUE_MATCHING = Boolean specifying whether the command queue should continue trying to match the event with other sent commands.
       
    29 # MATCH_OPERANDS = Used to perform the match on more than just the event opcode.
       
    30 #
       
    31 # COMMAND_PARAMETERS = [COMMAND_PARAMETER]? [,COMMAND_BLOCK_PARAM]*
       
    32 # COMMAND_PARAMETER = PARAMETER_NAME (PARAMETER_SIZE)
       
    33 # COMMAND_BLOCK_PARAM = COMMAND_PARAMETER [* PARAMETER_NAME]
       
    34 # The parameters to the command are typically just a name and a size.  If the parameters feature an array (e.g. WriteStoredLinkKey)
       
    35 # then the '*' can be used to make the construct with the appropriate multiplicity.
       
    36 #
       
    37 #
       
    38 ##### 7.1 Link Control Commands
       
    39 #
       
    40 Inquiry(1,True,False,Match,InquiryResultEvent,False,False,Match,InquiryResultwithRSSIEvent,False,False,Match,ExtendedInquiryResultEvent,False,False,Match,InquiryCompleteEvent,True,False,Match,CommandCompleteEvent,True,True,CommandOpcode_KInquiryCancelOpcode): LAP (3) InquiryLength(1) NumResponses(1)
       
    41 InquiryCancel(1,False,True,Match,CommandCompleteEvent,True,True,CommandOpcode_KInquiryCancelOpcode):
       
    42 PeriodicInquiryMode(1,False,True): MaxPeriodLength (2), MinPeriodLength (2), LAP (3), InquiryLength (1), NumResponses (1)
       
    43 ExitPeriodicInquiryMode(1,False,True):
       
    44 CreateACLConnection(1,True,False,Match,ConnectionCompleteEvent,True,False,BDADDR): BDADDR (6), PacketType (2), PageScanRepetitionMode (1), Reserved (1), ClockOffset (2), AllowRoleSwitch (1)
       
    45 Disconnect(1,True,False,Match,DisconnectionCompleteEvent,True,False): ConnectionHandle (2), Reason (1)
       
    46 CreateConnectionCancel(1,False,True): BDADDR (6)
       
    47 AcceptConnectionRequest(1,True,False,Match,ConnectionCompleteEvent,True,False,BDADDR): BDADDR (6), Role (1)
       
    48 RejectConnectionRequest(1,True,False,Match,ConnectionCompleteEvent,True,False,BDADDR): BDADDR (6), Reason (1)
       
    49 LinkKeyRequestReply(1,False,True): BDADDR (6), LinkKey (16)
       
    50 LinkKeyRequestReplyNegative(1,False,True): BDADDR (6)
       
    51 PINCodeRequestReply(1,False,True): BDADDR (6), PINCodeLength (1), PINCode (16)
       
    52 PINCodeRequestReplyNegative(1,False,True): BDADDR (6)
       
    53 ChangeConnectionPacketType(1,True,False,Match,ConnectionPacketTypeChangedEvent,True,False): ConnectionHandle (2), PacketType (2)
       
    54 AuthenticationRequested(1,True,False,Match,AuthenticationCompleteEvent,True,False): ConnectionHandle (2)
       
    55 SetConnectionEncryption(1,True,False,Match,EncryptionChangeEvent,True,False): ConnectionHandle (2), EncryptionEnable (1)
       
    56 ChangeLinkKey(1,True,False,Match,LinkKeyNotificationEvent,False,False,Match,ChangeLinkKeyEvent,True,False): ConnectionHandle (2)
       
    57 MasterLinkKey(1,True,False,Match,MasterLinkKeyEvent,True,False): KeyFlag (1)
       
    58 RemoteNameRequest(1,True,False,Match,RemoteNameReqCompleteEvent,True,False,Match,RemoteHostSupportedFeaturesNotificationEvent,False,False): BDADDR (6), PageScanRepetitionMode (1), Reserved (1), ClockOffset (2)
       
    59 RemoteNameRequestCancel(1,False,True): BDADDR (6)
       
    60 ReadRemoteSupportedFeatures(1,True,False,Match,ReadRemSuppFeatCompleteEvent,True,False): ConnectionHandle (2)
       
    61 ReadRemoteExtendedFeatures(1,True,False,Match,ReadRemoteExtendedFeaturesCompleteEvent,True,False): ConnectionHandle (2), PageNumber (1)
       
    62 ReadRemoteVersionInfo(1,True,False,Match,ReadRemVerInfoCompleteEvent,True,False): ConnectionHandle (2)
       
    63 ReadClockOffset(1,True,False,Match,ReadClockOffsetEvent,True,False): ConnectionHandle (2)
       
    64 ReadLMPHandle(1,False,True): ConnectionHandle (2)
       
    65 SetupSynchronousConnection(1,True,False,Match,SynchronousConnectionCompleteEvent,True,False,BDADDR,Match,SynchronousConnectionChangedEvent,True,False): ConnectionHandle (2), TransmitBandwidth (4), ReceiveBandwidth (4), MaxLatency (2), VoiceSetting (2), RetransmissionEffort (1), PacketType (2), @BDADDR (6)
       
    66 AcceptSynchronousConnectionRequest(1,True,False,Match,SynchronousConnectionCompleteEvent,True,False,BDADDR): BDADDR (6), TransmitBandwidth (4), ReceiveBandwidth (4), MaxLatency (2),  ContentFormat (2), RetransmissionEffort (1), PacketType (2)
       
    67 RejectSynchronousConnectionRequest(1,True,False,Match,SynchronousConnectionCompleteEvent,True,False,BDADDR): BDADDR (6), Reason (1)
       
    68 IOCapabilityRequestReply(1,False,True,Match,IOCapabilityResponseEvent,False,False,Match,RemoteOOBDataRequestEvent,False,False): BDADDR (6), IOCapability (1), OOBDataPresent (1), AuthenticationRequirements (1)
       
    69 UserConfirmationRequestReply(1,False,True): BDADDR (6)
       
    70 UserConfirmationRequestNegativeReply(1,False,True): BDADDR (6)
       
    71 UserPasskeyRequestReply(1,False,True): BDADDR (6), NumericValue (4)
       
    72 UserPasskeyRequestNegativeReply(1,False,True): BDADDR (6)
       
    73 RemoteOOBDataRequestReply(1,False,True): BDADDR (6), OOBDataC (16), OOBDataR (16)
       
    74 RemoteOOBDataRequestNegativeReply(1,False,True): BDADDR (6)
       
    75 IOCapabilityRequestNegativeReply(1,False,True): BDADDR (6), Reason (1)
       
    76 #
       
    77 ##### 7.2 Link Policy Commands
       
    78 #
       
    79 HoldMode(1,True,False,Match,ModeChangeEvent,True,False,ConnectionHandle): ConnectionHandle (2), HoldModeMaxInterval (2), HoldModeMinInterval (2)
       
    80 SniffMode(1,True,False,Match,ModeChangeEvent,True,False,ConnectionHandle): ConnectionHandle (2), SniffMaxInterval (2), SniffMinInterval (2), SniffAttempt (2), SniffTimeout (2)
       
    81 ExitSniffMode(1,True,False,Match,ModeChangeEvent,True,False,ConnectionHandle): ConnectionHandle (2)
       
    82 ParkMode(1,True,False,Match,ModeChangeEvent,True,False,ConnectionHandle): ConnectionHandle (2), BeaconMaxInterval (2), BeaconMinInterval (2)
       
    83 ExitParkMode(1,True,False,Match,ModeChangeEvent,True,False,ConnectionHandle): ConnectionHandle (2)
       
    84 QOSSetup(1,True,False,Match,QOSSetupCompleteEvent,True,False): ConnectionHandle (2), Flags (1), ServiceType (1), TokenRate (4), PeakBandwidth (4), Latency (4), DelayVariation (4)
       
    85 RoleDiscovery(1,False,True): ConnectionHandle (2)
       
    86 SwitchRole(1,True,False,Match,RoleChangeEvent,True,False): BDADDR (6), Role (1)
       
    87 ReadLinkPolicySettings(1,False,True): ConnectionHandle (2)
       
    88 WriteLinkPolicySettings(1,False,True): ConnectionHandle (2), LinkPolicySettings (2)
       
    89 ReadDefaultLinkPolicySettings(1,False,True):
       
    90 WriteDefaultLinkPolicySettings(1,False,True): DefaultLinkPolicySettings (2)
       
    91 FlowSpecification(1,True,False,Match,FlowSpecificationCompleteEvent,True,False): ConnectionHandle (2), Flags (1), FlowDirection (1), ServiceType (1), TokenRate (4), TokenBucketSize (4), PeakBandwidth (4), AccessLatency (4)
       
    92 ### SniffSubrating command would match with a sniff subrating event, however if not in sniff mode then the
       
    93 ### sniff subrating event will not be generated until sniff mode is entered, so we cannot match as we need to
       
    94 ### conclude the sniff subrating command upon the receipt of the command complete event. As it appears that 
       
    95 ### we would expect the sniff subrating event after the complete matching to the sniff subrating event 
       
    96 ### is pointless. 
       
    97 SniffSubrating(1,False,True): ConnectionHandle (2), MaximumLatency (2), MinimumRemoteTimeout (2), MinimumLocalTimeout (2)
       
    98 #
       
    99 ##### 7.3 Controller & Baseband Commands
       
   100 #
       
   101 SetEventMask(1,False,True): EventMask (8)
       
   102 Reset(1,False,True):
       
   103 SetEventFilter(1,False,True): FilterType (1), FilterConditionType (1), Condition (7)
       
   104 Flush(1,False,True,Match,FlushOccurredEvent,False,False): ConnectionHandle (2)
       
   105 ReadPINType(1,False,True):
       
   106 WritePINType(1,False,True): PINType (1)
       
   107 CreateNewUnitKey(1,False,True):
       
   108 ReadStoredLinkKey(1,False,True,Match,ReturnLinkKeysEvent,False,False): BDADDR (6), ReadAllFlag (1)
       
   109 WriteStoredLinkKey(1,False,True): NumKeysToWrite (1), BDADDR (6) * NumKeysToWrite, LinkKey (16) * NumKeysToWrite
       
   110 DeleteStoredLinkKey(1,False,True): BDADDR (6), DeleteAllFlag (1)
       
   111 WriteLocalName(1,False,True): LocalName (248)
       
   112 ReadLocalName(1,False,True):
       
   113 ReadConnectionAcceptTimeout(1,False,True):
       
   114 WriteConnectionAcceptTimeout(1,False,True): ConnAcceptTimeout (2)
       
   115 ReadPageTimeout(1,False,True):
       
   116 WritePageTimeout(1,False,True): PageTimeout (2)
       
   117 ReadScanEnable(1,False,True):
       
   118 WriteScanEnable(1,False,True): ScanEnable (1)
       
   119 ReadPageScanActivity(1,False,True):
       
   120 WritePageScanActivity(1,False,True): PageScanInterval (2), PageScanWindow (2)
       
   121 ReadInquiryScanActivity(1,False,True):
       
   122 WriteInquiryScanActivity(1,False,True): InquiryScanInterval (2), InquiryScanWindow (2)
       
   123 ReadAuthenticationEnable(1,False,True):
       
   124 WriteAuthenticationEnable(1,False,True): AuthenticationEnable (1)
       
   125 ReadClassOfDevice(1,False,True):
       
   126 WriteClassOfDevice(1,False,True): ClassOfDevice (3)
       
   127 ReadVoiceSetting(1,False,True):
       
   128 WriteVoiceSetting(1,False,True): VoiceSetting (2)
       
   129 ReadAutomaticFlushTimeout(1,False,True): ConnectionHandle (2)
       
   130 WriteAutomaticFlushTimeout(1,False,True): ConnectionHandle (2), FlushTimeout (2)
       
   131 ReadNumBroadcastRetransmissions(1,False,True):
       
   132 WriteNumBroadcastRetransmissions(1,False,True): NumBroadcastRetransmissions (1)
       
   133 ReadHoldModeActivity(1,False,True):
       
   134 WriteHoldModeActivity(1,False,True): HoldModeActivity (1)
       
   135 ReadTransmitPowerLevel(1,False,True): ConnectionHandle (2), Type (1)
       
   136 ReadSynchronousFlowControlEnable(1,False,True):
       
   137 WriteSynchronousFlowControlEnable(1,False,True): SynchronousFlowControlEnable (1)
       
   138 SetControllerToHostFlowControl(1,False,True): FlowControlEnable (1)
       
   139 HostBufferSize(1,False,True): HostACLDataPacketLength (2), HostSynchronousDataPacketLength (1), HostTotalNumACLDataPackets (2), HostTotalNumSynchronousDataPackets (2)
       
   140 HostNumberOfCompletedPackets(0,False,False): NumberOfHandles (1), ConnectionHandle (2) * NumberOfHandles, HostNumOfCompletedPackets (2) * NumberOfHandles
       
   141 ReadLinkSupervisionTimeout(1,False,True): ConnectionHandle (2)
       
   142 WriteLinkSupervisionTimeout(1,False,True): ConnectionHandle (2), LinkSupervisionTimeout (2)
       
   143 ReadNumberOfSupportedIAC(1,False,True):
       
   144 ReadCurrentIACLAP(1,False,True):
       
   145 WriteCurrentIACLAP(1,False,True): NumCurrentIAC (1), IACLAP (3) * NumCurrentIAC
       
   146 SetAFHHostChannelClassification(1,False,True): AFHHostChannelClassification (10)
       
   147 ReadInquiryScanType(1,False,True):
       
   148 WriteInquiryScanType(1,False,True): ScanType (1)
       
   149 ReadInquiryMode(1,False,True):
       
   150 WriteInquiryMode(1,False,True): InquiryMode (1)
       
   151 ReadPageScanType(1,False,True):
       
   152 WritePageScanType(1,False,True): PageScanType (1)
       
   153 ReadAFHChannelAssessmentMode(1,False,True):
       
   154 WriteAFHChannelAssessmentMode(1,False,True): AFHChannelAssessmentMode (1)
       
   155 ReadExtendedInquiryResponse(1,False,True):
       
   156 WriteExtendedInquiryResponse(1,False,True): FECRequired (1), ExtendedInquiryResponse (240) 
       
   157 RefreshEncryptionKey(1,True,False,Match,EncryptionKeyRefreshCompleteEvent,True,False,ConnectionHandle): ConnectionHandle (2)
       
   158 ReadSimplePairingMode(1,False,True):
       
   159 WriteSimplePairingMode(1,False,True): SimplePairingMode (1)
       
   160 ReadLocalOOBData(1,False,True):
       
   161 ReadInquiryResponseTransmitPowerLevel(1,False,True):
       
   162 WriteInquiryResponseTransmitPowerLevel(1,False,True): TxPowerLevel (1)
       
   163 SendKeypressNotification(1,False,True): BDADDR (6), NotificationType (1)
       
   164 ReadDefaultErroneousDataReporting(1,False,True):
       
   165 WriteDefaultErroneousDataReporting(1,False,True): ErroneousDataReporting (1)
       
   166 EnhancedFlush(1,True,False,Match,EnhancedFlushCompleteEvent,True,False,ConnectionHandle): ConnectionHandle (2), PacketType (1)
       
   167 #
       
   168 ##### 7.4 Informational Parameters
       
   169 #
       
   170 ReadLocalVersionInfo(1,False,True):
       
   171 ReadLocalSupportedCommands(1,False,True):
       
   172 ReadLocalSupportedFeatures(1,False,True):
       
   173 ReadLocalExtendedFeatures(1,False,True): PageNumber (1)
       
   174 ReadBufferSize(1,False,True):
       
   175 ReadBdaddr(1,False,True):
       
   176 #
       
   177 ##### 7.5 Status Parameters
       
   178 #
       
   179 ReadFailedContactCounter(1,False,True): ConnectionHandle (2)
       
   180 ResetFailedContactCounter(1,False,True): ConnectionHandle (2)
       
   181 ReadLinkQuality(1,False,True): ConnectionHandle (2)
       
   182 ReadRSSI(1,False,True): ConnectionHandle (2)
       
   183 ReadAFHChannelMap(1,False,True): ConnectionHandle (2)
       
   184 ReadClock(1,False,True): ConnectionHandle (2), WhichClock (1)
       
   185 #
       
   186 ##### 7.6 Testing Commands
       
   187 #
       
   188 ReadLoopbackMode(1,False,True):
       
   189 WriteLoopbackMode(1,False,True): LoopbackMode (1)
       
   190 EnableDeviceUnderTestMode(1,False,True):
       
   191 WriteSimplePairingDebugMode(1,False,True): SimplePairingDebugMode (1)
       
   192 #
       
   193 #### Appendix A: Deprecated Commands, Events and Configuration Parameters
       
   194 #
       
   195 ReadPageScanPeriod(1,False,True):
       
   196 WritePageScanPeriod(1,False,True): PageScanPeriodMode (1)
       
   197 AddSCOConnection(1,True,False,Match,ConnectionCompleteEvent,True,False,BDADDR): ConnectionHandle (2), PacketType (2), @BDADDR (6)
       
   198 ReadEncryptionMode(1,False,True):
       
   199 WriteEncryptionMode(1,False,True): EncryptionMode (1)