le_broadcast: Use HAL verifier
Bug: 150670922
Tag: #feature
Test: atest bluetooth_test_broadcaster bluetooth_test_broadcaster_sm bluetooth_le_audio_test
Sponsor: jpawlowski@
Change-Id: Ibffd5e7770c3f26b65630112a99eb8f76a4f2870
diff --git a/system/bta/include/bta_le_audio_api.h b/system/bta/include/bta_le_audio_api.h
index 67c32f2..832910b 100644
--- a/system/bta/include/bta_le_audio_api.h
+++ b/system/bta/include/bta_le_audio_api.h
@@ -28,6 +28,7 @@
public:
static bool SupportsLeAudio();
static bool SupportsLeAudioHardwareOffload();
+ static bool SupportsLeAudioBroadcast();
};
/* Interface class */
diff --git a/system/bta/le_audio/hal_verifier.cc b/system/bta/le_audio/hal_verifier.cc
index 5eb6b80..1e4287e 100644
--- a/system/bta/le_audio/hal_verifier.cc
+++ b/system/bta/le_audio/hal_verifier.cc
@@ -26,3 +26,8 @@
return bluetooth::audio::HalVersionManager::GetHalVersion() >
bluetooth::audio::BluetoothAudioHalVersion::VERSION_2_1;
}
+
+bool LeAudioHalVerifier::SupportsLeAudioBroadcast() {
+ return bluetooth::audio::HalVersionManager::GetHalTransport() ==
+ bluetooth::audio::BluetoothAudioHalTransport::AIDL;
+}
diff --git a/system/bta/le_audio/hal_verifier_linux.cc b/system/bta/le_audio/hal_verifier_linux.cc
index 2da71ef..3318291 100644
--- a/system/bta/le_audio/hal_verifier_linux.cc
+++ b/system/bta/le_audio/hal_verifier_linux.cc
@@ -18,3 +18,4 @@
bool LeAudioHalVerifier::SupportsLeAudio() { return false; }
bool LeAudioHalVerifier::SupportsLeAudioHardwareOffload() { return false; }
+bool LeAudioHalVerifier::SupportsLeAudioBroadcast() { return false; }
diff --git a/system/btif/src/btif_le_audio_broadcaster.cc b/system/btif/src/btif_le_audio_broadcaster.cc
index be55da6..57d14f9 100644
--- a/system/btif/src/btif_le_audio_broadcaster.cc
+++ b/system/btif/src/btif_le_audio_broadcaster.cc
@@ -21,6 +21,7 @@
#include <hardware/bt_le_audio.h>
#include "audio_hal_interface/hal_version_manager.h"
+#include "bta_le_audio_api.h"
#include "bta_le_audio_broadcaster_api.h"
#include "btif_common.h"
#include "stack/include/btu.h"
@@ -46,8 +47,7 @@
do_in_main_thread(
FROM_HERE,
Bind(&LeAudioBroadcaster::Initialize, this, base::Bind([]() -> bool {
- return bluetooth::audio::HalVersionManager::GetHalVersion() ==
- bluetooth::audio::BluetoothAudioHalVersion::VERSION_2_1;
+ return LeAudioHalVerifier::SupportsLeAudioBroadcast();
})));
}
diff --git a/system/test/mock/mock_le_audio_hal_verifier.cc b/system/test/mock/mock_le_audio_hal_verifier.cc
index 9c378ed..8d72923 100644
--- a/system/test/mock/mock_le_audio_hal_verifier.cc
+++ b/system/test/mock/mock_le_audio_hal_verifier.cc
@@ -29,3 +29,8 @@
mock_function_count_map[__func__]++;
return true;
}
+
+bool LeAudioHalVerifier::SupportsLeAudioBroadcast() {
+ mock_function_count_map[__func__]++;
+ return true;
+}