diff --git a/drivers/usb/musb-new/sunxi.c b/drivers/usb/musb-new/sunxi.c
index 90aaec6..8049944 100644
--- a/drivers/usb/musb-new/sunxi.c
+++ b/drivers/usb/musb-new/sunxi.c
@@ -238,38 +238,28 @@
 	if (is_host_enabled(musb)) {
 		int vbus_det = sunxi_name_to_gpio(CONFIG_USB0_VBUS_DET);
 
-#ifdef AXP_VBUS_DETECT
-		if (!strcmp(CONFIG_USB0_VBUS_DET, "axp_vbus_detect")) {
-			err = axp_get_vbus();
-			if (err < 0)
-				return err;
-		} else {
-#endif
-			if (vbus_det == -1) {
-				eprintf("Error invalid Vusb-det pin\n");
-				return -EINVAL;
-			}
-
-			err = gpio_request(vbus_det, "vbus0_det");
-			if (err)
-				return err;
-
-			err = gpio_direction_input(vbus_det);
-			if (err) {
-				gpio_free(vbus_det);
-				return err;
-			}
-
-			err = gpio_get_value(vbus_det);
-			if (err < 0) {
-				gpio_free(vbus_det);
-				return -EIO;
-			}
-
-			gpio_free(vbus_det);
-#ifdef AXP_VBUS_DETECT
+		if (vbus_det == -1) {
+			eprintf("Error invalid Vusb-det pin\n");
+			return -EINVAL;
 		}
-#endif
+
+		err = gpio_request(vbus_det, "vbus0_det");
+		if (err)
+			return err;
+
+		err = gpio_direction_input(vbus_det);
+		if (err) {
+			gpio_free(vbus_det);
+			return err;
+		}
+
+		err = gpio_get_value(vbus_det);
+		if (err < 0) {
+			gpio_free(vbus_det);
+			return -EIO;
+		}
+
+		gpio_free(vbus_det);
 
 		if (err) {
 			eprintf("Error: A charger is plugged into the OTG\n");
