Add a new ResultCode corresponding to ErrorStatus::DEVICE_UNAVAILABLE
Bug: 120796109
Test: mm
Test: NeuralNetworksTest_static
Change-Id: I32575a625689668f9beffabff6b5e0055282c359
Merged-In: I32575a625689668f9beffabff6b5e0055282c359
(cherry picked from commit 70924898e4823d1def64088ee6f9bacb4021d352)
diff --git a/common/Utils.cpp b/common/Utils.cpp
index ebfbb8b..86909e8 100644
--- a/common/Utils.cpp
+++ b/common/Utils.cpp
@@ -2468,6 +2468,9 @@
case ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE:
return ErrorStatus::OUTPUT_INSUFFICIENT_SIZE;
+ case ANEURALNETWORKS_UNAVAILABLE_DEVICE:
+ return ErrorStatus::DEVICE_UNAVAILABLE;
+
default:
LOG(ERROR) << "Unknown result code " << resultCode
<< " mapped to ErrorStatus::GENERAL_FAILURE";
@@ -2492,11 +2495,13 @@
case ErrorStatus::OUTPUT_INSUFFICIENT_SIZE:
return ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE;
+ case ErrorStatus::DEVICE_UNAVAILABLE:
+ return ANEURALNETWORKS_UNAVAILABLE_DEVICE;
+
default:
LOG(ERROR) << "Unknown ErrorStatus " << toString(status)
<< " mapped to ANEURALNETWORKS_OP_FAILED";
return ANEURALNETWORKS_OP_FAILED;
- case ErrorStatus::DEVICE_UNAVAILABLE:
case ErrorStatus::GENERAL_FAILURE:
return ANEURALNETWORKS_OP_FAILED;
}
diff --git a/runtime/NeuralNetworks.cpp b/runtime/NeuralNetworks.cpp
index c053fad..a1b1d24 100644
--- a/runtime/NeuralNetworks.cpp
+++ b/runtime/NeuralNetworks.cpp
@@ -135,6 +135,8 @@
static_assert(ANEURALNETWORKS_UNMAPPABLE == 7, "ANEURALNETWORKS_UNMAPPABLE has changed");
static_assert(ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE == 8,
"ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE has changed");
+static_assert(ANEURALNETWORKS_UNAVAILABLE_DEVICE == 9,
+ "ANEURALNETWORKS_UNAVAILABLE_DEVICE has changed");
static_assert(ANEURALNETWORKS_MAX_SIZE_OF_IMMEDIATELY_COPIED_VALUES == 128,
"ANEURALNETWORKS_MAX_SIZE_OF_IMMEDIATELY_COPIED_VALUES has changed");
diff --git a/runtime/include/NeuralNetworks.h b/runtime/include/NeuralNetworks.h
index 4ceeb78..eb5661a 100644
--- a/runtime/include/NeuralNetworks.h
+++ b/runtime/include/NeuralNetworks.h
@@ -4355,6 +4355,11 @@
* Failure caused by insufficient buffer size provided to a model output.
*/
ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE = 8,
+
+ /**
+ * Failure caused by a device not being available.
+ */
+ ANEURALNETWORKS_UNAVAILABLE_DEVICE = 9,
} ResultCode;
/**
diff --git a/runtime/include/NeuralNetworksWrapper.h b/runtime/include/NeuralNetworksWrapper.h
index 0d6d815..2af57ec 100644
--- a/runtime/include/NeuralNetworksWrapper.h
+++ b/runtime/include/NeuralNetworksWrapper.h
@@ -62,6 +62,7 @@
UNMAPPABLE = ANEURALNETWORKS_UNMAPPABLE,
BAD_STATE = ANEURALNETWORKS_BAD_STATE,
OUTPUT_INSUFFICIENT_SIZE = ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE,
+ UNAVAILABLE_DEVICE = ANEURALNETWORKS_UNAVAILABLE_DEVICE,
};
struct SymmPerChannelQuantParams {
diff --git a/runtime/test/TestExecution.cpp b/runtime/test/TestExecution.cpp
index d19df6b..67187fc 100644
--- a/runtime/test/TestExecution.cpp
+++ b/runtime/test/TestExecution.cpp
@@ -406,7 +406,7 @@
auto kTestValues = ::testing::Values(
std::make_tuple(ErrorStatus::NONE, Result::NO_ERROR),
- std::make_tuple(ErrorStatus::DEVICE_UNAVAILABLE, Result::OP_FAILED),
+ std::make_tuple(ErrorStatus::DEVICE_UNAVAILABLE, Result::UNAVAILABLE_DEVICE),
std::make_tuple(ErrorStatus::GENERAL_FAILURE, Result::OP_FAILED),
std::make_tuple(ErrorStatus::OUTPUT_INSUFFICIENT_SIZE, Result::OUTPUT_INSUFFICIENT_SIZE),
std::make_tuple(ErrorStatus::INVALID_ARGUMENT, Result::BAD_DATA));
diff --git a/runtime/test/TestNeuralNetworksWrapper.h b/runtime/test/TestNeuralNetworksWrapper.h
index cc6a331..bf854d7 100644
--- a/runtime/test/TestNeuralNetworksWrapper.h
+++ b/runtime/test/TestNeuralNetworksWrapper.h
@@ -63,6 +63,7 @@
UNMAPPABLE = ANEURALNETWORKS_UNMAPPABLE,
BAD_STATE = ANEURALNETWORKS_BAD_STATE,
OUTPUT_INSUFFICIENT_SIZE = ANEURALNETWORKS_OUTPUT_INSUFFICIENT_SIZE,
+ UNAVAILABLE_DEVICE = ANEURALNETWORKS_UNAVAILABLE_DEVICE,
};
struct SymmPerChannelQuantParams {