Re: [PATCH 05/10] mfd: rt5033: Apply preparatory changes before adding rt5033-charger driver

From: Jakob Hauser
Date: Sun Apr 02 2023 - 06:10:26 EST


Hi Lee,

On 05.03.23 17:14, Jakob Hauser wrote:
On 05.03.23 11:55, Lee Jones wrote:
On Tue, 28 Feb 2023, Jakob Hauser wrote:

Order the register blocks to have the masks in descending manner.

Add new defines for constant voltage shift (RT5033_CHGCTRL2_CV_SHIFT),
MIVR mask (RT5033_CHGCTRL4_MIVR_MASK), pre-charge current shift
(RT5033_CHGCTRL4_IPREC_SHIFT), internal timer disable
(RT5033_INT_TIMER_DISABLE), termination disable (RT5033_TE_DISABLE),
CFO disable (RT5033_CFO_DISABLE), UUG disable (RT5033_CHARGER_UUG_DISABLE).

The fast charge timer type needs to be written on mask 0x38
(RT5033_CHGCTRL3_TIMER_MASK). To avoid a bit shift on application, change the
values of the timer types to fit the mask. Added the timout duration as a
comment. And the timer between TIMER8 and TIMER12 is most likely TIMER10, see
e.g. RT5036 [1] page 28 bottom.

Add value options for MIVR (Minimum Input Voltage Regulation).

Move RT5033_TE_ENABLE_MASK to the block "RT5033 CHGCTRL1 register", in order
to have the masks of the register collected there. To fit the naming scheme,
rename it to RT5033_CHGCTRL1_TE_EN_MASK.

Move RT5033_CHG_MAX_CURRENT to the block "RT5033 charger fast-charge current".

Add new defines RT5033_CV_MAX_VOLTAGE and RT5033_CHG_MAX_PRE_CURRENT to the
blocks "RT5033 charger constant charge voltage" and "RT5033 charger pre-charge
current limits".

In include/linux/mfd/rt5033.h, turn power_supply "psy" into a pointer in order
to use it in devm_power_supply_register().

Are there no present users to account for?

At least none I'm aware of. Within the upstream kernel the rt5033_charger power_supply didn't exist so far, the patchset is about to implement it.

Is there anything you want me to change or improve on this patch?

[1] https://media.digikey.com/pdf/Data%20Sheets/Richtek%20PDF/RT5036%20%20Preliminary.pdf

Signed-off-by: Jakob Hauser <jahau@xxxxxxxxxxxxxx>
---
  include/linux/mfd/rt5033-private.h | 53 ++++++++++++++++++++----------
  include/linux/mfd/rt5033.h         |  2 +-
  2 files changed, 36 insertions(+),` 19 deletions(-)

Kind regards,
Jakob