Re: [PATCH] android/hal-ipc-txt: Documentation update and cleanup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thursday 13 of November 2014 09:01:21 Szymon Janc wrote:
> This patch clarifies that 0x80 opcode is reserved and not used. This is
> in case we need to introduce confirmations for notifications.
> 
> Error response definition is moved into common place and all HALs are
> simply referring to it. This is to keep valid status values in single
> place. Valis status is also updated with 'Authentication Rejected'
> error added in Android 5.0 API.
> ---
>  android/hal-ipc-api.txt | 168 ++++++------------------------------------------
>  1 file changed, 21 insertions(+), 147 deletions(-)
> 
> diff --git a/android/hal-ipc-api.txt b/android/hal-ipc-api.txt
> index 4f202c8..7c51728 100644
> --- a/android/hal-ipc-api.txt
> +++ b/android/hal-ipc-api.txt
> @@ -55,7 +55,9 @@ The unique service ID is assigned by this specification for each HAL.
>  As general rule of thumb, the opcode for command matches the opcode for a
>  response. Or the opcode 0x00 for an error is returned.
>  
> -Notification opcodes start from 0x80.
> +Notification opcodes start from 0x81.
> +
> +Opcode 0x80 is reserved and shall not be used.
>  
>  All command/response opcodes have the least significant bit not set. And all
>  notifications have the least significant bit set.
> @@ -115,14 +117,29 @@ specific service.
>  	init()                  --> register module handsfree
>  
>  
> -Core Service (ID 0)
> -===================
> +Error response is common for all services and has fixed structure:
>  
>  	Opcode 0x00 - Error response
>  
>  		Response parameters: Status (1 octet)
>  
> -		Valid status values: 0x01	Failed
> +		Valid status values: 0x01 = Fail
> +		                     0x02 = Not ready
> +		                     0x03 = No memory
> +		                     0x04 = Busy
> +		                     0x05 = Done (already completed)
> +		                     0x06 = Unsupported
> +		                     0x07 = Parameter invalid
> +		                     0x08 = Unhandled
> +		                     0x09 = Authentication failure
> +		                     0x0a = Remote device down
> +		                     0x0b = Authentication rejected
> +
> +
> +Core Service (ID 0)
> +===================
> +
> +	Opcode 0x00 - Error response
>  
>  	Opcode 0x01 - Register module command/response
>  
> @@ -180,8 +197,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
>  	Opcode 0x01 - Enable command/response
>  
>  		Command parameters: <none>
> @@ -436,19 +451,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Listen command/response
>  
>  		Command parameters: Socket type (1 octet)
> @@ -495,19 +497,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Connect command/response
>  
>  		Command parameters: Remote address (6 octets)
> @@ -692,19 +681,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Enable command/response
>  
>  		Command parameters: Local role (1 octet)
> @@ -792,19 +768,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Connect command/response
>  
>  		Command parameters: Remote address (6 octets)
> @@ -1093,19 +1056,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Connect command/response
>  
>  		Command parameters: Remote address (6 octets)
> @@ -1151,19 +1101,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Register Application command/response
>  
>  		Command parameters: Number of MDEP (1 octet)
> @@ -1250,19 +1187,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Get Play Status Response command/response
>  
>  		Command parameters: Status (1 octet)
> @@ -1495,19 +1419,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Register Client command/response
>  
>  		Command parameters: Service UUID (16 octets)
> @@ -2127,17 +2038,6 @@ Commands and response:
>  
>  	Opcode 0x00 - Error response
>  
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Connect command/respose
>  
>  		Command parameters: Remote address (6 octects)
> @@ -2473,19 +2373,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Get Remote MAS Instances
>  
>  		Command parameters: Remote address (6 octets)
> @@ -2514,19 +2401,6 @@ Commands and responses:
>  
>  	Opcode 0x00 - Error response
>  
> -		Response parameters: Status (1 octet)
> -
> -		Valid status values: 0x01 = Fail
> -		                     0x02 = Not ready
> -		                     0x03 = No memory
> -		                     0x04 = Busy
> -		                     0x05 = Done (already completed)
> -		                     0x06 = Unsupported
> -		                     0x07 = Parameter invalid
> -		                     0x08 = Unhandled
> -		                     0x09 = Authentication failure
> -		                     0x0a = Remote device down
> -
>  	Opcode 0x01 - Send Pass Through command/response
>  
>  		Command parameters: Remote Address (6 octets)
> 

Pushed.

-- 
Best regards, 
Szymon Janc
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux