summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsupriya karanth <supriya.karanth@stericsson.com>2011-11-11 13:09:51 +0530
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:03:14 +0200
commita63e647dd201e8b1f43aabec43993ce8a87dccb1 (patch)
tree4609649de48e25fe98127206b59191ca047335b0
parent2185d914ee565f064a8a579bf815edf54271b814 (diff)
usb: ab5500-usb: Do not enumerate while in charge only mode
When in charge only mode, usb enumeration is not to be enabled. To achieve this turn on status and the reset reason is checked. ST-Ericsson Linux next: NA ST-Ericsson ID: 362951 ST-Ericsson FOSS-OUT ID: Trivial Signed-off-by: Arun Murthy <arun.murthy@stericsson.com> Change-Id: Idbbb13d7ecf8fb3423459a85b4ddebcce1a8404c Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/37398 Reviewed-by: Supriya s KARANTH <supriya.karanth@stericsson.com> Tested-by: Supriya s KARANTH <supriya.karanth@stericsson.com> Reviewed-by: Praveena NADAHALLY <praveen.nadahally@stericsson.com> Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
-rw-r--r--drivers/usb/otg/ab5500-usb.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/usb/otg/ab5500-usb.c b/drivers/usb/otg/ab5500-usb.c
index fcee8a1a144..8164ccb4195 100644
--- a/drivers/usb/otg/ab5500-usb.c
+++ b/drivers/usb/otg/ab5500-usb.c
@@ -20,6 +20,7 @@
#include <mach/usb.h>
#include <linux/kernel_stat.h>
#include <mach/gpio.h>
+#include <mach/reboot_reasons.h>
/* AB5500 USB macros
*/
@@ -523,7 +524,17 @@ static int ab5500_usb_boot_detect(struct ab5500_usb *ab)
case USB_LINK_HOST_CHG_NM:
case USB_LINK_HOST_CHG_HS:
case USB_LINK_HOST_CHG_HS_CHIRP:
-
+ /*
+ * If Power on key was not pressed then enter charge only
+ * mode and dont enumerate
+ */
+ if ((!(ab5500_get_turn_on_status() &
+ (P_ON_KEY1_EVENT | P_ON_KEY2_EVENT))) &&
+ (prcmu_get_reset_code() !=
+ SW_RESET_CHGONLY_EXIT)) {
+ dev_dbg(ab->dev, "USB entered charge only mode");
+ return 0;
+ }
ab5500_usb_peri_phy_en(ab);
/* enable usb chip Select */