History log of /drivers/power/ab8500_charger.c
Revision Date Author Comments
08a5c7e6842f9c4c1556f147af2a561056345a45 06-Sep-2013 Sachin Kamat <sachin.kamat@linaro.org> ab8500-charger: Remove redundant break

Each of the if-else blocks has a break statement. Remove the additional
one which is unreachable.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
6de7ef3e309acb1e55ae122b85a2665064832b0c 06-Sep-2013 Sachin Kamat <sachin.kamat@linaro.org> ab8500-charger: Check return value of regulator_enable

Check the return value of regulator_enable to silence the following
type of warnings:
drivers/power/ab8500_charger.c:1390:20: warning: ignoring return value
of ‘regulator_enable’, declared with attribute warn_unused_result
[-Wunused-result]

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
ed5243f8ab2470e988dce0e416eaaddb4d7d2ccc 27-Aug-2013 Dan Carpenter <dan.carpenter@oracle.com> ab8500-charger: We print an unintended error message

There is a missing break statement here, so we print an error message that
the USB type is invalid. The original code still works fine though except
for the error message.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
ddeeb8f973bbe3bebac78e78c234ff18bfb00bf0 06-May-2013 Jingoo Han <jg1.han@samsung.com> ab8500_bm: Remove unnecessary platform_set_drvdata()

The driver core clears the driver data to NULL after device_release or on
probe failure, since commit 0998d0631001288a5974afc0b2a5f568bcdecb4d
(device-core: Ensure drvdata = NULL when no driver is bound). Thus, it is
not needed to manually clear the device driver data to NULL.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
b09f86dbfc20d9420dac43dba016cb65b582c983 22-Dec-2012 Lee Jones <lee.jones@linaro.org> ab8500-charger: Do not use [delayed_]work_pending()

There's no need to test whether a (delayed) work item is pending
before queueing, flushing or cancelling it. Most uses are unnecessary
and quite a few of them are buggy.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
3c01b3676f3fa3813b02742a1816c9d2eff1b27e 24-Oct-2012 Lee Jones <lee.jones@linaro.org> ab8500-charger: Remove duplicate code

Signed-off-by: Lee Jones <lee.jones@linaro.org>
261c5136fa988008387e31cf5381dc5b088e2a17 26-Sep-2012 Rabin Vincent <rabin.vincent@stericsson.com> ab8500-charger: Run detect workaround only on AB8500

Only AB8500 has this hardware bug, so these works only need to be run
there.

Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Marcus COOPER <marcus.xm.cooper@stericsson.com>
Reviewed-by: Martin SJOBLOM <martin.w.sjoblom@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
b3ea5f451e4e435b650e34142f8552002dc21297 29-Aug-2012 Marcus Cooper <marcus.xm.cooper@stericsson.com> ab8500-charger: Add UsbLineCtrl2 reference

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>
88efdb8022f13c198fe4459e6e278f9b559cff3b 30-Aug-2012 Marcus Cooper <marcus.xm.cooper@stericsson.com> ab8500-charger: Use USBLink1Status Register

The newer AB's such as the AB8505, AB9540 etc include a
USBLink1 Status register which detects a larger range of
external devices. This should be used instead of the
USBLine Status register.

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>
Tested-by: Yang QU <yang.qu@stericsson.com>
861a30da53e2c5b9823b5390c1757baaf8f6e356 29-Aug-2012 Lee Jones <lee.jones@linaro.org> ab8500-bm: Add support for the new ab8540 platform

Provide AB8540 platform specific information required to run the
Battery Management subsystem on AB8540 based devices. For this to
happen we see the introduction of separate platform specific data
structures and a means in which to process them.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
db43e6c473b57d4e7a55c4bd6edef71f40f13eae 14-Feb-2013 Lee Jones <lee.jones@linaro.org> ab8500-bm: Add usb power path support

AB8540 supports power path function in USB charging mode for fast
power up with dead and weak battery, and it could extend
the battery age.

When USB charging starts, if the Vbattrue is below than SW cut off
voltage, power path and pre-charge should be enabled. If Vbattrue
is higher than SW cut off voltage, power path and pre-charge should
be disabled. This is to make sure full current to battery charge.
At the end of charge, power path should be enable again to reduce
charging the battery again.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
405fea1c6691eb8259f2ca879c9348a4cf5d898d 10-Aug-2012 Marcus Cooper <marcus.xm.cooper@stericsson.com> pm2301-charger: Always compile the PM2301 Charger driver with AB8500 Battery Mgnt

The PM2301 Charger should always be available when using the AB8500
Battery Management system, we're ensuring this will be the case.

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: Mian Yousaf KAUKAB <mian.yousaf.kaukab@stericsson.com>
d4337660d06945c9772182b5b8e72443ae3e475d 26-Jul-2012 Hakan Berg <hakan.berg@stericsson.com> ab8500-charger: Add AB8505_USB_LINK_STATUS

The AB8505 does not have the same address for USB link-status
as has ab8500. Add AB8505_USB_LINK_STATUS and code to switch
to correct constant.

Signed-off-by: Hakan Berg <hakan.berg@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Mian Yousaf KAUKAB <mian.yousaf.kaukab@stericsson.com>
Reviewed-by: Marcus COOPER <marcus.xm.cooper@stericsson.com>
Reviewed-by: Rabin VINCENT <rabin.vincent@stericsson.com>
f7470b5d246294761892f4bafc0eeedaa4369d92 14-Feb-2013 Lee Jones <lee.jones@linaro.org> ab8500_charger: Prevent auto drop of VBUS

Do not set higher current in stepping functionality if VBUS is dropping.
After VBUS has dropped try to set current once again. If dropping again
then we have found the maximum capability of the charger.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
8891716e24d7b0f4b1c3b4fdff641bcb1fb282c4 13-Feb-2013 Lee Jones <lee.jones@linaro.org> ab8500-bm: Charge only mode fixes for the ab9540

Fix for charging not getting enabled in charge only mode by
external charger.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
4dcdf57773fd45b483fc7613b9e51b89a57d655c 14-Feb-2013 Lee Jones <lee.jones@linaro.org> ab8500-bm: Quick re-attach charging behaviour

Due to a bug in some AB8500 ASICs charger removal cannot always
be detected if the removal and reinsertion is done to close in time.
This patch detects above described case and handles the situation
so that charging will be kept turned on.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
72a90ddbc3d89a63b769ae1b8538c612cf01e675 14-Feb-2013 Lee Jones <lee.jones@linaro.org> ab8500-charger: Trivial coding style changes

Enforce the white space character after 'if'.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
0f4aa401853e07885707aedfc68c608051b0d6e4 26-Jun-2012 Yang QU <yang.qu@stericsson.com> ab8500-charger: Add backup battery charge voltages on the ab8540

Add 2.7v, 2.9v, 3.0v, 3.2v and 3.3v charging voltages for backup
battery. Before that only 2.5v, 2.6v, 2.8v, 3.1v were available.

Signed-off-by: Yang QU <yang.qu@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Maxime COQUELIN <maxime.coquelin@stericsson.com>
Reviewed-by: Marcus COOPER <marcus.xm.cooper@stericsson.com>
Tested-by: Xiao Mei ZHANG <xiaomei.zhang@stericsson.com>
34c11a709e928090cf34ecd706f7d3170f4e5026 22-Feb-2012 Paer-Olof Haakansson <par-olof.hakansson@stericsson.com> u8500-charger: Delay for USB enumeration

If charging is started before USB enumeration of an Accessory
Charger Adapter has finished, the AB8500 will generate a
VBUS_ERROR. This in turn results in timeouts and delays the
enumeration with around 15 seconds. This patch delays the
charging and then ramps currents slowly to avoid VBUS errors.
The delay allows the enumeration to have finished before
charging is turned on.

Signed-off-by: Martin Sjoblom <martin.w.sjoblom@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Tested-by: Jonas ABERG <jonas.aberg@stericsson.com>
97034a1e042d4316a83a3f68d61edf6c42e3f265 17-Jan-2013 Lee Jones <lee.jones@linaro.org> ab8500-bm: Remove individual [charger|btemp|fg|chargalg] pdata structures

None of the aforementioned components have their own dedicated
platform data structures anymore. Instead they have all been
merged into one big Battery Management container. Let's remove
them and place all the nice newly added attributes into the core
container.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
0ed5107fa86013c91b1752230d44b79dffee0cda 11-May-2012 Jonas Aaberg <jonas.aberg@stericsson.com> ab8500-charger: Do not touch VBUSOVV bits

Do not touch the VBUSOVV in USBCHTRL2 when running on AB8505.

Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Marcus COOPER <marcus.xm.cooper@stericsson.com>
Tested-by: Mian Yousaf KAUKAB <mian.yousaf.kaukab@stericsson.com>
53ef1f590dc59f3c1478c68ea1f06a28f55ddccb 21-May-2012 Jonas Aaberg <jonas.aberg@stericsson.com> ab8500-bm: Flush all work queues before suspending

Flush all workqueues at suspend time to avoid suspending during work.

Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Marcus COOPER <marcus.xm.cooper@stericsson.com>
b016322293c7e3b7efb1835603d149c03d00b0df 23-May-2012 Nicolas Guion <nicolas.guion@stericsson.com> ab8500-charger: Add support for autopower on AB8505 and AB9540

Accessing autopower register fails on the AB8505 and ab9540 as
the fallback software control register has moved.

Signed-off-by: Marcus Cooper <marcus.xm.cooper@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Mattias WALLIN <mattias.wallin@stericsson.com>
Reviewed-by: Nicolas GUION <nicolas.guion@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Tested-by: Jonas ABERG <jonas.aberg@stericsson.com>
c9ade0fca3f7939194677353097b16c9795df46b 21-Jan-2013 Lee Jones <lee.jones@linaro.org> abx500-chargalg: Add new sysfs interface to get current charge status

Allow a user to check on AB8500 charging status from debugfs.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
e07a56453b14b929cf01bf032cc3e3220094609c 10-May-2012 Loic Pallardy <loic.pallardy@stericsson.com> pm2301: Update watchdog for pm2xxx support

AB and PMxxx doesn't have same watchdog refresh period. Add watchdog
to refresh period parameters in x500 charger structure, this should
kick watchdog every 30sec. The AC charging should also kick both
pm2xxx and the AB charger watchdog.

Signed-off-by: Rajkumar Kasirajan <rajkumar.kasirajan@stericsson.com>
Signed-off-by: Loic Pallardy <loic.pallardy@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Michel JAOUEN <michel.jaouen@stericsson.com>
Reviewed-by: Marcus COOPER <marcus.xm.cooper@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Tested-by: Michel JAOUEN <michel.jaouen@stericsson.com>
Tested-by: Jonas ABERG <jonas.aberg@stericsson.com>
ff38090aa2e1423e130cc72e790145bad7de8215 17-Apr-2012 Henrik Sölver <henrik.solver@stericsson.com> ab8500-charger: AB workaround for invalid charger

AB8500 refuses to start charging when some types of non standard
chargers are connected. This change force the AB to start charging.

Signed-off-by: Henrik Sölver <henrik.solver@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Yvan FILLION <yvan.fillion@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Tested-by: Yvan FILLION <yvan.fillion@stericsson.com>
01ec8c5423901c4fe8d97f786ed9a0c31215b53a 26-Apr-2012 Michel JAOUEN <michel.jaouen@stericsson.com> pm2301: Provide u9540 support for the pm2301 charger

AC charger driver for the DB9540 based platforms.

Signed-off-by: Rajkumar Kasirajan <rajkumar.kasirajan@stericsson.com>
Signed-off-by: Loic Pallardy <loic.pallardy@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Michel JAOUEN <michel.jaouen@stericsson.com>
Tested-by: Michel JAOUEN <michel.jaouen@stericsson.com>
4b45f4a9cd4eae34b23becb686f2c2a637d844d3 11-Jan-2013 Marcus Cooper <marcus.xm.cooper@stericsson.com> ab8500_charger: Adds support for legacy USB chargers

A Legacy USB charger should be handled directly by the charger
driver.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Marcus Cooper <marcus.xm.cooper@stericsson.com>
Reviewed-by: Karl KOMIEROWSKI <karl.komierowski@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
377345c2be3afad0d5cd16b2340c0da876494f6d 11-Jan-2013 Marcus Cooper <marcus.xm.cooper@stericsson.com> ab8500_charger: Remove unused defines

Cleanup of the ab8500_charger driver.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Marcus Cooper <marcus.xm.cooper@stericsson.com>
Reviewed-by: Karl KOMIEROWSKI <karl.komierowski@stericsson.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
74a8e349b1c882e34419877207ae850ed87dddf7 11-Jan-2013 Hakan Berg <hakan.berg@stericsson.com> ab8500_bm: Adds support for Car/Travel Adapters

The Travel and Carkit adapter should be handled directly by
the charger driver.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Marcus Cooper <marcus.xm.cooper@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
a864c5a869dcdb40617fc15166385e0ffa609592 11-Jan-2013 Jonas Aaberg <jonas.aberg@stericsson.com> ab8500_charger: Handle gpadc errors

Gracefully handle gpadc conversion errors.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Reviewed-by: Johan BJORNSTEDT <johan.bjornstedt@stericsson.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
b269fff4f9ad2cec9413ea9e10f26c5d8c9f5ddc 11-Jan-2013 Lee Jones <lee.jones@linaro.org> ab8500_charger: Detect charger removal

Add two new work queues to provide USB and AC charger disconnect
detection.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
defbfa9cf879c8e7dde6f7ee9aa95a010efa2e34 11-Jan-2013 Paer-Olof Haakansson <par-olof.hakansson@stericsson.com> ab8500_charger: Rename the power_loss function

Rename the ab8500_power_loss_handling function to a more
descriptive name ab8500_enable_disable_sw_fallback

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Robert Marklund <robert.marklund@stericsson.com>
Reviewed-by: Par-Olof HAKANSSON <par-olof.hakansson@stericsson.com>
Reviewed-by: Karl KOMIEROWSKI <karl.komierowski@stericsson.com>
Tested-by: Par-Olof HAKANSSON <par-olof.hakansson@stericsson.com>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
8feffd109977c045669913f4e80e8811f2212cd9 07-Dec-2012 Sachin Kamat <sachin.kamat@linaro.org> ab8500_charger: Use devm_regulator_get API

devm_regulator_get() is device managed and makes error handling and code
cleanup simpler.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Arun Murthy <arun.murthy@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
7722b79964f0b1d7909eb7ef69632d73b07ca6a3 30-Nov-2012 Lee Jones <lee.jones@linaro.org> ab8500_charger: Reorder obtainment of platform specific battery management data

Now that we always pass platform specific battery management data
through platform_data instead of obtaining it via different means
depending the way be boot the system (DT or ATAGs); we need to
re-jiggle the way we acquire it in the driver start-up functions.
Now it is wrong for it to be missing, but we still allow Device
Tree code to fiddle with it once we've confirmed it's there.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
23a04f9f40f2b32ee593b768483105b1c776814d 29-Nov-2012 Lee Jones <lee.jones@linaro.org> ab8500_bm: Always send platform specific battery information via pdata

Currently the AB8500 battery management subsystem receives platform
specific information via two different means depending on how the
platform is booted. If DT is not enabled, a reference to a *_bm_data
data structure containing each platform specific attribute is passed
though platform_data. However, if DT is enabled, then platform_data
is empty and the reference is gained though a DT specific probe
function. There are two issues here 1) the same reference is
being collected each time and 2) the DT way doesn't allow any
provisions to select different platform specific attributes, which
kind of defeats the object.

Cc: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
b0284de05e07d56ff7de154d0c9263788755f5eb 30-Nov-2012 Lee Jones <lee.jones@linaro.org> ab8500_bm: Rename battery management platform data to something more logical

The platform specific battery management configuration data structure
is currently called 'bat' short for 'battery'; however, it contains
information for all components of the battery management group, rather
than information pertaining to the battery itself - there are other
structures for that. So, in keeping with its structure namesake
'abx500_bm_data', we rename it to 'bm' here. Using similar logic,
we're also renaming 'bmdevs_of_probe' to the more device specific
'ab8500_bm_of_probe'.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
f8e96dff240982c1433d447bae533acc36b5cf8f 18-Jan-2012 Johan Bjornstedt <johan.bjornstedt@stericsson.com> ab8500_charger: Charger current step-up/down

There is no state machine in the AB to step up/down the charger
current to avoid dips and spikes on VBUS and VBAT when charging
is started. Instead this is implemented in SW.

Signed-off-by: Johan Bjornstedt <johan.bjornstedt@stericsson.com>
Signed-off-by: Mattias Wallin <mattias.wallin@stericsson.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Reviewed-by: Karl KOMIEROWSKI <karl.komierowski@stericsson.com>
415ec69fb1861fc377c65cb30ddc76999891b8e1 19-Nov-2012 Bill Pemberton <wfp5p@virginia.edu> power: remove use of __devexit

CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Anton Vorontsov <cbou@mail.ru>
Cc: David Woodhouse <dwmw2@infradead.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
c8afa6406e60aec6ff90033e5ffe41a206609296 19-Nov-2012 Bill Pemberton <wfp5p@virginia.edu> power: remove use of __devinit

CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Anton Vorontsov <cbou@mail.ru>
Cc: David Woodhouse <dwmw2@infradead.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
28ea73f4c67cb3dd8c972b21d9fdf84ea78d6daa 19-Nov-2012 Bill Pemberton <wfp5p@virginia.edu> power: remove use of __devexit_p

CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Anton Vorontsov <cbou@mail.ru>
Cc: David Woodhouse <dwmw2@infradead.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
4aef72dbb2e8997e627dd94ae2b9109dc09fffaa 19-Nov-2012 Rajanikanth H.V <rajanikanth.hv@stericsson.com> ab8500: Add devicetree support for charger

This patch adds device tree support for ab8500-charger driver

Signed-off-by: Rajanikanth H.V <rajanikanth.hv@stericsson.com>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
e0f1abeba5c2d8a2183566717d99294fd1a29c2e 19-Nov-2012 Rajanikanth H.V <rajanikanth.hv@stericsson.com> ab8500: Add devicetree support for fuelgauge

- This patch adds device tree support for fuelgauge driver
- optimize bm devices platform_data usage and of_probe(...)
Note: of_probe() routine for battery managed devices is made
common across all bm drivers.
- test status:
- interrupt numbers assigned differs between legacy and FDT mode.

Signed-off-by: Rajanikanth H.V <rajanikanth.hv@stericsson.com>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
fc2bc0c29a4e32da13ab75101edde030a6362d10 19-Aug-2012 Julia Lawall <Julia.Lawall@lip6.fr> ab8500_charger: Fix error return code

Initialize return variable before exiting on an error path.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
{ ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
when != &ret
*if(...)
{
... when != ret = e2
when forall
return ret;
}

// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
203b42f7317494ae5e5efc7be6fb7f29c927f102 21-Aug-2012 Tejun Heo <tj@kernel.org> workqueue: make deferrable delayed_work initializer names consistent

Initalizers for deferrable delayed_work are confused.

* __DEFERRED_WORK_INITIALIZER()
* DECLARE_DEFERRED_WORK()
* INIT_DELAYED_WORK_DEFERRABLE()

Rename them to

* __DEFERRABLE_WORK_INITIALIZER()
* DECLARE_DEFERRABLE_WORK()
* INIT_DEFERRABLE_WORK()

This patch doesn't cause any functional changes.

Signed-off-by: Tejun Heo <tj@kernel.org>
ded017ee6c7b90f7356bd8488f8af1c10ba90490 26-Jun-2012 Kishon Vijay Abraham I <kishon@ti.com> usb: phy: fix return value check of usb_get_phy

usb_get_phy will return -ENODEV if it's not able to find the phy. Hence
fixed all the callers of usb_get_phy to check for this error condition
instead of relying on a non-zero value as success condition.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
662dca54ca67c92b7aa14b9a2ec54acacf33ce45 22-Jun-2012 Kishon Vijay Abraham I <kishon@ti.com> usb: otg: support for multiple transceivers by a single controller

Add a linked list for keeping multiple PHY instances with different
types so that we can have separate USB2 and USB3 PHYs on one single
board. _get_phy_ has been changed so that the controller gets
the transceiver by type. _remove_phy_ has been added to let the phy
be removed from the phy list.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
721002ec1dd55a52425455826af49cf8853b2d4f 22-Jun-2012 Kishon Vijay Abraham I <kishon@ti.com> usb: otg: utils: rename function name in OTG utils

_transceiver() in otg.c is replaced with _phy. usb_set_transceiver is
replaced with usb_add_phy to make it similar to other usb standard
function names like usb_add_hcd.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2aac3de19b72608f474c90034185c2be4908728f 05-May-2012 Lee Jones <lee.jones@linaro.org> ab8500: Clean up probe routines

These patches clean up some ugliness and brings the variable
initialisation formatting more into line with other drivers.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
cc28e17100a6b051ef966de81bb2d4a97b2a6645 13-Apr-2012 Linus Walleij <linus.walleij@linaro.org> ab8500_charger: Harden platform data check

If no platform data at all is supplied the driver crashes,
extend the checks to be more careful so we can compile in the
driver and boot also without platform data present.

Acked-by: Arun Murthy <arun.murthy@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
64eb9b02bfbbc2a53b6092cc12c1f42cc3261dbc 14-Mar-2012 Anton Vorontsov <anton.vorontsov@linaro.org> ab8500: Turn unneeded global symbols into local ones

The patch fixes the following sparse warning:

drivers/power/ab8500_charger.c:1619:6: warning: symbol 'ab8500_charger_detect_usb_type_work' was not declared. Should it be static?
drivers/power/abx500_chargalg.c:1709:24: warning: symbol 'abx500_chargalg_sysfs_ops' was not declared. Should it be static?
drivers/power/ab8500_fg.c:2328:24: warning: symbol 'ab8500_fg_sysfs_ops' was not declared. Should it be static?

Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
efd71c89a411d72f1e20d91e34f0779e0e0019b4 14-Mar-2012 Anton Vorontsov <anton.vorontsov@linaro.org> ab8500_charger: Convert to the new USB OTG calls

This patch fixes the following build errors:

ab8500_charger.c: In function 'ab8500_charger_remove':
ab8500_charger.c:2519:2: error: implicit declaration of function 'otg_unregister_notifier' [-Werror=implicit-function-declaration]
ab8500_charger.c:2520:2: error: implicit declaration of function 'otg_put_transceiver' [-Werror=implicit-function-declaration]
ab8500_charger.c: In function 'ab8500_charger_probe':
ab8500_charger.c:2688:2: error: implicit declaration of function 'otg_get_transceiver' [-Werror=implicit-function-declaration]
ab8500_charger.c:2688:10: warning: assignment makes pointer from integer without a cast [enabled by default]
ab8500_charger.c:2695:2: error: implicit declaration of function 'otg_register_notifier' [-Werror=implicit-function-declaration]

Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
84edbeeab67c1575067335179513150115da367b 29-Feb-2012 Arun Murthy <arun.murthy@stericsson.com> ab8500-charger: AB8500 charger driver

This driver is responsible for detecting the ac/usb plugin and also includes
function to enable ac/usb charging and re-kick the watchdog.
It registers with the power supply class and provides information to the user
space. The information include status of ac/usb charger device.
This information in turn will be used by the abx500 charging algorithm driver
to enable/disable and monitor charging.

Signed-off-by: Arun Murthy <arun.murthy@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>