Enable/disable charging from PMIC




We need to enable/disable charging of a battery from PMIC while charger is still connected.

We have tried to toggle CHG_EN, CHG_PAUSE, ON_BAT_FORCE bits from register LBC_CHGR_CHG_CTRL of PM8916. Though, we are unable to see enabling/disabling of charging from PMIC.

Can anyone please suggest, what can be done here?

Change battery charging current from PM8916
Enable battery charging from PMIC
Configure MPP2 as SW ADC (BTM)

In PM8916 LBC_CHGR_CHG_CTRL register doc, the following is indicated:

BOOT_DONE in the LBC_MISC peripheral must also be set to 1 in
order that FSM controlled charging starts

is it the case?


We have checked this, it didn’t help.



We have provided battery’s pin BAT_THM (temperature monitoring) to PMIC as an input. We are now not able to charge the battery using PMIC’s internal charger despite USB is connected.

Please let us know how we can enable the USB charging for the battery in the above case? How can we configure MPP2 as SW ADC (BTM)?

Note: We are working on Linaro_18.01 (Linux).


Hi @arjun.salariya

When the 410c was designed it was decided to NOT support charging with the charging circuitry built into the PMIC.

There are litteraly hundreds of things that you have to set up correctly to safely charge a battery. The settings are very specific to each battery module, and depend on the chemistry and the supplier recommendations as well as the capacity of the battery and the physical mounting of the battery. Far too many variables. Most of the parameters are set in the proprietary binaries long before lk starts and most customers do not have access to the proprietary binaries.

I don’t think you will ever get the battery charger in the PMIC running and even if you do, your system will be a fire hazzard without the correct settings.

If you really need battery charging on your system, use an external third party chip that you can program correctly for your battery.


Hello ljking,

Thanks for your reply. We are here able to charge the battery using PMIC’s charging if battery’s BAT THUMB is not connected to PMIC.

If we connect the BAT THUMB pin to PMIC, PMIC somehow disables the charging. That is why we need to configure the SW ADC as mentioned earlier.

Can you please help how to do that using MPP2?




Any help to configure the MPP2 as an ADC with Linux platform?




We are using PM8916’s internal charger to charge the battery, We need to limit battery charging current to 800mA. We have tried this by changing register value LBC_CHGR_IBAT_MAX, but not succeeded.

Can anyone help here?

Note: we are using Linaro 18.01.


Arjun will already know this but for anyone else reading this thread, whilst I can’t really offer any advice on how to configure the PMIC (for the reasons @ljking already mentioned), this bit did get a reply in a different thread: