diff --git a/wpa_supplicant/ctrl_iface.c b/wpa_supplicant/ctrl_iface.c
index 8edf086..9486f2f 100644
--- a/wpa_supplicant/ctrl_iface.c
+++ b/wpa_supplicant/ctrl_iface.c
@@ -5434,11 +5434,7 @@
 		if (p2p_ctrl_serv_disc_resp(wpa_s, buf + 19) < 0)
 			reply_len = -1;
 	} else if (os_strcmp(buf, "P2P_SERVICE_UPDATE") == 0) {
-#ifdef ANDROID_P2P
-		wpas_p2p_sd_service_update(wpa_s, SRV_UPDATE);
-#else
 		wpas_p2p_sd_service_update(wpa_s);
-#endif
 	} else if (os_strncmp(buf, "P2P_SERV_DISC_EXTERNAL ", 23) == 0) {
 		if (p2p_ctrl_serv_disc_external(wpa_s, buf + 23) < 0)
 			reply_len = -1;
diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c
index 08ae9e5..e039594 100644
--- a/wpa_supplicant/p2p_supplicant.c
+++ b/wpa_supplicant/p2p_supplicant.c
@@ -260,11 +260,6 @@
 		break;
 	case P2P_SCAN_FULL:
 		break;
-	case P2P_SCAN_SPECIFIC:
-		social_channels[0] = freq;
-		social_channels[1] = 0;
-		params.freqs = social_channels;
-		break;
 	case P2P_SCAN_SOCIAL_PLUS_ONE:
 		social_channels[3] = freq;
 		params.freqs = social_channels;
@@ -2223,22 +2218,15 @@
 			resp_tlvs);
 }
 
-#ifdef ANDROID_P2P
-void wpas_p2p_sd_service_update(struct wpa_supplicant *wpa_s, int action)
-#else
+
 void wpas_p2p_sd_service_update(struct wpa_supplicant *wpa_s)
-#endif
 {
 	if (wpa_s->drv_flags & WPA_DRIVER_FLAGS_P2P_MGMT) {
 		wpa_drv_p2p_service_update(wpa_s);
 		return;
 	}
 	if (wpa_s->global->p2p)
-#ifdef ANDROID_P2P
-		p2p_sd_service_update(wpa_s->global->p2p, action);
-#else
 		p2p_sd_service_update(wpa_s->global->p2p);
-#endif
 }
 
 
@@ -2272,11 +2260,7 @@
 			      struct p2p_srv_upnp, list)
 		wpas_p2p_srv_upnp_free(usrv);
 
-#ifdef ANDROID_P2P
-	wpas_p2p_sd_service_update(wpa_s, SRV_FLUSH);
-#else
 	wpas_p2p_sd_service_update(wpa_s);
-#endif
 }
 
 
@@ -2292,11 +2276,7 @@
 	bsrv->resp = resp;
 	dl_list_add(&wpa_s->global->p2p_srv_bonjour, &bsrv->list);
 
-#ifdef ANDROID_P2P
-	wpas_p2p_sd_service_update(wpa_s, SRV_ADD);
-#else
 	wpas_p2p_sd_service_update(wpa_s);
-#endif
 	return 0;
 }
 
@@ -2310,11 +2290,7 @@
 	if (bsrv == NULL)
 		return -1;
 	wpas_p2p_srv_bonjour_free(bsrv);
-#ifdef ANDROID_P2P
-	wpas_p2p_sd_service_update(wpa_s, SRV_DEL);
-#else
 	wpas_p2p_sd_service_update(wpa_s);
-#endif
 	return 0;
 }
 
@@ -2337,11 +2313,7 @@
 	}
 	dl_list_add(&wpa_s->global->p2p_srv_upnp, &usrv->list);
 
-#ifdef ANDROID_P2P
-	wpas_p2p_sd_service_update(wpa_s, SRV_ADD);
-#else
 	wpas_p2p_sd_service_update(wpa_s);
-#endif
 	return 0;
 }
 
@@ -2355,11 +2327,7 @@
 	if (usrv == NULL)
 		return -1;
 	wpas_p2p_srv_upnp_free(usrv);
-#ifdef ANDROID_P2P
-	wpas_p2p_sd_service_update(wpa_s, SRV_DEL);
-#else
 	wpas_p2p_sd_service_update(wpa_s);
-#endif
 	return 0;
 }
 
diff --git a/wpa_supplicant/p2p_supplicant.h b/wpa_supplicant/p2p_supplicant.h
index 3ca6222..7febac7 100644
--- a/wpa_supplicant/p2p_supplicant.h
+++ b/wpa_supplicant/p2p_supplicant.h
@@ -101,11 +101,7 @@
 void wpas_p2p_sd_response(struct wpa_supplicant *wpa_s, int freq,
 			  const u8 *dst, u8 dialog_token,
 			  const struct wpabuf *resp_tlvs);
-#ifdef ANDROID_P2P
-void wpas_p2p_sd_service_update(struct wpa_supplicant *wpa_s, int action);
-#else
 void wpas_p2p_sd_service_update(struct wpa_supplicant *wpa_s);
-#endif
 void wpas_p2p_service_flush(struct wpa_supplicant *wpa_s);
 int wpas_p2p_service_add_bonjour(struct wpa_supplicant *wpa_s,
 				 struct wpabuf *query, struct wpabuf *resp);
