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

Commit 6dcdcbd5 authored by Gopi Sakshihally Bhuthaiah's avatar Gopi Sakshihally Bhuthaiah Committed by Automerger Merge Worker
Browse files

Merge "HidHost: Use a non-zero value for enable event" into main am: 9ad25354

parents 475cb385 9ad25354
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -697,7 +697,7 @@ void bta_hh_handsk_act(tBTA_HH_DEV_CB* p_cb, const tBTA_HH_DATA* p_data) {
      if (bta_hh.hs_data.status == BTA_HH_OK)
        bta_hh.hs_data.status = BTA_HH_HS_TRANS_NOT_SPT;
      (*bta_hh_cb.p_cback)(p_cb->w4_evt, &bta_hh);
      p_cb->w4_evt = 0;
      p_cb->w4_evt = BTA_HH_EMPTY_EVT;
      break;

    /* acknoledgement from HID device for SET_ transaction */
@@ -708,7 +708,7 @@ void bta_hh_handsk_act(tBTA_HH_DEV_CB* p_cb, const tBTA_HH_DATA* p_data) {
      bta_hh.dev_status.status =
          bta_hh_get_trans_status(p_data->hid_cback.data);
      (*bta_hh_cb.p_cback)(p_cb->w4_evt, &bta_hh);
      p_cb->w4_evt = 0;
      p_cb->w4_evt = BTA_HH_EMPTY_EVT;
      break;

    /* SET_PROTOCOL when open connection */
@@ -719,7 +719,7 @@ void bta_hh_handsk_act(tBTA_HH_DEV_CB* p_cb, const tBTA_HH_DATA* p_data) {
      bta_hh.conn.link_spec = p_cb->link_spec;
      (*bta_hh_cb.p_cback)(p_cb->w4_evt, &bta_hh);
      bta_hh_trace_dev_db();
      p_cb->w4_evt = 0;
      p_cb->w4_evt = BTA_HH_EMPTY_EVT;
      break;

    default:
@@ -750,7 +750,7 @@ void bta_hh_ctrl_dat_act(tBTA_HH_DEV_CB* p_cb, const tBTA_HH_DATA* p_data) {
  log::verbose("Ctrl DATA received w4: event[{}]",
               bta_hh_get_w4_event(p_cb->w4_evt));
  if (pdata->len == 0) {
    p_cb->w4_evt = 0;
    p_cb->w4_evt = BTA_HH_EMPTY_EVT;
    osi_free_and_reset((void**)&pdata);
    return;
  }
@@ -793,7 +793,7 @@ void bta_hh_ctrl_dat_act(tBTA_HH_DEV_CB* p_cb, const tBTA_HH_DATA* p_data) {

  (*bta_hh_cb.p_cback)(p_cb->w4_evt, (tBTA_HH*)&hs_data);

  p_cb->w4_evt = 0;
  p_cb->w4_evt = BTA_HH_EMPTY_EVT;
  osi_free_and_reset((void**)&pdata);
}

@@ -892,7 +892,7 @@ void bta_hh_close_act(tBTA_HH_DEV_CB* p_cb, const tBTA_HH_DATA* p_data) {

  /* clean up control block, but retain SDP info and device handle */
  p_cb->vp = false;
  p_cb->w4_evt = 0;
  p_cb->w4_evt = BTA_HH_EMPTY_EVT;

  /* if no connection is active and HH disable is signaled, disable service */
  if (bta_hh_cb.cnt_num == 0 && bta_hh_cb.w4_disable) {
+7 −8
Original line number Diff line number Diff line
@@ -751,7 +751,7 @@ static void write_proto_mode_cb(uint16_t conn_id, tGATT_STATUS status,
    /* Set protocol finished in CONN state*/

    uint16_t cb_evt = p_dev_cb->w4_evt;
    if (cb_evt == 0) return;
    if (cb_evt == BTA_HH_EMPTY_EVT) return;

    tBTA_HH_CBDATA cback_data;

@@ -761,7 +761,7 @@ static void write_proto_mode_cb(uint16_t conn_id, tGATT_STATUS status,
    if (status == GATT_SUCCESS)
      bta_hh_le_register_input_notif(p_dev_cb, p_dev_cb->mode, false);

    p_dev_cb->w4_evt = 0;
    p_dev_cb->w4_evt = BTA_HH_EMPTY_EVT;
    (*bta_hh_cb.p_cback)(cb_evt, (tBTA_HH*)&cback_data);
  } else if (p_dev_cb->state == BTA_HH_W4_CONN_ST) {
    p_dev_cb->status = (status == GATT_SUCCESS) ? BTA_HH_OK : BTA_HH_ERR_PROTO;
@@ -853,7 +853,7 @@ static void get_protocol_mode_cb(uint16_t conn_id, tGATT_STATUS status,
               (hs_data.rsp_data.proto_mode == BTA_HH_PROTO_RPT_MODE) ? "Report"
                                                                      : "Boot");

  p_dev_cb->w4_evt = 0;
  p_dev_cb->w4_evt = BTA_HH_EMPTY_EVT;
  (*bta_hh_cb.p_cback)(BTA_HH_GET_PROTO_EVT, (tBTA_HH*)&hs_data);
}

@@ -880,7 +880,7 @@ static void bta_hh_le_get_protocol_mode(tBTA_HH_DEV_CB* p_cb) {
  hs_data.status = BTA_HH_OK;
  hs_data.handle = p_cb->hid_handle;
  hs_data.rsp_data.proto_mode = BTA_HH_PROTO_RPT_MODE;
  p_cb->w4_evt = 0;
  p_cb->w4_evt = BTA_HH_EMPTY_EVT;
  (*bta_hh_cb.p_cback)(BTA_HH_GET_PROTO_EVT, (tBTA_HH*)&hs_data);
}

@@ -1857,7 +1857,7 @@ static void read_report_cb(uint16_t conn_id, tGATT_STATUS status,
    }
  }

  p_dev_cb->w4_evt = 0;
  p_dev_cb->w4_evt = BTA_HH_EMPTY_EVT;
  (*bta_hh_cb.p_cback)(BTA_HH_GET_RPT_EVT, (tBTA_HH*)&hs_data);
  osi_free(hs_data.rsp_data.p_rpt_data);
}
@@ -1892,8 +1892,7 @@ static void write_report_cb(uint16_t conn_id, tGATT_STATUS status,
  tBTA_HH_CBDATA cback_data;
  tBTA_HH_DEV_CB* p_dev_cb = (tBTA_HH_DEV_CB*)data;
  uint16_t cb_evt = p_dev_cb->w4_evt;

  if (cb_evt == 0) return;
  if (cb_evt == BTA_HH_EMPTY_EVT) return;

  log::verbose("w4_evt:{}", p_dev_cb->w4_evt);

@@ -1912,7 +1911,7 @@ static void write_report_cb(uint16_t conn_id, tGATT_STATUS status,
  /* Set Report finished */
  cback_data.handle = p_dev_cb->hid_handle;
  cback_data.status = (status == GATT_SUCCESS) ? BTA_HH_OK : BTA_HH_ERR;
  p_dev_cb->w4_evt = 0;
  p_dev_cb->w4_evt = BTA_HH_EMPTY_EVT;
  (*bta_hh_cb.p_cback)(cb_evt, (tBTA_HH*)&cback_data);
}
/*******************************************************************************
+15 −14
Original line number Diff line number Diff line
@@ -47,20 +47,21 @@
#endif

/* BTA HID Host callback events */
#define BTA_HH_ENABLE_EVT 0     /* HH enabled */
#define BTA_HH_DISABLE_EVT 1    /* HH disabled */
#define BTA_HH_OPEN_EVT 2       /* connection opened */
#define BTA_HH_CLOSE_EVT 3      /* connection closed */
#define BTA_HH_GET_RPT_EVT 4    /* BTA_HhGetReport callback */
#define BTA_HH_SET_RPT_EVT 5    /* BTA_HhSetReport callback */
#define BTA_HH_GET_PROTO_EVT 6  /* BTA_GetProtoMode callback */
#define BTA_HH_SET_PROTO_EVT 7  /* BTA_HhSetProtoMode callback */
#define BTA_HH_GET_IDLE_EVT 8   /* BTA_HhGetIdle comes callback */
#define BTA_HH_SET_IDLE_EVT 9   /* BTA_HhSetIdle finish callback */
#define BTA_HH_GET_DSCP_EVT 10  /* Get report descriptor */
#define BTA_HH_ADD_DEV_EVT 11   /* Add Device callback */
#define BTA_HH_RMV_DEV_EVT 12   /* remove device finished */
#define BTA_HH_VC_UNPLUG_EVT 13 /* virtually unplugged */
#define BTA_HH_EMPTY_EVT 0      /* No op */
#define BTA_HH_ENABLE_EVT 1     /* HH enabled */
#define BTA_HH_DISABLE_EVT 2    /* HH disabled */
#define BTA_HH_OPEN_EVT 3       /* connection opened */
#define BTA_HH_CLOSE_EVT 4      /* connection closed */
#define BTA_HH_GET_RPT_EVT 5    /* BTA_HhGetReport callback */
#define BTA_HH_SET_RPT_EVT 6    /* BTA_HhSetReport callback */
#define BTA_HH_GET_PROTO_EVT 7  /* BTA_GetProtoMode callback */
#define BTA_HH_SET_PROTO_EVT 8  /* BTA_HhSetProtoMode callback */
#define BTA_HH_GET_IDLE_EVT 9   /* BTA_HhGetIdle comes callback */
#define BTA_HH_SET_IDLE_EVT 10  /* BTA_HhSetIdle finish callback */
#define BTA_HH_GET_DSCP_EVT 11  /* Get report descriptor */
#define BTA_HH_ADD_DEV_EVT 12   /* Add Device callback */
#define BTA_HH_RMV_DEV_EVT 13   /* remove device finished */
#define BTA_HH_VC_UNPLUG_EVT 14 /* virtually unplugged */
#define BTA_HH_DATA_EVT 15
#define BTA_HH_API_ERR_EVT 16     /* API error is caught */
#define BTA_HH_UPDATE_SCPP_EVT 17 /* update scan paramter complete */
+1 −1
Original line number Diff line number Diff line
@@ -104,5 +104,5 @@ TEST_F(BtaHhTest, bta_hh_ctrl_dat_act__BTA_HH_GET_RPT_EVT) {
  };

  bta_hh_ctrl_dat_act(&cb, &data);
  ASSERT_EQ(cb.w4_evt, 0);
  ASSERT_EQ(cb.w4_evt, BTA_HH_EMPTY_EVT);
}
+1 −0
Original line number Diff line number Diff line
@@ -243,6 +243,7 @@ const char* dump_hf_client_event(uint16_t event) {

const char* dump_hh_event(uint16_t event) {
  switch (event) {
    CASE_RETURN_STR(BTA_HH_EMPTY_EVT)
    CASE_RETURN_STR(BTA_HH_ENABLE_EVT)
    CASE_RETURN_STR(BTA_HH_DISABLE_EVT)
    CASE_RETURN_STR(BTA_HH_OPEN_EVT)