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

Commit 82cf06b4 authored by William Escande's avatar William Escande Committed by Gerrit Code Review
Browse files

Merge changes I09303d9b,I2910ab5f,I7282b163

* changes:
  Enable robust caching for client side by default
  Change flag for client bit mask
  Split robust caching flag into client and server
parents a3ba861f 18ef8e7c
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -5257,7 +5257,8 @@ public class AdapterService extends Service {
    private static final String GD_L2CAP_FLAG = "INIT_gd_l2cap";
    private static final String GD_RUST_FLAG = "INIT_gd_rust";
    private static final String GD_LINK_POLICY_FLAG = "INIT_gd_link_policy";
    private static final String GATT_ROBUST_CACHING_FLAG = "INIT_gatt_robust_caching";
    private static final String GATT_ROBUST_CACHING_CLIENT_FLAG = "INIT_gatt_robust_caching_client";
    private static final String GATT_ROBUST_CACHING_SERVER_FLAG = "INIT_gatt_robust_caching_server";

    /**
     * Logging flags logic (only applies to DEBUG and VERBOSE levels):
@@ -5316,8 +5317,12 @@ public class AdapterService extends Service {
            initFlags.add(String.format("%s=%s", GD_LINK_POLICY_FLAG, "true"));
        }
        if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_BLUETOOTH,
                GATT_ROBUST_CACHING_FLAG, false)) {
            initFlags.add(String.format("%s=%s", GATT_ROBUST_CACHING_FLAG, "true"));
                GATT_ROBUST_CACHING_CLIENT_FLAG, true)) {
            initFlags.add(String.format("%s=%s", GATT_ROBUST_CACHING_CLIENT_FLAG, "true"));
        }
        if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_BLUETOOTH,
                GATT_ROBUST_CACHING_SERVER_FLAG, false)) {
            initFlags.add(String.format("%s=%s", GATT_ROBUST_CACHING_SERVER_FLAG, "true"));
        }
        if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_BLUETOOTH,
                LOGGING_DEBUG_ENABLED_FOR_ALL_FLAG, false)) {
+1 −1
Original line number Diff line number Diff line
@@ -677,5 +677,5 @@ tBTA_GATTC_CLCB* bta_gattc_find_int_disconn_clcb(tBTA_GATTC_DATA* p_msg) {
 *
 ******************************************************************************/
bool bta_gattc_is_robust_caching_enabled() {
  return bluetooth::common::init_flags::gatt_robust_caching_is_enabled();
  return bluetooth::common::init_flags::gatt_robust_caching_client_is_enabled();
}
+2 −1
Original line number Diff line number Diff line
@@ -78,7 +78,8 @@ init_flags!(
        gd_core,
        gd_security,
        gd_l2cap,
        gatt_robust_caching,
        gatt_robust_caching_client,
        gatt_robust_caching_server,
        btaa_hci,
        gd_rust,
        gd_link_policy
+2 −1
Original line number Diff line number Diff line
@@ -8,7 +8,8 @@ mod ffi {
        fn gd_core_is_enabled() -> bool;
        fn gd_security_is_enabled() -> bool;
        fn gd_l2cap_is_enabled() -> bool;
        fn gatt_robust_caching_is_enabled() -> bool;
        fn gatt_robust_caching_client_is_enabled() -> bool;
        fn gatt_robust_caching_server_is_enabled() -> bool;
        fn btaa_hci_is_enabled() -> bool;
        fn gd_rust_is_enabled() -> bool;
        fn gd_link_policy_is_enabled() -> bool;
+17 −2
Original line number Diff line number Diff line
@@ -79,6 +79,8 @@ static void gatt_cl_op_cmpl_cback(uint16_t conn_id, tGATTC_OPTYPE op,

static void gatt_cl_start_config_ccc(tGATT_PROFILE_CLCB* p_clcb);

static bool gatt_cl_is_robust_caching_enabled();

static bool gatt_sr_is_robust_caching_enabled();

static bool read_sr_supported_feat_req(
@@ -430,7 +432,7 @@ void gatt_profile_db_init(void) {
  gatt_cb.gatt_svr_supported_feat_mask |= BLE_GATT_SVR_SUP_FEAT_EATT_BITMASK;
  gatt_cb.gatt_cl_supported_feat_mask |= BLE_GATT_CL_ANDROID_SUP_FEAT;

  if (gatt_sr_is_robust_caching_enabled())
  if (gatt_cl_is_robust_caching_enabled())
    gatt_cb.gatt_cl_supported_feat_mask |= BLE_GATT_CL_SUP_FEAT_CACHING_BITMASK;

  VLOG(1) << __func__ << ": gatt_if=" << gatt_cb.gatt_if << " EATT supported";
@@ -846,6 +848,19 @@ bool gatt_profile_get_eatt_support(const RawAddress& remote_bda) {
  return tcb.sr_supp_feat & BLE_GATT_SVR_SUP_FEAT_EATT_BITMASK;
}

/*******************************************************************************
 *
 * Function         gatt_cl_is_robust_caching_enabled
 *
 * Description      Check if Robust Caching is enabled on client side.
 *
 * Returns          true if enabled in gd flag, otherwise false
 *
 ******************************************************************************/
static bool gatt_cl_is_robust_caching_enabled() {
  return bluetooth::common::init_flags::gatt_robust_caching_client_is_enabled();
}

/*******************************************************************************
 *
 * Function         gatt_sr_is_robust_caching_enabled
@@ -856,7 +871,7 @@ bool gatt_profile_get_eatt_support(const RawAddress& remote_bda) {
 *
 ******************************************************************************/
static bool gatt_sr_is_robust_caching_enabled() {
  return bluetooth::common::init_flags::gatt_robust_caching_is_enabled();
  return bluetooth::common::init_flags::gatt_robust_caching_server_is_enabled();
}

/*******************************************************************************