Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04f63c1e authored by Michael Butler's avatar Michael Butler Committed by Automerger Merge Worker
Browse files

Merge "Configure Version value for each version of NN AIDL utils" am:...

Merge "Configure Version value for each version of NN AIDL utils" am: 21e079c9 am: a0c21651 am: 99aea2fe

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1890278

Change-Id: Iac8bb4f11d27bb3dbd607b2d08361ef7743d1206
parents 8e6e7afc 99aea2fe
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@

#include "nnapi/hal/aidl/Conversions.h"

#include <aidl/android/hardware/neuralnetworks/IDevice.h>
#include <android-base/logging.h>
#include <nnapi/Result.h>
#include <nnapi/TypeUtils.h>
@@ -28,7 +29,19 @@
namespace aidl::android::hardware::neuralnetworks::utils {

constexpr auto kDefaultPriority = Priority::MEDIUM;
constexpr auto kVersion = nn::Version::FEATURE_LEVEL_6;

constexpr std::optional<nn::Version> aidlVersionToCanonicalVersion(int aidlVersion) {
    switch (aidlVersion) {
        case 1:
            return nn::Version::ANDROID_S;
        case 2:
            return nn::Version::FEATURE_LEVEL_6;
        default:
            return std::nullopt;
    }
}

constexpr auto kVersion = aidlVersionToCanonicalVersion(IDevice::version).value();

template <typename Type>
nn::Result<void> validate(const Type& halObject) {
+4 −6
Original line number Diff line number Diff line
@@ -46,14 +46,12 @@ nn::GeneralResult<nn::Version> getAidlServiceFeatureLevel(IDevice* service) {
    aidlVersion = std::min(aidlVersion, IDevice::version);

    // Map stable AIDL versions to canonical versions.
    switch (aidlVersion) {
        case 1:
            return nn::Version::ANDROID_S;
        case 2:
            return nn::Version::FEATURE_LEVEL_6;
    }
    auto version = aidlVersionToCanonicalVersion(aidlVersion);
    if (!version.has_value()) {
        return NN_ERROR() << "Unknown AIDL service version: " << aidlVersion;
    }
    return version.value();
}

}  // namespace