Loading automotive/vehicle/2.0/types.hal +6 −3 Original line number Diff line number Diff line Loading @@ -2546,9 +2546,8 @@ enum VehicleProperty : int32_t { * NOTE: if the HAL doesn't support user management, then it should not define this property, * which in turn would disable the other user-related properties (for example, the Android * system would never issue them and user-related requests from the HAL layer would be ignored * by the Android System). But if it supports user management, then it must support all * user-related properties (INITIAL_USER_INFO, SWITCH_USER, CREATE_USER, REMOVE_USER, * and USER_IDENTIFICATION_ASSOCIATION). * by the Android System). But if it supports user management, then it must support all core * user-related properties (INITIAL_USER_INFO, SWITCH_USER, CREATE_USER, and REMOVE_USER). * * @change_mode VehiclePropertyChangeMode:ON_CHANGE * @access VehiclePropertyAccess:READ_WRITE Loading Loading @@ -2818,6 +2817,10 @@ enum VehicleProperty : int32_t { * Property used to associate (or query the association) the current user with vehicle-specific * identification mechanisms (such as key FOB). * * This is an optional user management property - the OEM could still support user management * without defining it. In fact, this property could be used without supporting the core * user-related functions described on INITIAL_USER_INFO. * * To query the association, the Android system gets the property, passing a VehiclePropValue * containing the types of associations are being queried, as defined by * UserIdentificationGetRequest. The HAL must return right away, returning a VehiclePropValue Loading camera/device/3.2/ICameraDeviceCallback.hal +2 −1 Original line number Diff line number Diff line Loading @@ -95,7 +95,8 @@ interface ICameraDeviceCallback { * statuses must be STATUS_ERROR, and the result metadata must be an * empty buffer. In addition, notify() must be called with a ERROR_REQUEST * message. In this case, individual ERROR_RESULT/ERROR_BUFFER messages * must not be sent. * must not be sent. Note that valid partial results are still allowed * as long as the final result metadata fails to be generated. * * Performance requirements: * Loading current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -588,6 +588,7 @@ c3ec182ce325862b7d79e526f3e170c02cfee1497ed309d7c60d0de4ca636b0b android.hardwar 578f640c653726d58f99c84a7e1bb63862e21ef7cbb4f7d95c3cc62de00dca35 android.hardware.automotive.evs@1.0::IEvsDisplay f5bc6aa840db933cb9fd36668b06d3e2021cf5384bb70e459f22e2f2f921fba5 android.hardware.automotive.evs@1.0::IEvsEnumerator d3a344b7bd4c0d2658ae7209f55a979b8f53f361fd00f4fca29d5baa56d11fd2 android.hardware.automotive.evs@1.0::types d123013165a19b6353cdc46a57b2ff4a17179619d36dbd595dfcf15dcd099af6 android.hardware.camera.device@3.2::ICameraDeviceCallback # b/155353799 2410dd02d67786a732d36e80b0f8ccf55086604ef37f9838e2013ff2c571e404 android.hardware.camera.device@3.5::types cd06a7911b9acd4a653bbf7133888878fbcb3f84be177c7a3f1becaae3d8618f android.hardware.camera.metadata@3.2::types 5cf81b1001296fbb3c5b3d275a859244f61cec5fa858d7be9cca46c5b7dfa733 android.hardware.camera.metadata@3.2::types # b/150331548 Loading gnss/1.1/vts/functional/Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ cc_test { static_libs: [ "android.hardware.gnss@1.0", "android.hardware.gnss@1.1", "android.hardware.gnss@2.0", "android.hardware.gnss@common-vts-lib", ], shared_libs: [ Loading gnss/2.0/vts/functional/gnss_hal_test.cpp +43 −0 Original line number Diff line number Diff line Loading @@ -247,3 +247,46 @@ Return<void> GnssHalTest::GnssMeasurementCorrectionsCallback::setCapabilitiesCb( capabilities_cbq_.store(capabilities); return Void(); } GnssConstellationType_1_0 GnssHalTest::startLocationAndGetNonGpsConstellation() { const int kLocationsToAwait = 3; gnss_cb_->location_cbq_.reset(); StartAndCheckLocations(kLocationsToAwait); const int location_called_count = gnss_cb_->location_cbq_.calledCount(); // Tolerate 1 less sv status to handle edge cases in reporting. int sv_info_list_cbq_size = gnss_cb_->sv_info_list_cbq_.size(); EXPECT_GE(sv_info_list_cbq_size + 1, kLocationsToAwait); ALOGD("Observed %d GnssSvStatus, while awaiting %d Locations (%d received)", sv_info_list_cbq_size, kLocationsToAwait, location_called_count); // Find first non-GPS constellation to blacklist. Exclude IRNSS in GnssConstellationType_2_0 // as blacklisting of this constellation is not supported in gnss@2.0. const int kGnssSvStatusTimeout = 2; GnssConstellationType_1_0 constellation_to_blacklist = GnssConstellationType_1_0::UNKNOWN; for (int i = 0; i < sv_info_list_cbq_size; ++i) { hidl_vec<IGnssCallback_2_0::GnssSvInfo> sv_info_list; gnss_cb_->sv_info_list_cbq_.retrieve(sv_info_list, kGnssSvStatusTimeout); for (IGnssCallback_2_0::GnssSvInfo sv_info : sv_info_list) { if ((sv_info.v1_0.svFlag & IGnssCallback_2_0::GnssSvFlags::USED_IN_FIX) && (sv_info.constellation != GnssConstellationType_2_0::UNKNOWN) && (sv_info.constellation != GnssConstellationType_2_0::IRNSS) && (sv_info.constellation != GnssConstellationType_2_0::GPS)) { // found a non-GPS V1_0 constellation constellation_to_blacklist = Utils::mapConstellationType(sv_info.constellation); break; } } if (constellation_to_blacklist != GnssConstellationType_1_0::UNKNOWN) { break; } } if (constellation_to_blacklist == GnssConstellationType_1_0::UNKNOWN) { ALOGI("No non-GPS constellations found, constellation blacklist test less effective."); // Proceed functionally to blacklist something. constellation_to_blacklist = GnssConstellationType_1_0::GLONASS; } return constellation_to_blacklist; } Loading
automotive/vehicle/2.0/types.hal +6 −3 Original line number Diff line number Diff line Loading @@ -2546,9 +2546,8 @@ enum VehicleProperty : int32_t { * NOTE: if the HAL doesn't support user management, then it should not define this property, * which in turn would disable the other user-related properties (for example, the Android * system would never issue them and user-related requests from the HAL layer would be ignored * by the Android System). But if it supports user management, then it must support all * user-related properties (INITIAL_USER_INFO, SWITCH_USER, CREATE_USER, REMOVE_USER, * and USER_IDENTIFICATION_ASSOCIATION). * by the Android System). But if it supports user management, then it must support all core * user-related properties (INITIAL_USER_INFO, SWITCH_USER, CREATE_USER, and REMOVE_USER). * * @change_mode VehiclePropertyChangeMode:ON_CHANGE * @access VehiclePropertyAccess:READ_WRITE Loading Loading @@ -2818,6 +2817,10 @@ enum VehicleProperty : int32_t { * Property used to associate (or query the association) the current user with vehicle-specific * identification mechanisms (such as key FOB). * * This is an optional user management property - the OEM could still support user management * without defining it. In fact, this property could be used without supporting the core * user-related functions described on INITIAL_USER_INFO. * * To query the association, the Android system gets the property, passing a VehiclePropValue * containing the types of associations are being queried, as defined by * UserIdentificationGetRequest. The HAL must return right away, returning a VehiclePropValue Loading
camera/device/3.2/ICameraDeviceCallback.hal +2 −1 Original line number Diff line number Diff line Loading @@ -95,7 +95,8 @@ interface ICameraDeviceCallback { * statuses must be STATUS_ERROR, and the result metadata must be an * empty buffer. In addition, notify() must be called with a ERROR_REQUEST * message. In this case, individual ERROR_RESULT/ERROR_BUFFER messages * must not be sent. * must not be sent. Note that valid partial results are still allowed * as long as the final result metadata fails to be generated. * * Performance requirements: * Loading
current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -588,6 +588,7 @@ c3ec182ce325862b7d79e526f3e170c02cfee1497ed309d7c60d0de4ca636b0b android.hardwar 578f640c653726d58f99c84a7e1bb63862e21ef7cbb4f7d95c3cc62de00dca35 android.hardware.automotive.evs@1.0::IEvsDisplay f5bc6aa840db933cb9fd36668b06d3e2021cf5384bb70e459f22e2f2f921fba5 android.hardware.automotive.evs@1.0::IEvsEnumerator d3a344b7bd4c0d2658ae7209f55a979b8f53f361fd00f4fca29d5baa56d11fd2 android.hardware.automotive.evs@1.0::types d123013165a19b6353cdc46a57b2ff4a17179619d36dbd595dfcf15dcd099af6 android.hardware.camera.device@3.2::ICameraDeviceCallback # b/155353799 2410dd02d67786a732d36e80b0f8ccf55086604ef37f9838e2013ff2c571e404 android.hardware.camera.device@3.5::types cd06a7911b9acd4a653bbf7133888878fbcb3f84be177c7a3f1becaae3d8618f android.hardware.camera.metadata@3.2::types 5cf81b1001296fbb3c5b3d275a859244f61cec5fa858d7be9cca46c5b7dfa733 android.hardware.camera.metadata@3.2::types # b/150331548 Loading
gnss/1.1/vts/functional/Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ cc_test { static_libs: [ "android.hardware.gnss@1.0", "android.hardware.gnss@1.1", "android.hardware.gnss@2.0", "android.hardware.gnss@common-vts-lib", ], shared_libs: [ Loading
gnss/2.0/vts/functional/gnss_hal_test.cpp +43 −0 Original line number Diff line number Diff line Loading @@ -247,3 +247,46 @@ Return<void> GnssHalTest::GnssMeasurementCorrectionsCallback::setCapabilitiesCb( capabilities_cbq_.store(capabilities); return Void(); } GnssConstellationType_1_0 GnssHalTest::startLocationAndGetNonGpsConstellation() { const int kLocationsToAwait = 3; gnss_cb_->location_cbq_.reset(); StartAndCheckLocations(kLocationsToAwait); const int location_called_count = gnss_cb_->location_cbq_.calledCount(); // Tolerate 1 less sv status to handle edge cases in reporting. int sv_info_list_cbq_size = gnss_cb_->sv_info_list_cbq_.size(); EXPECT_GE(sv_info_list_cbq_size + 1, kLocationsToAwait); ALOGD("Observed %d GnssSvStatus, while awaiting %d Locations (%d received)", sv_info_list_cbq_size, kLocationsToAwait, location_called_count); // Find first non-GPS constellation to blacklist. Exclude IRNSS in GnssConstellationType_2_0 // as blacklisting of this constellation is not supported in gnss@2.0. const int kGnssSvStatusTimeout = 2; GnssConstellationType_1_0 constellation_to_blacklist = GnssConstellationType_1_0::UNKNOWN; for (int i = 0; i < sv_info_list_cbq_size; ++i) { hidl_vec<IGnssCallback_2_0::GnssSvInfo> sv_info_list; gnss_cb_->sv_info_list_cbq_.retrieve(sv_info_list, kGnssSvStatusTimeout); for (IGnssCallback_2_0::GnssSvInfo sv_info : sv_info_list) { if ((sv_info.v1_0.svFlag & IGnssCallback_2_0::GnssSvFlags::USED_IN_FIX) && (sv_info.constellation != GnssConstellationType_2_0::UNKNOWN) && (sv_info.constellation != GnssConstellationType_2_0::IRNSS) && (sv_info.constellation != GnssConstellationType_2_0::GPS)) { // found a non-GPS V1_0 constellation constellation_to_blacklist = Utils::mapConstellationType(sv_info.constellation); break; } } if (constellation_to_blacklist != GnssConstellationType_1_0::UNKNOWN) { break; } } if (constellation_to_blacklist == GnssConstellationType_1_0::UNKNOWN) { ALOGI("No non-GPS constellations found, constellation blacklist test less effective."); // Proceed functionally to blacklist something. constellation_to_blacklist = GnssConstellationType_1_0::GLONASS; } return constellation_to_blacklist; }