summaryrefslogtreecommitdiff
path: root/drivers/power (follow)
Commit message (Collapse)AuthorAge
...
* | | | | | | | Merge "battery: fix 0mA ICL not suspending charger"Linux Build Service Account2017-04-10
|\ \ \ \ \ \ \ \
| * | | | | | | | battery: fix 0mA ICL not suspending chargerAbhijeet Dharmapurikar2017-04-10
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a bug in usb ICL (input current limit) votable callback where it fails to set the current on main charger if the new value is lower than the settled value. Fix it. Change-Id: I8e8e1c16772eabe9f411c3de5460ca581a3a5d37 Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | | | | | Merge "qcom: smb2: fix probe failure"Linux Build Service Account2017-04-10
|\ \ \ \ \ \ \ \
| * | | | | | | | qcom: smb2: fix probe failureAshay Jaiswal2017-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Charger driver probe might fail while querying for battery health if bms psy is not available. Fix this by reporting health as "UNKNOWN". CRs-Fixed: 2029960 Change-Id: I6544788a6fe3ab7aaf70ffd382213d8b4aa4c0b6 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
* | | | | | | | | Merge "power: qpnp-fg-gen3: Add support to configure ESR pulse thresholds"Linux Build Service Account2017-04-10
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | / / / / / | | |_|/ / / / / | |/| | | | | |
| * | | | | | | power: qpnp-fg-gen3: Add support to configure ESR pulse thresholdsSubbaraman Narayanamurthy2017-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ESR pulse qualification threshold and measurement current should get set properly without which ESR pulses can fire frequently causing frequent wakeups. Add support to configure them. Use the default values as per the hardware recommendation. Change-Id: I160b2171c46df483c7fa4da2ce23009d99c6dcff Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
* | | | | | | | Merge "qcom: qpnp-fg-gen3: Reconfigure profile parameters upon battery hotswap"Linux Build Service Account2017-04-08
|\| | | | | | | | |/ / / / / / |/| | | | | |
| * | | | | | qcom: qpnp-fg-gen3: Reconfigure profile parameters upon battery hotswapSubbaraman Narayanamurthy2017-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we configure battery profile parameters during bootup and they're not configured again during battery hotswap. Fix this by configuring those parameters after getting it from the device tree. Change-Id: I43c5c9cdc6dfc12751ae0a67faee59aacf4326dc Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
* | | | | | | Merge "msm-core: Fix uninitialized sampling work"Linux Build Service Account2017-04-06
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | |
| * | | | | | msm-core: Fix uninitialized sampling workMaulik Shah2017-04-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sampling work can be accessed by do_sampling kthread before init. Fix this by initializing sampling work before using. Change-Id: I790ce50fcddbcd08861e31fea9bde839d6fbb7cc Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
* | | | | | | Merge "smb138x: support usbin-usbin with external rsense"Linux Build Service Account2017-04-05
|\ \ \ \ \ \ \
| * | | | | | | smb138x: support usbin-usbin with external rsenseAbhijeet Dharmapurikar2017-04-03
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently smb138x only support usbin-usbin parallel architecture where the battery current from the parallel charger flows through the batfet of the main charger. Support configurations where there is remote sensing or an external rsense where the current from parallel charger directly goes to the battery. Change-Id: I5506190d83436bfaea3b6c98b1b311746cf85071 Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | | | | Merge "qcom: smb1351: update CHARGING_ENABLE reporting logic"Linux Build Service Account2017-04-05
|\ \ \ \ \ \ \
| * | | | | | | qcom: smb1351: update CHARGING_ENABLE reporting logicAshay Jaiswal2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of parallel charging mode "parallel_charger_suspended" variable tracks the charging enable state, update CHARGING_ENABLE reporting to use the same. CRs-Fixed: 2014572 Change-Id: Ib7246f407ad103343b7587b9de3ac938fb63767d Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
| * | | | | | | qcom: smb2: disable parallel in restricted/thermal conditionsAshay Jaiswal2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add voting to disable parallel charger in case of restricted charging and when system temperature level changes from normal. Parallel charger gets re-enabled once thermal condition/FCC restrictions are removed. CRs-Fixed: 2014572 Change-Id: Ic26b3d93f2f3d582a2eb3c7b9ea0d27bbad24a50 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
| * | | | | | | qcom: battery: update parallel algorithm for ICL changeAbhijeet Dharmapurikar2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the parallel algorithm for ICL change request. Following steps are performed for every ICL change: - disable parallel charger using ICL_CHANGE_VOTER - update the new ICL and re-run AICL. - re-enable parallel charger by removing vote of ICL_CHANGE_VOTER. While at it, update the 'smblib_get_prop_usb_online' function to use voter library's locked API to get the usb_icl_vote, this fixes the lockup that happens when charging is enabled/disabled from usb_icl_votable's callback function. CRs-Fixed: 2014572 Change-Id: I7deb6a50d67471ab1aa5e1db6fff880574b4bafb Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
| * | | | | | | qcom: battery: remove ICL_REDUCTION supportAbhijeet Dharmapurikar2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make battery library to directly update the split current of the main charger via power_supply framework's set_property API using CURRENT_MAX property. ICL_REDUCTION property is no longer required. Note that we are not doing initial ICL vote for USBIN USBIN, instead when time comes to split aicl, we will read the input current limit and if nothing is set, check what the hw determined as the max limit and use that. For a PD charger case where the apsd result will be unknown, the current limit is expected to be set by the time aicl settled is called. The 30 second delaying of parallel enabling, should give PD engine ample time to set the current limits. While at it clean up the way settled current change is tracked. Create a variable that specifically indicates the total settled current seen last time settled current was adjusted. This makes compare to an updated settled current value easy. CRs-Fixed: 2014572 Change-Id: I040b65e6380f2c12350ea44bf32e6981ff126f18 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | | | | | Merge "power_supply: add HW_CURRENT_MAX power_supply property"Linux Build Service Account2017-04-05
|\| | | | | | |
| * | | | | | | power_supply: add HW_CURRENT_MAX power_supply propertyAshay Jaiswal2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for HW_CURRENT_MAX property which returns maximum input current that can be set for an adapter. This property will be specifically used by parallel charger to cast an initial ICL vote. CRs-Fixed: 2014572 Change-Id: I49e80e6b25f40791d9035bc1567fdf881914b1e8 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
| * | | | | | | qpnp: smb-lib: move usb_icl_votable to battery libraryAshay Jaiswal2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move usb_icl_votable creation and it's callback in the battery.c file, in preparation for an upcoming change where usb_icl_votable callback will be able to disable parallel charger when a low input current request is set. The new callback uses CURRENT_MAX property to be set on main psy to set the ICL limit of primary charger. The limit setting code in main charger path where the votable call resides currently relies a lot on client being present or not. Since the votable is being moved away, it won't have information about the client. So use the current parameter of INT_MAX to indicate no clients present. Also it could be that main psy is not instantiated by the time first icl vote comes in. Ensure that we rerun_election on usb_icl_votable the instant main psy is seen. CRs-Fixed: 2014572 Change-Id: Ie449af086ed9218b40ea83158b69e8f8e73edda3 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
| * | | | | | | qcom: smb2: disable h/w autonomous parallel controlAshay Jaiswal2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The charger driver ensures that parallel charging remains disabled as long as AICL is below threshole (1400mA) using it's software voting mechanism(USBIN_I_VOTER), thus disable hardware's autonomous control of input current based parallel charging. CRs-Fixed: 2014572 Change-Id: Ie991e0c1d16d63b6def6fb3379019114d20d60f7 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
| * | | | | | | qcom: smb-lib: add delay for parallel enableAshay Jaiswal2017-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the driver enables parallel charger as soon as a favorable charger is seen. This causes many, unnecessary splits of AICL results as AICL runs for the first time. Besides the detection logic could further update charger type and rerun AICL. Its best to simply delay enabling parallel charger for 30 seconds. This ensures that type detection and its AICL run to completion and parallel charging starts with a stable AICL result. To realize this - implement a workqueue which will be scheduled/cancelled 30 seconds later when vbus plugin interrupt happens. - The workqueue signifies that 30 seconds have elapsed and parallel charging should be enabled by PL_DELAY_VOTER. - remove PL_DELAY_HDVP_VOTER since PL_DELAY_VOTER will ensure parallel gets enabled after 30 seconds of insertion. - unvote from PL_DELAY_VOTER only when the typeC removal event happens. A PR_SWAP during a sink session will keep the PL_DELAY_VOTER's vote enabled, we expect CHG_STATE_VOTER to disable parallel since device will be supplying VBUS and not charging the battery. This also means that when another PR_SWAP happens and the device starts operating in sink mode again, PL_DELAY_VOTER's vote will remain enabled and parallel charging would begin when other conditions become favorable. IOW PL_DELAY_VOTER tracks 30 second after physical insertion and remains unaffected by PR_SWAPs. CRs-Fixed: 2014572 Change-Id: Ibe10768e61c6d2661bc8946f7f6b9be06f0c28e6 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | | | | | Merge "power: smb-lib: update USBIN_V_VOTER usage"Linux Build Service Account2017-04-05
|\| | | | | | |
| * | | | | | | power: smb-lib: update USBIN_V_VOTER usageAshay Jaiswal2017-04-05
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current code enables parallel charging if a high voltage charger is seen (QC or PD) or a high current charger is seen. This means that parallel charger could remain enabled when PD transitions its voltage even though it has reduced the current to 500mA. It is desirable to disable parallel charging during such voltage transition. So prepare for this change by first ensuring that only a QC charger votes for USBIN_V_VOTER. The PD charger, even while operating at higher voltages will need to depend on USBIN_I_VOTER, just like a simple DCP charger, to enable parallel charger. CRs-Fixed: 2014572 Change-Id: I03dfcff44b30b06918ebf176043873fb141f485f Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
* / / / / / / qcom: smb-lib: disable VCONN operations for micro USB modeAshay Jaiswal2017-04-04
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VCONN is not supported in micro USB mode, thus disable registration and operations on VCONN regulator. While at it, disable TRY.SOURCE while disabling typeC. CRs-Fixed: 2027962 Change-Id: Ib92564160c48f52d77815b646b4cdd5c7d23e7b3 Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
* | | | | | Merge "qcom: qnovo: Fix PCURx reporting error"Linux Build Service Account2017-03-31
|\ \ \ \ \ \
| * | | | | | qcom: qnovo: Fix PCURx reporting errorHarry Yang2017-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PCURx[MSB:LSB] is a 14-bit signed raw data, but treated as two full bytes during reg reading, as a result bit 14 and 15 are filled with 0s. When the raw data is negative, the mistreated reading gives positive result. Hence the eventual PCURx after applying the gain and offset corrections is incorrect. Fix it by extending sign bit when negative. Change-Id: Ia35406809355bd5e2d6cfeb890dd870430e38f66 Signed-off-by: Harry Yang <harryy@codeaurora.org>
* | | | | | | Merge "power: smb-lib: Rerun APSD regardless of charger-type"Linux Build Service Account2017-03-31
|\ \ \ \ \ \ \
| * | | | | | | power: smb-lib: Rerun APSD regardless of charger-typeAnirudh Ghayal2017-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is observed that the USB_PHY may interfere with APSD when the charger is inserted at PON. This may lead to incorrect charger type detection. Fix this by doing a APSD re-run during driver initialization if USB is present and regardless of the charger type. CRs-Fixed: 2011764 Change-Id: Icc9ee7bacf0eecdb311ca52979758514abca154e Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
* | | | | | | | Merge "qcom: smb-lib: Disable HW trigger when forcing sink-only mode"Linux Build Service Account2017-03-31
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | |
| * | | | | | | qcom: smb-lib: Disable HW trigger when forcing sink-only modeJack Pham2017-03-30
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to an existing HW workaround, the UFP_EN_CMD bit may end up getting cleared even after having been set. The result of this is the Type-C state machine returns to DRP behavior despite SW intention to force sink mode, such as PR Swap or Try.SNK. Temporarily disable this particular HW trigger whenever the typec_power_role property is getting set to sink-only mode, and restore it when leaving sink mode. Change-Id: I21e840bfeee3ad88b0562645378b1fea200e3803 Signed-off-by: Jack Pham <jackp@codeaurora.org> Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | | | | Merge "qcom: qnovo: Disable ok_to_qnovo right after charging stops"Linux Build Service Account2017-03-30
|\ \ \ \ \ \ \
| * | | | | | | qcom: qnovo: Disable ok_to_qnovo right after charging stopsHarry Yang2017-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disable ok_to_qnovo immediately after charging is disabled while pulse train is in progress. The flag property ok_to_qnovo indicates qnovno charging readiness, A delay in doing so could make a normal charging stop mistakenly treated as an error. Change-Id: If0c43a4e05b2e0f8cc0ce9a9edca15f466c7fbff Signed-off-by: Harry Yang <harryy@codeaurora.org>
* | | | | | | | Merge "qcom: smb138x-charger: support two usb input properties"Linux Build Service Account2017-03-30
|\ \ \ \ \ \ \ \
| * | | | | | | | qcom: smb138x-charger: support two usb input propertiesHarry Yang2017-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | POWER_SUPPLY_PROP_INPUT_CURRENT_LIMITED - indicate if the switcher is acting in input limited state. POWER_SUPPLY_PROP_CURRENT_MAX - set/get usb input current limit in parallel charger. Change-Id: I3827735a3900680e3e79104e388c2712f12cbbfb Signed-off-by: Harry Yang <harryy@codeaurora.org>
* | | | | | | | | Merge "qcom: smblib: supsend USB input during boost"Linux Build Service Account2017-03-30
|\| | | | | | | |
| * | | | | | | | qcom: smblib: supsend USB input during boostHarry Yang2017-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In parallel configuration, suspend one charger usb input before the other enters boost mode. Even more so in USBIN-USBIN mode. Change-Id: I63728421b7697e70bbd83c4c82203b7ebafdaa9f Signed-off-by: Harry Yang <harryy@codeaurora.org>
* | | | | | | | | Merge "ARM: dts: msm: Specify smb138x vbus regulator for USBIN-USBIN"Linux Build Service Account2017-03-30
|\| | | | | | | | | |_|/ / / / / / |/| | | | | | |
| * | | | | | | pmic-voter: bump up from 8 clients to 16Abhijeet Dharmapurikar2017-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current code only supports 8 clients max. There are situations where we will need more than that. Bump it up to 16. Change-Id: I7a32f67b3a4579ec79eb4f0e2a971a1a3a29a7c1 Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
* | | | | | | | Merge "power: qpnp-fg-gen3: Whitelist the values in profile integrity word"Linux Build Service Account2017-03-30
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | |
| * | | | | | | power: qpnp-fg-gen3: Whitelist the values in profile integrity wordSubbaraman Narayanamurthy2017-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While checking the profile integrity word to determine whether a profile load is required or not, whitelist the values so that profile loading cannot be skipped because of a garbage value present. Change-Id: Iff1d116541d07dbb39de966d98fa69b76aeab93d Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
| * | | | | | | power: qpnp-fg-gen3: Use votable for controlling delta_bsoc irqSubbaraman Narayanamurthy2017-03-29
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using a flag to retain the interrupt enabled status of delta_bsoc interrupt, switch it to use a votable instead. This improves the readability of code by not worrying about the flag. While at it, fix cleaning up the resources in some error paths during driver probe. Change-Id: I2c17a9d90c7b549435caa75da81f4c4779ea3344 Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
* | | | | | | Merge "qcom: smb2: Disable parallel charging on qnovo charging below 2A"Linux Build Service Account2017-03-29
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| * | | | | | qcom: smb2: Disable parallel charging on qnovo charging below 2AHarry Yang2017-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add qnovo as pl charging voter and disable parallel charging when qnovo is enabled with fcc below 2A. Change-Id: Ic03a18318a89344f2bd5c8a72445abe22cd3d142 Signed-off-by: Harry Yang <harryy@codeaurora.org>
| * | | | | | qcom: qnovo: Add property to report charge errorsHarry Yang2017-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Report status that indicates individual charger errors, including JEITA, battery, charing disabled, etc. Change-Id: I5a02d9f86237ae1a05b71e78f17db8c39f35594f Signed-off-by: Harry Yang <harryy@codeaurora.org>
| * | | | | | qcom: qnovo: Add support to enable qnovo chargingHarry Yang2017-03-28
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add property qnovo_enable to enable qnovo charging. Also add property pt_enable to enable pulse train. Extend QNOVO algorithm's control of voltage and current after pulse train stops and as long as qnovo_enable = 1. The interrupt ptrain_done is configured wakeup capable. CRs-Fixed: 2013069 Change-Id: Icb61e0e0169283f5f52a4994431489dde0af1c73 Signed-off-by: Harry Yang <harryy@codeaurora.org>
* | | | | | Merge "qpnp-fg-gen3: use IMA single mode for pm660 fuel gauge"Linux Build Service Account2017-03-29
|\ \ \ \ \ \ | |/ / / / / |/| | | | |
| * | | | | qpnp-fg-gen3: use IMA single mode for pm660 fuel gaugeSubbaraman Narayanamurthy2017-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because of HW issues, burst mode access cannot be done with pm660 parts. Use IMA in single mode for it. Change-Id: I4e86601d713140e559ba8a6f92715f2075c7b8ee Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
| * | | | | qcom: fg-memif: add support for using IMA single modeSubbaraman Narayanamurthy2017-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, based on the number of bytes read/written, IMA is configured for single or burst mode. Add an option to override to single mode whenever required. While at it, change pr_err() statements to print some more debug information which might be useful. Change-Id: If19e135ed4014732a0efe56250f56f0760a1fb93 Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
* | | | | | Merge "qpnp-fg-gen3: prime CC_SOC_SW when capacity learning begins"Linux Build Service Account2017-03-27
|\ \ \ \ \ \