* [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).