Linux-Tegra Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies
@ 2020-06-23 14:55 Thierry Reding
       [not found] ` <20200623145528.1658337-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Thierry Reding @ 2020-06-23 14:55 UTC (permalink / raw)
  To: Lorenzo Pieralisi, Bjorn Helgaas, Rob Herring
  Cc: Jon Hunter, linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA

From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

The XUSB pad controller, which provides access to various USB, PCI and
SATA pads (or PHYs), needs to bring up the PLLs associated with these
pads. In order to properly do so, it needs to control the power supplied
to these PLLs.

Remove the PLL power supplies from the PCIe controller because it does
not need direct access to them. Instead it will only use the configured
pads provided by the XUSB pad controller.

Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
---
Hi Rob,

I already made this change as part of the conversion series, but wanted
to send this out as part of this subseries since it addresses a fairly
long-standing issue that I'd like to clean up irrespective of the DT
binding conversion. Since it looks like the conversion series will take
a bit longer, I think it makes sense to send this out separately.

Thierry

 .../devicetree/bindings/pci/nvidia,tegra20-pcie.txt  | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
index 7939bca47861..d099f3476ccc 100644
--- a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
+++ b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
@@ -112,28 +112,16 @@ Power supplies for Tegra124:
 - Required:
   - avddio-pex-supply: Power supply for analog PCIe logic. Must supply 1.05 V.
   - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
-  - avdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
-    supply 1.05 V.
   - hvdd-pex-supply: High-voltage supply for PCIe I/O and PCIe output clocks.
     Must supply 3.3 V.
-  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
-    Must supply 3.3 V.
   - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
     supply 2.8-3.3 V.
-  - avdd-pll-erefe-supply: Power supply for PLLE (shared with USB3). Must
-    supply 1.05 V.
 
 Power supplies for Tegra210:
 - Required:
-  - avdd-pll-uerefe-supply: Power supply for PLLE (shared with USB3). Must
-    supply 1.05 V.
   - hvddio-pex-supply: High-voltage supply for PCIe I/O and PCIe output
     clocks. Must supply 1.8 V.
   - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
-  - dvdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
-    supply 1.05 V.
-  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
-    Must supply 3.3 V.
   - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
     supply 1.8 V.
 
-- 
2.27.0

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
       [not found] ` <20200623145528.1658337-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2020-06-23 14:55   ` Thierry Reding
       [not found]     ` <20200623145528.1658337-2-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2020-07-27 16:21     ` Rob Herring
  2020-07-16 12:59   ` [PATCH v2 1/2] dt-bindings: pci: " Thierry Reding
  1 sibling, 2 replies; 12+ messages in thread
From: Thierry Reding @ 2020-06-23 14:55 UTC (permalink / raw)
  To: Lorenzo Pieralisi, Bjorn Helgaas, Rob Herring
  Cc: Jon Hunter, linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA

From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

The Tegra PCI controller driver doesn't need to control the PLL power
supplies directly, but rather uses the pads provided by the XUSB pad
controller, which in turn is responsible for supplying power to the
PLLs.

Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
---
 drivers/pci/controller/pci-tegra.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c
index 235b456698fc..f87a09d21eb0 100644
--- a/drivers/pci/controller/pci-tegra.c
+++ b/drivers/pci/controller/pci-tegra.c
@@ -2025,7 +2025,7 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
 		pcie->supplies[i++].supply = "hvdd-pex";
 		pcie->supplies[i++].supply = "vddio-pexctl-aud";
 	} else if (of_device_is_compatible(np, "nvidia,tegra210-pcie")) {
-		pcie->num_supplies = 6;
+		pcie->num_supplies = 3;
 
 		pcie->supplies = devm_kcalloc(pcie->dev, pcie->num_supplies,
 					      sizeof(*pcie->supplies),
@@ -2033,14 +2033,11 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
 		if (!pcie->supplies)
 			return -ENOMEM;
 
-		pcie->supplies[i++].supply = "avdd-pll-uerefe";
 		pcie->supplies[i++].supply = "hvddio-pex";
 		pcie->supplies[i++].supply = "dvddio-pex";
-		pcie->supplies[i++].supply = "dvdd-pex-pll";
-		pcie->supplies[i++].supply = "hvdd-pex-pll-e";
 		pcie->supplies[i++].supply = "vddio-pex-ctl";
 	} else if (of_device_is_compatible(np, "nvidia,tegra124-pcie")) {
-		pcie->num_supplies = 7;
+		pcie->num_supplies = 4;
 
 		pcie->supplies = devm_kcalloc(dev, pcie->num_supplies,
 					      sizeof(*pcie->supplies),
@@ -2050,11 +2047,8 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
 
 		pcie->supplies[i++].supply = "avddio-pex";
 		pcie->supplies[i++].supply = "dvddio-pex";
-		pcie->supplies[i++].supply = "avdd-pex-pll";
 		pcie->supplies[i++].supply = "hvdd-pex";
-		pcie->supplies[i++].supply = "hvdd-pex-pll-e";
 		pcie->supplies[i++].supply = "vddio-pex-ctl";
-		pcie->supplies[i++].supply = "avdd-pll-erefe";
 	} else if (of_device_is_compatible(np, "nvidia,tegra30-pcie")) {
 		bool need_pexa = false, need_pexb = false;
 
-- 
2.27.0

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies
       [not found] ` <20200623145528.1658337-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2020-06-23 14:55   ` [PATCH v2 2/2] PCI: " Thierry Reding
@ 2020-07-16 12:59   ` Thierry Reding
  2020-07-17 10:48     ` Lorenzo Pieralisi
  1 sibling, 1 reply; 12+ messages in thread
From: Thierry Reding @ 2020-07-16 12:59 UTC (permalink / raw)
  To: Lorenzo Pieralisi, Bjorn Helgaas, Rob Herring
  Cc: Jon Hunter, linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA


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

On Tue, Jun 23, 2020 at 04:55:27PM +0200, Thierry Reding wrote:
> From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> 
> The XUSB pad controller, which provides access to various USB, PCI and
> SATA pads (or PHYs), needs to bring up the PLLs associated with these
> pads. In order to properly do so, it needs to control the power supplied
> to these PLLs.
> 
> Remove the PLL power supplies from the PCIe controller because it does
> not need direct access to them. Instead it will only use the configured
> pads provided by the XUSB pad controller.
> 
> Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> ---
> Hi Rob,
> 
> I already made this change as part of the conversion series, but wanted
> to send this out as part of this subseries since it addresses a fairly
> long-standing issue that I'd like to clean up irrespective of the DT
> binding conversion. Since it looks like the conversion series will take
> a bit longer, I think it makes sense to send this out separately.
> 
> Thierry
> 
>  .../devicetree/bindings/pci/nvidia,tegra20-pcie.txt  | 12 ------------
>  1 file changed, 12 deletions(-)

Hi Rob, any feedback on this?

Thanks,
Thierry

> diff --git a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> index 7939bca47861..d099f3476ccc 100644
> --- a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> +++ b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> @@ -112,28 +112,16 @@ Power supplies for Tegra124:
>  - Required:
>    - avddio-pex-supply: Power supply for analog PCIe logic. Must supply 1.05 V.
>    - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
> -  - avdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
> -    supply 1.05 V.
>    - hvdd-pex-supply: High-voltage supply for PCIe I/O and PCIe output clocks.
>      Must supply 3.3 V.
> -  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
> -    Must supply 3.3 V.
>    - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
>      supply 2.8-3.3 V.
> -  - avdd-pll-erefe-supply: Power supply for PLLE (shared with USB3). Must
> -    supply 1.05 V.
>  
>  Power supplies for Tegra210:
>  - Required:
> -  - avdd-pll-uerefe-supply: Power supply for PLLE (shared with USB3). Must
> -    supply 1.05 V.
>    - hvddio-pex-supply: High-voltage supply for PCIe I/O and PCIe output
>      clocks. Must supply 1.8 V.
>    - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
> -  - dvdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
> -    supply 1.05 V.
> -  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
> -    Must supply 3.3 V.
>    - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
>      supply 1.8 V.
>  
> -- 
> 2.27.0
> 

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
       [not found]     ` <20200623145528.1658337-2-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2020-07-16 13:00       ` Thierry Reding
  2020-07-16 14:07         ` Lorenzo Pieralisi
  0 siblings, 1 reply; 12+ messages in thread
From: Thierry Reding @ 2020-07-16 13:00 UTC (permalink / raw)
  To: Lorenzo Pieralisi, Bjorn Helgaas, Rob Herring
  Cc: Jon Hunter, linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA


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

On Tue, Jun 23, 2020 at 04:55:28PM +0200, Thierry Reding wrote:
> From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> 
> The Tegra PCI controller driver doesn't need to control the PLL power
> supplies directly, but rather uses the pads provided by the XUSB pad
> controller, which in turn is responsible for supplying power to the
> PLLs.
> 
> Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> ---
>  drivers/pci/controller/pci-tegra.c | 10 ++--------
>  1 file changed, 2 insertions(+), 8 deletions(-)

Hi Lorenzo,

do you have any comments on this? Can we get this into v5.9?

Thanks,
Thierry

> diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c
> index 235b456698fc..f87a09d21eb0 100644
> --- a/drivers/pci/controller/pci-tegra.c
> +++ b/drivers/pci/controller/pci-tegra.c
> @@ -2025,7 +2025,7 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
>  		pcie->supplies[i++].supply = "hvdd-pex";
>  		pcie->supplies[i++].supply = "vddio-pexctl-aud";
>  	} else if (of_device_is_compatible(np, "nvidia,tegra210-pcie")) {
> -		pcie->num_supplies = 6;
> +		pcie->num_supplies = 3;
>  
>  		pcie->supplies = devm_kcalloc(pcie->dev, pcie->num_supplies,
>  					      sizeof(*pcie->supplies),
> @@ -2033,14 +2033,11 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
>  		if (!pcie->supplies)
>  			return -ENOMEM;
>  
> -		pcie->supplies[i++].supply = "avdd-pll-uerefe";
>  		pcie->supplies[i++].supply = "hvddio-pex";
>  		pcie->supplies[i++].supply = "dvddio-pex";
> -		pcie->supplies[i++].supply = "dvdd-pex-pll";
> -		pcie->supplies[i++].supply = "hvdd-pex-pll-e";
>  		pcie->supplies[i++].supply = "vddio-pex-ctl";
>  	} else if (of_device_is_compatible(np, "nvidia,tegra124-pcie")) {
> -		pcie->num_supplies = 7;
> +		pcie->num_supplies = 4;
>  
>  		pcie->supplies = devm_kcalloc(dev, pcie->num_supplies,
>  					      sizeof(*pcie->supplies),
> @@ -2050,11 +2047,8 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
>  
>  		pcie->supplies[i++].supply = "avddio-pex";
>  		pcie->supplies[i++].supply = "dvddio-pex";
> -		pcie->supplies[i++].supply = "avdd-pex-pll";
>  		pcie->supplies[i++].supply = "hvdd-pex";
> -		pcie->supplies[i++].supply = "hvdd-pex-pll-e";
>  		pcie->supplies[i++].supply = "vddio-pex-ctl";
> -		pcie->supplies[i++].supply = "avdd-pll-erefe";
>  	} else if (of_device_is_compatible(np, "nvidia,tegra30-pcie")) {
>  		bool need_pexa = false, need_pexb = false;
>  
> -- 
> 2.27.0
> 

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
  2020-07-16 13:00       ` Thierry Reding
@ 2020-07-16 14:07         ` Lorenzo Pieralisi
       [not found]           ` <20200716140704.GA20249-LhTu/34fCX3ZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
  0 siblings, 1 reply; 12+ messages in thread
From: Lorenzo Pieralisi @ 2020-07-16 14:07 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Bjorn Helgaas, Rob Herring, Jon Hunter,
	linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA

On Thu, Jul 16, 2020 at 03:00:34PM +0200, Thierry Reding wrote:
> On Tue, Jun 23, 2020 at 04:55:28PM +0200, Thierry Reding wrote:
> > From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > 
> > The Tegra PCI controller driver doesn't need to control the PLL power
> > supplies directly, but rather uses the pads provided by the XUSB pad
> > controller, which in turn is responsible for supplying power to the
> > PLLs.
> > 
> > Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > ---
> >  drivers/pci/controller/pci-tegra.c | 10 ++--------
> >  1 file changed, 2 insertions(+), 8 deletions(-)
> 
> Hi Lorenzo,
> 
> do you have any comments on this? Can we get this into v5.9?

Yes we can if Rob is happy with patch (1).

Thanks,
Lorenzo

> Thanks,
> Thierry
> 
> > diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c
> > index 235b456698fc..f87a09d21eb0 100644
> > --- a/drivers/pci/controller/pci-tegra.c
> > +++ b/drivers/pci/controller/pci-tegra.c
> > @@ -2025,7 +2025,7 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
> >  		pcie->supplies[i++].supply = "hvdd-pex";
> >  		pcie->supplies[i++].supply = "vddio-pexctl-aud";
> >  	} else if (of_device_is_compatible(np, "nvidia,tegra210-pcie")) {
> > -		pcie->num_supplies = 6;
> > +		pcie->num_supplies = 3;
> >  
> >  		pcie->supplies = devm_kcalloc(pcie->dev, pcie->num_supplies,
> >  					      sizeof(*pcie->supplies),
> > @@ -2033,14 +2033,11 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
> >  		if (!pcie->supplies)
> >  			return -ENOMEM;
> >  
> > -		pcie->supplies[i++].supply = "avdd-pll-uerefe";
> >  		pcie->supplies[i++].supply = "hvddio-pex";
> >  		pcie->supplies[i++].supply = "dvddio-pex";
> > -		pcie->supplies[i++].supply = "dvdd-pex-pll";
> > -		pcie->supplies[i++].supply = "hvdd-pex-pll-e";
> >  		pcie->supplies[i++].supply = "vddio-pex-ctl";
> >  	} else if (of_device_is_compatible(np, "nvidia,tegra124-pcie")) {
> > -		pcie->num_supplies = 7;
> > +		pcie->num_supplies = 4;
> >  
> >  		pcie->supplies = devm_kcalloc(dev, pcie->num_supplies,
> >  					      sizeof(*pcie->supplies),
> > @@ -2050,11 +2047,8 @@ static int tegra_pcie_get_regulators(struct tegra_pcie *pcie, u32 lane_mask)
> >  
> >  		pcie->supplies[i++].supply = "avddio-pex";
> >  		pcie->supplies[i++].supply = "dvddio-pex";
> > -		pcie->supplies[i++].supply = "avdd-pex-pll";
> >  		pcie->supplies[i++].supply = "hvdd-pex";
> > -		pcie->supplies[i++].supply = "hvdd-pex-pll-e";
> >  		pcie->supplies[i++].supply = "vddio-pex-ctl";
> > -		pcie->supplies[i++].supply = "avdd-pll-erefe";
> >  	} else if (of_device_is_compatible(np, "nvidia,tegra30-pcie")) {
> >  		bool need_pexa = false, need_pexb = false;
> >  
> > -- 
> > 2.27.0
> > 

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
       [not found]           ` <20200716140704.GA20249-LhTu/34fCX3ZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
@ 2020-07-16 15:06             ` Thierry Reding
  0 siblings, 0 replies; 12+ messages in thread
From: Thierry Reding @ 2020-07-16 15:06 UTC (permalink / raw)
  To: Lorenzo Pieralisi
  Cc: Bjorn Helgaas, Rob Herring, Jon Hunter,
	linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA


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

On Thu, Jul 16, 2020 at 03:07:13PM +0100, Lorenzo Pieralisi wrote:
> On Thu, Jul 16, 2020 at 03:00:34PM +0200, Thierry Reding wrote:
> > On Tue, Jun 23, 2020 at 04:55:28PM +0200, Thierry Reding wrote:
> > > From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > > 
> > > The Tegra PCI controller driver doesn't need to control the PLL power
> > > supplies directly, but rather uses the pads provided by the XUSB pad
> > > controller, which in turn is responsible for supplying power to the
> > > PLLs.
> > > 
> > > Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > > ---
> > >  drivers/pci/controller/pci-tegra.c | 10 ++--------
> > >  1 file changed, 2 insertions(+), 8 deletions(-)
> > 
> > Hi Lorenzo,
> > 
> > do you have any comments on this? Can we get this into v5.9?
> 
> Yes we can if Rob is happy with patch (1).

I think this is mostly orthogonal to the bindings. We're already
controlling these supplies from the UPHY driver and controlling them
from the PCI driver is completely broken.

So I think technically these two patches could be applied separately,
but it's fine if you want to wait for Rob's feedback.

Thierry

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies
  2020-07-16 12:59   ` [PATCH v2 1/2] dt-bindings: pci: " Thierry Reding
@ 2020-07-17 10:48     ` Lorenzo Pieralisi
  0 siblings, 0 replies; 12+ messages in thread
From: Lorenzo Pieralisi @ 2020-07-17 10:48 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Bjorn Helgaas, Rob Herring, Jon Hunter,
	linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA

On Thu, Jul 16, 2020 at 02:59:45PM +0200, Thierry Reding wrote:
> On Tue, Jun 23, 2020 at 04:55:27PM +0200, Thierry Reding wrote:
> > From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > 
> > The XUSB pad controller, which provides access to various USB, PCI and
> > SATA pads (or PHYs), needs to bring up the PLLs associated with these
> > pads. In order to properly do so, it needs to control the power supplied
> > to these PLLs.
> > 
> > Remove the PLL power supplies from the PCIe controller because it does
> > not need direct access to them. Instead it will only use the configured
> > pads provided by the XUSB pad controller.
> > 
> > Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > ---
> > Hi Rob,
> > 
> > I already made this change as part of the conversion series, but wanted
> > to send this out as part of this subseries since it addresses a fairly
> > long-standing issue that I'd like to clean up irrespective of the DT
> > binding conversion. Since it looks like the conversion series will take
> > a bit longer, I think it makes sense to send this out separately.
> > 
> > Thierry
> > 
> >  .../devicetree/bindings/pci/nvidia,tegra20-pcie.txt  | 12 ------------
> >  1 file changed, 12 deletions(-)
> 
> Hi Rob, any feedback on this?

Hi Rob,

I'd like to queue both patches, please let me know if that's OK with
you.

Thank you very much.

Lorenzo

> > index 7939bca47861..d099f3476ccc 100644
> > --- a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> > +++ b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> > @@ -112,28 +112,16 @@ Power supplies for Tegra124:
> >  - Required:
> >    - avddio-pex-supply: Power supply for analog PCIe logic. Must supply 1.05 V.
> >    - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
> > -  - avdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
> > -    supply 1.05 V.
> >    - hvdd-pex-supply: High-voltage supply for PCIe I/O and PCIe output clocks.
> >      Must supply 3.3 V.
> > -  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
> > -    Must supply 3.3 V.
> >    - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
> >      supply 2.8-3.3 V.
> > -  - avdd-pll-erefe-supply: Power supply for PLLE (shared with USB3). Must
> > -    supply 1.05 V.
> >  
> >  Power supplies for Tegra210:
> >  - Required:
> > -  - avdd-pll-uerefe-supply: Power supply for PLLE (shared with USB3). Must
> > -    supply 1.05 V.
> >    - hvddio-pex-supply: High-voltage supply for PCIe I/O and PCIe output
> >      clocks. Must supply 1.8 V.
> >    - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
> > -  - dvdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
> > -    supply 1.05 V.
> > -  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
> > -    Must supply 3.3 V.
> >    - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
> >      supply 1.8 V.
> >  
> > -- 
> > 2.27.0
> > 

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies
  2020-06-23 14:55 [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies Thierry Reding
       [not found] ` <20200623145528.1658337-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2020-07-27 16:17 ` Rob Herring
  2020-07-28 10:20 ` Lorenzo Pieralisi
  2 siblings, 0 replies; 12+ messages in thread
From: Rob Herring @ 2020-07-27 16:17 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Lorenzo Pieralisi, Bjorn Helgaas, Jon Hunter, PCI, linux-tegra

On Tue, Jun 23, 2020 at 8:55 AM Thierry Reding <thierry.reding@gmail.com> wrote:
>
> From: Thierry Reding <treding@nvidia.com>
>
> The XUSB pad controller, which provides access to various USB, PCI and
> SATA pads (or PHYs), needs to bring up the PLLs associated with these
> pads. In order to properly do so, it needs to control the power supplied
> to these PLLs.
>
> Remove the PLL power supplies from the PCIe controller because it does
> not need direct access to them. Instead it will only use the configured
> pads provided by the XUSB pad controller.
>
> Signed-off-by: Thierry Reding <treding@nvidia.com>
> ---
> Hi Rob,
>
> I already made this change as part of the conversion series, but wanted
> to send this out as part of this subseries since it addresses a fairly
> long-standing issue that I'd like to clean up irrespective of the DT
> binding conversion. Since it looks like the conversion series will take
> a bit longer, I think it makes sense to send this out separately.
>
> Thierry
>
>  .../devicetree/bindings/pci/nvidia,tegra20-pcie.txt  | 12 ------------
>  1 file changed, 12 deletions(-)

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
  2020-06-23 14:55   ` [PATCH v2 2/2] PCI: " Thierry Reding
       [not found]     ` <20200623145528.1658337-2-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2020-07-27 16:21     ` Rob Herring
  2020-07-27 17:21       ` Thierry Reding
  1 sibling, 1 reply; 12+ messages in thread
From: Rob Herring @ 2020-07-27 16:21 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Lorenzo Pieralisi, Bjorn Helgaas, Jon Hunter, PCI, linux-tegra

On Tue, Jun 23, 2020 at 8:55 AM Thierry Reding <thierry.reding@gmail.com> wrote:
>
> From: Thierry Reding <treding@nvidia.com>
>
> The Tegra PCI controller driver doesn't need to control the PLL power
> supplies directly, but rather uses the pads provided by the XUSB pad
> controller, which in turn is responsible for supplying power to the
> PLLs.
>
> Signed-off-by: Thierry Reding <treding@nvidia.com>
> ---
>  drivers/pci/controller/pci-tegra.c | 10 ++--------
>  1 file changed, 2 insertions(+), 8 deletions(-)

What's going to happen here with a new dtb and an old kernel? Is it
going to error out due to missing supplies?

Rob

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
  2020-07-27 16:21     ` Rob Herring
@ 2020-07-27 17:21       ` Thierry Reding
  2020-07-27 17:43         ` Rob Herring
  0 siblings, 1 reply; 12+ messages in thread
From: Thierry Reding @ 2020-07-27 17:21 UTC (permalink / raw)
  To: Rob Herring
  Cc: Lorenzo Pieralisi, Bjorn Helgaas, Jon Hunter, PCI, linux-tegra


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

On Mon, Jul 27, 2020 at 10:21:42AM -0600, Rob Herring wrote:
> On Tue, Jun 23, 2020 at 8:55 AM Thierry Reding <thierry.reding@gmail.com> wrote:
> >
> > From: Thierry Reding <treding@nvidia.com>
> >
> > The Tegra PCI controller driver doesn't need to control the PLL power
> > supplies directly, but rather uses the pads provided by the XUSB pad
> > controller, which in turn is responsible for supplying power to the
> > PLLs.
> >
> > Signed-off-by: Thierry Reding <treding@nvidia.com>
> > ---
> >  drivers/pci/controller/pci-tegra.c | 10 ++--------
> >  1 file changed, 2 insertions(+), 8 deletions(-)
> 
> What's going to happen here with a new dtb and an old kernel? Is it
> going to error out due to missing supplies?

It's not going to error out but fallback to the "dummy" regulator, so
this should be fine from a forwards-compatibility point of view. Though
I didn't think we technically cared about that direction very much.

Thierry

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] PCI: tegra: Remove PLL power supplies
  2020-07-27 17:21       ` Thierry Reding
@ 2020-07-27 17:43         ` Rob Herring
  0 siblings, 0 replies; 12+ messages in thread
From: Rob Herring @ 2020-07-27 17:43 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Lorenzo Pieralisi, Bjorn Helgaas, Jon Hunter, PCI, linux-tegra

On Mon, Jul 27, 2020 at 11:21 AM Thierry Reding
<thierry.reding@gmail.com> wrote:
>
> On Mon, Jul 27, 2020 at 10:21:42AM -0600, Rob Herring wrote:
> > On Tue, Jun 23, 2020 at 8:55 AM Thierry Reding <thierry.reding@gmail.com> wrote:
> > >
> > > From: Thierry Reding <treding@nvidia.com>
> > >
> > > The Tegra PCI controller driver doesn't need to control the PLL power
> > > supplies directly, but rather uses the pads provided by the XUSB pad
> > > controller, which in turn is responsible for supplying power to the
> > > PLLs.
> > >
> > > Signed-off-by: Thierry Reding <treding@nvidia.com>
> > > ---
> > >  drivers/pci/controller/pci-tegra.c | 10 ++--------
> > >  1 file changed, 2 insertions(+), 8 deletions(-)
> >
> > What's going to happen here with a new dtb and an old kernel? Is it
> > going to error out due to missing supplies?
>
> It's not going to error out but fallback to the "dummy" regulator, so
> this should be fine from a forwards-compatibility point of view. Though
> I didn't think we technically cared about that direction very much.

AIUI, SUSE ships newer DTs with stable kernels. Of course, the dtb's
shouldn't really come from the OS vendors, but you wouldn't want a
newer firmware (w/ dtb) to break your OS either.

In any case,

Reviewed-by: Rob Herring <robh@kernel.org>

Rob

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies
  2020-06-23 14:55 [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies Thierry Reding
       [not found] ` <20200623145528.1658337-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2020-07-27 16:17 ` Rob Herring
@ 2020-07-28 10:20 ` Lorenzo Pieralisi
  2 siblings, 0 replies; 12+ messages in thread
From: Lorenzo Pieralisi @ 2020-07-28 10:20 UTC (permalink / raw)
  To: Thierry Reding
  Cc: Bjorn Helgaas, Rob Herring, Jon Hunter, linux-pci, linux-tegra

On Tue, Jun 23, 2020 at 04:55:27PM +0200, Thierry Reding wrote:
> From: Thierry Reding <treding@nvidia.com>
> 
> The XUSB pad controller, which provides access to various USB, PCI and
> SATA pads (or PHYs), needs to bring up the PLLs associated with these
> pads. In order to properly do so, it needs to control the power supplied
> to these PLLs.
> 
> Remove the PLL power supplies from the PCIe controller because it does
> not need direct access to them. Instead it will only use the configured
> pads provided by the XUSB pad controller.
> 
> Signed-off-by: Thierry Reding <treding@nvidia.com>
> ---
> Hi Rob,
> 
> I already made this change as part of the conversion series, but wanted
> to send this out as part of this subseries since it addresses a fairly
> long-standing issue that I'd like to clean up irrespective of the DT
> binding conversion. Since it looks like the conversion series will take
> a bit longer, I think it makes sense to send this out separately.

Applied the series to pci/tegra, thanks.

Lorenzo

> Thierry
> 
>  .../devicetree/bindings/pci/nvidia,tegra20-pcie.txt  | 12 ------------
>  1 file changed, 12 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> index 7939bca47861..d099f3476ccc 100644
> --- a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> +++ b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> @@ -112,28 +112,16 @@ Power supplies for Tegra124:
>  - Required:
>    - avddio-pex-supply: Power supply for analog PCIe logic. Must supply 1.05 V.
>    - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
> -  - avdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
> -    supply 1.05 V.
>    - hvdd-pex-supply: High-voltage supply for PCIe I/O and PCIe output clocks.
>      Must supply 3.3 V.
> -  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
> -    Must supply 3.3 V.
>    - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
>      supply 2.8-3.3 V.
> -  - avdd-pll-erefe-supply: Power supply for PLLE (shared with USB3). Must
> -    supply 1.05 V.
>  
>  Power supplies for Tegra210:
>  - Required:
> -  - avdd-pll-uerefe-supply: Power supply for PLLE (shared with USB3). Must
> -    supply 1.05 V.
>    - hvddio-pex-supply: High-voltage supply for PCIe I/O and PCIe output
>      clocks. Must supply 1.8 V.
>    - dvddio-pex-supply: Power supply for digital PCIe I/O. Must supply 1.05 V.
> -  - dvdd-pex-pll-supply: Power supply for dedicated (internal) PCIe PLL. Must
> -    supply 1.05 V.
> -  - hvdd-pex-pll-e-supply: High-voltage supply for PLLE (shared with USB3).
> -    Must supply 3.3 V.
>    - vddio-pex-ctl-supply: Power supply for PCIe control I/O partition. Must
>      supply 1.8 V.
>  
> -- 
> 2.27.0
> 

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, back to index

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-23 14:55 [PATCH v2 1/2] dt-bindings: pci: tegra: Remove PLL power supplies Thierry Reding
     [not found] ` <20200623145528.1658337-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-06-23 14:55   ` [PATCH v2 2/2] PCI: " Thierry Reding
     [not found]     ` <20200623145528.1658337-2-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-07-16 13:00       ` Thierry Reding
2020-07-16 14:07         ` Lorenzo Pieralisi
     [not found]           ` <20200716140704.GA20249-LhTu/34fCX3ZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2020-07-16 15:06             ` Thierry Reding
2020-07-27 16:21     ` Rob Herring
2020-07-27 17:21       ` Thierry Reding
2020-07-27 17:43         ` Rob Herring
2020-07-16 12:59   ` [PATCH v2 1/2] dt-bindings: pci: " Thierry Reding
2020-07-17 10:48     ` Lorenzo Pieralisi
2020-07-27 16:17 ` Rob Herring
2020-07-28 10:20 ` Lorenzo Pieralisi

Linux-Tegra Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-tegra/0 linux-tegra/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-tegra linux-tegra/ https://lore.kernel.org/linux-tegra \
		linux-tegra@vger.kernel.org
	public-inbox-index linux-tegra

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-tegra


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git