Loading system/common/metrics.cc +12 −0 Original line number Original line Diff line number Diff line Loading @@ -607,6 +607,18 @@ void LogHciTimeoutEvent(uint32_t hci_cmd) { } } } } void LogRemoteVersionInfo(uint16_t handle, uint8_t status, uint8_t version, uint16_t manufacturer_name, uint16_t subversion) { int ret = android::util::stats_write( android::util::BLUETOOTH_REMOTE_VERSION_INFO_REPORTED, handle, status, version, manufacturer_name, subversion); if (ret < 0) { LOG(WARNING) << __func__ << ": failed for handle " << handle << ", status " << loghex(status) << ", version " << loghex(version) << ", manufacturer_name " << loghex(manufacturer_name) << ", subversion " << loghex(subversion) << ", error " << ret; } } } // namespace common } // namespace common } // namespace bluetooth } // namespace bluetooth system/common/metrics.h +16 −0 Original line number Original line Diff line number Diff line Loading @@ -312,6 +312,22 @@ void LogLinkLayerConnectionEvent(const RawAddress* address, */ */ void LogHciTimeoutEvent(uint32_t hci_cmd); void LogHciTimeoutEvent(uint32_t hci_cmd); /** * Logs when we receive Bluetooth Read Remote Version Information Complete * Event from the remote device, as documented by the Bluetooth Core HCI * specification * * Reference: 5.0 Core Specification, Vol 2, Part E, Page 1118 * * @param handle handle of associated ACL connection * @param status HCI command status of this event * @param version version code from read remote version complete event * @param manufacturer_name manufacturer code from read remote version complete * event * @param subversion subversion code from read remote version complete event */ void LogRemoteVersionInfo(uint16_t handle, uint8_t status, uint8_t version, uint16_t manufacturer_name, uint16_t subversion); } // namespace common } // namespace common } // namespace bluetooth } // namespace bluetooth system/stack/btm/btm_acl.cc +6 −0 Original line number Original line Diff line number Diff line Loading @@ -45,6 +45,7 @@ #include "btm_api.h" #include "btm_api.h" #include "btm_int.h" #include "btm_int.h" #include "btu.h" #include "btu.h" #include "common/metrics.h" #include "device/include/controller.h" #include "device/include/controller.h" #include "device/include/interop.h" #include "device/include/interop.h" #include "hcidefs.h" #include "hcidefs.h" Loading Loading @@ -888,6 +889,11 @@ void btm_read_remote_version_complete(uint8_t* p) { if (p_acl_cb->transport == BT_TRANSPORT_BR_EDR) { if (p_acl_cb->transport == BT_TRANSPORT_BR_EDR) { btm_read_remote_features(p_acl_cb->hci_handle); btm_read_remote_features(p_acl_cb->hci_handle); } } bluetooth::common::LogRemoteVersionInfo( handle, status, p_acl_cb->lmp_version, p_acl_cb->manufacturer, p_acl_cb->lmp_subversion); } else { bluetooth::common::LogRemoteVersionInfo(handle, status, 0, 0, 0); } } if (p_acl_cb->transport == BT_TRANSPORT_LE) { if (p_acl_cb->transport == BT_TRANSPORT_LE) { Loading Loading
system/common/metrics.cc +12 −0 Original line number Original line Diff line number Diff line Loading @@ -607,6 +607,18 @@ void LogHciTimeoutEvent(uint32_t hci_cmd) { } } } } void LogRemoteVersionInfo(uint16_t handle, uint8_t status, uint8_t version, uint16_t manufacturer_name, uint16_t subversion) { int ret = android::util::stats_write( android::util::BLUETOOTH_REMOTE_VERSION_INFO_REPORTED, handle, status, version, manufacturer_name, subversion); if (ret < 0) { LOG(WARNING) << __func__ << ": failed for handle " << handle << ", status " << loghex(status) << ", version " << loghex(version) << ", manufacturer_name " << loghex(manufacturer_name) << ", subversion " << loghex(subversion) << ", error " << ret; } } } // namespace common } // namespace common } // namespace bluetooth } // namespace bluetooth
system/common/metrics.h +16 −0 Original line number Original line Diff line number Diff line Loading @@ -312,6 +312,22 @@ void LogLinkLayerConnectionEvent(const RawAddress* address, */ */ void LogHciTimeoutEvent(uint32_t hci_cmd); void LogHciTimeoutEvent(uint32_t hci_cmd); /** * Logs when we receive Bluetooth Read Remote Version Information Complete * Event from the remote device, as documented by the Bluetooth Core HCI * specification * * Reference: 5.0 Core Specification, Vol 2, Part E, Page 1118 * * @param handle handle of associated ACL connection * @param status HCI command status of this event * @param version version code from read remote version complete event * @param manufacturer_name manufacturer code from read remote version complete * event * @param subversion subversion code from read remote version complete event */ void LogRemoteVersionInfo(uint16_t handle, uint8_t status, uint8_t version, uint16_t manufacturer_name, uint16_t subversion); } // namespace common } // namespace common } // namespace bluetooth } // namespace bluetooth
system/stack/btm/btm_acl.cc +6 −0 Original line number Original line Diff line number Diff line Loading @@ -45,6 +45,7 @@ #include "btm_api.h" #include "btm_api.h" #include "btm_int.h" #include "btm_int.h" #include "btu.h" #include "btu.h" #include "common/metrics.h" #include "device/include/controller.h" #include "device/include/controller.h" #include "device/include/interop.h" #include "device/include/interop.h" #include "hcidefs.h" #include "hcidefs.h" Loading Loading @@ -888,6 +889,11 @@ void btm_read_remote_version_complete(uint8_t* p) { if (p_acl_cb->transport == BT_TRANSPORT_BR_EDR) { if (p_acl_cb->transport == BT_TRANSPORT_BR_EDR) { btm_read_remote_features(p_acl_cb->hci_handle); btm_read_remote_features(p_acl_cb->hci_handle); } } bluetooth::common::LogRemoteVersionInfo( handle, status, p_acl_cb->lmp_version, p_acl_cb->manufacturer, p_acl_cb->lmp_subversion); } else { bluetooth::common::LogRemoteVersionInfo(handle, status, 0, 0, 0); } } if (p_acl_cb->transport == BT_TRANSPORT_LE) { if (p_acl_cb->transport == BT_TRANSPORT_LE) { Loading