diff --git a/include/hardware/audio.h b/include/hardware/audio.h
index 49cc0fe..36bfa86 100644
--- a/include/hardware/audio.h
+++ b/include/hardware/audio.h
@@ -462,7 +462,7 @@
     size_t chan_samp_sz;
     audio_format_t format = s->get_format(s);
 
-    if (audio_is_linear_pcm(format)) {
+    if (audio_has_proportional_frames(format)) {
         chan_samp_sz = audio_bytes_per_sample(format);
         return popcount(s->get_channels(s)) * chan_samp_sz;
     }
@@ -478,7 +478,7 @@
     size_t chan_samp_sz;
     audio_format_t format = s->common.get_format(&s->common);
 
-    if (audio_is_linear_pcm(format)) {
+    if (audio_has_proportional_frames(format)) {
         chan_samp_sz = audio_bytes_per_sample(format);
         return audio_channel_count_from_out_mask(s->common.get_channels(&s->common)) * chan_samp_sz;
     }
@@ -494,7 +494,7 @@
     size_t chan_samp_sz;
     audio_format_t format = s->common.get_format(&s->common);
 
-    if (audio_is_linear_pcm(format)) {
+    if (audio_has_proportional_frames(format)) {
         chan_samp_sz = audio_bytes_per_sample(format);
         return audio_channel_count_from_in_mask(s->common.get_channels(&s->common)) * chan_samp_sz;
     }
diff --git a/include/hardware/vehicle.h b/include/hardware/vehicle.h
index 71c57bc..161322a 100644
--- a/include/hardware/vehicle.h
+++ b/include/hardware/vehicle.h
@@ -279,10 +279,12 @@
 /*
  * Bit flags for fan direction
  */
-enum vehicle_hvac_fan_direction_flags {
-    VEHICLE_HVAC_FAN_DIRECTION_FACE_FLAG            = 0x1,
-    VEHICLE_HVAC_FAN_DIRECTION_FLOOR_FLAG           = 0x2,
-    VEHICLE_HVAC_FAN_DIRECTION_FACE_AND_FLOOR_FLAG  = 0x3
+enum vehicle_hvac_fan_direction {
+    VEHICLE_HVAC_FAN_DIRECTION_FACE                 = 0x1,
+    VEHICLE_HVAC_FAN_DIRECTION_FLOOR                = 0x2,
+    VEHICLE_HVAC_FAN_DIRECTION_FACE_AND_FLOOR       = 0x3,
+    VEHICLE_HVAC_FAN_DIRECTION_DEFROST              = 0x4,
+    VEHICLE_HVAC_FAN_DIRECTION_DEFROST_AND_FLOOR    = 0x5
 };
 
 /**
@@ -1160,17 +1162,17 @@
  * Various Seats in the car.
  */
 enum vehicle_seat {
-    VEHICLE_SEAT_DRIVER_LHD        = 0x0001,
-    VEHICLE_SEAT_DRIVER_RHD        = 0x0002,
-    VEHICLE_SEAT_ROW_1_PASSENGER_1 = 0x0010,
-    VEHICLE_SEAT_ROW_1_PASSENGER_2 = 0x0020,
-    VEHICLE_SEAT_ROW_1_PASSENGER_3 = 0x0040,
-    VEHICLE_SEAT_ROW_2_PASSENGER_1 = 0x0100,
-    VEHICLE_SEAT_ROW_2_PASSENGER_2 = 0x0200,
-    VEHICLE_SEAT_ROW_2_PASSENGER_3 = 0x0400,
-    VEHICLE_SEAT_ROW_3_PASSENGER_1 = 0x1000,
-    VEHICLE_SEAT_ROW_3_PASSENGER_2 = 0x2000,
-    VEHICLE_SEAT_ROW_3_PASSENGER_3 = 0x4000
+    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
 };
 
 /**
diff --git a/include/hardware/vr.h b/include/hardware/vr.h
index 494f016..17a0606 100644
--- a/include/hardware/vr.h
+++ b/include/hardware/vr.h
@@ -23,7 +23,7 @@
 
 __BEGIN_DECLS
 
-#define VR_HARDWARE_MODULE_ID "vr_module"
+#define VR_HARDWARE_MODULE_ID "vr"
 
 #define VR_MODULE_API_VERSION_1_0 HARDWARE_MODULE_API_VERSION(1, 0)
 
