diff --git a/drivers/power/twl6030.c b/drivers/power/twl6030.c
index df43cca34a8f271f6303a9fe4d5c958018e1bcd8..c6d06f19e9b15982a45b0873c32d5d2c196ff5e3 100644
--- a/drivers/power/twl6030.c
+++ b/drivers/power/twl6030.c
@@ -259,6 +259,7 @@ void twl6030_usb_device_settings()
 	/* Select the input supply for VUSB regulator */
 	twl6030_i2c_read_u8(TWL6030_CHIP_PM, TWL6030_MISC2, &value);
 	value |= TWL6030_MISC2_VUSB_IN_VSYS;
+	value &= ~TWL6030_MISC2_VUSB_IN_PMID;
 	twl6030_i2c_write_u8(TWL6030_CHIP_PM, TWL6030_MISC2, value);
 }
 #endif
diff --git a/include/twl6030.h b/include/twl6030.h
index e68393c95d52a33abf26647a411ad758e466df1c..9a1c645d889cb584c60fa0ba20cf8030a7925226 100644
--- a/include/twl6030.h
+++ b/include/twl6030.h
@@ -48,6 +48,7 @@
 #define BB_MEAS			(1 << 0)
 
 #define TWL6030_MISC2			0xE5
+#define TWL6030_MISC2_VUSB_IN_PMID	(1 << 3)
 #define TWL6030_MISC2_VUSB_IN_VSYS	(1 << 4)
 
 /* Slave Address 0x49 */