diff --git a/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java b/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java index e77cb7a7ad94e..2a9d38604eea7 100644 --- a/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java +++ b/services/core/java/com/android/server/broadcastradio/hal1/Tuner.java @@ -98,10 +98,6 @@ class Tuner extends ITuner.Stub { private native boolean nativeIsAnalogForced(long nativeContext); private native void nativeSetAnalogForced(long nativeContext, boolean isForced); - private native Map nativeSetParameters(long nativeContext, - Map parameters); - private native Map nativeGetParameters(long nativeContext, List keys); - @Override public void close() { synchronized (mLock) { @@ -291,26 +287,11 @@ class Tuner extends ITuner.Stub { @Override public Map setParameters(Map parameters) { - Map results; - synchronized (mLock) { - checkNotClosedLocked(); - results = nativeSetParameters(mNativeContext, Objects.requireNonNull(parameters)); - } - if (results == null) return Collections.emptyMap(); - return results; + throw new UnsupportedOperationException("Not supported by HAL 1.x"); } @Override public Map getParameters(List keys) { - if (keys == null) { - throw new IllegalArgumentException("The argument must not be a null pointer"); - } - Map results; - synchronized (mLock) { - checkNotClosedLocked(); - results = nativeGetParameters(mNativeContext, keys); - } - if (results == null) return Collections.emptyMap(); - return results; + throw new UnsupportedOperationException("Not supported by HAL 1.x"); } } diff --git a/services/core/java/com/android/server/broadcastradio/hal1/TunerCallback.java b/services/core/java/com/android/server/broadcastradio/hal1/TunerCallback.java index 04c0e5788e7b9..7ad73c34f5c0f 100644 --- a/services/core/java/com/android/server/broadcastradio/hal1/TunerCallback.java +++ b/services/core/java/com/android/server/broadcastradio/hal1/TunerCallback.java @@ -169,7 +169,7 @@ class TunerCallback implements ITunerCallback { @Override public void onParametersUpdated(Map parameters) { - dispatch(() -> mClientCallback.onParametersUpdated(parameters)); + Slog.e(TAG, "Not applicable for HAL 1.x"); } @Override diff --git a/services/core/jni/Android.bp b/services/core/jni/Android.bp index 4045b72939d84..72f95fb74f4f2 100644 --- a/services/core/jni/Android.bp +++ b/services/core/jni/Android.bp @@ -110,7 +110,6 @@ cc_defaults { "android.hardware.audio.common@2.0", "android.hardware.broadcastradio@1.0", "android.hardware.broadcastradio@1.1", - "android.hardware.broadcastradio@1.2", "android.hardware.contexthub@1.0", "android.hardware.gnss@1.0", "android.hardware.gnss@1.1", diff --git a/services/core/jni/BroadcastRadio/BroadcastRadioService.cpp b/services/core/jni/BroadcastRadio/BroadcastRadioService.cpp index 176ae81a15e42..14e35782d1842 100644 --- a/services/core/jni/BroadcastRadio/BroadcastRadioService.cpp +++ b/services/core/jni/BroadcastRadio/BroadcastRadioService.cpp @@ -23,7 +23,7 @@ #include "convert.h" #include -#include +#include #include #include #include @@ -45,7 +45,6 @@ using hardware::hidl_vec; namespace V1_0 = hardware::broadcastradio::V1_0; namespace V1_1 = hardware::broadcastradio::V1_1; -namespace V1_2 = hardware::broadcastradio::V1_2; namespace utils = hardware::broadcastradio::utils; using V1_0::BandConfig; @@ -149,11 +148,7 @@ static jobject nativeLoadModules(JNIEnv *env, jobject obj, jlong nativeContext) auto halRev = HalRevision::V1_0; auto halMinor = 0; - if (V1_2::IBroadcastRadioFactory::castFrom(factory).withDefault(nullptr) != nullptr) { - halRev = HalRevision::V1_2; - halMinor = 2; - } else if (V1_1::IBroadcastRadioFactory::castFrom(factory).withDefault(nullptr) - != nullptr) { + if (V1_1::IBroadcastRadioFactory::castFrom(factory).withDefault(nullptr) != nullptr) { halRev = HalRevision::V1_1; halMinor = 1; } diff --git a/services/core/jni/BroadcastRadio/Tuner.cpp b/services/core/jni/BroadcastRadio/Tuner.cpp index 42c1332194e11..36d2994898c18 100644 --- a/services/core/jni/BroadcastRadio/Tuner.cpp +++ b/services/core/jni/BroadcastRadio/Tuner.cpp @@ -22,7 +22,7 @@ #include "convert.h" #include "TunerCallback.h" -#include +#include #include #include #include @@ -44,16 +44,15 @@ using hardware::hidl_vec; namespace V1_0 = hardware::broadcastradio::V1_0; namespace V1_1 = hardware::broadcastradio::V1_1; -namespace V1_2 = hardware::broadcastradio::V1_2; namespace utils = hardware::broadcastradio::utils; using V1_0::Band; using V1_0::BandConfig; using V1_0::MetaData; using V1_0::Result; +using V1_1::ITunerCallback; using V1_1::ProgramListResult; using V1_1::VendorKeyValue; -using V1_2::ITunerCallback; using utils::HalRevision; static mutex gContextMutex; @@ -94,7 +93,6 @@ struct TunerContext { wp mHalModule11; sp mHalTuner; sp mHalTuner11; - sp mHalTuner12; sp mHalDeathRecipient; private: @@ -181,11 +179,8 @@ void assignHalInterfaces(JNIEnv *env, JavaRef const &jTuner, ctx.mHalTuner = halTuner; ctx.mHalTuner11 = V1_1::ITuner::castFrom(halTuner).withDefault(nullptr); - ctx.mHalTuner12 = V1_2::ITuner::castFrom(halTuner).withDefault(nullptr); ALOGW_IF(ctx.mHalRev >= HalRevision::V1_1 && ctx.mHalTuner11 == nullptr, "Provided tuner does not implement 1.1 HAL"); - ALOGW_IF(ctx.mHalRev >= HalRevision::V1_2 && ctx.mHalTuner12 == nullptr, - "Provided tuner does not implement 1.2 HAL"); ctx.mHalDeathRecipient = new HalDeathRecipient(getNativeCallback(env, jTuner)); halTuner->linkToDeath(ctx.mHalDeathRecipient, 0); @@ -209,11 +204,6 @@ static sp getHalTuner11(jlong nativeContext) { return getNativeContext(nativeContext).mHalTuner11; } -static sp getHalTuner12(jlong nativeContext) { - lock_guard lk(gContextMutex); - return getNativeContext(nativeContext).mHalTuner12; -} - sp getNativeCallback(JNIEnv *env, JavaRef const &tuner) { return TunerCallback::getNativeCallback(env, env->GetObjectField(tuner.get(), gjni.Tuner.tunerCallback)); @@ -243,7 +233,6 @@ static void nativeClose(JNIEnv *env, jobject obj, jlong nativeContext) { ctx.mHalDeathRecipient = nullptr; ctx.mHalTuner11 = nullptr; - ctx.mHalTuner12 = nullptr; ctx.mHalTuner = nullptr; } @@ -466,48 +455,6 @@ static void nativeSetAnalogForced(JNIEnv *env, jobject obj, jlong nativeContext, convert::ThrowIfFailed(env, halResult); } -static jobject nativeSetParameters(JNIEnv *env, jobject obj, jlong nativeContext, jobject jParameters) { - ALOGV("%s", __func__); - - auto halTuner = getHalTuner12(nativeContext); - if (halTuner == nullptr) { - ALOGI("Parameters are not supported with HAL < 1.2"); - return nullptr; - } - - JavaRef jResults = nullptr; - auto parameters = convert::VendorInfoToHal(env, jParameters); - auto hidlResult = halTuner->setParameters(parameters, - [&](const hidl_vec results) { - jResults = convert::VendorInfoFromHal(env, results); - }); - - if (convert::ThrowIfFailed(env, hidlResult)) return nullptr; - - return jResults.release(); -} - -static jobject nativeGetParameters(JNIEnv *env, jobject obj, jlong nativeContext, jobject jKeys) { - ALOGV("%s", __func__); - - auto halTuner = getHalTuner12(nativeContext); - if (halTuner == nullptr) { - ALOGI("Parameters are not supported with HAL < 1.2"); - return nullptr; - } - - JavaRef jResults = nullptr; - auto keys = convert::StringListToHal(env, jKeys); - auto hidlResult = halTuner->getParameters(keys, - [&](const hidl_vec parameters) { - jResults = convert::VendorInfoFromHal(env, parameters); - }); - - if (convert::ThrowIfFailed(env, hidlResult)) return nullptr; - - return jResults.release(); -} - static const JNINativeMethod gTunerMethods[] = { { "nativeInit", "(IZI)J", (void*)nativeInit }, { "nativeFinalize", "(J)V", (void*)nativeFinalize }, @@ -528,8 +475,6 @@ static const JNINativeMethod gTunerMethods[] = { { "nativeGetImage", "(JI)[B", (void*)nativeGetImage}, { "nativeIsAnalogForced", "(J)Z", (void*)nativeIsAnalogForced }, { "nativeSetAnalogForced", "(JZ)V", (void*)nativeSetAnalogForced }, - { "nativeSetParameters", "(JLjava/util/Map;)Ljava/util/Map;", (void*)nativeSetParameters }, - { "nativeGetParameters", "(JLjava/util/List;)Ljava/util/Map;", (void*)nativeGetParameters }, }; } // namespace Tuner diff --git a/services/core/jni/BroadcastRadio/Tuner.h b/services/core/jni/BroadcastRadio/Tuner.h index 48c3bc7e2271e..818597bc98ba8 100644 --- a/services/core/jni/BroadcastRadio/Tuner.h +++ b/services/core/jni/BroadcastRadio/Tuner.h @@ -22,8 +22,8 @@ #include "JavaRef.h" #include -#include -#include +#include +#include #include #include @@ -39,7 +39,7 @@ void assignHalInterfaces(JNIEnv *env, JavaRef const &jTuner, sp halModule, sp halTuner); -sp +sp getNativeCallback(JNIEnv *env, JavaRef const &tuner); Region getRegion(JNIEnv *env, jobject obj); diff --git a/services/core/jni/BroadcastRadio/TunerCallback.cpp b/services/core/jni/BroadcastRadio/TunerCallback.cpp index 39f2c057fc86b..085a86a819cba 100644 --- a/services/core/jni/BroadcastRadio/TunerCallback.cpp +++ b/services/core/jni/BroadcastRadio/TunerCallback.cpp @@ -40,18 +40,17 @@ using hardware::hidl_vec; namespace V1_0 = hardware::broadcastradio::V1_0; namespace V1_1 = hardware::broadcastradio::V1_1; -namespace V1_2 = hardware::broadcastradio::V1_2; namespace utils = hardware::broadcastradio::utils; using V1_0::Band; using V1_0::BandConfig; using V1_0::MetaData; using V1_0::Result; +using V1_1::ITunerCallback; using V1_1::ProgramInfo; using V1_1::ProgramListResult; using V1_1::ProgramSelector; using V1_1::VendorKeyValue; -using V1_2::ITunerCallback; using utils::HalRevision; static JavaVM *gvm = nullptr; @@ -70,7 +69,6 @@ static struct { jmethodID onBackgroundScanAvailabilityChange; jmethodID onBackgroundScanComplete; jmethodID onProgramListChanged; - jmethodID onParametersUpdated; } TunerCallback; } gjni; @@ -122,7 +120,6 @@ public: virtual Return backgroundScanComplete(ProgramListResult result); virtual Return programListChanged(); virtual Return currentProgramInfoChanged(const ProgramInfo& info); - virtual Return parametersUpdated(const hidl_vec& parameters); }; struct TunerCallbackContext { @@ -344,17 +341,6 @@ Return NativeCallback::currentProgramInfoChanged(const ProgramInfo& info) return Return(); } -Return NativeCallback::parametersUpdated(const hidl_vec& parameters) { - ALOGV("%s", __func__); - - mCallbackThread.enqueue([this, parameters](JNIEnv *env) { - auto jParameters = convert::VendorInfoFromHal(env, parameters); - env->CallVoidMethod(mJCallback, gjni.TunerCallback.onParametersUpdated, jParameters.get()); - }); - - return {}; -} - static TunerCallbackContext& getNativeContext(jlong nativeContextHandle) { auto nativeContext = reinterpret_cast(nativeContextHandle); LOG_ALWAYS_FATAL_IF(nativeContext == nullptr, "Native context not initialized"); @@ -441,8 +427,6 @@ void register_android_server_broadcastradio_TunerCallback(JavaVM *vm, JNIEnv *en "onBackgroundScanComplete", "()V"); gjni.TunerCallback.onProgramListChanged = GetMethodIDOrDie(env, tunerCbClass, "onProgramListChanged", "()V"); - gjni.TunerCallback.onParametersUpdated = GetMethodIDOrDie(env, tunerCbClass, - "onParametersUpdated", "(Ljava/util/Map;)V"); auto res = jniRegisterNativeMethods(env, "com/android/server/broadcastradio/hal1/TunerCallback", gTunerCallbackMethods, NELEM(gTunerCallbackMethods)); diff --git a/services/core/jni/BroadcastRadio/TunerCallback.h b/services/core/jni/BroadcastRadio/TunerCallback.h index 7e776c29c35a4..af12d213d7276 100644 --- a/services/core/jni/BroadcastRadio/TunerCallback.h +++ b/services/core/jni/BroadcastRadio/TunerCallback.h @@ -21,7 +21,7 @@ #include "NativeCallbackThread.h" #include "types.h" -#include +#include #include namespace android { @@ -32,7 +32,7 @@ namespace server { namespace BroadcastRadio { namespace TunerCallback { -sp +sp getNativeCallback(JNIEnv *env, jobject jTunerCallback); } // namespace TunerCallback