diff --git a/hal/audio_extn/utils.c b/hal/audio_extn/utils.c
index 3a1877b..0a8e18f 100644
--- a/hal/audio_extn/utils.c
+++ b/hal/audio_extn/utils.c
@@ -541,7 +541,9 @@
     struct acdb_platform_data *my_data = calloc(1, sizeof(struct acdb_platform_data));
 
     bool card_verifed[MAX_SND_CARD] = {0};
-    const int retry_limit = property_get_int32("audio.snd_card.open.retries", RETRY_NUMBER);
+    const int retry_limit = property_get_int32(
+        "vendor.audio.snd_card.open.retries",
+        property_get_int32("audio.snd_card.open.retries", RETRY_NUMBER));
 
     for (;;) {
         if (snd_card_num >= MAX_SND_CARD) {
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 1fd913a..58d8f85 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -6568,7 +6568,8 @@
 
     char value[PROPERTY_VALUE_MAX];
     int trial;
-    if (property_get("audio_hal.period_size", value, NULL) > 0) {
+    if ((property_get("vendor.audio_hal.period_size", value, NULL) > 0) ||
+        (property_get("audio_hal.period_size", value, NULL) > 0)) {
         trial = atoi(value);
         if (period_size_is_plausible_for_low_latency(trial)) {
             pcm_config_low_latency.period_size = trial;
@@ -6577,7 +6578,8 @@
             configured_low_latency_capture_period_size = trial;
         }
     }
-    if (property_get("audio_hal.in_period_size", value, NULL) > 0) {
+    if ((property_get("vendor.audio_hal.in_period_size", value, NULL) > 0) ||
+        (property_get("audio_hal.in_period_size", value, NULL) > 0)) {
         trial = atoi(value);
         if (period_size_is_plausible_for_low_latency(trial)) {
             configured_low_latency_capture_period_size = trial;
@@ -6592,7 +6594,8 @@
     // audio_extn_utils_send_default_app_type_cfg(adev->platform, adev->mixer);
     audio_device_ref_count++;
 
-    if (property_get("audio_hal.period_multiplier", value, NULL) > 0) {
+    if ((property_get("vendor.audio_hal.period_multiplier", value, NULL) > 0) ||
+        (property_get("audio_hal.period_multiplier", value, NULL) > 0)) {
         af_period_multiplier = atoi(value);
         if (af_period_multiplier < 0) {
             af_period_multiplier = 2;
diff --git a/post_proc/volume_listener.c b/post_proc/volume_listener.c
index 0fb62cb..ea26860 100644
--- a/post_proc/volume_listener.c
+++ b/post_proc/volume_listener.c
@@ -674,8 +674,12 @@
         }
     }
 
-    dumping_enabled = property_get_bool("audio.volume.listener.dump", false);
-    headset_cal_enabled = property_get_bool("audio.volume.headset.gain.depcal", false);
+    dumping_enabled = property_get_bool(
+        "vendor.audio.volume.listener.dump",
+        property_get_bool("audio.volume.listener.dump", false));
+    headset_cal_enabled = property_get_bool(
+        "vendor.audio.volume.headset.gain.depcal",
+        property_get_bool("audio.volume.headset.gain.depcal", false));
     init_status = 0;
     list_init(&vol_effect_list);
     initialized = true;
