* PCIe tegra194 endpoint mode regulator question
@ 2025-09-17 9:26 Niklas Cassel
2025-09-18 10:47 ` Jon Hunter
0 siblings, 1 reply; 2+ messages in thread
From: Niklas Cassel @ 2025-09-17 9:26 UTC (permalink / raw)
To: Thierry Reding, Jonathan Hunter, Vidya Sagar
Cc: linux-pci, Shin'ichiro Kawasaki
Hello Tegra PCIe maintainers,
Looking at the device tree binding for Tegra PCIe endpoint mode:
Documentation/devicetree/bindings/pci/nvidia,tegra194-pcie-ep.yaml
We can see that 'vddio-pex-ctl-supply' is marked as required.
However, when inspecting the driver itself:
drivers/pci/controller/dwc/pcie-tegra194.c
regulator_enable(pcie->pex_ctl_supply);
is only called in tegra_pcie_config_controller().
tegra_pcie_init_controller() is called by tegra_pcie_config_rp()
(Root Complex mode), however regulator_enable(pcie->pex_ctl_supply);
is never called by tegra_pcie_config_ep() or pex_ep_event_pex_rst_deassert(),
or any other function called when the driver is using any of the
PCIe endpoint mode compatible strings.
So, I think there is something wrong here.
Either:
1) 'vddio-pex-ctl-supply' shouldn't be marked as required in the
PCIe endpoint mode device tree binding (or perhaps not be there
at all, since regulator_enable(pcie->pex_ctl_supply) is never called.)
2) drivers/pci/controller/dwc/pcie-tegra194.c should call
regulator_enable(pcie->pex_ctl_supply) even in the endpoint mode case.
Looking forward to your feedback.
Kind regards,
Niklas
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: PCIe tegra194 endpoint mode regulator question
2025-09-17 9:26 PCIe tegra194 endpoint mode regulator question Niklas Cassel
@ 2025-09-18 10:47 ` Jon Hunter
0 siblings, 0 replies; 2+ messages in thread
From: Jon Hunter @ 2025-09-18 10:47 UTC (permalink / raw)
To: Niklas Cassel, Thierry Reding, Vidya Sagar
Cc: linux-pci, Shin'ichiro Kawasaki, linux-tegra@vger.kernel.org
Hi Sagar,
On 17/09/2025 10:26, Niklas Cassel wrote:
> Hello Tegra PCIe maintainers,
>
> Looking at the device tree binding for Tegra PCIe endpoint mode:
> Documentation/devicetree/bindings/pci/nvidia,tegra194-pcie-ep.yaml
>
> We can see that 'vddio-pex-ctl-supply' is marked as required.
>
> However, when inspecting the driver itself:
> drivers/pci/controller/dwc/pcie-tegra194.c
>
> regulator_enable(pcie->pex_ctl_supply);
> is only called in tegra_pcie_config_controller().
> tegra_pcie_init_controller() is called by tegra_pcie_config_rp()
> (Root Complex mode), however regulator_enable(pcie->pex_ctl_supply);
> is never called by tegra_pcie_config_ep() or pex_ep_event_pex_rst_deassert(),
> or any other function called when the driver is using any of the
> PCIe endpoint mode compatible strings.
>
> So, I think there is something wrong here.
>
> Either:
> 1) 'vddio-pex-ctl-supply' shouldn't be marked as required in the
> PCIe endpoint mode device tree binding (or perhaps not be there
> at all, since regulator_enable(pcie->pex_ctl_supply) is never called.)
>
> 2) drivers/pci/controller/dwc/pcie-tegra194.c should call
> regulator_enable(pcie->pex_ctl_supply) even in the endpoint mode case.
Looks like you added this. Can you confirm if this is needed or not?
Jon
--
nvpublic
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-09-18 10:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-17 9:26 PCIe tegra194 endpoint mode regulator question Niklas Cassel
2025-09-18 10:47 ` Jon Hunter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox