Re: [PATCH RFC net-next v3 03/27] net: pse-pd: Avoid setting max_uA in regulator constraints

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Oleksij,

On Sat, 23 Nov 2024 07:29:29 +0100
Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx> wrote:

> Hi Kory,
> 
> On Thu, Nov 21, 2024 at 03:42:29PM +0100, Kory Maincent wrote:
> > From: Kory Maincent (Dent Project) <kory.maincent@xxxxxxxxxxx>
> > 
> > Setting the max_uA constraint in the regulator API imposes a current
> > limit during the regulator registration process. This behavior conflicts
> > with preserving the maximum PI power budget configuration across reboots.
> > 
> > Instead, compare the desired current limit to MAX_PI_CURRENT in the
> > pse_pi_set_current_limit() function to ensure proper handling of the
> > power budget.  
> 
> Not enough coffee :) I still didn't correctly understood the problem.

Don't worry, if you don't understand as a PSE Maintainer no one will. The cause
is the commit message.
 
> MAX_PI_CURRENT is the hard limit according to the standard, so it is the
> intial limit anyway. Why it is bad to set it on registration? It feels
> still better compared to have no limit on init. Or do i'm missing
> things?

Using constraints.max_uA to set the max current limit will cause regulator core
to call the set_current_limit callback when registering a regulator. This call
will be done using MAX_PI_CURRENT (1,92A) limit.

Is see two issues to this:
- There is a chance the power budget of the supply will be not sufficient for
  all the PIs configured to MAX_PI_CURRENT. On that case the power budget of
  the supply is exceeded and the next PI of the PSE power domain can't probe
  with success. It will have -ERANGE error returned from
  devm_regulator_register() call. So the PSE driver can't probe with success.
- The PI current limit is reset at each boot. The next patch series will tackle
  permanent configuration feature of the PD692x0. This will conflict as
  we want to keep the PI current limit saved.

Another solution would be to add a no_apply_max_uA_constraint flag.

Regards,
-- 
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux