summaryrefslogtreecommitdiff
path: root/drivers/power/smb349-charger.c
AgeCommit message (Collapse)Author
2012-08-13power: smb349: correct charger statusAllen Yu
When tegra-otg suspends with charger cable connected, the charger state and type should not be changed, neither should the charger callback be executed. SMB349 has a debounce delay of ~20ms +/- 3 after cable is unpluged and will stop all I2C functions for 2.3ms when getting reset to POR. Add 50ms' delay before reading charger status to avoid I2C error and make sure we get the right charger state. Bug 1024735 Change-Id: I1667b23df768b46b524c6578c4bee09e131d9f96 Signed-off-by: Allen Yu <alleny@nvidia.com> Reviewed-on: http://git-master/r/120905 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> GVS: Gerrit_Virtual_Submit
2012-07-09power: smb349: remove otg callbackChandler Zhang
The callback in otg driver is not a standard way of controlling USB VBUS. Remove the callback and use regulator to control. Bug 997805 Change-Id: I6d7fd01f9346e037515901ac6fe6d349a140d13e Signed-off-by: Chander Zhang <chazhang@nvidia.com> Reviewed-on: http://git-master/r/112896 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-by: Sachin Nikam <snikam@nvidia.com>
2012-06-13power: smb349: fix I2C error when unplug ext powerSyed Rafiuddin
When unplug the external power, SMB349 will reload the OTP setting. It sometimes caused I2c errors. See bug 996103 and 991401. Add a 50ms delay when hotplugging the external power to fix the issue. SMB349 might mistakenly detect dedicated USB charger as standard USB device if plug in the USB at low speed. See Bug 996108. Add a 500ms delay to fix the issue. Bug 996103 Bug 996108 Bug 991401 Change-Id: I008a45fa221e9a566af64afb1988bbbd7a9f5c79 Signed-off-by: Chandler Zhang <chazhang@nvidia.com> Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/106684 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-06-11power: smb349: added debugfs to dump registers.Linqiang Pu
also cleanup the driver code to remove warnings and indent issue. Change-Id: I6fd81a369be9141a5819bf086078bc609360efd8 Signed-off-by: Linqiang Pu <dpu@nvidia.com> Reviewed-on: http://git-master/r/106682 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
2012-05-23Merge commit 'main-ics-2012.05.22-B3' into HEADTom Cherry
Conflicts: arch/arm/mach-tegra/pm.c drivers/media/video/tegra/nvavp/nvavp_dev.c drivers/power/smb349-charger.c include/linux/smb349-charger.h include/trace/events/power.h Change-Id: Ia8c82e2acfe3463ae6778bdd03aac8da104f7ad3
2012-05-21power: smb349: support for self-powered devicesChandler Zhang
Some self-powered devices doesn't strictly follow USB spec that has 5V Vbus to upstream cannot work with mux on the data lines. The MAX4983 mux routes the data lines to SMB349 rather than the Tegra chip when PGOOD polarity is low-active and DCIN is 5V. Change PGOOD not to invert polarity for the devices that has 5V to upstream. Bug 981761 Change-Id: Ic67ec66ce8936d9a9d5d2df7bca2ff7f9c65b147 Signed-off-by: Chandler Zhang <chazhang@nvidia.com> Reviewed-on: http://git-master/r/103526 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-05-03power: smb349: addition of regulator interfaceSyed Rafiuddin
Addition of regulator interface to detect the usb cable plug/unplug detection. bug 974806 Reviewed-on: http://git-master/r/95063 (cherry picked from commit 0ff4f3f13f3751a7d861888094ff213b6022640e) Change-Id: If6522a56511549bb0faa45b0654fcb390d27af21 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Signed-off-by: Chandler Zhang <chazhang@nvidia.com> Signed-off-by: Shridhar Rasal <srasal@nvidia.com> Reviewed-on: http://git-master/r/99604 GVS: Gerrit_Virtual_Submit Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-05-01power: smb349: update correct charger statusSyed Rafiuddin
Update correct status to fuel-gauge driver when charger cable is disconnected. Bug 960318 Change-Id: I4c3ad2030ada7c06825e80a3eb4697b669fe7cb6 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/98719 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-05-01power: smb349: fix NULL pointer issue.Syed Rafiuddin
Configure i2c client structure in update charger structure only when the charger driver is in use. If charger driver is not used return -ENODEV Change-Id: Ib1bc99145ee75bea819f69157920f9096e5d40ba Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/98712 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
2012-04-18power: smb349: addition of regulator interfaceSyed Rafiuddin
Addition of reglator interface to detect the usb cable plug/unplug detection. Bug 961166 Bug 966874 Change-Id: Ida297bc39df9aca8cffe60c29bc24f2d32819f56 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Signed-off-by: Chandler Zhang <chazhang@nvidia.com> Reviewed-on: http://git-master/r/96440 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Sachin Nikam <snikam@nvidia.com>
2012-03-30power: smb349: resolve compilation time warningsSanjay Singh Rawat
bug 949219 Change-Id: I56904b3607c92281076ae3245ee1071922763eb8 Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com> Reviewed-on: http://git-master/r/92557 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Gerrit_Virtual_Submit
2012-03-15power: smb349: fix otg driver callback functionSyed Rafiuddin
Allows OTG enable/disable only while USB OTG state swithes between SUSPEND and HOST Bug 937188 Change-Id: If651dfb19db37f8822e6d1473aa573246aca8d45 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/89111 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-03-15power: smb349: add callback to update chargerChandler Zhang
Add update_charger_status() function callback to fix unknown charging status at start up issue. Bug 951750 Change-Id: Ib264479b0a251a07d136c245afa85c3444754ee0 Signed-off-by: Chandler Zhang <chazhang@nvidia.com> Reviewed-on: http://git-master/r/89436 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-03-15power: smb349: set PGOOD to active low at OTGChandler Zhang
1. Turn PGOOD to active low when OTG is enabled 2. Free irq in error handling and smb349_remove Bug 937188 Change-Id: I94a58c8dfd9066034335ec4507b80d1607fe029f Signed-off-by: Chandler Zhang <chazhang@nvidia.com> Reviewed-on: http://git-master/r/89028 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
2012-03-07power: smb349: Enable OTG supportSyed Rafiuddin
Addition of OTG support in smb349 charger driver Change-Id: Ib38c9f4c06285ae07d93cfa3c6f5e1637aaa9460 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/86936 Reviewed-by: Sachin Nikam <snikam@nvidia.com>
2012-03-02power: smb349: Addition of interrupt supportSyed Rafiuddin
-Addition of interrupt support to update charger properties to fuel-gauge driver. Change-Id: If6384921247b6534f2d8142ad5fd079c5f6e0890 Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/83507 Reviewed-by: Sachin Nikam <snikam@nvidia.com>
2012-02-09power: smb349: smb349 charger driverSyed Rafiuddin
Smb349 battery charger driver for kai platform. Signed-off-by: Syed Rafiuddin <srafiuddin@nvidia.com> Reviewed-on: http://git-master/r/78211 (cherry picked from commit f059c9db2735a6e0088dd9cd61a623b13b5d717e) Change-Id: Ifa401713928d29bb4235353e50b66e632c7625ba Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com> Reviewed-on: http://git-master/r/79980 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com>