Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2f939a8 authored by Ivan Podogov's avatar Ivan Podogov Committed by android-build-merger
Browse files

Merge "Add "connecting" and "disconnecting" states to HID Device."

am: 4cfbcbcc

Change-Id: I5eef753ca30b57848ebeaeb3b73aa134cb6b6970
parents ad27cf64 4cfbcbcc
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -27,6 +27,8 @@

#if defined(BTA_HD_INCLUDED) && (BTA_HD_INCLUDED == TRUE)

#include <hardware/bluetooth.h>
#include <hardware/bt_hd.h>
#include <string.h>

#include "bt_utils.h"
@@ -259,6 +261,7 @@ void bta_hd_unregister2_act(tBTA_HD_DATA* p_data) {
extern void bta_hd_connect_act(tBTA_HD_DATA* p_data) {
  tHID_STATUS ret;
  tBTA_HD_DEVICE_CTRL* p_ctrl = (tBTA_HD_DEVICE_CTRL*)p_data;
  tBTA_HD cback_data;

  APPL_TRACE_API("%s", __func__);

@@ -271,7 +274,13 @@ extern void bta_hd_connect_act(tBTA_HD_DATA* p_data) {
  ret = HID_DevConnect();
  if (ret != HID_SUCCESS) {
    APPL_TRACE_WARNING("%s: HID_DevConnect returned %d", __func__, ret);
    return;
  }

  bdcpy(cback_data.conn.bda, p_ctrl->addr);
  cback_data.conn.status = BTHD_CONN_STATE_CONNECTING;

  bta_hd_cb.p_cback(BTA_HD_CONN_STATE_EVT, &cback_data);
}

/*******************************************************************************
@@ -285,6 +294,7 @@ extern void bta_hd_connect_act(tBTA_HD_DATA* p_data) {
 ******************************************************************************/
extern void bta_hd_disconnect_act(UNUSED_ATTR tBTA_HD_DATA* p_data) {
  tHID_STATUS ret;
  tBTA_HD cback_data;

  APPL_TRACE_API("%s", __func__);

@@ -292,7 +302,13 @@ extern void bta_hd_disconnect_act(UNUSED_ATTR tBTA_HD_DATA* p_data) {

  if (ret != HID_SUCCESS) {
    APPL_TRACE_WARNING("%s: HID_DevDisconnect returned %d", __func__, ret);
    return;
  }

  bdcpy(cback_data.conn.bda, bta_hd_cb.bd_addr);
  cback_data.conn.status = BTHD_CONN_STATE_DISCONNECTING;

  bta_hd_cb.p_cback(BTA_HD_CONN_STATE_EVT, &cback_data);
}

/*******************************************************************************
+1 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@
#define BTA_HD_SET_PROTOCOL_EVT 8   /* SET_PROTOCOL request from host */
#define BTA_HD_INTR_DATA_EVT 9      /* DATA received from host on intr */
#define BTA_HD_VC_UNPLUG_EVT 10     /* Virtual Cable Unplug */
#define BTA_HD_CONN_STATE_EVT 11    /* Report connection state change */
#define BTA_HD_API_ERR_EVT 99       /* BT-HD API error */

typedef uint16_t tBTA_HD_EVT;
+7 −0
Original line number Diff line number Diff line
@@ -268,6 +268,12 @@ static void btif_hd_upstreams_evt(uint16_t event, char* p_param) {
      HAL_CBACK(bt_hd_callbacks, vc_unplug_cb);
      break;

    case BTA_HD_CONN_STATE_EVT:
      HAL_CBACK(bt_hd_callbacks, connection_state_cb,
                (bt_bdaddr_t*)&p_data->conn.bda,
                (bthd_connection_state_t)p_data->conn.status);
      break;

    default:
      BTIF_TRACE_WARNING("%s: unknown event (%d)", __func__, event);
      break;
@@ -305,6 +311,7 @@ static void bte_hd_evt(tBTA_HD_EVT event, tBTA_HD* p_data) {
    case BTA_HD_OPEN_EVT:
    case BTA_HD_CLOSE_EVT:
    case BTA_HD_VC_UNPLUG_EVT:
    case BTA_HD_CONN_STATE_EVT:
      param_len = sizeof(tBTA_HD_CONN);
      break;

+1 −0
Original line number Diff line number Diff line
@@ -376,6 +376,7 @@ const char* dump_hd_event(uint16_t event) {
    CASE_RETURN_STR(BTA_HD_SET_PROTOCOL_EVT)
    CASE_RETURN_STR(BTA_HD_INTR_DATA_EVT)
    CASE_RETURN_STR(BTA_HD_VC_UNPLUG_EVT)
    CASE_RETURN_STR(BTA_HD_CONN_STATE_EVT)
    CASE_RETURN_STR(BTA_HD_API_ERR_EVT)
    default:
      return "UNKNOWN MSG ID";