Merge changes from topic 'merge_nyc_car'
* changes:
cherry-pick vehicle hal changes from nyc-car
Remove driver seats from vehicle.h
Fix seat temperature access mode
Cleanup vehicle.h
Add missing HVAC properties
diff --git a/include/hardware/vehicle.h b/include/hardware/vehicle.h
index da11407..35ad493 100644
--- a/include/hardware/vehicle.h
+++ b/include/hardware/vehicle.h
@@ -262,7 +262,6 @@
* @access VEHICLE_PROP_ACCESS_READ_WRITE
* @data_member hvac.fan_speed
* @zone_type VEHICLE_ZONE
- * @data_enum TODO
* @allow_out_of_range_value : OFF
*/
#define VEHICLE_PROPERTY_HVAC_FAN_SPEED (0x00000500)
@@ -274,7 +273,7 @@
* @access VEHICLE_PROP_ACCESS_READ_WRITE
* @data_member hvac.fan_direction
* @zone_type VEHICLE_ZONE
- * @data_enum TODO
+ * @data_enum vehicle_hvac_fan_direction
* @allow_out_of_range_value : OFF
*/
#define VEHICLE_PROPERTY_HVAC_FAN_DIRECTION (0x00000501)
@@ -394,13 +393,67 @@
*
* @value_type VEHICLE_VALUE_TYPE_ZONED_INT32
* @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
- * @access VEHICLE_PROP_ACCESS_WRITE
+ * @access VEHICLE_PROP_ACCESS_READ_WRITE
* @zone_type VEHICLE_SEAT
* @data_member int32_value
*/
#define VEHICLE_PROPERTY_HVAC_SEAT_TEMPERATURE (0x0000050B)
/**
+ * Side Mirror Heat
+ *
+ * Increase values denote higher heating levels for side mirrors.
+ * 0 indicates heating is turned off.
+ *
+ * @value_type VEHICLE_VALUE_TYPE_INT32
+ * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
+ * @access VEHICLE_PROP_ACCESS_READ_WRITE
+ * @data_member int32_value
+ */
+#define VEHICLE_PROPERTY_HVAC_SIDE_MIRROR_HEAT (0x0000050C)
+
+/**
+ * Steering Wheel Temperature
+ *
+ * Sets the temperature for the steering wheel
+ * Positive value indicates heating.
+ * Negative value indicates cooling.
+ * 0 indicates tempreature control is off.
+ *
+ * @value_type VEHICLE_VALUE_TYPE_INT32
+ * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
+ * @access VEHICLE_PROP_ACCESS_READ_WRITE
+ * @data_member int32_value
+ */
+#define VEHICLE_PROPERTY_HVAC_STEERING_WHEEL_TEMP (0x0000050D)
+
+/**
+ * Temperature units
+ *
+ * Indicates whether the temperature is in Celsius, Fahrenheit, or a different unit.
+ * This parameter affects all HVAC temperatures in the system.
+ *
+ * @value_type VEHICLE_VALUE_TYPE_ZONED_INT32
+ * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
+ * @access VEHICLE_PROP_ACCESS_READ
+ * @data_enum vehicle_unit_type
+ * @data_member int32_value
+ */
+#define VEHICLE_PROPERTY_HVAC_TEMPERATURE_UNITS (0x0000050E)
+
+/**
+ * Actual fan speed
+ * @value_type VEHICLE_VALUE_TYPE_ZONED_INT32
+ * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
+ * @access VEHICLE_PROP_ACCESS_READ
+ * @data_member hvac.fan_speed
+ * @zone_type VEHICLE_ZONE
+ * @allow_out_of_range_value : OFF
+ */
+#define VEHICLE_PROPERTY_HVAC_ACTUAL_FAN_SPEED_RPM (0x0000050F)
+
+
+/**
* Represents power state for HVAC. Some HVAC properties will require matching power to be turned on
* to get out of OFF state. For non-zoned HVAC properties, VEHICLE_ALL_ZONE corresponds to
* global power state.
@@ -417,6 +470,25 @@
#define VEHICLE_PROPERTY_HVAC_POWER_ON (0x00000510)
/**
+ * Fan Positions Available
+ *
+ * This is a bit mask of fan positions available for the zone. Each entry in
+ * vehicle_hvac_fan_direction is selected by bit position. For instance, if
+ * only the FAN_DIRECTION_FACE (0x1) and FAN_DIRECTION_DEFROST (0x4) are available,
+ * then this value shall be set to 0x12.
+ *
+ * 0x12 = (1 << 1) | (1 << 4)
+ *
+ * @value_type VEHICLE_VALUE_TYPE_ZONED_INT32
+ * @change_mode VEHICLE_PROP_CHANGE_MODE_STATIC
+ * @access VEHICLE_PROP_ACCESS_READ
+ * @data_member int32_value
+ * @zone_type VEHICLE_ZONE
+ * @allow_out_of_range_value : OFF
+ */
+#define VEHICLE_PROPERTY_HVAC_FAN_DIRECTION_AVAILABLE (0x00000511)
+
+/**
* Outside temperature
* @value_type VEHICLE_VALUE_TYPE_FLOAT
* @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE|VEHICLE_PROP_CHANGE_MODE_CONTINUOUS
@@ -461,7 +533,7 @@
* @config_flags Number of presets supported
* @data_member int32_array
*/
-#define VEHICLE_PROPERTY_RADIO_PRESET (0x0000801)
+#define VEHICLE_PROPERTY_RADIO_PRESET (0x00000801)
/**
* Constants relevant to radio.
@@ -1313,18 +1385,6 @@
#define VEHICLE_PROPERTY_MIRROR_LOCK (0x00000B44)
/**
- * Mirror Heat
- *
- * Increase values denote higher heating levels.
- *
- * @value_type VEHICLE_VALUE_TYPE_INT32
- * @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
- * @access VEHICLE_PROP_ACCESS_READ_WRITE
- * @data_member int32_value
- */
-#define VEHICLE_PROPERTY_MIRROR_HEAT (0x00000B45)
-
-/**
* Mirror Fold
*
* True indicates mirrors are folded
@@ -1334,7 +1394,7 @@
* @access VEHICLE_PROP_ACCESS_READ_WRITE
* @data_member boolean_value
*/
-#define VEHICLE_PROPERTY_MIRROR_FOLD (0x00000B46)
+#define VEHICLE_PROPERTY_MIRROR_FOLD (0x00000B45)
// Seats
/**
@@ -1653,7 +1713,7 @@
#define VEHICLE_PROPERTY_SEAT_HEADREST_HEIGHT_POS (0x00000B95)
/**
- * Headrest heigh move
+ * Headrest height move
*
* Moves the headrest up and down.
*
@@ -1694,6 +1754,11 @@
#define VEHICLE_PROPERTY_SEAT_HEADREST_ANGLE_MOVE (0x00000B98)
/**
+ * Headrest fore/aft position
+ *
+ * Adjusts the headrest forwards and backwards.
+ * Max value indicates position closest to front of car.
+ * Min value indicates position closest to rear of car.
*
* @value_type VEHICLE_VALUE_TYPE_ZONED_INT32
* @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
@@ -1704,6 +1769,7 @@
#define VEHICLE_PROPERTY_SEAT_HEADREST_FORE_AFT_POS (0x00000B99)
/**
+ * Headrest fore/aft move
*
* @value_type VEHICLE_VALUE_TYPE_ZONED_INT32
* @change_mode VEHICLE_PROP_CHANGE_MODE_ON_CHANGE
@@ -1854,7 +1920,9 @@
VEHICLE_UNIT_TYPE_METER = 0x00000021,
VEHICLE_UNIT_TYPE_KILOMETER = 0x00000023,
// temperature
- VEHICLE_UNIT_TYPE_CELCIUS = 0x00000030,
+ VEHICLE_UNIT_TYPE_CELSIUS = 0x00000030,
+ VEHICLE_UNIT_TYPE_FAHRENHEIT = 0x00000031,
+ VEHICLE_UNIT_TYPE_KELVIN = 0x00000032,
// volume
VEHICLE_UNIT_TYPE_MILLILITER = 0x00000040,
// time
@@ -2022,17 +2090,15 @@
* Various Seats in the car.
*/
enum vehicle_seat {
- VEHICLE_SEAT_DRIVER_LHD = 0x0001,
- VEHICLE_SEAT_DRIVER_RHD = 0x0002,
- VEHICLE_SEAT_ROW_1_PASSENGER_LEFT = 0x0010,
- VEHICLE_SEAT_ROW_1_PASSENGER_CENTER = 0x0020,
- VEHICLE_SEAT_ROW_1_PASSENGER_RIGHT = 0x0040,
- VEHICLE_SEAT_ROW_2_PASSENGER_LEFT = 0x0100,
- VEHICLE_SEAT_ROW_2_PASSENGER_CENTER = 0x0200,
- VEHICLE_SEAT_ROW_2_PASSENGER_RIGHT = 0x0400,
- VEHICLE_SEAT_ROW_3_PASSENGER_LEFT = 0x1000,
- VEHICLE_SEAT_ROW_3_PASSENGER_CENTER = 0x2000,
- VEHICLE_SEAT_ROW_3_PASSENGER_RIGHT = 0x4000
+ VEHICLE_SEAT_ROW_1_LEFT = 0x0001,
+ VEHICLE_SEAT_ROW_1_CENTER = 0x0002,
+ VEHICLE_SEAT_ROW_1_RIGHT = 0x0004,
+ VEHICLE_SEAT_ROW_2_LEFT = 0x0010,
+ VEHICLE_SEAT_ROW_2_CENTER = 0x0020,
+ VEHICLE_SEAT_ROW_2_RIGHT = 0x0040,
+ VEHICLE_SEAT_ROW_3_LEFT = 0x0100,
+ VEHICLE_SEAT_ROW_3_CENTER = 0x0200,
+ VEHICLE_SEAT_ROW_3_RIGHT = 0x0400
};
/**