From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Herve Codina <herve.codina@bootlin.com>
Cc: "Marek Vasut" <marek.vasut+renesas@gmail.com>,
"Yoshihiro Shimoda" <yoshihiro.shimoda.uh@renesas.com>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Rob Herring" <robh+dt@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Geert Uytterhoeven" <geert+renesas@glider.be>,
"Magnus Damm" <magnus.damm@gmail.com>,
"Lorenzo Pieralisi" <lorenzo.pieralisi@arm.com>,
"Krzysztof Wilczyński" <kw@linux.com>,
"Rob Herring" <robh@kernel.org>,
linux-pci@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
"Sergey Shtylyov" <s.shtylyov@omp.ru>,
"Thomas Petazzoni" <thomas.petazzoni@bootlin.com>,
"Clement Leger" <clement.leger@bootlin.com>
Subject: Re: [PATCH v2 2/8] dt-bindings: PCI: renesas-pci-usb: Convert bindings to json-schema
Date: Thu, 14 Apr 2022 10:08:35 +0200 [thread overview]
Message-ID: <20220414100835.4c2efa3b@xps13> (raw)
In-Reply-To: <20220414074011.500533-3-herve.codina@bootlin.com>
Hi Hervé,
herve.codina@bootlin.com wrote on Thu, 14 Apr 2022 09:40:05 +0200:
> Convert Renesas PCI bridge bindings documentation to json-schema.
> Also name it 'renesas,pci-usb' as it is specifically used to
> connect the PCI USB controllers to AHB bus.
>
> Signed-off-by: Herve Codina <herve.codina@bootlin.com>
> ---
> .../devicetree/bindings/pci/pci-rcar-gen2.txt | 84 -----------
> .../bindings/pci/renesas,pci-usb.yaml | 134 ++++++++++++++++++
> 2 files changed, 134 insertions(+), 84 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/pci/pci-rcar-gen2.txt
> create mode 100644 Documentation/devicetree/bindings/pci/renesas,pci-usb.yaml
>
> diff --git a/Documentation/devicetree/bindings/pci/pci-rcar-gen2.txt b/Documentation/devicetree/bindings/pci/pci-rcar-gen2.txt
> deleted file mode 100644
> index aeba38f0a387..000000000000
> --- a/Documentation/devicetree/bindings/pci/pci-rcar-gen2.txt
> +++ /dev/null
> @@ -1,84 +0,0 @@
> -Renesas AHB to PCI bridge
> --------------------------
> -
> -This is the bridge used internally to connect the USB controllers to the
> -AHB. There is one bridge instance per USB port connected to the internal
> -OHCI and EHCI controllers.
> -
> -Required properties:
> -- compatible: "renesas,pci-r8a7742" for the R8A7742 SoC;
> - "renesas,pci-r8a7743" for the R8A7743 SoC;
> - "renesas,pci-r8a7744" for the R8A7744 SoC;
> - "renesas,pci-r8a7745" for the R8A7745 SoC;
> - "renesas,pci-r8a7790" for the R8A7790 SoC;
> - "renesas,pci-r8a7791" for the R8A7791 SoC;
> - "renesas,pci-r8a7793" for the R8A7793 SoC;
> - "renesas,pci-r8a7794" for the R8A7794 SoC;
> - "renesas,pci-rcar-gen2" for a generic R-Car Gen2 or
> - RZ/G1 compatible device.
> -
> -
> - When compatible with the generic version, nodes must list the
> - SoC-specific version corresponding to the platform first
> - followed by the generic version.
> -
> -- reg: A list of physical regions to access the device: the first is
> - the operational registers for the OHCI/EHCI controllers and the
> - second is for the bridge configuration and control registers.
> -- interrupts: interrupt for the device.
> -- clocks: The reference to the device clock.
> -- bus-range: The PCI bus number range; as this is a single bus, the range
> - should be specified as the same value twice.
> -- #address-cells: must be 3.
> -- #size-cells: must be 2.
> -- #interrupt-cells: must be 1.
> -- interrupt-map: standard property used to define the mapping of the PCI
> - interrupts to the GIC interrupts.
> -- interrupt-map-mask: standard property that helps to define the interrupt
> - mapping.
> -
> -Optional properties:
> -- dma-ranges: a single range for the inbound memory region. If not supplied,
> - defaults to 1GiB at 0x40000000. Note there are hardware restrictions on the
> - allowed combinations of address and size.
> -
> -Example SoC configuration:
> -
> - pci0: pci@ee090000 {
> - compatible = "renesas,pci-r8a7790", "renesas,pci-rcar-gen2";
> - clocks = <&mstp7_clks R8A7790_CLK_EHCI>;
> - reg = <0x0 0xee090000 0x0 0xc00>,
> - <0x0 0xee080000 0x0 0x1100>;
> - interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
> - status = "disabled";
> -
> - bus-range = <0 0>;
> - #address-cells = <3>;
> - #size-cells = <2>;
> - #interrupt-cells = <1>;
> - dma-ranges = <0x42000000 0 0x40000000 0 0x40000000 0 0x40000000>;
> - interrupt-map-mask = <0xff00 0 0 0x7>;
> - interrupt-map = <0x0000 0 0 1 &gic 0 108 IRQ_TYPE_LEVEL_HIGH
> - 0x0800 0 0 1 &gic 0 108 IRQ_TYPE_LEVEL_HIGH
> - 0x1000 0 0 2 &gic 0 108 IRQ_TYPE_LEVEL_HIGH>;
> -
> - usb@1,0 {
> - reg = <0x800 0 0 0 0>;
> - phys = <&usb0 0>;
> - phy-names = "usb";
> - };
> -
> - usb@2,0 {
> - reg = <0x1000 0 0 0 0>;
> - phys = <&usb0 0>;
> - phy-names = "usb";
> - };
> - };
> -
> -Example board setup:
> -
> -&pci0 {
> - status = "okay";
> - pinctrl-0 = <&usb0_pins>;
> - pinctrl-names = "default";
> -};
> diff --git a/Documentation/devicetree/bindings/pci/renesas,pci-usb.yaml b/Documentation/devicetree/bindings/pci/renesas,pci-usb.yaml
> new file mode 100644
> index 000000000000..3f8d79b746c7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pci/renesas,pci-usb.yaml
> @@ -0,0 +1,134 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pci/renesas,pci-usb.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Renesas AHB to PCI bridge
> +
> +maintainers:
> + - Marek Vasut <marek.vasut+renesas@gmail.com>
> + - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> +
> +description: |
> + This is the bridge used internally to connect the USB controllers to the
> + AHB. There is one bridge instance per USB port connected to the internal
> + OHCI and EHCI controllers.
> +
> +allOf:
> + - $ref: /schemas/pci/pci-bus.yaml#
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - renesas,pci-r8a7742 # RZ/G1H
> + - renesas,pci-r8a7743 # RZ/G1M
> + - renesas,pci-r8a7744 # RZ/G1N
> + - renesas,pci-r8a7745 # RZ/G1E
> + - renesas,pci-r8a7790 # R-Car H2
> + - renesas,pci-r8a7791 # R-Car M2-W
> + - renesas,pci-r8a7793 # R-Car M2-N
> + - renesas,pci-r8a7794 # R-Car E2
> + - const: renesas,pci-rcar-gen2 # R-Car Gen2 and RZ/G1
> +
> + reg:
> + description: |
> + A list of physical regions to access the device. The first is
> + the operational registers for the OHCI/EHCI controllers and the
> + second is for the bridge configuration and control registers.
> + minItems: 2
> + maxItems: 2
> +
> + interrupts:
> + description: Interrupt for the device.
When the description is rather straightforward (like "this is the main
interrupt/clock") I don't think a description is expected. A number
however might be useful, I believe.
> +
> + interrupt-map:
> + description: |
> + Standard property used to define the mapping of the PCI interrupts
> + to the GIC interrupts.
> +
> + interrupt-map-mask:
> + description:
> + Standard property that helps to define the interrupt mapping.
> +
> + clocks:
> + description: The reference to the device clock.
Maybe maxItems: 1 ?
> +
> + bus-range:
> + description: |
> + The PCI bus number range; as this is a single bus, the range
> + should be specified as the same value twice.
> +
> + "#address-cells":
> + const: 3
> +
> + "#size-cells":
> + const: 2
> +
> + "#interrupt-cells":
> + const: 1
> +
> + dma-ranges:
> + description: |
> + A single range for the inbound memory region. If not supplied,
> + defaults to 1GiB at 0x40000000. Note there are hardware restrictions on
> + the allowed combinations of address and size.
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - interrupt-map
> + - interrupt-map-mask
> + - clocks
> + - bus-range
> + - "#address-cells"
> + - "#size-cells"
> + - "#interrupt-cells"
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
> +
> + bus {
> + #address-cells = <2>;
> + #size-cells = <2>;
> +
> + pci0: pci@ee090000 {
> + compatible = "renesas,pci-r8a7790", "renesas,pci-rcar-gen2";
> + device_type = "pci";
> + clocks = <&cpg CPG_MOD 703>;
> + reg = <0 0xee090000 0 0xc00>,
> + <0 0xee080000 0 0x1100>;
> + interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
> + status = "disabled";
> +
> + bus-range = <0 0>;
> + #address-cells = <3>;
> + #size-cells = <2>;
> + #interrupt-cells = <1>;
> + ranges = <0x02000000 0 0xee080000 0 0xee080000 0 0x00010000>;
> + dma-ranges = <0x42000000 0 0x40000000 0 0x40000000 0 0x40000000>;
> + interrupt-map-mask = <0xf800 0 0 0x7>;
> + interrupt-map = <0x0000 0 0 1 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
> + <0x0800 0 0 1 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
> + <0x1000 0 0 2 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
> +
> + usb@1,0 {
> + reg = <0x800 0 0 0 0>;
> + phys = <&usb0 0>;
> + phy-names = "usb";
> + };
> +
> + usb@2,0 {
> + reg = <0x1000 0 0 0 0>;
> + phys = <&usb0 0>;
> + phy-names = "usb";
> + };
> + };
> + };
Thanks,
Miquèl
next prev parent reply other threads:[~2022-04-14 8:19 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-14 7:40 [PATCH v2 0/8] RZN1 USB Host support Herve Codina
2022-04-14 7:40 ` [PATCH v2 1/8] PCI: rcar-gen2: Add support for clocks Herve Codina
2022-04-14 8:45 ` Geert Uytterhoeven
2022-04-14 11:29 ` Herve Codina
2022-04-14 11:48 ` Geert Uytterhoeven
2022-04-14 13:42 ` Herve Codina
2022-04-14 7:40 ` [PATCH v2 2/8] dt-bindings: PCI: renesas-pci-usb: Convert bindings to json-schema Herve Codina
2022-04-14 8:08 ` Miquel Raynal [this message]
2022-04-14 8:28 ` Geert Uytterhoeven
2022-04-19 14:41 ` Herve Codina
2022-04-14 18:15 ` Rob Herring
2022-04-20 12:44 ` Herve Codina
2022-04-20 13:18 ` Rob Herring
2022-04-20 13:46 ` Herve Codina
2022-04-20 21:37 ` Rob Herring
2022-04-14 7:40 ` [PATCH v2 3/8] dt-bindings: PCI: renesas-pci-usb: Allow multiple clocks Herve Codina
2022-04-14 8:35 ` Geert Uytterhoeven
2022-04-20 13:07 ` Herve Codina
2022-04-20 13:24 ` Rob Herring
2022-04-20 14:55 ` Herve Codina
2022-04-20 13:32 ` Geert Uytterhoeven
2022-04-20 14:56 ` Herve Codina
2022-04-14 7:40 ` [PATCH v2 4/8] dt-bindings: PCI: renesas-pci-usb: Add device tree support for r9a06g032 Herve Codina
2022-04-14 7:40 ` [PATCH v2 5/8] PCI: rcar-gen2: Add R9A06G032 support Herve Codina
2022-04-14 7:40 ` [PATCH v2 6/8] ARM: dts: r9a06g032: Add internal PCI bridge node Herve Codina
2022-04-18 9:02 ` Sergey Shtylyov
2022-04-20 13:19 ` Herve Codina
2022-04-20 19:56 ` Rob Herring
2022-04-14 7:40 ` [PATCH v2 7/8] ARM: dts: r9a06g032: Add USB PHY DT support Herve Codina
2022-04-14 7:40 ` [PATCH v2 8/8] ARM: dts: r9a06g032: Link the PCI USB devices to the USB PHY Herve Codina
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=20220414100835.4c2efa3b@xps13 \
--to=miquel.raynal@bootlin.com \
--cc=bhelgaas@google.com \
--cc=clement.leger@bootlin.com \
--cc=devicetree@vger.kernel.org \
--cc=geert+renesas@glider.be \
--cc=herve.codina@bootlin.com \
--cc=krzk+dt@kernel.org \
--cc=kw@linux.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=lorenzo.pieralisi@arm.com \
--cc=magnus.damm@gmail.com \
--cc=marek.vasut+renesas@gmail.com \
--cc=robh+dt@kernel.org \
--cc=robh@kernel.org \
--cc=s.shtylyov@omp.ru \
--cc=thomas.petazzoni@bootlin.com \
--cc=yoshihiro.shimoda.uh@renesas.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.