* [PATCH v5 5/9] dt-bindings: pci: rcar pcie device tree bindings
[not found] ` <1395766604-30926-1-git-send-email-phil.edworthy-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
@ 2014-03-25 16:56 ` Phil Edworthy
2014-03-25 20:22 ` Sergei Shtylyov
0 siblings, 1 reply; 3+ messages in thread
From: Phil Edworthy @ 2014-03-25 16:56 UTC (permalink / raw)
To: linux-pci-u79uwXL29TY76Z2rM5mHXA
Cc: linux-sh-u79uwXL29TY76Z2rM5mHXA, LAKML, Bjorn Helgaas,
Valentine Barshak, Simon Horman, Magnus Damm, Ben Dooks,
Phil Edworthy, devicetree-u79uwXL29TY76Z2rM5mHXA
This patch adds the bindings for the R-Car PCIe driver. The driver
resides under drivers/pci/host/pcie-rcar.c
Signed-off-by: Phil Edworthy <phil.edworthy-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
---
v5:
- Add PCIe bus clock reference
- Add additional interrupt bindings
- Use dma-ranges property to specify inbound memory regions
---
Documentation/devicetree/bindings/pci/rcar-pci.txt | 44 ++++++++++++++++++++++
1 file changed, 44 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pci/rcar-pci.txt
diff --git a/Documentation/devicetree/bindings/pci/rcar-pci.txt b/Documentation/devicetree/bindings/pci/rcar-pci.txt
new file mode 100644
index 0000000..61bf5ef
--- /dev/null
+++ b/Documentation/devicetree/bindings/pci/rcar-pci.txt
@@ -0,0 +1,44 @@
+* Renesas RCar PCIe interface
+
+Required properties:
+- compatible: should contain one of the following
+ "renesas,pcie-r8a7779", "renesas,pcie-r8a7790", "renesas,pcie-r8a7791"
+- reg: base addresses and lengths of the pcie controller.
+- #address-cells: set to <3>
+- #size-cells: set to <2>
+- device_type: set to "pci"
+- ranges: ranges for the PCI memory and I/O regions.
+- dma-ranges: ranges for the inbound memory regions.
+- interrupts: two interrupt sources for MSI interrupts, followed by interrupt
+ source for hardware related interrupts (e.g. link speed change).
+- #interrupt-cells: set to <1>
+- interrupt-map-mask and interrupt-map: standard PCI properties
+ to define the mapping of the PCIe interface to interrupt
+ numbers.
+- clocks: from common clock binding: handle to pci clock.
+- clock-names: from common clock binding: should be "pcie" and "pcie_bus".
+
+Example:
+
+SoC specific DT Entry:
+
+ pcie: pcie@fe000000 {
+ compatible = "renesas,pcie-r8a7791";
+ reg = <0 0xfe000000 0 0x80000>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ device_type = "pci";
+ ranges = <0x01000000 0 0x00000000 0 0xfe100000 0 0x00100000
+ 0x02000000 0 0xfe200000 0 0xfe200000 0 0x00200000
+ 0x02000000 0 0x30000000 0 0x30000000 0 0x08000000
+ 0x42000000 0 0x38000000 0 0x38000000 0 0x08000000>;
+ dma-ranges = <0x42000000 0 0x40000000 0 0x40000000 0 0x40000000
+ 0x42000000 2 0x00000000 2 0x00000000 0 0x40000000>;
+ interrupts = <0 116 4 0 117 4 0 118 4>;
+ #interrupt-cells = <1>;
+ interrupt-map-mask = <0 0 0 0>;
+ interrupt-map = <0 0 0 0 &gic 0 116 4>;
+ clocks = <&mstp3_clks R8A7791_CLK_PCIE>, <&pcie_bus_clk>;
+ clock-names = "pcie", "pcie_bus";
+ status = "disabled";
+ };
--
1.9.0
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v5 5/9] dt-bindings: pci: rcar pcie device tree bindings
2014-03-25 16:56 ` [PATCH v5 5/9] dt-bindings: pci: rcar pcie device tree bindings Phil Edworthy
@ 2014-03-25 20:22 ` Sergei Shtylyov
2014-03-26 9:12 ` Phil.Edworthy
0 siblings, 1 reply; 3+ messages in thread
From: Sergei Shtylyov @ 2014-03-25 20:22 UTC (permalink / raw)
To: Phil Edworthy, linux-pci
Cc: linux-sh, LAKML, Bjorn Helgaas, Valentine Barshak, Simon Horman,
Magnus Damm, Ben Dooks, devicetree
Hello.
On 03/25/2014 07:56 PM, Phil Edworthy wrote:
> This patch adds the bindings for the R-Car PCIe driver. The driver
> resides under drivers/pci/host/pcie-rcar.c
> Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
> ---
> v5:
> - Add PCIe bus clock reference
> - Add additional interrupt bindings
> - Use dma-ranges property to specify inbound memory regions
> ---
> Documentation/devicetree/bindings/pci/rcar-pci.txt | 44 ++++++++++++++++++++++
> 1 file changed, 44 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/pci/rcar-pci.txt
>
> diff --git a/Documentation/devicetree/bindings/pci/rcar-pci.txt b/Documentation/devicetree/bindings/pci/rcar-pci.txt
> new file mode 100644
> index 0000000..61bf5ef
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pci/rcar-pci.txt
> @@ -0,0 +1,44 @@
> +* Renesas RCar PCIe interface
> +
> +Required properties:
> +- compatible: should contain one of the following
> + "renesas,pcie-r8a7779", "renesas,pcie-r8a7790", "renesas,pcie-r8a7791"
> +- reg: base addresses and lengths of the pcie controller.
Hmm, need "registers" at end. And why plural?
> +- #address-cells: set to <3>
> +- #size-cells: set to <2>
> +- device_type: set to "pci"
> +- ranges: ranges for the PCI memory and I/O regions.
> +- dma-ranges: ranges for the inbound memory regions.
> +- interrupts: two interrupt sources for MSI interrupts, followed by interrupt
> + source for hardware related interrupts (e.g. link speed change).
> +- #interrupt-cells: set to <1>
> +- interrupt-map-mask and interrupt-map: standard PCI properties
> + to define the mapping of the PCIe interface to interrupt
> + numbers.
> +- clocks: from common clock binding: handle to pci clock.
s/handle/phandle/, s/pci/PCI/.
Actually, it's a clock specifier consisting not only of phandle but also
of clock #. Looking at your example, it's even a pair of clock specifiers.
> +- clock-names: from common clock binding: should be "pcie" and "pcie_bus".
> +
> +Example:
> +
> +SoC specific DT Entry:
> +
> + pcie: pcie@fe000000 {
> + compatible = "renesas,pcie-r8a7791";
> + reg = <0 0xfe000000 0 0x80000>;
> + #address-cells = <3>;
> + #size-cells = <2>;
> + device_type = "pci";
> + ranges = <0x01000000 0 0x00000000 0 0xfe100000 0 0x00100000
> + 0x02000000 0 0xfe200000 0 0xfe200000 0 0x00200000
> + 0x02000000 0 0x30000000 0 0x30000000 0 0x08000000
> + 0x42000000 0 0x38000000 0 0x38000000 0 0x08000000>;
> + dma-ranges = <0x42000000 0 0x40000000 0 0x40000000 0 0x40000000
> + 0x42000000 2 0x00000000 2 0x00000000 0 0x40000000>;
Hmm, this prop looks board-dependent...
> + interrupts = <0 116 4 0 117 4 0 118 4>;
> + #interrupt-cells = <1>;
> + interrupt-map-mask = <0 0 0 0>;
> + interrupt-map = <0 0 0 0 &gic 0 116 4>;
> + clocks = <&mstp3_clks R8A7791_CLK_PCIE>, <&pcie_bus_clk>;
> + clock-names = "pcie", "pcie_bus";
> + status = "disabled";
> + };
WBR, Sergei
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v5 5/9] dt-bindings: pci: rcar pcie device tree bindings
2014-03-25 20:22 ` Sergei Shtylyov
@ 2014-03-26 9:12 ` Phil.Edworthy
0 siblings, 0 replies; 3+ messages in thread
From: Phil.Edworthy @ 2014-03-26 9:12 UTC (permalink / raw)
To: Sergei Shtylyov
Cc: Ben Dooks, Bjorn Helgaas, devicetree, Simon Horman, LAKML,
linux-pci, linux-sh, Magnus Damm, Valentine Barshak
Hi Sergei,
On: 25/03/2014 19:22, Sergei wrote:
> Subject: Re: [PATCH v5 5/9] dt-bindings: pci: rcar pcie device tree
bindings
>
> Hello.
>
> On 03/25/2014 07:56 PM, Phil Edworthy wrote:
>
> > This patch adds the bindings for the R-Car PCIe driver. The driver
> > resides under drivers/pci/host/pcie-rcar.c
>
> > Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com>
> > ---
> > v5:
> > - Add PCIe bus clock reference
> > - Add additional interrupt bindings
> > - Use dma-ranges property to specify inbound memory regions
> > ---
> > Documentation/devicetree/bindings/pci/rcar-pci.txt | 44
++++++++++++++++++++++
> > 1 file changed, 44 insertions(+)
> > create mode 100644
Documentation/devicetree/bindings/pci/rcar-pci.txt
> >
> > diff --git a/Documentation/devicetree/bindings/pci/rcar-pci.txt b/
> Documentation/devicetree/bindings/pci/rcar-pci.txt
> > new file mode 100644
> > index 0000000..61bf5ef
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/pci/rcar-pci.txt
> > @@ -0,0 +1,44 @@
> > +* Renesas RCar PCIe interface
> > +
> > +Required properties:
> > +- compatible: should contain one of the following
> > + "renesas,pcie-r8a7779", "renesas,pcie-r8a7790",
"renesas,pcie-r8a7791"
> > +- reg: base addresses and lengths of the pcie controller.
>
> Hmm, need "registers" at end. And why plural?
Ok, & yes it should be singular.
> > +- #address-cells: set to <3>
> > +- #size-cells: set to <2>
> > +- device_type: set to "pci"
> > +- ranges: ranges for the PCI memory and I/O regions.
> > +- dma-ranges: ranges for the inbound memory regions.
> > +- interrupts: two interrupt sources for MSI interrupts, followed by
interrupt
> > + source for hardware related interrupts (e.g. link speed change).
> > +- #interrupt-cells: set to <1>
> > +- interrupt-map-mask and interrupt-map: standard PCI properties
> > + to define the mapping of the PCIe interface to interrupt
> > + numbers.
> > +- clocks: from common clock binding: handle to pci clock.
>
> s/handle/phandle/, s/pci/PCI/.
> Actually, it's a clock specifier consisting not only of phandle but
also
> of clock #. Looking at your example, it's even a pair of clock
specifiers.
Right, and yes it's two clocks - I missed that when adding the PCI bus
clock.
> > +- clock-names: from common clock binding: should be "pcie" and
"pcie_bus".
> > +
> > +Example:
> > +
> > +SoC specific DT Entry:
> > +
> > + pcie: pcie@fe000000 {
> > + compatible = "renesas,pcie-r8a7791";
> > + reg = <0 0xfe000000 0 0x80000>;
> > + #address-cells = <3>;
> > + #size-cells = <2>;
> > + device_type = "pci";
> > + ranges = <0x01000000 0 0x00000000 0 0xfe100000 0 0x00100000
> > + 0x02000000 0 0xfe200000 0 0xfe200000 0 0x00200000
> > + 0x02000000 0 0x30000000 0 0x30000000 0 0x08000000
> > + 0x42000000 0 0x38000000 0 0x38000000 0 0x08000000>;
> > + dma-ranges = <0x42000000 0 0x40000000 0 0x40000000 0 0x40000000
> > + 0x42000000 2 0x00000000 2 0x00000000 0 0x40000000>;
>
> Hmm, this prop looks board-dependent...
Initially I thought that it would be board dependent and map the actual
DDR available. However, I then considered that it is probably ok to map
all possible DDR ranges that the device is capable of using. I'm ok with
either approach though...
> > + interrupts = <0 116 4 0 117 4 0 118 4>;
> > + #interrupt-cells = <1>;
> > + interrupt-map-mask = <0 0 0 0>;
> > + interrupt-map = <0 0 0 0 &gic 0 116 4>;
> > + clocks = <&mstp3_clks R8A7791_CLK_PCIE>, <&pcie_bus_clk>;
> > + clock-names = "pcie", "pcie_bus";
> > + status = "disabled";
> > + };
>
> WBR, Sergei
>
Thanks
Phil
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-03-26 9:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1395766604-30926-1-git-send-email-phil.edworthy@renesas.com>
[not found] ` <1395766604-30926-1-git-send-email-phil.edworthy-zM6kxYcvzFBBDgjK7y7TUQ@public.gmane.org>
2014-03-25 16:56 ` [PATCH v5 5/9] dt-bindings: pci: rcar pcie device tree bindings Phil Edworthy
2014-03-25 20:22 ` Sergei Shtylyov
2014-03-26 9:12 ` Phil.Edworthy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).