diff options
Diffstat (limited to 'sensors')
-rw-r--r-- | sensors/aidl/android/hardware/sensors/ISensors.aidl | 5 | ||||
-rw-r--r-- | sensors/aidl/default/multihal/HalProxyAidl.cpp | 8 | ||||
-rw-r--r-- | sensors/aidl/vts/VtsAidlHalSensorsTargetTest.cpp | 26 |
3 files changed, 18 insertions, 21 deletions
diff --git a/sensors/aidl/android/hardware/sensors/ISensors.aidl b/sensors/aidl/android/hardware/sensors/ISensors.aidl index 2ac188454b..2c684897cf 100644 --- a/sensors/aidl/android/hardware/sensors/ISensors.aidl +++ b/sensors/aidl/android/hardware/sensors/ISensors.aidl @@ -229,8 +229,7 @@ interface ISensors { * * @param mem shared memory info data structure. * @param out channelHandle The registered channel handle. - * @return The direct channel handle, which is positive if successfully registered, and -1 - * otherwise. + * @return The direct channel handle, which is positive if successfully registered. * @return Status::ok on success * EX_ILLEGAL_ARGUMENT if the shared memory information is not consistent. * EX_UNSUPPORTED_OPERATION if this functionality is unsupported. @@ -245,7 +244,7 @@ interface ISensors { * @see OperationMode * @param mode The operation mode. * @return Status::ok on success - * EX_UNSUPPORTED_OPERATION if requested mode is not supported. + * EX_UNSUPPORTED_OPERATION or EX_ILLEGAL_ARGUMENT if requested mode is not supported. * EX_SECURITY if the operation is not allowed. */ void setOperationMode(in OperationMode mode); diff --git a/sensors/aidl/default/multihal/HalProxyAidl.cpp b/sensors/aidl/default/multihal/HalProxyAidl.cpp index 628914c3e3..e6bcdada52 100644 --- a/sensors/aidl/default/multihal/HalProxyAidl.cpp +++ b/sensors/aidl/default/multihal/HalProxyAidl.cpp @@ -141,10 +141,6 @@ ScopedAStatus HalProxyAidl::configDirectReport(int32_t in_sensorHandle, *_aidl_return = reportToken; }); - if (!status.isOk()) { - *_aidl_return = -1; - } - return status; } @@ -216,10 +212,6 @@ HalProxyAidl::registerDirectChannel(const ISensors::SharedMemInfo &in_mem, native_handle_delete(const_cast<native_handle_t *>( sharedMemInfo.memoryHandle.getNativeHandle())); - if (!status.isOk()) { - *_aidl_return = -1; - } - return status; } diff --git a/sensors/aidl/vts/VtsAidlHalSensorsTargetTest.cpp b/sensors/aidl/vts/VtsAidlHalSensorsTargetTest.cpp index 83d0dc97e1..d536e290b2 100644 --- a/sensors/aidl/vts/VtsAidlHalSensorsTargetTest.cpp +++ b/sensors/aidl/vts/VtsAidlHalSensorsTargetTest.cpp @@ -599,10 +599,12 @@ TEST_P(SensorsAidlTest, SetOperationMode) { ASSERT_TRUE(getSensors()->setOperationMode(ISensors::OperationMode::DATA_INJECTION).isOk()); ASSERT_TRUE(getSensors()->setOperationMode(ISensors::OperationMode::NORMAL).isOk()); } else { - ASSERT_EQ(getSensors() - ->setOperationMode(ISensors::OperationMode::DATA_INJECTION) - .getExceptionCode(), - EX_UNSUPPORTED_OPERATION); + int errorCode = + getSensors() + ->setOperationMode(ISensors::OperationMode::DATA_INJECTION) + .getExceptionCode(); + ASSERT_TRUE((errorCode == EX_UNSUPPORTED_OPERATION) || + (errorCode == EX_ILLEGAL_ARGUMENT)); } } @@ -938,10 +940,10 @@ void SensorsAidlTest::checkRateLevel(const SensorInfo& sensor, int32_t directCha if (isDirectReportRateSupported(sensor, rateLevel)) { ASSERT_TRUE(status.isOk()); if (rateLevel != ISensors::RateLevel::STOP) { - ASSERT_GT(*reportToken, 0); - } else { - ASSERT_EQ(status.getExceptionCode(), EX_ILLEGAL_ARGUMENT); + ASSERT_GT(*reportToken, 0); } + } else { + ASSERT_EQ(status.getExceptionCode(), EX_ILLEGAL_ARGUMENT); } } @@ -982,11 +984,15 @@ void SensorsAidlTest::verifyRegisterDirectChannel( ::ndk::ScopedAStatus status = registerDirectChannel(mem->getSharedMemInfo(), &channelHandle); if (supportsSharedMemType) { ASSERT_TRUE(status.isOk()); - ASSERT_EQ(channelHandle, 0); + ASSERT_GT(channelHandle, 0); + + // Verify that the memory has been zeroed + for (size_t i = 0; i < mem->getSize(); i++) { + ASSERT_EQ(buffer[i], 0x00); + } } else { int32_t error = supportsAnyDirectChannel ? EX_ILLEGAL_ARGUMENT : EX_UNSUPPORTED_OPERATION; ASSERT_EQ(status.getExceptionCode(), error); - ASSERT_EQ(channelHandle, -1); } *directChannelHandle = channelHandle; } @@ -1038,7 +1044,7 @@ void SensorsAidlTest::verifyConfigure(const SensorInfo& sensor, // Verify that a sensor handle of -1 is only acceptable when using RateLevel::STOP ndk::ScopedAStatus status = configDirectReport(-1 /* sensorHandle */, directChannelHandle, ISensors::RateLevel::NORMAL, &reportToken); - ASSERT_EQ(status.getServiceSpecificError(), android::BAD_VALUE); + ASSERT_EQ(status.getExceptionCode(), EX_ILLEGAL_ARGUMENT); status = configDirectReport(-1 /* sensorHandle */, directChannelHandle, ISensors::RateLevel::STOP, &reportToken); |