* [PATCH v2 1/2] arm64: dts: renesas: r8a77980: add PCIe support
2018-06-14 19:16 [PATCH v2 0/2] Add R8A77980/Condor PCIe support Sergei Shtylyov
@ 2018-06-14 19:17 ` Sergei Shtylyov
2018-06-20 8:49 ` Simon Horman
2018-06-14 19:19 ` [PATCH v2 2/2] arm64: dts: renesas: condor: " Sergei Shtylyov
2018-06-18 9:36 ` [PATCH v2 0/2] Add R8A77980/Condor " Simon Horman
2 siblings, 1 reply; 7+ messages in thread
From: Sergei Shtylyov @ 2018-06-14 19:17 UTC (permalink / raw)
To: Simon Horman, Rob Herring, Catalin Marinas, Will Deacon,
linux-renesas-soc, devicetree
Cc: Magnus Damm, Mark Rutland, linux-arm-kernel
Describe the PCIe PHY, PCIEC, and PCIe bus clock in the R8A77980 device
tree.
Based on the original (and large) patch by Vladimir Barinov.
Signed-off-by: Vladimir Barinov <vladimir.barinov@cogentembedded.com>
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
---
Changes in version 2:
- merged in the PCIEC patch, renamed the patch, updated the description
accordingly;
- used R8A77980_PD_ALWAYS_ON in the "power-domains" props
- mentioned Vladimir's original work and added his signoff.
arch/arm64/boot/dts/renesas/r8a77980.dtsi | 49 ++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
Index: renesas/arch/arm64/boot/dts/renesas/r8a77980.dtsi
===================================================================
--- renesas.orig/arch/arm64/boot/dts/renesas/r8a77980.dtsi
+++ renesas/arch/arm64/boot/dts/renesas/r8a77980.dtsi
@@ -98,6 +98,13 @@
clock-frequency = <0>;
};
+ /* External PCIe clock - can be overridden by the board */
+ pcie_bus_clk: pcie_bus {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <0>;
+ };
+
psci {
compatible = "arm,psci-1.0", "arm,psci-0.2";
method = "smc";
@@ -402,6 +409,16 @@
status = "disabled";
};
+ pcie_phy: pcie-phy@e65d0000 {
+ compatible = "renesas,r8a77980-pcie-phy";
+ reg = <0 0xe65d0000 0 0x8000>;
+ #phy-cells = <0>;
+ clocks = <&cpg CPG_MOD 319>;
+ power-domains = <&sysc R8A77980_PD_ALWAYS_ON>;
+ resets = <&cpg 319>;
+ status = "disabled";
+ };
+
canfd: can@e66c0000 {
compatible = "renesas,r8a77980-canfd",
"renesas,rcar-gen3-canfd";
@@ -653,6 +670,38 @@
resets = <&cpg 408>;
};
+ pciec: pcie@fe000000 {
+ compatible = "renesas,pcie-r8a77980",
+ "renesas,pcie-rcar-gen3";
+ reg = <0 0xfe000000 0 0x80000>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ bus-range = <0x00 0xff>;
+ device_type = "pci";
+ ranges = <
+ 0x01000000 0 0x00000000 0 0xfe100000 0 0x0100000
+ 0x02000000 0 0xfe200000 0 0xfe200000 0 0x0200000
+ 0x02000000 0 0x30000000 0 0x30000000 0 0x8000000
+ 0x42000000 0 0x38000000 0 0x38000000 0 0x8000000
+ >;
+ dma-ranges = <0x42000000 0 0x40000000 0 0x40000000
+ 0 0x80000000>;
+ interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
+ #interrupt-cells = <1>;
+ interrupt-map-mask = <0 0 0 0>;
+ interrupt-map = <0 0 0 0 &gic GIC_SPI 148
+ IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cpg CPG_MOD 319>, <&pcie_bus_clk>;
+ clock-names = "pcie", "pcie_bus";
+ power-domains = <&sysc R8A77980_PD_ALWAYS_ON>;
+ resets = <&cpg 319>;
+ phys = <&pcie_phy>;
+ phy-names = "pcie";
+ status = "disabled";
+ };
+
vspd0: vsp@fea20000 {
compatible = "renesas,vsp2";
reg = <0 0xfea20000 0 0x5000>;
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH v2 2/2] arm64: dts: renesas: condor: add PCIe support
2018-06-14 19:16 [PATCH v2 0/2] Add R8A77980/Condor PCIe support Sergei Shtylyov
2018-06-14 19:17 ` [PATCH v2 1/2] arm64: dts: renesas: r8a77980: add " Sergei Shtylyov
@ 2018-06-14 19:19 ` Sergei Shtylyov
2018-06-18 9:36 ` [PATCH v2 0/2] Add R8A77980/Condor " Simon Horman
2 siblings, 0 replies; 7+ messages in thread
From: Sergei Shtylyov @ 2018-06-14 19:19 UTC (permalink / raw)
To: Simon Horman, Rob Herring, Catalin Marinas, Will Deacon,
linux-renesas-soc, devicetree
Cc: Magnus Damm, Mark Rutland, linux-arm-kernel
Enable PCIe PHY and PCIEC and specify the PCIe bus clock for the Condor
board.
Based on the original (and large) patch by Vladimir Barinov.
Signed-off-by: Vladimir Barinov <vladimir.barinov@cogentembedded.com>
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
---
Changes in version 2:
- mentioned Vladimir's original work and added his signoff;
- refreshed the patch.
arch/arm64/boot/dts/renesas/r8a77980-condor.dts | 12 ++++++++++++
1 file changed, 12 insertions(+)
Index: renesas/arch/arm64/boot/dts/renesas/r8a77980-condor.dts
===================================================================
--- renesas.orig/arch/arm64/boot/dts/renesas/r8a77980-condor.dts
+++ renesas/arch/arm64/boot/dts/renesas/r8a77980-condor.dts
@@ -223,6 +223,18 @@
status = "okay";
};
+&pciec {
+ status = "okay";
+};
+
+&pcie_bus_clk {
+ clock-frequency = <100000000>;
+};
+
+&pcie_phy {
+ status = "okay";
+};
+
&pfc {
avb_pins: avb {
groups = "avb_mdio", "avb_rgmii";
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH v2 0/2] Add R8A77980/Condor PCIe support
2018-06-14 19:16 [PATCH v2 0/2] Add R8A77980/Condor PCIe support Sergei Shtylyov
2018-06-14 19:17 ` [PATCH v2 1/2] arm64: dts: renesas: r8a77980: add " Sergei Shtylyov
2018-06-14 19:19 ` [PATCH v2 2/2] arm64: dts: renesas: condor: " Sergei Shtylyov
@ 2018-06-18 9:36 ` Simon Horman
2018-06-18 16:16 ` Sergei Shtylyov
2 siblings, 1 reply; 7+ messages in thread
From: Simon Horman @ 2018-06-18 9:36 UTC (permalink / raw)
To: Sergei Shtylyov
Cc: Rob Herring, Catalin Marinas, Will Deacon, linux-renesas-soc,
devicetree, Magnus Damm, Mark Rutland, linux-arm-kernel
On Thu, Jun 14, 2018 at 10:16:32PM +0300, Sergei Shtylyov wrote:
> Hello!
>
> Here's the set of 2 patches against Simon Horman's 'renesas.git' repo's
> 'renesas-devel-20180614v2-v4.17' tag. We're adding the R8A77980 PCIe related
> device nodes and then enable PCIe on the Condor board. These patches depend
> on the R8A77980 PCIe PHY driver support in order to work properly. Note that
> in case the PCIe PHY driver is not enabled, the kernel will BUG() due to I/O
> space page leak in the PCIe driver...
Is that problem specific to the presence of PCIe nodes for
condor/r8a77980 or is it also true of other (R-Car) boards where
PCIe is enabled?
Regardless, it sounds like these patches expose a kernel bug.
Is it being fixed?
>
> [1/2] arm64: dts: renesas: r8a77980: add PCIe support
> [2/2] arm64: dts: renesas: condor: add PCIe support
>
> WBR, Sergei
>
^ permalink raw reply [flat|nested] 7+ messages in thread