Merge "sensors HAL uses "default" service name"
diff --git a/audio/2.0/default/StreamIn.cpp b/audio/2.0/default/StreamIn.cpp
index de7bf13..ad18986 100644
--- a/audio/2.0/default/StreamIn.cpp
+++ b/audio/2.0/default/StreamIn.cpp
@@ -275,7 +275,7 @@
if (mDataMQ) {
ALOGE("the client attempts to call prepareForReading twice");
_hidl_cb(Result::INVALID_STATE,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<ReadStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
std::unique_ptr<DataMQ> tempDataMQ(
@@ -285,7 +285,7 @@
ALOGE_IF(!tempDataMQ->isValid(), "data MQ is invalid");
ALOGE_IF(!tempStatusMQ->isValid(), "status MQ is invalid");
_hidl_cb(Result::INVALID_ARGUMENTS,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<ReadStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
// TODO: Remove event flag management once blocking MQ is implemented. b/33815422
@@ -293,7 +293,7 @@
if (status != OK || !mEfGroup) {
ALOGE("failed creating event flag for data MQ: %s", strerror(-status));
_hidl_cb(Result::INVALID_ARGUMENTS,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<ReadStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
@@ -309,7 +309,7 @@
if (status != OK) {
ALOGW("failed to start reader thread: %s", strerror(-status));
_hidl_cb(Result::INVALID_ARGUMENTS,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<ReadStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
diff --git a/audio/2.0/default/StreamOut.cpp b/audio/2.0/default/StreamOut.cpp
index ea6221e..1948b68 100644
--- a/audio/2.0/default/StreamOut.cpp
+++ b/audio/2.0/default/StreamOut.cpp
@@ -259,7 +259,7 @@
if (mDataMQ) {
ALOGE("the client attempts to call prepareForWriting twice");
_hidl_cb(Result::INVALID_STATE,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<WriteStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
std::unique_ptr<DataMQ> tempDataMQ(
@@ -269,7 +269,7 @@
ALOGE_IF(!tempDataMQ->isValid(), "data MQ is invalid");
ALOGE_IF(!tempStatusMQ->isValid(), "status MQ is invalid");
_hidl_cb(Result::INVALID_ARGUMENTS,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<WriteStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
// TODO: Remove event flag management once blocking MQ is implemented. b/33815422
@@ -277,7 +277,7 @@
if (status != OK || !mEfGroup) {
ALOGE("failed creating event flag for data MQ: %s", strerror(-status));
_hidl_cb(Result::INVALID_ARGUMENTS,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<WriteStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
@@ -293,7 +293,7 @@
if (status != OK) {
ALOGW("failed to start writer thread: %s", strerror(-status));
_hidl_cb(Result::INVALID_ARGUMENTS,
- MQDescriptorSync<uint8_t>(), MQDescriptorSync<WriteStatus>());
+ DataMQ::Descriptor(), StatusMQ::Descriptor());
return Void();
}
diff --git a/biometrics/fingerprint/2.1/default/BiometricsFingerprint.cpp b/biometrics/fingerprint/2.1/default/BiometricsFingerprint.cpp
index eb28e46..516cd00 100644
--- a/biometrics/fingerprint/2.1/default/BiometricsFingerprint.cpp
+++ b/biometrics/fingerprint/2.1/default/BiometricsFingerprint.cpp
@@ -25,6 +25,8 @@
#include <hardware/fingerprint.h>
#include "BiometricsFingerprint.h"
+#include <inttypes.h>
+
namespace android {
namespace hardware {
namespace biometrics {
@@ -245,12 +247,12 @@
if (auth_token != nullptr && auth_token_length > 0) {
// TODO: cache service?
sp<IServiceManager> sm = android::defaultServiceManager();
- sp<IBinder> binder = sm->getService(String16("android.security.keystore"));
+ sp<::android::IBinder> binder = sm->getService(String16("android.security.keystore"));
sp<IKeystoreService> service = interface_cast<IKeystoreService>(binder);
if (service != nullptr) {
- status_t ret = service->addAuthToken(auth_token, auth_token_length);
- if (ret != ResponseCode::NO_ERROR) {
- ALOGE("Falure sending auth token to KeyStore: %d", ret);
+ auto ret = service->addAuthToken(auth_token, auth_token_length);
+ if (!ret.isOk()) {
+ ALOGE("Failure sending auth token to KeyStore: %" PRId32, int32_t(ret));
}
} else {
ALOGE("Unable to communicate with KeyStore");
diff --git a/bluetooth/1.0/vts/Android.mk b/bluetooth/1.0/vts/Android.mk
new file mode 100644
index 0000000..85e0c38
--- /dev/null
+++ b/bluetooth/1.0/vts/Android.mk
@@ -0,0 +1,19 @@
+#
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+LOCAL_PATH := $(call my-dir)
+
+include $(LOCAL_PATH)/functional/vts/testcases/hal/bluetooth/hidl/Android.mk
diff --git a/bluetooth/1.0/vts/BluetoothHci.vts b/bluetooth/1.0/vts/BluetoothHci.vts
new file mode 100644
index 0000000..1112371
--- /dev/null
+++ b/bluetooth/1.0/vts/BluetoothHci.vts
@@ -0,0 +1,61 @@
+component_class: HAL_HIDL
+component_type_version: 1.0
+component_name: "IBluetoothHci"
+
+package: "android.hardware.bluetooth"
+
+import: "android.hardware.bluetooth@1.0::IBluetoothHciCallbacks"
+import: "android.hardware.bluetooth@1.0::types"
+
+interface: {
+ api: {
+ name: "initialize"
+ return_type_hidl: {
+ type: TYPE_ENUM
+ predefined_type: "::android::hardware::bluetooth::V1_0::Status"
+ }
+ arg: {
+ type: TYPE_HIDL_INTERFACE
+ predefined_type: "IBluetoothHciCallbacks"
+ is_callback: false
+ }
+ }
+
+ api: {
+ name: "sendHciCommand"
+ arg: {
+ type: TYPE_VECTOR
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+ api: {
+ name: "sendAclData"
+ arg: {
+ type: TYPE_VECTOR
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+ api: {
+ name: "sendScoData"
+ arg: {
+ type: TYPE_VECTOR
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+ api: {
+ name: "close"
+ }
+
+}
diff --git a/bluetooth/1.0/vts/BluetoothHciCallbacks.vts b/bluetooth/1.0/vts/BluetoothHciCallbacks.vts
new file mode 100644
index 0000000..f2df5b4
--- /dev/null
+++ b/bluetooth/1.0/vts/BluetoothHciCallbacks.vts
@@ -0,0 +1,43 @@
+component_class: HAL_HIDL
+component_type_version: 1.0
+component_name: "IBluetoothHciCallbacks"
+
+package: "android.hardware.bluetooth"
+
+import: "android.hardware.bluetooth@1.0::types"
+
+interface: {
+ api: {
+ name: "hciEventReceived"
+ arg: {
+ type: TYPE_VECTOR
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+ api: {
+ name: "aclDataReceived"
+ arg: {
+ type: TYPE_VECTOR
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+ api: {
+ name: "scoDataReceived"
+ arg: {
+ type: TYPE_VECTOR
+ vector_value: {
+ type: TYPE_SCALAR
+ scalar_type: "uint8_t"
+ }
+ }
+ }
+
+}
diff --git a/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/Android.mk b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/Android.mk
new file mode 100644
index 0000000..f9e3276
--- /dev/null
+++ b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/Android.mk
@@ -0,0 +1,19 @@
+#
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+LOCAL_PATH := $(call my-dir)
+
+include $(call all-subdir-makefiles)
diff --git a/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target/Android.mk b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target/Android.mk
new file mode 100644
index 0000000..98bb686
--- /dev/null
+++ b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target/Android.mk
@@ -0,0 +1,23 @@
+#
+# Copyright (C) 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := HalBluetoothHidlTargetBasicTest
+VTS_CONFIG_SRC_DIR := testcases/hal/bluetooth/hidl/target
+include test/vts/tools/build/Android.host_config.mk
diff --git a/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target/AndroidTest.xml b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target/AndroidTest.xml
new file mode 100644
index 0000000..54fb89b
--- /dev/null
+++ b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target/AndroidTest.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<configuration description="Config for VTS Bluetooth HIDL HAL's basic target-side test cases">
+ <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+ <option name="push-group" value="HidlHalTest.push" />
+ </target_preparer>
+ <target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+ <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+ <option name="test-module-name" value="HalBluetoothHidlTargetBasicTest" />
+ <option name="binary-test-sources" value="
+ _64bit::DATA/nativetest64/bluetooth_hidl_hal_test/bluetooth_hidl_hal_test,
+ "/>
+ <option name="binary-test-type" value="gtest" />
+ <option name="test-timeout" value="1m" />
+ </test>
+</configuration>
diff --git a/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target_profiling/Android.mk b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target_profiling/Android.mk
new file mode 100644
index 0000000..81a2db9
--- /dev/null
+++ b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target_profiling/Android.mk
@@ -0,0 +1,23 @@
+#
+## Copyright (C) 2016 The Android Open Source Project
+#
+## Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# # You may obtain a copy of the License at
+# #
+# # http://www.apache.org/licenses/LICENSE-2.0
+# #
+# # Unless required by applicable law or agreed to in writing, software
+# # distributed under the License is distributed on an "AS IS" BASIS,
+# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# # See the License for the specific language governing permissions and
+# # limitations under the License.
+# #
+
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := BluetoothHidlTargetProfilingTest
+VTS_CONFIG_SRC_DIR := testcases/hal/bluetooth/hidl/target_profiling
+include test/vts/tools/build/Android.host_config.mk
diff --git a/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target_profiling/AndroidTest.xml b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target_profiling/AndroidTest.xml
new file mode 100644
index 0000000..8052b3c
--- /dev/null
+++ b/bluetooth/1.0/vts/functional/vts/testcases/hal/bluetooth/hidl/target_profiling/AndroidTest.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<configuration description="Config for VTS Bluetooth HIDL HAL's target-side profiling test cases">
+ <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher">
+ <option name="push-group" value="HidlHalTest.push" />
+ </target_preparer>
+ <target_preparer class="com.android.tradefed.targetprep.VtsPythonVirtualenvPreparer" />
+ <test class="com.android.tradefed.testtype.VtsMultiDeviceTest">
+ <option name="test-module-name" value="BluetoothHidlTargetProfilingTest" />
+ <option name="binary-test-sources" value="
+ _64bit::DATA/nativetest64/bluetooth_hidl_hal_test/bluetooth_hidl_hal_test,
+ "/>
+ <option name="binary-test-type" value="gtest" />
+ <option name="test-timeout" value="1m" />
+ <option name="enable-profiling" value="true" />
+ </test>
+</configuration>
diff --git a/bluetooth/1.0/vts/types.vts b/bluetooth/1.0/vts/types.vts
new file mode 100644
index 0000000..59eb3d4
--- /dev/null
+++ b/bluetooth/1.0/vts/types.vts
@@ -0,0 +1,32 @@
+component_class: HAL_HIDL
+component_type_version: 1.0
+component_name: "types"
+
+package: "android.hardware.bluetooth"
+
+
+attribute: {
+ name: "::android::hardware::bluetooth::V1_0::Status"
+ type: TYPE_ENUM
+ enum_value: {
+ scalar_type: "int32_t"
+
+ enumerator: "SUCCESS"
+ scalar_value: {
+ int32_t: 0
+ }
+ enumerator: "TRANSPORT_ERROR"
+ scalar_value: {
+ int32_t: 1
+ }
+ enumerator: "INITIALIZATION_ERROR"
+ scalar_value: {
+ int32_t: 2
+ }
+ enumerator: "UNKNOWN"
+ scalar_value: {
+ int32_t: 3
+ }
+ }
+}
+
diff --git a/boot/1.0/default/BootControl.cpp b/boot/1.0/default/BootControl.cpp
index 828da16..9a90076 100644
--- a/boot/1.0/default/BootControl.cpp
+++ b/boot/1.0/default/BootControl.cpp
@@ -93,14 +93,14 @@
}
-IBootControl* HIDL_FETCH_IBootControl(const char* hal) {
+IBootControl* HIDL_FETCH_IBootControl(const char* /* hal */) {
int ret = 0;
boot_control_module_t* module = NULL;
hw_module_t **hwm = reinterpret_cast<hw_module_t**>(&module);
- ret = hw_get_module(hal, const_cast<const hw_module_t**>(hwm));
+ ret = hw_get_module(BOOT_CONTROL_HARDWARE_MODULE_ID, const_cast<const hw_module_t**>(hwm));
if (ret)
{
- ALOGE("hw_get_module %s failed: %d", hal, ret);
+ ALOGE("hw_get_module %s failed: %d", BOOT_CONTROL_HARDWARE_MODULE_ID, ret);
return nullptr;
}
module->init(module);
diff --git a/boot/1.0/default/service.cpp b/boot/1.0/default/service.cpp
index 0dc56bf..f3996ef 100644
--- a/boot/1.0/default/service.cpp
+++ b/boot/1.0/default/service.cpp
@@ -22,5 +22,5 @@
using android::hardware::defaultPassthroughServiceImplementation;
int main (int /* argc */, char * /* argv */ []) {
- return defaultPassthroughServiceImplementation<IBootControl>("bootctrl");
+ return defaultPassthroughServiceImplementation<IBootControl>();
}
diff --git a/boot/1.0/vts/functional/boot_hidl_hal_test.cpp b/boot/1.0/vts/functional/boot_hidl_hal_test.cpp
index 3413a93..36142df 100644
--- a/boot/1.0/vts/functional/boot_hidl_hal_test.cpp
+++ b/boot/1.0/vts/functional/boot_hidl_hal_test.cpp
@@ -35,7 +35,7 @@
class BootHidlTest : public ::testing::Test {
public:
virtual void SetUp() override {
- boot = IBootControl::getService("bootctrl");
+ boot = IBootControl::getService();
ASSERT_NE(boot, nullptr);
}
diff --git a/gnss/1.0/IGnssCallback.hal b/gnss/1.0/IGnssCallback.hal
index eb66d78..afef55f 100644
--- a/gnss/1.0/IGnssCallback.hal
+++ b/gnss/1.0/IGnssCallback.hal
@@ -111,9 +111,16 @@
/*
* Carrier frequency of the signal tracked, for example it can be the
- * GPS L1 = 1.57542e9 Hz, or L2, L5, varying GLO channels, etc. If
- * the field is not set, it is the primary common use frequency,
- * e.g. L1 for GPS.
+ * GPS central frequency for L1 = 1575.45 MHz, or L2 = 1227.60 MHz, L5 =
+ * 1176.45 MHz, varying GLO channels, etc. If the field is not set, it
+ * is the primary common use central frequency, e.g. L1 = 1575.45 MHz
+ * for GPS.
+ *
+ * For an L1, L5 receiver tracking a satellite on L1 and L5 at the same
+ * time, two GnssSvInfo structs must be reported for this same
+ * satellite, in one of the structs, all the values related
+ * to L1 must be filled, and in the other all of the values related to
+ * L5 must be filled.
*
* If the data is available, gnssClockFlags must contain
* HAS_CARRIER_FREQUENCY.
diff --git a/gnss/1.0/IGnssMeasurementCallback.hal b/gnss/1.0/IGnssMeasurementCallback.hal
index de640ae..00e57cd 100644
--- a/gnss/1.0/IGnssMeasurementCallback.hal
+++ b/gnss/1.0/IGnssMeasurementCallback.hal
@@ -480,9 +480,16 @@
/*
* Carrier frequency of the signal tracked, for example it can be the
- * GPS L1 = 1.57542e9 Hz, or L2, L5, varying GLO channels, etc. If the
- * field is not set, it is the primary common use frequency,
- * e.g. L1 for GPS.
+ * GPS central frequency for L1 = 1575.45 MHz, or L2 = 1227.60 MHz, L5 =
+ * 1176.45 MHz, varying GLO channels, etc. If the field is not set, it
+ * is the primary common use central frequency, e.g. L1 = 1575.45 MHz
+ * for GPS.
+ *
+ * For an L1, L5 receiver tracking a satellite on L1 and L5 at the same
+ * time, two raw measurement structs must be reported for this same
+ * satellite, in one of the measurement structs, all the values related
+ * to L1 must be filled, and in the other all of the values related to
+ * L5 must be filled.
*
* If the data is available, gnssClockFlags must contain
* HAS_CARRIER_FREQUENCY.
@@ -552,12 +559,12 @@
/*
* Automatic gain control (AGC) level. AGC acts as a variable gain
- * amplifier adjusting the power of the incoming signal to minimize the
- * quantization losses. The AGC level may be used to indicate potential
- * interference. When AGC is at a nominal level, this value
- * must be set as 0. Higher gain (and/or lower input power) must be
- * output as a positive number. Hence in cases of strong jamming, in the
- * band of this signal, this value must go more negative.
+ * amplifier adjusting the power of the incoming signal. The AGC level
+ * may be used to indicate potential interference. When AGC is at a
+ * nominal level, this value must be set as 0. Higher gain (and/or lower
+ * input power) must be output as a positive number. Hence in cases of
+ * strong jamming, in the band of this signal, this value must go more
+ * negative.
*
* Note: Different hardware designs (e.g. antenna, pre-amplification, or
* other RF HW components) may also affect the typical output of of this
diff --git a/graphics/common/1.0/types.hal b/graphics/common/1.0/types.hal
index ebdba77..6fddfaf 100644
--- a/graphics/common/1.0/types.hal
+++ b/graphics/common/1.0/types.hal
@@ -1264,7 +1264,7 @@
* red 0.680 0.320
* white (D65) 0.3127 0.3290
*
- * Gamma: 2.2
+ * Gamma: 2.6
*/
DCI_P3 = 6,
@@ -1309,7 +1309,27 @@
*
* Gamma: 2.2
*/
- ADOBE_RGB = 8
+ ADOBE_RGB = 8,
+
+ /*
+ * DISPLAY_P3 is a color space that uses the DCI_P3 primaries,
+ * the D65 white point and the SRGB transfer functions.
+ * Rendering Intent: Colorimetric
+ * Primaries:
+ * x y
+ * green 0.265 0.690
+ * blue 0.150 0.060
+ * red 0.680 0.320
+ * white (D65) 0.3127 0.3290
+ *
+ * PC/Internet (sRGB) Gamma Correction (GC):
+ *
+ * if Vlinear ≤ 0.0031308
+ * Vnonlinear = 12.92 * Vlinear
+ * else
+ * Vnonlinear = 1.055 * (Vlinear)^(1/2.4) – 0.055
+ */
+ DISPLAY_P3 = 9
};
/*
diff --git a/graphics/composer/2.1/default/HwcClient.cpp b/graphics/composer/2.1/default/HwcClient.cpp
index 54dfd89..621cb14 100644
--- a/graphics/composer/2.1/default/HwcClient.cpp
+++ b/graphics/composer/2.1/default/HwcClient.cpp
@@ -514,7 +514,7 @@
if (outDescriptor) {
hidl_cb(Error::NONE, *outDescriptor);
} else {
- hidl_cb(Error::NO_RESOURCES, MQDescriptorSync<uint32_t>());
+ hidl_cb(Error::NO_RESOURCES, CommandQueueType::Descriptor());
}
return Void();
diff --git a/vehicle/2.0/vts/functional/vts/testcases/hal/vehicle/hidl/host/VehicleHidlTest.py b/vehicle/2.0/vts/functional/vts/testcases/hal/vehicle/hidl/host/VehicleHidlTest.py
index 5faf78a..cd52abf 100644
--- a/vehicle/2.0/vts/functional/vts/testcases/hal/vehicle/hidl/host/VehicleHidlTest.py
+++ b/vehicle/2.0/vts/functional/vts/testcases/hal/vehicle/hidl/host/VehicleHidlTest.py
@@ -20,6 +20,7 @@
from vts.runners.host import asserts
from vts.runners.host import base_test_with_webdb
+from vts.runners.host import const
from vts.runners.host import test_runner
from vts.utils.python.controllers import android_device
from vts.utils.python.profiling import profiling_utils
@@ -35,6 +36,10 @@
self.dut.shell.InvokeTerminal("one")
self.dut.shell.one.Execute("setenforce 0") # SELinux permissive mode
+ results = self.dut.shell.one.Execute("id -u system")
+ system_uid = results[const.STDOUT][0].strip()
+ logging.info("system_uid: %s", system_uid)
+
self.dut.hal.InitHidlHal(
target_type="vehicle",
target_basepaths=self.dut.libPaths,
@@ -45,6 +50,7 @@
bits=64 if self.dut.is64Bit else 32)
self.vehicle = self.dut.hal.vehicle # shortcut
+ self.vehicle.SetCallerUid(system_uid)
self.vtypes = self.dut.hal.vehicle.GetHidlTypeInterface("types")
logging.info("vehicle types: %s", self.vtypes)