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

Commit e605687f authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Merge cherrypicks of [5317808, 5317809, 5318498, 5317873, 5318338, 5318195,...

Merge cherrypicks of [5317808, 5317809, 5318498, 5317873, 5318338, 5318195, 5318499, 5317874, 5317875, 5317876, 5318243, 5318244, 5318537, 5318538, 5318539, 5318540, 5318541, 5318542, 5318543, 5318544, 5318545, 5318546, 5315210, 5317756, 5318557, 5318558, 5318559, 5318560, 5318561, 5318339, 5318547, 5318548, 5318549, 5318562, 5318563, 5318564, 5318565, 5318566, 5318172, 5318173, 5318174, 5318550, 5318401, 5318196, 5317889, 5318175, 5318176, 5318577, 5318578, 5318579, 5318580, 5318581, 5318503, 5318390, 5318505, 5318341, 5318551] into pi-qpr1-release

Change-Id: I6df9d99838866ae835f25adc27afe9e29fc6a380
parents a04c86d5 b39114b7
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -470,7 +470,6 @@ void bta_ag_do_disc(tBTA_AG_SCB* p_scb, tBTA_SERVICE_MASK service) {

    if (p_scb->hsp_version >= HSP_VERSION_1_2) {
      uuid_list[0] = Uuid::From16Bit(UUID_SERVCLASS_HEADSET_HS);
      num_uuid = 2;
    } else {
      /* Legacy from HSP v1.0 */
      uuid_list[0] = Uuid::From16Bit(UUID_SERVCLASS_HEADSET);
+1 −1
Original line number Diff line number Diff line
@@ -66,7 +66,7 @@ typedef struct {
#define BTA_HD_APP_NAME_LEN 50
#define BTA_HD_APP_DESCRIPTION_LEN 50
#define BTA_HD_APP_PROVIDER_LEN 50
#define BTA_HD_APP_DESCRIPTOR_LEN 2048
#define BTA_HD_APP_DESCRIPTOR_LEN HIDD_APP_DESCRIPTOR_LEN

#define BTA_HD_STATE_DISABLED 0x00
#define BTA_HD_STATE_ENABLED 0x01
+25 −1
Original line number Diff line number Diff line
@@ -415,8 +415,32 @@ int le_test_mode(uint16_t opcode, uint8_t* buf, uint8_t len) {
  return btif_le_test_mode(opcode, buf, len);
}

static bt_os_callouts_t* wakelock_os_callouts_saved = nullptr;

static int acquire_wake_lock_cb(const char* lock_name) {
  return do_in_jni_thread(
      FROM_HERE, base::Bind(base::IgnoreResult(
                                wakelock_os_callouts_saved->acquire_wake_lock),
                            lock_name));
}

static int release_wake_lock_cb(const char* lock_name) {
  return do_in_jni_thread(
      FROM_HERE, base::Bind(base::IgnoreResult(
                                wakelock_os_callouts_saved->release_wake_lock),
                            lock_name));
}

static bt_os_callouts_t wakelock_os_callouts_jni = {
    sizeof(wakelock_os_callouts_jni),
    nullptr /* not used */,
    acquire_wake_lock_cb,
    release_wake_lock_cb,
};

static int set_os_callouts(bt_os_callouts_t* callouts) {
  wakelock_set_os_callouts(callouts);
  wakelock_os_callouts_saved = callouts;
  wakelock_set_os_callouts(&wakelock_os_callouts_jni);
  return BT_STATUS_SUCCESS;
}

+12 −1
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@
#include "hidd_api.h"
#include "hidd_int.h"
#include "hiddefs.h"
#include "log/log.h"

tHID_DEV_CTB hd_cb;

@@ -293,7 +294,13 @@ tHID_STATUS HID_DevAddRecord(uint32_t handle, char* p_name, char* p_description,
      uint8_t* p_buf;
      uint8_t seq_len = 4 + desc_len;

      p_buf = (uint8_t*)osi_malloc(2048);
      if (desc_len > HIDD_APP_DESCRIPTOR_LEN) {
        HIDD_TRACE_ERROR("%s: descriptor length = %d, larger than max %d",
                         __func__, desc_len, HIDD_APP_DESCRIPTOR_LEN);
        return HID_ERR_NOT_REGISTERED;
      };

      p_buf = (uint8_t*)osi_malloc(HIDD_APP_DESCRIPTOR_LEN + 6);

      if (p_buf == NULL) {
        HIDD_TRACE_ERROR("%s: Buffer allocation failure for size = 2048 ",
@@ -314,6 +321,10 @@ tHID_STATUS HID_DevAddRecord(uint32_t handle, char* p_name, char* p_description,
      UINT8_TO_BE_STREAM(p, desc_len);
      ARRAY_TO_BE_STREAM(p, p_desc_data, (int)desc_len);

      if (desc_len > HIDD_APP_DESCRIPTOR_LEN - 6) {
        android_errorWriteLog(0x534e4554, "113572366");
      }

      result &= SDP_AddAttribute(handle, ATTR_ID_HID_DESCRIPTOR_LIST,
                                 DATA_ELE_SEQ_DESC_TYPE, p - p_buf, p_buf);

+2 −0
Original line number Diff line number Diff line
@@ -131,6 +131,8 @@ typedef struct desc_info {

#define HID_SSR_PARAM_INVALID 0xffff

#define HIDD_APP_DESCRIPTOR_LEN 2048

typedef struct sdp_info {
  char svc_name[HID_MAX_SVC_NAME_LEN];   /*Service Name */
  char svc_descr[HID_MAX_SVC_DESCR_LEN]; /*Service Description*/
Loading