From: Heikki Krogerus <heikki.krogerus@linux.intel.com>
To: Amit Sunil Dhamne <amitsd@google.com>
Cc: "André Draszik" <andre.draszik@linaro.org>,
"Lee Jones" <lee@kernel.org>, "Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Jagan Sridharan" <badhri@google.com>,
"Mark Brown" <broonie@kernel.org>,
"Matti Vaittinen" <mazziesaccount@gmail.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Sebastian Reichel" <sre@kernel.org>,
"Peter Griffin" <peter.griffin@linaro.org>,
"Tudor Ambarus" <tudor.ambarus@linaro.org>,
"Alim Akhtar" <alim.akhtar@samsung.com>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-usb@vger.kernel.org, linux-pm@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-samsung-soc@vger.kernel.org,
"RD Babiera" <rdbabiera@google.com>,
"Kyle Tso" <kyletso@google.com>
Subject: Re: [PATCH v10 6/6] usb: typec: tcpm/tcpci_maxim: deprecate WAR for setting charger mode
Date: Tue, 7 Apr 2026 15:24:39 +0300 [thread overview]
Message-ID: <adT3h8ZEQh_mFi5j@kuha> (raw)
In-Reply-To: <017b8552-87e2-4409-ae34-9a3ab7365a68@google.com>
Hi Amit,
On Thu, Apr 02, 2026 at 11:47:30AM -0700, Amit Sunil Dhamne wrote:
> Hi Heikki,
>
> On 4/2/26 7:33 AM, Heikki Krogerus wrote:
> > Hi Amit,
> >
> > > +static int get_vbus_regulator_handle(struct max_tcpci_chip *chip)
> > > +{
> > > + if (IS_ERR_OR_NULL(chip->vbus_reg)) {
> > > + chip->vbus_reg = devm_regulator_get_exclusive(chip->dev,
> > > + "vbus");
> > Sorry to go back to this, but why can't you just get the regulator in
> > max_tcpci_probe()?
>
> Thanks for calling this out. This was an intentional design decision to
> break a circular dependency.
>
> The charger driver is guaranteed to probe after the TCPC driver due to a
> power supply dependency (the TCPC is a supplier of power for the Battery
> Charger). However, the charger driver is also the regulator provider for
> VBUS out (when Type-C goes into source mode).
>
> Because of this, the regulator handle will not be available during the TCPC
> driver's probe. If we tried to fetch it in max_tcpci_probe() and returned
> -EPROBE_DEFER, it would create a probe deadlock, as the charger would then
> never probe. Therefore, I made the decision to get the regulator handle
> lazily and on-demand.
Got it. Thanks for the explanation!
--
heikki
prev parent reply other threads:[~2026-04-07 12:25 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-31 23:22 [PATCH v10 0/6] Introduce MAX77759 charger driver Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-03-31 23:22 ` [PATCH v10 1/6] dt-bindings: mfd: maxim,max77759: reference power-supply schema and add regulator property Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-03-31 23:22 ` [PATCH v10 2/6] dt-bindings: usb: maxim,max33359: Add supply property for vbus Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-03-31 23:22 ` [PATCH v10 3/6] mfd: max77759: add register bitmasks and modify irq configs for charger Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-04-24 8:26 ` Lee Jones
2026-04-29 0:29 ` Amit Sunil Dhamne
2026-04-29 16:59 ` Krzysztof Kozlowski
2026-05-01 19:40 ` Amit Sunil Dhamne
2026-03-31 23:22 ` [PATCH v10 4/6] lib/linear_ranges: Add linear_range_get_selector_high_array Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-03-31 23:22 ` [PATCH v10 5/6] power: supply: max77759: add charger driver Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-04-01 23:17 ` Sebastian Reichel
2026-04-02 1:25 ` Amit Sunil Dhamne
2026-03-31 23:22 ` [PATCH v10 6/6] usb: typec: tcpm/tcpci_maxim: deprecate WAR for setting charger mode Amit Sunil Dhamne
2026-03-31 23:22 ` Amit Sunil Dhamne via B4 Relay
2026-04-02 14:33 ` Heikki Krogerus
2026-04-02 18:47 ` Amit Sunil Dhamne
2026-04-07 12:24 ` Heikki Krogerus [this message]
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=adT3h8ZEQh_mFi5j@kuha \
--to=heikki.krogerus@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=alim.akhtar@samsung.com \
--cc=amitsd@google.com \
--cc=andre.draszik@linaro.org \
--cc=badhri@google.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=krzk+dt@kernel.org \
--cc=kyletso@google.com \
--cc=lee@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mazziesaccount@gmail.com \
--cc=peter.griffin@linaro.org \
--cc=rdbabiera@google.com \
--cc=robh@kernel.org \
--cc=sre@kernel.org \
--cc=tudor.ambarus@linaro.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.