diff --git a/audio/AudioPolicyManagerBase.cpp b/audio/AudioPolicyManagerBase.cpp
index 4d63cbc..134fb3b 100644
--- a/audio/AudioPolicyManagerBase.cpp
+++ b/audio/AudioPolicyManagerBase.cpp
@@ -1676,6 +1676,7 @@
                          ((profile->mFormats[0] == 0) &&
                              (profile->mChannelMasks.size() < 2))) {
                         ALOGW("checkOutputsForDevice() direct output missing param");
+                        mpClientInterface->closeOutput(output);
                         output = 0;
                     } else {
                         addOutput(output, desc);
diff --git a/include/hardware_legacy/wifi.h b/include/hardware_legacy/wifi.h
index 4d051e7..be6a83e 100644
--- a/include/hardware_legacy/wifi.h
+++ b/include/hardware_legacy/wifi.h
@@ -55,7 +55,7 @@
  *
  * @return 0 on success, < 0 on failure.
  */
-int wifi_stop_supplicant();
+int wifi_stop_supplicant(int p2pSupported);
 
 /**
  * Open a connection to supplicant on interface
diff --git a/wifi/wifi.c b/wifi/wifi.c
index d62b30f..b905897 100644
--- a/wifi/wifi.c
+++ b/wifi/wifi.c
@@ -604,11 +604,19 @@
     return -1;
 }
 
-int wifi_stop_supplicant()
+int wifi_stop_supplicant(int p2p_supported)
 {
     char supp_status[PROPERTY_VALUE_MAX] = {'\0'};
     int count = 50; /* wait at most 5 seconds for completion */
 
+    if (p2p_supported) {
+        strcpy(supplicant_name, P2P_SUPPLICANT_NAME);
+        strcpy(supplicant_prop_name, P2P_PROP_NAME);
+    } else {
+        strcpy(supplicant_name, SUPPLICANT_NAME);
+        strcpy(supplicant_prop_name, SUPP_PROP_NAME);
+    }
+
     /* Check whether supplicant already stopped */
     if (property_get(supplicant_prop_name, supp_status, NULL)
         && strcmp(supp_status, "stopped") == 0) {
@@ -625,6 +633,7 @@
         }
         usleep(100000);
     }
+    ALOGE("Failed to stop supplicant");
     return -1;
 }
 
