LKML Archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie@kernel.org>
To: Andrew Lunn <andrew@lunn.ch>
Cc: Kory Maincent <kory.maincent@bootlin.com>,
	Oleksij Rempel <o.rempel@pengutronix.de>,
	Kyle Swenson <kyle.swenson@est.tech>,
	Liam Girdwood <lgirdwood@gmail.com>,
	linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Subject: Re: PoE complex usage of regulator API
Date: Tue, 30 Apr 2024 00:47:52 +0900	[thread overview]
Message-ID: <Zi_BKFa4Sk3IAFFU@finisterre.sirena.org.uk> (raw)
In-Reply-To: <57a79abd-722c-4907-b0e7-2396392ae675@lunn.ch>

[-- Attachment #1: Type: text/plain, Size: 1200 bytes --]

On Sat, Apr 27, 2024 at 12:41:19AM +0200, Andrew Lunn wrote:

> I'm assuming this is mostly about book keeping? When a regulator is
> created, we want to say is can deliver up to X Kilowatts. We then want
> to allocate power to ports. So there needs to be a call asking it to
> allocate part of X to a consumer, which could fail if there is not
> sufficient power budget left. And there needs to be a call to release
> such an allocation.

The current limits for regulators are generally imposed in hardware as a
safety measure, this also happens for example with USB where there's
regulators in the PHYs.  Whatever is providing the power is very likely
to have reasonable headroom for robustness.

> We are probably not so much interested in what the actual current
> power draw is, assuming there is no wish to over provision?

One of the goals is to protect the system in the case that something
malfunctions and tries to draw more current than can be sustained.  A
system that is overprovisioned might choose to allow excessive draw,
especially transiently to cover bootsrapping issues, though there's
tradeoffs with system protection vs interoperability with poor quality
implementations there.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  parent reply	other threads:[~2024-04-29 15:47 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-26 10:42 PoE complex usage of regulator API Kory Maincent
2024-04-26 22:41 ` Andrew Lunn
2024-04-29 12:52   ` Kory Maincent
2024-04-29 14:32     ` Oleksij Rempel
2024-04-29 14:57       ` Andrew Lunn
2024-04-29 15:58         ` Oleksij Rempel
2024-04-29 15:58         ` Mark Brown
2024-04-29 15:47   ` Mark Brown [this message]
2024-04-29 15:38 ` Mark Brown
2024-04-29 17:28   ` Kory Maincent
2024-04-30  2:23     ` Mark Brown
2024-04-30  6:48       ` Oleksij Rempel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Zi_BKFa4Sk3IAFFU@finisterre.sirena.org.uk \
    --to=broonie@kernel.org \
    --cc=andrew@lunn.ch \
    --cc=kory.maincent@bootlin.com \
    --cc=kyle.swenson@est.tech \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=o.rempel@pengutronix.de \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).