diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index c6f14a1..916b5c8 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -50,7 +50,7 @@
     private static final String KEY_PROXY_SETTINGS = "proxy_settings";
     private static final String KEY_MOBILE_NETWORK_SETTINGS = "mobile_network_settings";
 
-    private static final Boolean WIFI_P2P_DEBUG = false;
+    private static final int WIFI_P2P_DEBUG = SystemProperties.getInt("ro.debuggable", 0);
 
     public static final String EXIT_ECM_RESULT = "exit_ecm_result";
     public static final int REQUEST_CODE_EXIT_ECM = 1;
@@ -143,13 +143,13 @@
 
         if (!p2p.isP2pSupported()) {
             getPreferenceScreen().removePreference(wifiP2p);
+            getPreferenceScreen().removePreference(findPreference(KEY_WIFI_P2P_SETTINGS));
         } else {
             mWifiP2pEnabler = new WifiP2pEnabler(activity, wifiP2p);
-        }
-
-        //Settings is used for debug alone
-        if (!WIFI_P2P_DEBUG) {
-            getPreferenceScreen().removePreference(findPreference(KEY_WIFI_P2P_SETTINGS));
+            //Settings is used for debug alone
+            if (WIFI_P2P_DEBUG == 0) {
+                getPreferenceScreen().removePreference(findPreference(KEY_WIFI_P2P_SETTINGS));
+            }
         }
 
         // Enable Proxy selector settings if allowed.
diff --git a/src/com/android/settings/wifi/p2p/WifiP2pDialog.java b/src/com/android/settings/wifi/p2p/WifiP2pDialog.java
index 9462129..c345538 100644
--- a/src/com/android/settings/wifi/p2p/WifiP2pDialog.java
+++ b/src/com/android/settings/wifi/p2p/WifiP2pDialog.java
@@ -64,7 +64,6 @@
     public WifiP2pConfig getConfig() {
         WifiP2pConfig config = new WifiP2pConfig();
         config.deviceAddress = mDeviceAddress.getText().toString();
-        config.deviceName = mDeviceName.getText().toString();
         config.wpsConfig = new WpsConfiguration();
         switch (mWpsSetupIndex) {
             case WPS_PBC:
