mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:50:18 +00:00
Merge changes from topics "head-up-display-enabled", "low-speed-emergency-braking-enabled", "low-speed-emergency-braking-state" into main
* changes: Added LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE to HAL Added LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED to HAL Added HEAD_UP_DISPLAY_ENABLED to HAL
This commit is contained in:
committed by
Android (Google) Code Review
commit
7482f1a9e3
@@ -125,6 +125,7 @@ std::unordered_map<VehicleProperty, VehiclePropertyAccess> AccessForVehiclePrope
|
||||
{VehicleProperty::DISPLAY_BRIGHTNESS, VehiclePropertyAccess::READ_WRITE},
|
||||
{VehicleProperty::PER_DISPLAY_BRIGHTNESS, VehiclePropertyAccess::READ_WRITE},
|
||||
{VehicleProperty::VALET_MODE_ENABLED, VehiclePropertyAccess::READ_WRITE},
|
||||
{VehicleProperty::HEAD_UP_DISPLAY_ENABLED, VehiclePropertyAccess::READ_WRITE},
|
||||
{VehicleProperty::HW_KEY_INPUT, VehiclePropertyAccess::READ},
|
||||
{VehicleProperty::HW_KEY_INPUT_V2, VehiclePropertyAccess::READ},
|
||||
{VehicleProperty::HW_MOTION_INPUT, VehiclePropertyAccess::READ},
|
||||
@@ -298,6 +299,8 @@ std::unordered_map<VehicleProperty, VehiclePropertyAccess> AccessForVehiclePrope
|
||||
{VehicleProperty::LOW_SPEED_COLLISION_WARNING_STATE, VehiclePropertyAccess::READ},
|
||||
{VehicleProperty::CROSS_TRAFFIC_MONITORING_ENABLED, VehiclePropertyAccess::READ_WRITE},
|
||||
{VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE, VehiclePropertyAccess::READ},
|
||||
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, VehiclePropertyAccess::READ_WRITE},
|
||||
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, VehiclePropertyAccess::READ},
|
||||
};
|
||||
|
||||
} // namespace vehicle
|
||||
|
||||
@@ -125,6 +125,7 @@ std::unordered_map<VehicleProperty, VehiclePropertyChangeMode> ChangeModeForVehi
|
||||
{VehicleProperty::DISPLAY_BRIGHTNESS, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::PER_DISPLAY_BRIGHTNESS, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::VALET_MODE_ENABLED, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::HEAD_UP_DISPLAY_ENABLED, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::HW_KEY_INPUT, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::HW_KEY_INPUT_V2, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::HW_MOTION_INPUT, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
@@ -298,6 +299,8 @@ std::unordered_map<VehicleProperty, VehiclePropertyChangeMode> ChangeModeForVehi
|
||||
{VehicleProperty::LOW_SPEED_COLLISION_WARNING_STATE, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::CROSS_TRAFFIC_MONITORING_ENABLED, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
{VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, VehiclePropertyChangeMode::ON_CHANGE},
|
||||
};
|
||||
|
||||
} // namespace vehicle
|
||||
|
||||
@@ -117,6 +117,7 @@ public final class AccessForVehicleProperty {
|
||||
Map.entry(VehicleProperty.DISPLAY_BRIGHTNESS, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.PER_DISPLAY_BRIGHTNESS, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.VALET_MODE_ENABLED, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.HEAD_UP_DISPLAY_ENABLED, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.HW_KEY_INPUT, VehiclePropertyAccess.READ),
|
||||
Map.entry(VehicleProperty.HW_KEY_INPUT_V2, VehiclePropertyAccess.READ),
|
||||
Map.entry(VehicleProperty.HW_MOTION_INPUT, VehiclePropertyAccess.READ),
|
||||
@@ -289,7 +290,9 @@ public final class AccessForVehicleProperty {
|
||||
Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_ENABLED, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_STATE, VehiclePropertyAccess.READ),
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_ENABLED, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, VehiclePropertyAccess.READ)
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, VehiclePropertyAccess.READ),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, VehiclePropertyAccess.READ_WRITE),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, VehiclePropertyAccess.READ)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
@@ -117,6 +117,7 @@ public final class ChangeModeForVehicleProperty {
|
||||
Map.entry(VehicleProperty.DISPLAY_BRIGHTNESS, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.PER_DISPLAY_BRIGHTNESS, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.VALET_MODE_ENABLED, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.HEAD_UP_DISPLAY_ENABLED, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.HW_KEY_INPUT, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.HW_KEY_INPUT_V2, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.HW_MOTION_INPUT, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
@@ -289,7 +290,9 @@ public final class ChangeModeForVehicleProperty {
|
||||
Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_ENABLED, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_STATE, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_ENABLED, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, VehiclePropertyChangeMode.ON_CHANGE)
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED, VehiclePropertyChangeMode.ON_CHANGE),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, VehiclePropertyChangeMode.ON_CHANGE)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
@@ -103,7 +103,8 @@ public final class EnumForVehicleProperty {
|
||||
Map.entry(VehicleProperty.DRIVER_DISTRACTION_STATE, List.of(DriverDistractionState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.DRIVER_DISTRACTION_WARNING, List.of(DriverDistractionWarning.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_COLLISION_WARNING_STATE, List.of(LowSpeedCollisionWarningState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, List.of(CrossTrafficMonitoringWarningState.class, ErrorState.class))
|
||||
Map.entry(VehicleProperty.CROSS_TRAFFIC_MONITORING_WARNING_STATE, List.of(CrossTrafficMonitoringWarningState.class, ErrorState.class)),
|
||||
Map.entry(VehicleProperty.LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE, List.of(LowSpeedAutomaticEmergencyBrakingState.class, ErrorState.class))
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
@@ -63,6 +63,7 @@ using ::aidl::android::hardware::automotive::vehicle::LaneCenteringAssistState;
|
||||
using ::aidl::android::hardware::automotive::vehicle::LaneDepartureWarningState;
|
||||
using ::aidl::android::hardware::automotive::vehicle::LaneKeepAssistState;
|
||||
using ::aidl::android::hardware::automotive::vehicle::LocationCharacterization;
|
||||
using ::aidl::android::hardware::automotive::vehicle::LowSpeedAutomaticEmergencyBrakingState;
|
||||
using ::aidl::android::hardware::automotive::vehicle::LowSpeedCollisionWarningState;
|
||||
using ::aidl::android::hardware::automotive::vehicle::RawPropValues;
|
||||
using ::aidl::android::hardware::automotive::vehicle::VehicleAirbagLocation;
|
||||
@@ -297,6 +298,8 @@ JsonValueParser::JsonValueParser() {
|
||||
std::make_unique<ConstantParser<ElectronicStabilityControlState>>();
|
||||
mConstantParsersByType["CrossTrafficMonitoringWarningState"] =
|
||||
std::make_unique<ConstantParser<CrossTrafficMonitoringWarningState>>();
|
||||
mConstantParsersByType["LowSpeedAutomaticEmergencyBrakingState"] =
|
||||
std::make_unique<ConstantParser<LowSpeedAutomaticEmergencyBrakingState>>();
|
||||
mConstantParsersByType["Constants"] = std::make_unique<LocalVariableParser>();
|
||||
#ifdef ENABLE_VEHICLE_HAL_TEST_PROPERTIES
|
||||
mConstantParsersByType["TestVendorProperty"] =
|
||||
|
||||
@@ -3218,6 +3218,19 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"property": "VehicleProperty::HEAD_UP_DISPLAY_ENABLED",
|
||||
"defaultValue": {
|
||||
"int32Values": [
|
||||
0
|
||||
]
|
||||
},
|
||||
"areas": [
|
||||
{
|
||||
"areaId": "Constants::SEAT_1_LEFT"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"property": "VehicleProperty::OBD2_LIVE_FRAME",
|
||||
"configArray": [
|
||||
@@ -4191,6 +4204,36 @@
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"property": "VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED",
|
||||
"defaultValue": {
|
||||
"int32Values": [
|
||||
1
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"property": "VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE",
|
||||
"defaultValue": {
|
||||
"int32Values": [
|
||||
"LowSpeedAutomaticEmergencyBrakingState::ENABLED"
|
||||
]
|
||||
},
|
||||
"areas": [
|
||||
{
|
||||
"areaId": 0,
|
||||
"supportedEnumValues": [
|
||||
"ErrorState::NOT_AVAILABLE_SAFETY",
|
||||
"ErrorState::NOT_AVAILABLE_POOR_VISIBILITY",
|
||||
"ErrorState::NOT_AVAILABLE_SPEED_HIGH",
|
||||
"ErrorState::NOT_AVAILABLE_DISABLED",
|
||||
"LowSpeedAutomaticEmergencyBrakingState::ENABLED",
|
||||
"LowSpeedAutomaticEmergencyBrakingState::ACTIVATED",
|
||||
"LowSpeedAutomaticEmergencyBrakingState::USER_OVERRIDE"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -246,6 +246,13 @@ const std::unordered_map<int32_t, std::vector<int32_t>> mAdasEnabledPropToAdasPr
|
||||
toInt(VehicleProperty::CROSS_TRAFFIC_MONITORING_WARNING_STATE),
|
||||
},
|
||||
},
|
||||
// LSAEB
|
||||
{
|
||||
toInt(VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED),
|
||||
{
|
||||
toInt(VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE),
|
||||
},
|
||||
},
|
||||
};
|
||||
} // namespace
|
||||
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
#include <aidl/android/hardware/automotive/vehicle/LaneDepartureWarningState.h>
|
||||
#include <aidl/android/hardware/automotive/vehicle/LaneKeepAssistState.h>
|
||||
#include <aidl/android/hardware/automotive/vehicle/LocationCharacterization.h>
|
||||
#include <aidl/android/hardware/automotive/vehicle/LowSpeedAutomaticEmergencyBrakingState.h>
|
||||
#include <aidl/android/hardware/automotive/vehicle/LowSpeedCollisionWarningState.h>
|
||||
#include <aidl/android/hardware/automotive/vehicle/Obd2CommonIgnitionMonitors.h>
|
||||
#include <aidl/android/hardware/automotive/vehicle/Obd2FuelSystemStatus.h>
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Copyright (C) 2023 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.
|
||||
*/
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
|
||||
// two cases:
|
||||
// 1). this is a frozen version file - do not edit this in any case.
|
||||
// 2). this is a 'current' file. If you make a backwards compatible change to
|
||||
// the interface (from the latest frozen version), the build system will
|
||||
// prompt you to update this file with `m <name>-update-api`.
|
||||
//
|
||||
// You must not make a backward incompatible change to any AIDL file built
|
||||
// with the aidl_interface module type with versions property set. The module
|
||||
// type is used to build AIDL files in a way that they can be used across
|
||||
// independently updatable components of the system. If a device is shipped
|
||||
// with such a backward incompatible change, it has a high risk of breaking
|
||||
// later when a module using the interface is updated, e.g., Mainline modules.
|
||||
|
||||
package android.hardware.automotive.vehicle;
|
||||
@Backing(type="int") @VintfStability
|
||||
enum LowSpeedAutomaticEmergencyBrakingState {
|
||||
OTHER = 0,
|
||||
ENABLED = 1,
|
||||
ACTIVATED = 2,
|
||||
USER_OVERRIDE = 3,
|
||||
}
|
||||
@@ -123,6 +123,7 @@ enum VehicleProperty {
|
||||
DISPLAY_BRIGHTNESS = (((0x0A03 + 0x10000000) + 0x01000000) + 0x00400000) /* 289409539 */,
|
||||
PER_DISPLAY_BRIGHTNESS = (((0x0A04 + 0x10000000) + 0x01000000) + 0x00410000) /* 289475076 */,
|
||||
VALET_MODE_ENABLED = (((0x0A05 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.GLOBAL) + android.hardware.automotive.vehicle.VehiclePropertyType.BOOLEAN) /* 287312389 */,
|
||||
HEAD_UP_DISPLAY_ENABLED = (((0x0A06 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.SEAT) + android.hardware.automotive.vehicle.VehiclePropertyType.BOOLEAN) /* 354421254 */,
|
||||
HW_KEY_INPUT = (((0x0A10 + 0x10000000) + 0x01000000) + 0x00410000) /* 289475088 */,
|
||||
HW_KEY_INPUT_V2 = (((0x0A11 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.SEAT) + android.hardware.automotive.vehicle.VehiclePropertyType.MIXED) /* 367004177 */,
|
||||
HW_MOTION_INPUT = (((0x0A12 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.SEAT) + android.hardware.automotive.vehicle.VehiclePropertyType.MIXED) /* 367004178 */,
|
||||
@@ -296,4 +297,6 @@ enum VehicleProperty {
|
||||
LOW_SPEED_COLLISION_WARNING_STATE = (((0x1022 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.GLOBAL) + android.hardware.automotive.vehicle.VehiclePropertyType.INT32) /* 289411106 */,
|
||||
CROSS_TRAFFIC_MONITORING_ENABLED = (((0x1023 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.GLOBAL) + android.hardware.automotive.vehicle.VehiclePropertyType.BOOLEAN) /* 287313955 */,
|
||||
CROSS_TRAFFIC_MONITORING_WARNING_STATE = (((0x1024 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.GLOBAL) + android.hardware.automotive.vehicle.VehiclePropertyType.INT32) /* 289411108 */,
|
||||
LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED = (((0x1025 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.GLOBAL) + android.hardware.automotive.vehicle.VehiclePropertyType.BOOLEAN) /* 287313957 */,
|
||||
LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE = (((0x1026 + android.hardware.automotive.vehicle.VehiclePropertyGroup.SYSTEM) + android.hardware.automotive.vehicle.VehicleArea.GLOBAL) + android.hardware.automotive.vehicle.VehiclePropertyType.INT32) /* 289411110 */,
|
||||
}
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
* Copyright (C) 2023 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.
|
||||
*/
|
||||
|
||||
package android.hardware.automotive.vehicle;
|
||||
|
||||
/**
|
||||
* Used to enumerate the state of Low Speed Automatic Emergency Braking.
|
||||
*/
|
||||
@VintfStability
|
||||
@Backing(type="int")
|
||||
enum LowSpeedAutomaticEmergencyBrakingState {
|
||||
|
||||
/**
|
||||
* This state is used as an alternative to any LowSpeedAutomaticEmergencyBrakingState value that
|
||||
* is not defined in the platform. Ideally, implementations of
|
||||
* VehicleProperty#LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE should not use this state. The
|
||||
* framework can use this field to remain backwards compatible if
|
||||
* LowSpeedAutomaticEmergencyBrakingState is extended to include additional states.
|
||||
*/
|
||||
OTHER = 0,
|
||||
/**
|
||||
* Low Speed Automatic Emergency Braking is enabled and monitoring safety, but brakes are not
|
||||
* activated.
|
||||
*/
|
||||
ENABLED = 1,
|
||||
/**
|
||||
* Low Speed Automatic Emergency Braking is enabled and currently has the brakes applied for the
|
||||
* vehicle.
|
||||
*/
|
||||
ACTIVATED = 2,
|
||||
/**
|
||||
* Many Low Speed Automatic Emergency Braking implementations allow the driver to override Low
|
||||
* Speed Automatic Emergency Braking. This means that the car has determined it should brake,
|
||||
* but a user decides to take over and do something else. This is often done for safety reasons
|
||||
* and to ensure that the driver can always take control of the vehicle. This state should be
|
||||
* set when the user is actively overriding the low speed automatic emergency braking system.
|
||||
*/
|
||||
USER_OVERRIDE = 3,
|
||||
}
|
||||
@@ -1589,6 +1589,22 @@ enum VehicleProperty {
|
||||
*/
|
||||
VALET_MODE_ENABLED =
|
||||
0x0A05 + VehiclePropertyGroup.SYSTEM + VehicleArea.GLOBAL + VehiclePropertyType.BOOLEAN,
|
||||
/**
|
||||
* Head up display (HUD) enabled
|
||||
*
|
||||
* This property allows the user to turn on/off the HUD for their seat.
|
||||
*
|
||||
* Each HUD in the vehicle should be assigned to the seat that is intended to use it. For
|
||||
* example, if there is a single HUD in the vehicle that is used by the driver so that they no
|
||||
* longer need to continuously look at the instrument cluster, then this property should be
|
||||
* defined with a single area ID equal to the driver's seat area value.
|
||||
*
|
||||
* @change_mode VehiclePropertyChangeMode.ON_CHANGE
|
||||
* @access VehiclePropertyAccess.READ_WRITE
|
||||
* @access VehiclePropertyAccess.READ
|
||||
*/
|
||||
HEAD_UP_DISPLAY_ENABLED =
|
||||
0x0A06 + VehiclePropertyGroup.SYSTEM + VehicleArea.SEAT + VehiclePropertyType.BOOLEAN,
|
||||
/**
|
||||
* Property to feed H/W input events to android
|
||||
*
|
||||
@@ -4799,7 +4815,9 @@ enum VehicleProperty {
|
||||
* Enable or disable Automatic Emergency Braking (AEB).
|
||||
*
|
||||
* Set true to enable AEB and false to disable AEB. When AEB is enabled, the ADAS system in the
|
||||
* vehicle should be turned on and monitoring to avoid potential collisions.
|
||||
* vehicle should be turned on and monitoring to avoid potential collisions. This property
|
||||
* should apply for higher speed applications only. For enabling low speed automatic emergency
|
||||
* braking, LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED should be used.
|
||||
*
|
||||
* In general, AUTOMATIC_EMERGENCY_BRAKING_ENABLED should always return true or false. If the
|
||||
* feature is not available due to some temporary state, such as the vehicle speed being too
|
||||
@@ -4821,7 +4839,9 @@ enum VehicleProperty {
|
||||
*
|
||||
* Returns the current state of AEB. This property must always return a valid state defined in
|
||||
* AutomaticEmergencyBrakingState or ErrorState. It must not surface errors through StatusCode
|
||||
* and must use the supported error states instead.
|
||||
* and must use the supported error states instead. This property should apply for higher speed
|
||||
* applications only. For representing the state of the low speed automatic emergency braking
|
||||
* system, LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE should be used.
|
||||
*
|
||||
* If AEB includes forward collision warnings before activating the brakes, those warnings must
|
||||
* be surfaced through the Forward Collision Warning (FCW) properties.
|
||||
@@ -5646,6 +5666,58 @@ enum VehicleProperty {
|
||||
CROSS_TRAFFIC_MONITORING_WARNING_STATE =
|
||||
0x1024 + VehiclePropertyGroup.SYSTEM + VehicleArea.GLOBAL + VehiclePropertyType.INT32,
|
||||
|
||||
/**
|
||||
* Enable or disable Low Speed Automatic Emergency Braking.
|
||||
*
|
||||
* Set true to enable Low Speed Automatic Emergency Braking or false to disable Low Speed
|
||||
* Automatic Emergency Braking. When Low Speed Automatic Emergency Braking is enabled, the ADAS
|
||||
* system in the vehicle should be turned on and monitoring to avoid potential collisions in low
|
||||
* speed conditions. This property is different from the pre-existing
|
||||
* AUTOMATIC_EMERGENCY_BRAKING_ENABLED, which should apply to higher speed applications only. If
|
||||
* the vehicle doesn't have a separate collision avoidance system for low speed environments,
|
||||
* this property should not be implemented.
|
||||
*
|
||||
* In general, LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED should always return true or false.
|
||||
* If the feature is not available due to some temporary state, such as the vehicle speed being
|
||||
* too low, that information must be conveyed through the ErrorState values in the
|
||||
* LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE property.
|
||||
*
|
||||
* This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs have the option to
|
||||
* implement it as VehiclePropertyAccess.READ only.
|
||||
*
|
||||
* @change_mode VehiclePropertyChangeMode.ON_CHANGE
|
||||
* @access VehiclePropertyAccess.READ_WRITE
|
||||
* @access VehiclePropertyAccess.READ
|
||||
*/
|
||||
LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED =
|
||||
0x1025 + VehiclePropertyGroup.SYSTEM + VehicleArea.GLOBAL + VehiclePropertyType.BOOLEAN,
|
||||
|
||||
/**
|
||||
* Low Speed Automatic Emergency Braking state.
|
||||
*
|
||||
* Returns the current state of Low Speed Automatic Emergency Braking. This property must always
|
||||
* return a valid state defined in LowSpeedAutomaticEmergencyBrakingState or ErrorState. It must
|
||||
* not surface errors through StatusCode and must use the supported error states instead. This
|
||||
* property is different from the pre-existing AUTOMATIC_EMERGENCY_BRAKING_STATE, which should
|
||||
* apply to higher speed applications only. If the vehicle doesn't have a separate collision
|
||||
* avoidance system for low speed environments, this property should not be implemented.
|
||||
*
|
||||
* If Low Speed Automatic Emergency Braking includes collision warnings before activating the
|
||||
* brakes, those warnings must be surfaced through use of LOW_SPEED_COLLISION_WARNING_ENABLED
|
||||
* and LOW_SPEED_COLLISION_WARNING_STATE.
|
||||
*
|
||||
* For the global area ID (0), the VehicleAreaConfig#supportedEnumValues array must be defined
|
||||
* unless all states of both LowSpeedAutomaticEmergencyBrakingState (including OTHER, which is
|
||||
* not recommended) and ErrorState are supported.
|
||||
*
|
||||
* @change_mode VehiclePropertyChangeMode.ON_CHANGE
|
||||
* @access VehiclePropertyAccess.READ
|
||||
* @data_enum LowSpeedAutomaticEmergencyBrakingState
|
||||
* @data_enum ErrorState
|
||||
*/
|
||||
LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE =
|
||||
0x1026 + VehiclePropertyGroup.SYSTEM + VehicleArea.GLOBAL + VehiclePropertyType.INT32,
|
||||
|
||||
/***************************************************************************
|
||||
* End of ADAS Properties
|
||||
**************************************************************************/
|
||||
|
||||
@@ -1042,6 +1042,24 @@ TEST_P(VtsHalAutomotiveVehicleTargetTest, verifyCrossTrafficMonitoringWarningSta
|
||||
VehiclePropertyGroup::SYSTEM, VehicleArea::GLOBAL, VehiclePropertyType::INT32);
|
||||
}
|
||||
|
||||
TEST_P(VtsHalAutomotiveVehicleTargetTest, verifyHeadUpDisplayEnabledConfig) {
|
||||
verifyProperty(VehicleProperty::HEAD_UP_DISPLAY_ENABLED, VehiclePropertyAccess::READ_WRITE,
|
||||
VehiclePropertyChangeMode::ON_CHANGE, VehiclePropertyGroup::SYSTEM,
|
||||
VehicleArea::SEAT, VehiclePropertyType::BOOLEAN);
|
||||
}
|
||||
|
||||
TEST_P(VtsHalAutomotiveVehicleTargetTest, verifyLowSpeedAutomaticEmergencyBrakingEnabledConfig) {
|
||||
verifyProperty(VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED,
|
||||
VehiclePropertyAccess::READ_WRITE, VehiclePropertyChangeMode::ON_CHANGE,
|
||||
VehiclePropertyGroup::SYSTEM, VehicleArea::GLOBAL, VehiclePropertyType::BOOLEAN);
|
||||
}
|
||||
|
||||
TEST_P(VtsHalAutomotiveVehicleTargetTest, verifyLowSpeedAutomaticEmergencyBrakingStateConfig) {
|
||||
verifyProperty(VehicleProperty::LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE,
|
||||
VehiclePropertyAccess::READ, VehiclePropertyChangeMode::ON_CHANGE,
|
||||
VehiclePropertyGroup::SYSTEM, VehicleArea::GLOBAL, VehiclePropertyType::INT32);
|
||||
}
|
||||
|
||||
bool VtsHalAutomotiveVehicleTargetTest::checkIsSupported(int32_t propertyId) {
|
||||
auto result = mVhalClient->getPropConfigs({propertyId});
|
||||
return result.ok();
|
||||
|
||||
Reference in New Issue
Block a user