All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/5] android: Define class of device as four bytes in IPC doc
@ 2013-10-29 10:07 Szymon Janc
  2013-10-29 10:07 ` [PATCH 2/5] android: Update IPC headers to match SSP and PIN requests events Szymon Janc
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Szymon Janc @ 2013-10-29 10:07 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

For PIN and SSP requests callback define CoD as 4 bytes. This will
allow HAL library to pass CoD direclty to callback. Will also match
how CoD is passed as property.
---
 android/hal-ipc-api.txt | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/android/hal-ipc-api.txt b/android/hal-ipc-api.txt
index dc0d067..e7af8a3 100644
--- a/android/hal-ipc-api.txt
+++ b/android/hal-ipc-api.txt
@@ -354,13 +354,13 @@ Notifications:
 
 		Notification parameters: Remote address (6 octets)
 		                         Remote name (249 octets)
-		                         Class of device (3 octets)
+		                         Class of device (4 octets)
 
 	Opcode 0x87 - SSP Request notification
 
 		Notification parameters: Remote address (6 octets)
 		                         Remote name (249 octets)
-		                         Class of device (3 octets)
+		                         Class of device (4 octets)
 		                         Pairing variant (1 octet)
 		                         Passkey (4 octets)
 
-- 
1.8.4.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/5] android: Update IPC headers to match SSP and PIN requests events
  2013-10-29 10:07 [PATCH 1/5] android: Define class of device as four bytes in IPC doc Szymon Janc
@ 2013-10-29 10:07 ` Szymon Janc
  2013-10-29 10:07 ` [PATCH 3/5] android/hal: Add support for handling bond state change event Szymon Janc
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Szymon Janc @ 2013-10-29 10:07 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

Name should be 249 bytes so it is always NULL terminated string.
Class of device is send as uint32. This will allow to make simple
passing of data in HAL library without need of copying data.
---
 android/hal-msg.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/android/hal-msg.h b/android/hal-msg.h
index a4eb2a8..80b47d6 100644
--- a/android/hal-msg.h
+++ b/android/hal-msg.h
@@ -356,15 +356,15 @@ struct hal_ev_discovery_state_changed {
 #define HAL_EV_PIN_REQUEST		0x86
 struct hal_ev_pin_request {
 	uint8_t bdaddr[6];
-	uint8_t name[249 - 1];
-	uint8_t class_of_dev[3];
+	uint8_t name[249];
+	uint32_t class_of_dev;
 } __attribute__((packed));
 
 #define HAL_EV_SSP_REQUEST		0x87
 struct hal_ev_ssp_request {
 	uint8_t  bdaddr[6];
-	uint8_t  name[249 - 1];
-	uint8_t  class_of_dev[3];
+	uint8_t  name[249];
+	uint32_t  class_of_dev;
 	uint8_t  pairing_variant;
 	uint32_t passkey;
 } __attribute__((packed));
-- 
1.8.4.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/5] android/hal: Add support for handling bond state change event
  2013-10-29 10:07 [PATCH 1/5] android: Define class of device as four bytes in IPC doc Szymon Janc
  2013-10-29 10:07 ` [PATCH 2/5] android: Update IPC headers to match SSP and PIN requests events Szymon Janc
@ 2013-10-29 10:07 ` Szymon Janc
  2013-10-29 10:07 ` [PATCH 4/5] android/hal: Add support for handling pin request event Szymon Janc
  2013-10-29 10:07 ` [PATCH 5/5] android/hal: Add support for handling SSP " Szymon Janc
  3 siblings, 0 replies; 6+ messages in thread
From: Szymon Janc @ 2013-10-29 10:07 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

---
 android/hal-bluetooth.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index 5f6dcbe..067f420 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -68,6 +68,17 @@ static void handle_adapter_props_changed(void *buf, uint16_t len)
 	bt_hal_cbacks->adapter_properties_cb(ev->status, ev->num_props, props);
 }
 
+static void handle_bond_state_change(void *buf)
+{
+	struct hal_ev_bond_state_changed *ev = buf;
+	bt_bdaddr_t *addr = (bt_bdaddr_t *) ev->bdaddr;
+
+	if (!bt_hal_cbacks->bond_state_changed_cb)
+		return;
+
+	bt_hal_cbacks->bond_state_changed_cb(ev->status, addr, ev->state);
+}
+
 void bt_thread_associate(void)
 {
 	if (bt_hal_cbacks->thread_evt_cb)
@@ -98,6 +109,9 @@ void bt_notify_adapter(uint16_t opcode, void *buf, uint16_t len)
 	case HAL_EV_ADAPTER_PROPS_CHANGED:
 		handle_adapter_props_changed(buf, len);
 		break;
+	case HAL_EV_BOND_STATE_CHANGED:
+		handle_bond_state_change(buf);
+		break;
 	default:
 		DBG("Unhandled callback opcode=0x%x", opcode);
 		break;
-- 
1.8.4.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4/5] android/hal: Add support for handling pin request event
  2013-10-29 10:07 [PATCH 1/5] android: Define class of device as four bytes in IPC doc Szymon Janc
  2013-10-29 10:07 ` [PATCH 2/5] android: Update IPC headers to match SSP and PIN requests events Szymon Janc
  2013-10-29 10:07 ` [PATCH 3/5] android/hal: Add support for handling bond state change event Szymon Janc
@ 2013-10-29 10:07 ` Szymon Janc
  2013-10-29 10:13   ` Szymon Janc
  2013-10-29 10:07 ` [PATCH 5/5] android/hal: Add support for handling SSP " Szymon Janc
  3 siblings, 1 reply; 6+ messages in thread
From: Szymon Janc @ 2013-10-29 10:07 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

---
 android/hal-bluetooth.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index 067f420..75dbc68 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -79,6 +79,17 @@ static void handle_bond_state_change(void *buf)
 	bt_hal_cbacks->bond_state_changed_cb(ev->status, addr, ev->state);
 }
 
+static void handle_pin_request(void *buf)
+{
+	struct hal_ev_pin_request *ev = buf;
+	bt_bdaddr_t *addr = (bt_bdaddr_t *) ev->bdaddr;
+	bt_bdname_t *name = (bt_bdname_t *) ev->name;
+
+	if (!bt_hal_cbacks->pin_request_cb)
+
+	bt_hal_cbacks->pin_request_cb(addr, name, ev->class_of_dev);
+}
+
 void bt_thread_associate(void)
 {
 	if (bt_hal_cbacks->thread_evt_cb)
@@ -112,6 +123,9 @@ void bt_notify_adapter(uint16_t opcode, void *buf, uint16_t len)
 	case HAL_EV_BOND_STATE_CHANGED:
 		handle_bond_state_change(buf);
 		break;
+	case HAL_EV_PIN_REQUEST:
+		handle_pin_request(buf);
+		break;
 	default:
 		DBG("Unhandled callback opcode=0x%x", opcode);
 		break;
-- 
1.8.4.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 5/5] android/hal: Add support for handling SSP request event
  2013-10-29 10:07 [PATCH 1/5] android: Define class of device as four bytes in IPC doc Szymon Janc
                   ` (2 preceding siblings ...)
  2013-10-29 10:07 ` [PATCH 4/5] android/hal: Add support for handling pin request event Szymon Janc
@ 2013-10-29 10:07 ` Szymon Janc
  3 siblings, 0 replies; 6+ messages in thread
From: Szymon Janc @ 2013-10-29 10:07 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Szymon Janc

---
 android/hal-bluetooth.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index 75dbc68..c22de6f 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -90,6 +90,19 @@ static void handle_pin_request(void *buf)
 	bt_hal_cbacks->pin_request_cb(addr, name, ev->class_of_dev);
 }
 
+static void handle_ssp_request(void *buf)
+{
+	struct hal_ev_ssp_request *ev = buf;
+	bt_bdaddr_t *addr = (bt_bdaddr_t *) ev->bdaddr;
+	bt_bdname_t *name = (bt_bdname_t *) ev->name;
+
+	if (!bt_hal_cbacks->ssp_request_cb)
+		return;
+
+	bt_hal_cbacks->ssp_request_cb(addr, name, ev->class_of_dev,
+					ev->pairing_variant, ev->passkey);
+}
+
 void bt_thread_associate(void)
 {
 	if (bt_hal_cbacks->thread_evt_cb)
@@ -126,6 +139,9 @@ void bt_notify_adapter(uint16_t opcode, void *buf, uint16_t len)
 	case HAL_EV_PIN_REQUEST:
 		handle_pin_request(buf);
 		break;
+	case HAL_EV_SSP_REQUEST:
+		handle_ssp_request(buf);
+		break;
 	default:
 		DBG("Unhandled callback opcode=0x%x", opcode);
 		break;
-- 
1.8.4.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 4/5] android/hal: Add support for handling pin request event
  2013-10-29 10:07 ` [PATCH 4/5] android/hal: Add support for handling pin request event Szymon Janc
@ 2013-10-29 10:13   ` Szymon Janc
  0 siblings, 0 replies; 6+ messages in thread
From: Szymon Janc @ 2013-10-29 10:13 UTC (permalink / raw)
  To: linux-bluetooth

On Tuesday 29 of October 2013 11:07:34 Szymon Janc wrote:
> ---
>  android/hal-bluetooth.c | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
> index 067f420..75dbc68 100644
> --- a/android/hal-bluetooth.c
> +++ b/android/hal-bluetooth.c
> @@ -79,6 +79,17 @@ static void handle_bond_state_change(void *buf)
>  	bt_hal_cbacks->bond_state_changed_cb(ev->status, addr, ev->state);
>  }
>  
> +static void handle_pin_request(void *buf)
> +{
> +	struct hal_ev_pin_request *ev = buf;
> +	bt_bdaddr_t *addr = (bt_bdaddr_t *) ev->bdaddr;
> +	bt_bdname_t *name = (bt_bdname_t *) ev->name;
> +
> +	if (!bt_hal_cbacks->pin_request_cb)
> +
> +	bt_hal_cbacks->pin_request_cb(addr, name, ev->class_of_dev);

will send v2 with this fixed.

> +}
> +
>  void bt_thread_associate(void)
>  {
>  	if (bt_hal_cbacks->thread_evt_cb)
> @@ -112,6 +123,9 @@ void bt_notify_adapter(uint16_t opcode, void *buf, uint16_t len)
>  	case HAL_EV_BOND_STATE_CHANGED:
>  		handle_bond_state_change(buf);
>  		break;
> +	case HAL_EV_PIN_REQUEST:
> +		handle_pin_request(buf);
> +		break;
>  	default:
>  		DBG("Unhandled callback opcode=0x%x", opcode);
>  		break;
> 



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-10-29 10:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-10-29 10:07 [PATCH 1/5] android: Define class of device as four bytes in IPC doc Szymon Janc
2013-10-29 10:07 ` [PATCH 2/5] android: Update IPC headers to match SSP and PIN requests events Szymon Janc
2013-10-29 10:07 ` [PATCH 3/5] android/hal: Add support for handling bond state change event Szymon Janc
2013-10-29 10:07 ` [PATCH 4/5] android/hal: Add support for handling pin request event Szymon Janc
2013-10-29 10:13   ` Szymon Janc
2013-10-29 10:07 ` [PATCH 5/5] android/hal: Add support for handling SSP " Szymon Janc

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.