ab8500-charger: Add UsbLineCtrl2 reference
authorMarcus Cooper <marcus.xm.cooper@stericsson.com>
Wed, 29 Aug 2012 15:56:19 +0000 (17:56 +0200)
committerLee Jones <lee.jones@linaro.org>
Thu, 7 Mar 2013 04:35:50 +0000 (12:35 +0800)
When the state of USB Charge detection is changed then the calls
use a define for another register in other bank. This change
creates a new define for the correct register and removes the
magic numbers that are present.

Signed-off-by: Marcus Cooper <marcus.xm.cooper@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Hakan BERG <hakan.berg@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
drivers/power/ab8500_charger.c
include/linux/mfd/abx500/ab8500-bm.h

index bf8b479..64accb2 100644 (file)
@@ -54,6 +54,7 @@
 #define VBUS_DET_DBNC1                 0x01
 #define OTP_ENABLE_WD                  0x01
 #define DROP_COUNT_RESET               0x01
+#define USB_CH_DET                     0x01
 
 #define MAIN_CH_INPUT_CURR_SHIFT       4
 #define VBUS_IN_CURR_LIM_SHIFT         4
@@ -2348,8 +2349,9 @@ static void ab8500_charger_usb_link_status_work(struct work_struct *work)
                                        AB8500_CHARGER, AB8500_USBCH_CTRL1_REG,
                                        USB_CH_ENA, USB_CH_ENA);
                        /*Enable charger detection*/
-                       abx500_mask_and_set_register_interruptible(di->dev, AB8500_USB,
-                                       AB8500_MCH_IPT_CURLVL_REG, 0x01, 0x01);
+                       abx500_mask_and_set_register_interruptible(di->dev,
+                                       AB8500_USB, AB8500_USB_LINE_CTRL2_REG,
+                                       USB_CH_DET, USB_CH_DET);
                        di->invalid_charger_detect_state = 1;
                        /*exit and wait for new link status interrupt.*/
                        return;
@@ -2359,8 +2361,9 @@ static void ab8500_charger_usb_link_status_work(struct work_struct *work)
                        dev_dbg(di->dev,
                                        "Invalid charger detected, state= 1\n");
                        /*Stop charger detection*/
-                       abx500_mask_and_set_register_interruptible(di->dev, AB8500_USB,
-                                       AB8500_MCH_IPT_CURLVL_REG, 0x01, 0x00);
+                       abx500_mask_and_set_register_interruptible(di->dev,
+                                       AB8500_USB, AB8500_USB_LINE_CTRL2_REG,
+                                       USB_CH_DET, 0x00);
                        /*Check link status*/
                        if (is_ab8500(di->parent))
                                ret = abx500_get_register_interruptible(di->dev,
index ee1c162..f5214dc 100644 (file)
@@ -23,6 +23,7 @@
  * Bank : 0x5
  */
 #define AB8500_USB_LINE_STAT_REG       0x80
+#define AB8500_USB_LINE_CTRL2_REG      0x82
 #define AB8500_USB_LINK1_STAT_REG      0x94
 
 /*