Merge "Add debug support for P2P WPS"
diff --git a/src/com/android/settings/wifi/p2p/WifiP2pSettings.java b/src/com/android/settings/wifi/p2p/WifiP2pSettings.java
index f09e4eb..cf3b303 100644
--- a/src/com/android/settings/wifi/p2p/WifiP2pSettings.java
+++ b/src/com/android/settings/wifi/p2p/WifiP2pSettings.java
@@ -35,6 +35,7 @@
 import android.net.wifi.WpsInfo;
 import android.os.Bundle;
 import android.os.Handler;
+import android.os.SystemProperties;
 import android.preference.Preference;
 import android.preference.PreferenceActivity;
 import android.preference.PreferenceCategory;
@@ -259,13 +260,21 @@
             } else {
                 WifiP2pConfig config = new WifiP2pConfig();
                 config.deviceAddress = mSelectedWifiPeer.device.deviceAddress;
-                if (mSelectedWifiPeer.device.wpsPbcSupported()) {
-                    config.wps.setup = WpsInfo.PBC;
-                } else if (mSelectedWifiPeer.device.wpsKeypadSupported()) {
-                    config.wps.setup = WpsInfo.KEYPAD;
+
+                int forceWps = SystemProperties.getInt("wifidirect.wps", -1);
+
+                if (forceWps != -1) {
+                    config.wps.setup = forceWps;
                 } else {
-                    config.wps.setup = WpsInfo.DISPLAY;
+                    if (mSelectedWifiPeer.device.wpsPbcSupported()) {
+                        config.wps.setup = WpsInfo.PBC;
+                    } else if (mSelectedWifiPeer.device.wpsKeypadSupported()) {
+                        config.wps.setup = WpsInfo.KEYPAD;
+                    } else {
+                        config.wps.setup = WpsInfo.DISPLAY;
+                    }
                 }
+
                 mWifiP2pManager.connect(mChannel, config,
                         new WifiP2pManager.ActionListener() {
                             public void onSuccess() {