Add background scan routines and callbacks to broadcast radio HAL.
Bug: b/34054813
Test: existing VTS pass, none added.
Change-Id: I2009e73a9e5edc4752366fd84f67b5a745856441
diff --git a/broadcastradio/1.1/default/BroadcastRadio.cpp b/broadcastradio/1.1/default/BroadcastRadio.cpp
index 611267b..68c9b93 100644
--- a/broadcastradio/1.1/default/BroadcastRadio.cpp
+++ b/broadcastradio/1.1/default/BroadcastRadio.cpp
@@ -94,7 +94,7 @@
}
-// Methods from ::android::hardware::broadcastradio::V1_0::IBroadcastRadio follow.
+// Methods from ::android::hardware::broadcastradio::V1_1::IBroadcastRadio follow.
Return<void> BroadcastRadio::getProperties(getProperties_cb _hidl_cb)
{
int rc;
@@ -115,6 +115,11 @@
return Void();
}
+Return<void> BroadcastRadio::getProperties_1_1(getProperties_1_1_cb _hidl_cb __unused)
+{
+ return Status::fromExceptionCode(Status::EX_UNSUPPORTED_OPERATION);
+}
+
Return<void> BroadcastRadio::openTuner(const BandConfig& config, bool audio,
const sp<V1_0::ITunerCallback>& callback, openTuner_cb _hidl_cb)
{
diff --git a/broadcastradio/1.1/default/BroadcastRadio.h b/broadcastradio/1.1/default/BroadcastRadio.h
index 068979d..7de31a0 100644
--- a/broadcastradio/1.1/default/BroadcastRadio.h
+++ b/broadcastradio/1.1/default/BroadcastRadio.h
@@ -16,7 +16,7 @@
#ifndef ANDROID_HARDWARE_BROADCASTRADIO_V1_1_BROADCASTRADIO_H
#define ANDROID_HARDWARE_BROADCASTRADIO_V1_1_BROADCASTRADIO_H
-#include <android/hardware/broadcastradio/1.0/IBroadcastRadio.h>
+#include <android/hardware/broadcastradio/1.1/IBroadcastRadio.h>
#include <android/hardware/broadcastradio/1.1/types.h>
#include <hardware/radio.h>
@@ -30,12 +30,13 @@
using V1_0::BandConfig;
using V1_0::Properties;
-struct BroadcastRadio : public V1_0::IBroadcastRadio {
+struct BroadcastRadio : public V1_1::IBroadcastRadio {
BroadcastRadio(Class classId);
- // Methods from ::android::hardware::broadcastradio::V1_0::IBroadcastRadio follow.
+ // Methods from ::android::hardware::broadcastradio::V1_1::IBroadcastRadio follow.
Return<void> getProperties(getProperties_cb _hidl_cb) override;
+ Return<void> getProperties_1_1(getProperties_1_1_cb _hidl_cb) override;
Return<void> openTuner(const BandConfig& config, bool audio,
const sp<V1_0::ITunerCallback>& callback, openTuner_cb _hidl_cb) override;
diff --git a/broadcastradio/1.1/default/Tuner.cpp b/broadcastradio/1.1/default/Tuner.cpp
index b4eb184..f280754 100644
--- a/broadcastradio/1.1/default/Tuner.cpp
+++ b/broadcastradio/1.1/default/Tuner.cpp
@@ -200,6 +200,10 @@
return Void();
}
+Return<ProgramListResult> Tuner::startBackgroundScan() {
+ return ProgramListResult::NOT_INITIALIZED;
+}
+
Return<void> Tuner::getProgramList(const hidl_string& filter __unused, getProgramList_cb _hidl_cb) {
hidl_vec<ProgramInfo> pList;
// TODO(b/34054813): do the actual implementation.
diff --git a/broadcastradio/1.1/default/Tuner.h b/broadcastradio/1.1/default/Tuner.h
index fcf053a..d7b4545 100644
--- a/broadcastradio/1.1/default/Tuner.h
+++ b/broadcastradio/1.1/default/Tuner.h
@@ -42,6 +42,7 @@
Return<Result> cancel() override;
Return<void> getProgramInformation(getProgramInformation_cb _hidl_cb) override;
Return<void> getProgramInformation_1_1(getProgramInformation_1_1_cb _hidl_cb) override;
+ Return<ProgramListResult> startBackgroundScan() override;
Return<void> getProgramList(const hidl_string& filter, getProgramList_cb _hidl_cb) override;
static void callback(radio_hal_event_t *halEvent, void *cookie);