All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Anand Moon <linux.amoon@gmail.com>
Cc: "Thierry Reding" <thierry.reding@gmail.com>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
	"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
	"Manivannan Sadhasivam" <mani@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Jonathan Hunter" <jonathanh@nvidia.com>,
	"Aaron Kling" <webgeek1234@gmail.com>,
	"open list:PCI DRIVER FOR NVIDIA TEGRA"
	<linux-tegra@vger.kernel.org>,
	"open list:PCI DRIVER FOR NVIDIA TEGRA"
	<linux-pci@vger.kernel.org>,
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
	<devicetree@vger.kernel.org>,
	"open list" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 1/5] dt-bindings: PCI: Convert nvidia,tegra-pcie to DT schema
Date: Thu, 5 Mar 2026 18:43:33 -0600	[thread overview]
Message-ID: <20260306004333.GA863798-robh@kernel.org> (raw)
In-Reply-To: <20260224121948.25218-2-linux.amoon@gmail.com>

On Tue, Feb 24, 2026 at 05:48:57PM +0530, Anand Moon wrote:
> Convert the existing text-based DT bindings documentation for the
> NVIDIA Tegra PCIe host controller to a DT schema format.

I just reviewed the same thing from Thierry... This one looks a bit 
better for overall structure (fewer if/then schemas), but I think misses 
some things like deprecated supplies. Please resolve the differences 
between the 2 and coordinate who is going to send the next version.

> 
> Also update the MAINTAINERS file to reflect this change.
> 
> Cc: Jon Hunter <jonathanh@nvidia.com>
> Signed-off-by: Anand Moon <linux.amoon@gmail.com>
> ---
> v3: Tried to address the issues Krzysztof pointed out.
>    Added missing regulator binding as suggeested by Jon.
> v2: Tried to address the isssue Rob pointed
> [1] https://lkml.org/lkml/2025/9/26/704
> improve the $suject and commit message
> drop few examples only nvidia,tegra20-pcie and nvidia,tegra210-pcie
> 
> $ make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
> ---
>  .../bindings/pci/nvidia,tegra-pcie.yaml       | 528 ++++++++++++++
>  .../bindings/pci/nvidia,tegra20-pcie.txt      | 670 ------------------
>  MAINTAINERS                                   |   2 +-
>  3 files changed, 529 insertions(+), 671 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
>  delete mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> 
> diff --git a/Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml b/Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
> new file mode 100644
> index 000000000000..0675bec205e8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
> @@ -0,0 +1,528 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pci/nvidia,tegra-pcie.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NVIDIA Tegra PCIe Controller
> +
> +maintainers:
> +  - Jon Hunter <jonathanh@nvidia.com>
> +  - Thierry Reding <treding@nvidia.com>
> +
> +description:
> +  PCIe controller found on NVIDIA Tegra SoCs which supports multiple
> +  root ports and platform-specific clock, reset, and power supply
> +  configurations.
> +
> +properties:
> +  compatible:
> +    enum:
> +      - nvidia,tegra20-pcie
> +      - nvidia,tegra30-pcie
> +      - nvidia,tegra124-pcie
> +      - nvidia,tegra210-pcie
> +      - nvidia,tegra186-pcie
> +
> +  reg:
> +    items:
> +      - description: PADS registers
> +      - description: AFI registers
> +      - description: Configuration space region
> +
> +  reg-names:
> +    items:
> +      - const: pads
> +      - const: afi
> +      - const: cs
> +
> +  interrupts:
> +    items:
> +      - description: Controller interrupt
> +      - description: MSI interrupt
> +
> +  interrupt-names:
> +    items:
> +      - const: intr
> +      - const: msi
> +
> +  clocks:
> +    minItems: 3
> +    items:
> +      - description: PCIe clock
> +      - description: AFI clock
> +      - description: PLL_E clock
> +      - description: Optional CML clock
> +
> +  clock-names:
> +    description: Names of clocks used by the PCIe controller
> +    minItems: 3
> +    items:
> +      - const: pex
> +      - const: afi
> +      - const: pll_e
> +      - const: cml
> +
> +  resets:
> +    items:
> +      - description: PCIe reset
> +      - description: AFI reset
> +      - description: PCIe-X reset
> +
> +  reset-names:
> +    items:
> +      - const: pex
> +      - const: afi
> +      - const: pcie_x
> +
> +  power-domains:
> +    maxItems: 1
> +
> +  interconnects:
> +    minItems: 1
> +    maxItems: 2
> +
> +  interconnect-names:
> +    items:
> +      - const: dma-mem
> +      - const: write
> +
> +  pinctrl-names:
> +    items:
> +      - const: default
> +      - const: idle
> +
> +  pinctrl-0: true
> +  pinctrl-1: true
> +
> +  operating-points-v2:
> +    description:
> +      Defines operating points with required frequency and voltage values,
> +      and the opp-supported-hw property.
> +
> +  iommus:
> +    maxItems: 1
> +
> +  avdd-pex-supply:
> +    description: Power supply for analog PCIe logic. Must supply 1.05 V.
> +
> +  vdd-pex-supply:
> +    description: Power supply for digital PCIe I/O. Must supply 1.05 V.
> +
> +  avdd-pex-pll-supply:
> +    description: Power supply for dedicated (internal) PCIe PLL. Must supply 1.05 V.
> +
> +  avdd-plle-supply:
> +    description: Power supply for PLLE, which is shared with SATA. Must supply 1.05 V.
> +
> +  vddio-pex-clk-supply:
> +    description: Power supply for PCIe clock. Must supply 3.3 V.
> +
> +  vddio-pex-ctl-supply:
> +    description: Power supply for PCIe control I/O partition. Must supply 1.8 V.
> +
> +  hvdd-pex-supply:
> +    description: High-voltage supply for PCIe I/O and PCIe output clocks. Must supply 3.3 V.
> +
> +  avdd-pexa-supply:
> +    description: Power supply for analog PCIe logic. Must supply 1.05 V.
> +
> +  vdd-pexa-supply:
> +    description: Power supply for digital PCIe I/O. Must supply 1.05 V.
> +
> +  avdd-pexb-supply:
> +    description: Power supply for analog PCIe logic. Must supply 1.05 V.
> +
> +  vdd-pexb-supply:
> +    description: Power supply for digital PCIe I/O. Must supply 1.05 V.
> +
> +  avddio-pex-supply:
> +    description: Power supply for analog PCIe logic. Must supply 1.05 V.
> +
> +  dvddio-pex-supply:
> +    description: Power supply for digital PCIe I/O. Must supply 1.05 V.
> +
> +  hvddio-pex-supply:
> +    description: High-voltage supply for PCIe I/O and PCIe output clocks. Must supply 1.8 V.
> +
> +  dvdd-pex-supply:
> +    description: Power supply for digital PCIe I/O. Must supply 1.05 V.
> +
> +  hvdd-pex-pll-supply:
> +    description: High-voltage supply for PLLE (shared with USB3). Must supply 1.8 V.
> +
> +  vddio-pexctl-aud-supply:
> +    description: Power supply for PCIe side band signals. Must supply 1.8 V.
> +
> +patternProperties:
> +  "^pci@[0-9a-f]+(,[0-9a-f]+)?$":
> +    type: object
> +    allOf:

Don't need allOf.

> +      - $ref: /schemas/pci/pci-pci-bridge.yaml#
> +    properties:
> +      reg:
> +        maxItems: 1
> +
> +      nvidia,num-lanes:
> +        description: Number of lanes used by this PCIe port
> +        $ref: /schemas/types.yaml#/definitions/uint32
> +        enum: [1, 2, 4]
> +
> +      phys:
> +        description: Phandles to PCIe PHYs
> +        items:
> +          maxItems: 1

How many cells a phy entry has depends on the provider which is outside 
the scope of this binding.

> +        minItems: 1
> +        maxItems: 4


  reply	other threads:[~2026-03-06  0:43 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-24 12:18 [PATCH v3 0/5] PCI: tegra: A couple of cleanups Anand Moon
2026-02-24 12:18 ` [PATCH v3 1/5] dt-bindings: PCI: Convert nvidia,tegra-pcie to DT schema Anand Moon
2026-03-06  0:43   ` Rob Herring [this message]
2026-03-11  6:46     ` Anand Moon
2026-04-27 14:33       ` Rob Herring
2026-02-24 12:18 ` [PATCH v3 2/5] arm64: dts: tegra: tegra186-p2771: Fix invalid PCIe nvidia,num-lanes Anand Moon
2026-02-24 12:18 ` [PATCH v3 3/5] PCI: tegra: Simplify clock handling by using clk_bulk*() functions Anand Moon
2026-02-24 12:19 ` [PATCH v3 4/5] PCI: tegra: Use readl_poll_timeout() for link status polling Anand Moon
2026-02-24 12:19 ` [PATCH v3 5/5] PCI: tegra: Use BIT() and GENMASK() macros for register definitions Anand Moon
2026-03-05  6:12 ` [PATCH v3 0/5] PCI: tegra: A couple of cleanups Manivannan Sadhasivam

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=20260306004333.GA863798-robh@kernel.org \
    --to=robh@kernel.org \
    --cc=bhelgaas@google.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jonathanh@nvidia.com \
    --cc=krzk+dt@kernel.org \
    --cc=kwilczynski@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=linux.amoon@gmail.com \
    --cc=lpieralisi@kernel.org \
    --cc=mani@kernel.org \
    --cc=thierry.reding@gmail.com \
    --cc=webgeek1234@gmail.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 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.