[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210329162539.GG5166@sirena.org.uk>
Date: Mon, 29 Mar 2021 17:25:40 +0100
From: Mark Brown <broonie@...nel.org>
To: Jim Quinlan <jim2101024@...il.com>
Cc: linux-pci@...r.kernel.org,
Nicolas Saenz Julienne <nsaenzjulienne@...e.de>,
Rob Herring <robh@...nel.org>,
bcm-kernel-feedback-list@...adcom.com, james.quinlan@...adcom.com,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Florian Fainelli <f.fainelli@...il.com>,
"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE"
<linux-rpi-kernel@...ts.infradead.org>,
"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE"
<linux-arm-kernel@...ts.infradead.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 2/6] PCI: brcmstb: Add control of EP voltage regulators
On Fri, Mar 26, 2021 at 03:19:00PM -0400, Jim Quinlan wrote:
> + /* Now look for regulator supply properties */
> + for_each_property_of_node(child, pp) {
> + int i, n = strnlen(pp->name, max_name_len);
> +
> + if (n <= 7 || strncmp("-supply", &pp->name[n - 7], 7))
> + continue;
Here you are figuring out a device local supply name...
> + /*
> + * Get the regulators that the EP devices require. We cannot use
> + * pcie->dev as the device argument in regulator_bulk_get() since
> + * it will not find the regulators. Instead, use NULL and the
> + * regulators are looked up by their name.
> + */
> + return regulator_bulk_get(NULL, pcie->num_supplies, pcie->supplies);
...and here you are trying to look up that device local name in the
global namespace. That's not going to work well, the global names that
supplies are labelled with may be completely different to what the chip
designer called them and there could easily be naming collisions between
different chips.
Download attachment "signature.asc" of type "application/pgp-signature" (489 bytes)
Powered by blists - more mailing lists