+
+int bluetooth_set_passkey_notification(gboolean enable);
+
+/**
+ * @fn int bluetooth_dpm_is_mode_allowed(void);
+ *
+ * @brief Checks Restriction for BT mode(BT allowed or not)
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ *
+ * @remark None
+ */
+int bluetooth_dpm_is_mode_allowed(void);
+
+/**
+ * @fn int bluetooth_dpm_set_allow_mode(bt_dpm_allow_t value);
+ *
+ * @brief Sets Restriction for BT mode(BT allowed or not)
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - BT Allow value.
+ * BLUETOOTH_DPM_ERROR = -1, < bluetooth allowance error
+ * BLUETOOTH_DPM_BT_ALLOWED, < bluetooth allowance allowed
+ * BLUETOOTH_DPM_HANDSFREE_ONLY, < bluetooth allowance handsfree only
+ * BLUETOOTH_DPM_BT_RESTRICTED, < bluetooth allowance restricted
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_allow_mode(bt_dpm_allow_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_allow_mode(bt_dpm_allow_t value);
+ *
+ * @brief Reads the Restriction for BT mode(BT allowed or not)
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - BT Allow value.
+ * BLUETOOTH_DPM_ERROR = -1, < bluetooth allowance error
+ * BLUETOOTH_DPM_BT_ALLOWED, < bluetooth allowance allowed
+ * BLUETOOTH_DPM_HANDSFREE_ONLY, < bluetooth allowance handsfree only
+ * BLUETOOTH_DPM_BT_RESTRICTED, < bluetooth allowance restricted
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_allow_mode(bt_dpm_allow_t *value);
+
+/**
+ * @fn int bluetooth_dpm_activate_device_restriction(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for device.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_activate_device_restriction(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_is_device_restriction_active(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for device.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_is_device_restriction_active(bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_dpm_activate_bluetoooth_uuid_restriction(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for uuid.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_activate_uuid_restriction(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_is_uuid_restriction_active(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for uuid.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_is_uuid_restriction_active(bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_dpm_add_devices_to_blacklist(const bluetooth_device_address_t *device_address);
+ *
+ * @brief Adds the device to blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] device_address - Device address
+ *
+ * @remark None
+ */
+int bluetooth_dpm_add_devices_to_blacklist(const bluetooth_device_address_t *device_address);
+
+/**
+ * @fn int bluetooth_dpm_add_devices_to_whitelist(const bluetooth_device_address_t *device_address);
+ *
+ * @brief Adds the device to whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] device_address - Device address
+ *
+ * @remark None
+ */
+int bluetooth_dpm_add_devices_to_whitelist(const bluetooth_device_address_t *device_address);
+
+/**
+ * @fn int bluetooth_dpm_add_uuids_to_blacklist(const char *service_uuid);
+ *
+ * @brief Adds the Service UUIDS to blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] service_uuids - profile or custom service uuids
+ *
+ * @remark None
+ */
+int bluetooth_dpm_add_uuids_to_blacklist(const char *service_uuid);
+
+/**
+ * @fn int bluetooth_dpm_add_uuids_to_whitelist(const char *service_uuid);
+ *
+ * @brief Adds the Service UUIDS to whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] service_uuids - profile or custom service uuids
+ *
+ * @remark None
+ */
+int bluetooth_dpm_add_uuids_to_whitelist(const char *service_uuid);
+
+/**
+ * @fn int bluetooth_dpm_clear_devices_from_blacklist();
+ *
+ * @brief Clears the devices from blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ *
+ * @remark None
+ */
+int bluetooth_dpm_clear_devices_from_blacklist(void);
+
+/**
+ * @fn int bluetooth_dpm_clear_devices_from_whitelist();
+ *
+ * @brief Clears the devices from whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ *
+ * @remark None
+ */
+int bluetooth_dpm_clear_devices_from_whitelist(void);
+
+/**
+ * @fn int bluetooth_dpm_clear_uuids_from_blacklist();
+ *
+ * @brief Clears the uuids from blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ *
+ * @remark None
+ */
+int bluetooth_dpm_clear_uuids_from_blacklist(void);
+
+/**
+ * @fn int bluetooth_dpm_clear_uuids_from_whitelist();
+ *
+ * @brief Clears the uuids from whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ *
+ * @remark None
+ */
+int bluetooth_dpm_clear_uuids_from_whitelist(void);
+
+/**
+ * @fn int bluetooth_dpm_get_devices_from_blacklist(bt_dpm_device_list_t *device_list);
+ *
+ * @brief reads the devices from blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[out] device_list - list of devices
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_devices_from_blacklist(bt_dpm_device_list_t *device_list);
+
+/**
+ * @fn int bluetooth_dpm_get_devices_from_whitelist(bt_dpm_device_list_t *device_list);
+ *
+ * @brief reads the devices from whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[out] device_list - list of devices
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_devices_from_whitelist(bt_dpm_device_list_t *device_list);
+
+/**
+ * @fn int bluetooth_dpm_get_uuids_from_blacklist(bt_dpm_uuids_list_t *uuid_list);
+ *
+ * @brief reads the uuids from blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] uuid_list - list of uuids
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_uuids_from_blacklist(bt_dpm_uuids_list_t *uuid_list);
+
+/**
+ * @fn int bluetooth_dpm_get_uuids_from_whitelist(bt_dpm_uuids_list_t *uuid_list);
+ *
+ * @brief reads the uuids from whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] uuid_list - list of uuids
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_uuids_from_whitelist(bt_dpm_uuids_list_t *uuid_list);
+
+/**
+ * @fn int bluetooth_dpm_remove_device_from_whitelist(const bluetooth_device_address_t *device_address);
+ *
+ * @brief Removes the device from whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] device_address - Device address
+ *
+ * @remark None
+ */
+int bluetooth_dpm_remove_device_from_whitelist(const bluetooth_device_address_t *device_address);
+
+/**
+ * @fn int bluetooth_dpm_remove_device_from_blacklist(const bluetooth_device_address_t *device_address);
+ *
+ * @brief Removes the device from blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] device_address - Device address
+ *
+ * @remark None
+ */
+int bluetooth_dpm_remove_device_from_blacklist(const bluetooth_device_address_t *device_address);
+
+/**
+ * @fn int bluetooth_dpm_remove_uuid_from_whitelist(const char *service_uuid);
+ *
+ * @brief Removes the Service UUIDS from whitelist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] service_uuids - profile or custom service uuids
+ *
+ * @remark None
+ */
+int bluetooth_dpm_remove_uuid_from_whitelist(const char *service_uuid);
+
+/**
+ * @fn int bluetooth_dpm_remove_uuid_from_blacklist(const char *service_uuid);
+ *
+ * @brief Removes the Service UUIDS from blacklist.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] service_uuids - profile or custom service uuids
+ *
+ * @remark None
+ */
+int bluetooth_dpm_remove_uuid_from_blacklist(const char *service_uuid);
+
+/**
+ * @fn int bluetooth_dpm_set_allow_outgoing_call(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for outgoing call.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_allow_outgoing_call(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_allow_outgoing_call(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for outgoing call.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_allow_outgoing_call(bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_dpm_set_pairing_state(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for Pairing.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_pairing_state(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_pairing_state(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for Pairing
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_pairing_state(bt_dpm_status_t *value);
+
+/**
+ * @fnint bluetooth_dpm_set_profile_state(bt_dpm_profile_t profile, bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for using Profiles.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in]profile - Profile.
+ * BLUETOOTH_DPM_POLICY_A2DP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_AVRCP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_BPP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_DUN_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_FTP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_HFP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_HSP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_PBAP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_SAP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_SPP_PROFILE_STATE,
+ * BLUETOOTH_DPM_PROFILE_NONE
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_profile_state(bt_dpm_profile_t profile, bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_profile_state(bt_dpm_profile_t profile, bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for using Profiles.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in]profile - Profile.
+ * BLUETOOTH_DPM_POLICY_A2DP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_AVRCP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_BPP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_DUN_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_FTP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_HFP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_HSP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_PBAP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_SAP_PROFILE_STATE,
+ * BLUETOOTH_DPM_POLICY_SPP_PROFILE_STATE,
+ * BLUETOOTH_DPM_PROFILE_NONE
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_profile_state(bt_dpm_profile_t profile, bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_dpm_set_desktop_connectivity_state(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for Desktop Connectivity.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_desktop_connectivity_state(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_desktop_connectivity_state(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for Desktop Connectivity.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_desktop_connectivity_state(bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_dpm_set_discoverable_state(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for Discoverable state.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_discoverable_state(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_discoverable_state(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for Discoverable state.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_discoverable_state(bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_dpm_set_limited_discoverable_state(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for linited discoverable state..
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_limited_discoverable_state(bt_dpm_status_t value);
+
+/**
+ * @fn int bluetooth_dpm_get_limited_discoverable_state(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for limited discoverable state.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_limited_discoverable_state(bt_dpm_status_t *value);
+/**
+ * @fn int bluetooth_dpm_set_data_transfer_state(bt_dpm_status_t value);
+ *
+ * @brief Sets the Restriction for Data trasnfer.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_set_data_transfer_state(bt_dpm_status_t value);
+
+
+/**
+ * @fn int bluetooth_dpm_get_data_transfer_state(bt_dpm_status_t *value);
+ *
+ * @brief Reads the Restriction for Data trasnfer.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_DPM_RESULT_SUCCESS - Success \n
+ * BLUETOOTH_DPM_RESULT_ACCESS_DENIED - BT restricted \n
+ * BLUETOOTH_DPM_RESULT_FAIL - Internal error \n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] value - State value.
+ * BLUETOOTH_DPM_ALLOWED = 0, < DPM Policy status allowed.
+ * BLUETOOTH_DPM_RESTRICTED = 1, < DPM Policy status restricted.
+ *
+ * @remark None
+ */
+int bluetooth_dpm_get_data_transfer_state(bt_dpm_status_t *value);
+
+/**
+ * @fn int bluetooth_proximity_monitor_set_property(const bluetooth_device_address_t *device_address,
+ * bluetooth_pxp_poperty_t property, int value);
+ *
+ * @brief Sets the Proximity alert level/properties for monitor role.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_NOT_FOUND - Cannot find the proxy\n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[in] property proximity profile property
+ * @param[in] value alert level/property value to be set
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_proximity_monitor_set_property(const bluetooth_device_address_t *device_address,
+ bluetooth_pxp_poperty_t property, int value);
+
+/**
+ * @fn int bluetooth_proximity_monitor_get_property(const bluetooth_device_address_t *device_address,
+ * bluetooth_pxp_poperty_t property, int *value);
+ *
+ * @brief Reads the Proximity alert level/properties for monitor role.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_NOT_FOUND - Cannot find the proxy\n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[in] property proximity profile property
+ * @param[out] value alert level/property value
+ *
+ * @remark None
+ */
+int bluetooth_proximity_monitor_get_property(const bluetooth_device_address_t *device_address,
+ bluetooth_pxp_poperty_t property, int *value);
+
+/**
+ * @fn int bluetooth_proximity_monitor_get_supported_services(const bluetooth_device_address_t *device_address,
+ * int *services_supported);
+ *
+ * @brief Reads the Proximity Monitor profile supported properties/services.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_NOT_FOUND - Cannot find the proxy\n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[out] services_supported proximity profile property/service
+ *
+ * @remark None
+ */
+int bluetooth_proximity_monitor_get_supported_services(const bluetooth_device_address_t *device_address,
+ int *services_supported);
+
+/**
+ * @fn int bluetooth_proximity_reporter_register();
+ *
+ * @brief Register all proximity related services in BlueZ.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_NOT_FOUND - Cannot find the proxy\n
+ *
+ * @exception None
+ *
+ * @remark None
+ */
+int bluetooth_proximity_reporter_register(void);
+
+/**
+ * @fn int bluetooth_proximity_reporter_unregister();
+ *
+ * @brief Unregister all proximity related services in BlueZ.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_NOT_FOUND - Cannot find the proxy\n
+ *
+ * @exception None
+ *
+ * @remark None
+ */
+int bluetooth_proximity_reporter_unregister(void);
+
+/**
+ * @fn int bluetooth_proximity_reporter_get_property(const bluetooth_device_address_t *device_address,
+ * bluetooth_pxp_poperty_t property, int *value);
+ *
+ * @brief Reads the Proximity alert level/properties for reporter role.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_NOT_FOUND - Cannot find the proxy\n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[in] property proximity profile property
+ * @param[out] value alert level/property value
+ *
+ * @remark None
+ */
+int bluetooth_proximity_reporter_get_property(const bluetooth_device_address_t *device_address,
+ bluetooth_pxp_poperty_t property, int *value);
+
+/**
+ * @fn int bluetooth_tds_provider_register(void);
+ *
+ * @brief Register Transport Discovery Provider role.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_ALREADY_INITIALIZED - Already done \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Adapter not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Operation failed\n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_tds_provider_register(void);
+
+/**
+ * @fn int bluetooth_tds_provider_unregister(void);
+ *
+ * @brief Unregister Transport Discovery Provider role.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_NOT_INITIALIZED - Provider not registered \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Adapter not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Operation failed\n
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_tds_provider_unregister(void);
+
+/**
+ * @fn int bluetooth_tds_provider_create(int transport, unsigned int handle);
+ *
+ * @brief Create Transport Discovery Provider for a transport.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ * BLUETOOTH_ERROR_NOT_INITIALIZED - Provider not registered \n
+ * BLUETOOTH_ERROR_INTERNAL - Operation failed\n
+ *
+ * @exception None
+ * @param[in] Transport (BT, CUSTOM etc.)
+ * @param[in] Unique handle for TDS provider.
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_tds_provider_create(int transport, unsigned int handle);
+
+/**
+ * @fn int bluetooth_tds_provider_destroy(unsigned int handle);
+ *
+ * @brief Remove previously created Transport Discovery Provider.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] Unique handle for previously created provider.
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_tds_provider_destroy(unsigned int handle);
+
+/**
+ * @fn int bluetooth_set_tds_provider_manuf_data(unsigned char *buf, unsigned int length);
+ *
+ * @brief Set transport block for in advertisement and gatt db.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Adapter not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Operation failed\n
+ *
+ * @exception None
+ * @param[in] Provider specific manufacturer data.
+ * @param[in] Provider specific manufacturer data length.
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_set_tds_provider_manuf_data(unsigned char *buf, unsigned int length);
+
+/**
+ * @fn int bluetooth_set_tds_provider_transport_data(unsigned int tds_handle,
+ * bluetooth_tds_transport_state_t state, unsigned char *buf, unsigned int length);
+ *
+ * @brief Set transport block for in advertisement and gatt db.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Adapter not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Operation failed\n
+ *
+ * @exception None
+ * @param[in] Unique handle for TDS provider.
+ * @param[in] Transport state (On/Off/Not Available).
+ * @param[in] Transport specific data block.
+ * @param[in] Transport specific data block length.
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_set_tds_provider_transport_data(unsigned int tds_handle,
+ bluetooth_tds_transport_state_t state, unsigned char *buf, unsigned int length);
+
+/**
+ * @fn int bluetooth_send_tds_activation_response(bluetooth_device_address_t *device_address,
+ * unsigned int tds_handle, int response, unsigned char *buf, unsigned int length);
+ *
+ * @brief Send response to TDS activation request from remoted device.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ * BLUETOOTH_ERROR_NOT_INITIALIZED - Provider not registered \n
+ * BLUETOOTH_ERROR_INTERNAL - Operation failed\n
+ *
+ * @exception None
+ * @param[in] Remote device BT address.
+ * @param[in] Unique handle for TDS provider.
+ * @param[in] Response for TDS activation request.
+ * @param[in] Transport specific data block to be sent in activation response.
+ * @param[in] Data block length.
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_send_tds_activation_response(bluetooth_device_address_t *device_address,
+ unsigned int tds_handle, int response, unsigned char *buf, unsigned int length);
+
+/**
+ * @fn int bluetooth_tds_read_transport_data(bluetooth_device_address_t *device_address, const char *handle);
+ *
+ * @brief Reads the Complete TDS transport Blocks from Remote Provider's GATT database.
+ *
+ * This function is an asynchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Internal Error \n
+ * BLUETOOTH_ERROR_IN_PROGRESS - Already Read Request is pending on same provider \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[in] handle attribute handle
+ *
+ * @remark BLUETOOTH_EVENT_TDS_TRANSPORT_DATA_RECEIVED event is sent to pplication
+ * when TDS data is received from Remote provider
+ */
+int bluetooth_tds_read_transport_data(const bluetooth_device_address_t *device_address,
+ const char *handle);
+
+/**
+ * @fn int bluetooth_tds_enable_control_point(const bluetooth_device_address_t *device_address, const char *handle);
+ *
+ * @brief Enables CCCD on Remote Provider.
+ *
+ * This function is an asynchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Internal Error \n
+ * BLUETOOTH_ERROR_IN_PROGRESS - Already Control Point activation is ongoing to Same Provider \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[in] handle attribute handle
+ *
+ * @remark BLUETOOTH_EVENT_TDS_CONTROL_POINT_ENABLED event is sent to application
+ * when Indication is enabled on Remote provider
+ */
+int bluetooth_tds_enable_control_point(const bluetooth_device_address_t *device_address,
+ const char *handle);
+
+/**
+ * @fn int bluetooth_tds_activate_control_point(const bluetooth_device_address_t *device_address, const char *handle
+ * unsigned char *buf, int length);
+ * @brief Sends activation request for Alternate Transport enable on Remote Provider
+ *
+ * This function is an asynchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Success \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Device is not enabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Internal Error \n
+ * BLUETOOTH_ERROR_IN_PROGRESS - Already Control Point activation is ongoing to Same Provider \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter \n
+ *
+ * @exception None
+ * @param[in] device_address remote device address
+ * @param[in] handle attribute handle
+ * @param[in] buf Control point activation param
+ * @param[in] param length
+ *
+ * @remark BLUETOOTH_EVENT_TDS_ACTIVATION_INDICATION event is sent to application when Indication response
+ * is received from remote Provider
+ */
+int bluetooth_tds_activate_control_point(const bluetooth_device_address_t *device_address, const char *handle,
+ unsigned char *buf, int length);
+
+/**
+ * @fn int bluetooth_otp_server_init(const char *directory);
+ *
+ * @brief Starts OTP server.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_server_init(const char *directory);
+
+/**
+ * @fn int bluetooth_otp_server_deinit();
+ *
+ * @brief Stops OTP server.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_server_deinit();
+
+/**
+ * @fn int bluetooth_otp_enable_notification(const char *handle);
+ *
+ * @brief Enable notification for remote OACP & OLCP characteristics.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_enable_notification(const char *handle);
+
+/**
+ * @fn int bluetooth_otp_write_characteristics_value( const char *handle,
+ * unsigned char *buf, int length);
+ *
+ * @brief Write value on remote characteristics.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_write_characteristics_value(const char *handle,
+ unsigned char *buf, int length);
+
+/**
+ * @fn int bluetooth_otp_read_characteristic_value(const char *handle);
+ *
+ * @brief Read value for remote characteristics.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_read_characteristic_value(const char *handle);
+
+/**
+ * @fn int bluetooth_otp_connect_otc(const bluetooth_device_address_t *device_address);
+ *
+ * @brief Read value for remote characteristics.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_connect_otc(const bluetooth_device_address_t *device_address);
+
+/**
+ * @fn int bluetooth_otp_disconnect_otc(const bluetooth_device_address_t *device_address);
+ *
+ * @brief Read value for remote characteristics.
+ *
+ * This function is a synchronous call.
+ *
+ * @return
+ *
+ * @exception None
+ * @param[in] None
+ * @param[out] None
+ *
+ * @remark None
+ */
+int bluetooth_otp_disconnect_otc(const bluetooth_device_address_t *device_address);
+
+/**
+ * @fn int bluetooth_is_le_2m_phy_supported(gboolean *is_supported)
+ * @brief Check if Adapter supports LE 2M PHY feature or not.
+ *
+ * This API is used to check the whether LE Adapter supports LE 2M PHY feature, which is introduced
+ * in BT 5.0 specification.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Succeess \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter (NULL buffer) \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Adapter is disabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Internal error \n
+ * @param[out] is_supported. This boolean variable indicates whether LE 2M PHY is supported or not
+ *
+ * @remark None
+ */
+int bluetooth_is_le_2m_phy_supported(gboolean *is_supported);
+
+/**
+ * @fn int bluetooth_is_le_coded_phy_supported(gboolean *is_supported)
+ * @brief Check if Adapter supports LE 2M CODED feature or not.
+ *
+ * This API is used to check the whether LE Adapter supports LE CODED PHY feature, which is introduced
+ * in BT 5.0 specification.
+ *
+ * This function is a synchronous call.
+ *
+ * @return BLUETOOTH_ERROR_NONE - Succeess \n
+ * BLUETOOTH_ERROR_INVALID_PARAM - Invalid parameter (NULL buffer) \n
+ * BLUETOOTH_ERROR_DEVICE_NOT_ENABLED - Adapter is disabled \n
+ * BLUETOOTH_ERROR_INTERNAL - Internal error \n
+ * @param[out] is_supported. This boolean variable indicates whether LE CODED PHY is supported or not
+ *
+ * @remark None
+ */
+int bluetooth_is_le_coded_phy_supported(gboolean *is_supported);
+