diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 0aff385b43096..cb44a3af31596 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -571,4 +571,7 @@
+
+
+ false
diff --git a/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java b/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java
index 459d827049a8b..2c7243e7037f9 100755
--- a/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java
+++ b/telephony/java/com/android/internal/telephony/cdma/CDMAPhone.java
@@ -740,7 +740,14 @@ public class CDMAPhone extends PhoneBase {
String number = null;
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getContext());
// TODO: The default value of voicemail number should be read from a system property
- number = sp.getString(VM_NUMBER_CDMA, "*86");
+
+ // Read platform settings for dynamic voicemail number
+ if (getContext().getResources().getBoolean(com.android.internal
+ .R.bool.config_telephony_use_own_number_for_voicemail)) {
+ number = sp.getString(VM_NUMBER_CDMA, getLine1Number());
+ } else {
+ number = sp.getString(VM_NUMBER_CDMA, "*86");
+ }
return number;
}