diff options
author | Johan Palsson <johan.palsson@stericsson.com> | 2011-01-05 11:21:13 +0100 |
---|---|---|
committer | Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com> | 2011-01-06 05:52:42 +0100 |
commit | 06d80b42d5e79d2eb59d1fec79e228ef0482e76f (patch) | |
tree | 347220cb095200976ca87ff95dcd277987af5545 /drivers/usb | |
parent | 9756ad81556cd1f87ddf369f8c34917e9bb9e2e1 (diff) |
ab8500_bm: Improved Battery Manager driver family
The Battery Manager driver has been re-designed and re-written
in order to be more flexible and easier to maintain.
Four drivers has been developed:
ab8500_charger: driver for controlling the AC and USB charger blocks
in the AB8500
ab8500_btemp: in charge of identifying the battery and measuring the
battery temperature.
ab8500_fg: driver for calculating remaining capacity as well as
providing the charging algorithm with battery data.
ab8500_chargalg: the charging algorithm is implemented here.
The drivers share data through properties in the power_supply framework
ST-Ericsson ID: AP 281949
Change-Id: Ie8d4b56edb1db9624a0fc37f408ee2d3d834b9ac
Signed-off-by: Johan Palsson <johan.palsson@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/10966
Reviewed-by: QATOOLS
Reviewed-by: Praveena NADAHALLY <praveen.nadahally@stericsson.com>
Reviewed-by: Johan GARDSMARK <johan.gardsmark@stericsson.com>
Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/musb/musb_core.c | 23 | ||||
-rw-r--r-- | drivers/usb/musb/stm_musb.c | 18 |
2 files changed, 0 insertions, 41 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 1bc1d35af04..34929b68203 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -464,29 +464,6 @@ static irqreturn_t musb_stage0_irq(struct musb *musb, u8 int_usb, DBG(3, "<== Power=%02x, DevCtl=%02x, int_usb=0x%x\n", power, devctl, int_usb); - /* - * XXX The following code has been inserted here as a temporary hack - * to get some USB events directly from the USB hardware. This code - * and callbacks should eventually be integrated into the generic - * USB gadget stack. - */ - if (!(devctl & MUSB_DEVCTL_HM)) { - if (int_usb & MUSB_INTR_RESET) { - if (power & MUSB_POWER_HSMODE) - ab8500_bm_usb_state_changed_wrapper( - AB8500_BM_USB_STATE_RESET_HS); - else - ab8500_bm_usb_state_changed_wrapper( - AB8500_BM_USB_STATE_RESET_FS); - } - if (int_usb & MUSB_INTR_RESUME) - ab8500_bm_usb_state_changed_wrapper( - AB8500_BM_USB_STATE_RESUME); - else if (int_usb & MUSB_INTR_SUSPEND) - ab8500_bm_usb_state_changed_wrapper( - AB8500_BM_USB_STATE_SUSPEND); - } - /* in host mode, the peripheral may issue remote wakeup. * in peripheral mode, the host may resume the link. * spurious RESUME irqs happen too, paired with SUSPEND. diff --git a/drivers/usb/musb/stm_musb.c b/drivers/usb/musb/stm_musb.c index f32f6d2f9d6..6a0e1fd69b8 100644 --- a/drivers/usb/musb/stm_musb.c +++ b/drivers/usb/musb/stm_musb.c @@ -21,7 +21,6 @@ #include <linux/io.h> #include <linux/gpio.h> #include <linux/delay.h> -#include <linux/mfd/ab8500/ab8500-bm.h> #include <mach/stm_musb.h> #include <mach/musb_db8500.h> #include "musb_core.h" @@ -54,21 +53,6 @@ void musb_set_session(void) } EXPORT_SYMBOL(musb_set_session); -void -ab8500_bm_usb_state_changed_wrapper(u8 bm_usb_state) -{ - if ((bm_usb_state == AB8500_BM_USB_STATE_RESET_HS) || - (bm_usb_state == AB8500_BM_USB_STATE_RESET_FS)) { - musb_power = 0; - } - - /* - * TODO: Instead of using callbacks, we should be using notify - * to tell the battery manager when there is s state change - */ - ab8500_bm_usb_state_changed(bm_usb_state, musb_power); -} - /* Sys interfaces */ static struct kobject *usbstatus_kobj; static ssize_t usb_cable_status @@ -378,8 +362,6 @@ static void set_vbus(struct musb *musb, int is_on) static int set_power(struct otg_transceiver *x, unsigned mA) { musb_power = mA; - ab8500_bm_usb_state_changed_wrapper( - AB8500_BM_USB_STATE_CONFIGURED); return 0; } /** |