arm64: dts: fsl: Remove num-lanes property from PCIe nodes
authorHou Zhiqiang <Zhiqiang.Hou@nxp.com>
Tue, 20 Aug 2019 07:29:01 +0000 (07:29 +0000)
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Thu, 22 Aug 2019 17:25:55 +0000 (18:25 +0100)
Remove the num-lanes property to avoid the driver setting the
link width.

On FSL Layerscape SoCs, the number of lanes assigned to PCIe
controller is not fixed, it is determined by the selected SerDes
protocol in the RCW (Reset Configuration Word).

The PCIe link training is completed automatically through the selected
SerDes protocol - the link width set-up is updated by hardware after
power on reset, so the num-lanes property is not needed for Layerscape
PCIe.

The current num-lanes property was added erroneously, which actually
indicates the maximum lanes the PCIe controller can support up to,
instead of the lanes assigned to the PCIe controller. The link width set
by SerDes protocol will be overridden by the num-lanes property, hence
the subsequent re-training will fail when the assigned lanes do not
match the value in the num-lanes property.

Remove the property to fix the issue

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi

index ec6257a5b251504f23dcd752a6fa61757a57d92e..119c597ca8679417c44cef0bf79c774775af5c54 100644 (file)
                        #address-cells = <3>;
                        #size-cells = <2>;
                        device_type = "pci";
-                       num-lanes = <4>;
                        num-viewport = <2>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000   /* downstream I/O */
index 71d9ed9ff985a296d71243d78f9ac4e8467cab98..c084c7a4b6a6f7d81ef919e05c039c8fbb6f3e04 100644 (file)
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000   /* downstream I/O */
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <2>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000   /* downstream I/O */
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <2>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x50 0x00010000 0x0 0x00010000   /* downstream I/O */
index b0ef08b090ddb1161b570701a850132a64ca359f..d4c1da3d4bde280deeb309a13dfa14fb11c28006 100644 (file)
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <8>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000   /* downstream I/O */
                        reg-names = "regs", "addr_space";
                        num-ib-windows = <6>;
                        num-ob-windows = <8>;
-                       num-lanes = <2>;
                        status = "disabled";
                };
 
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <2>;
                        num-viewport = <8>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000   /* downstream I/O */
                        reg-names = "regs", "addr_space";
                        num-ib-windows = <6>;
                        num-ob-windows = <8>;
-                       num-lanes = <2>;
                        status = "disabled";
                };
 
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <2>;
                        num-viewport = <8>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x50 0x00010000 0x0 0x00010000   /* downstream I/O */
                        reg-names = "regs", "addr_space";
                        num-ib-windows = <6>;
                        num-ob-windows = <8>;
-                       num-lanes = <2>;
                        status = "disabled";
                };
 
index dacd8cf03a7f7a77969042707893b6fe8df8f589..ce48a2323337c67f5179a41ca9dfc07409fc4fcc 100644 (file)
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <256>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x20 0x00010000 0x0 0x00010000   /* downstream I/O */
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x28 0x00010000 0x0 0x00010000   /* downstream I/O */
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <8>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        ranges = <0x81000000 0x0 0x00000000 0x30 0x00010000 0x0 0x00010000   /* downstream I/O */
index 3ace91945b726fc25ede7be1e80e4737f3d37660..d4993a2b404f1147c5cb3904631f0f86442608a1 100644 (file)
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        msi-parent = <&its>;
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        msi-parent = <&its>;
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <8>;
                        num-viewport = <256>;
                        bus-range = <0x0 0xff>;
                        msi-parent = <&its>;
                        #size-cells = <2>;
                        device_type = "pci";
                        dma-coherent;
-                       num-lanes = <4>;
                        num-viewport = <6>;
                        bus-range = <0x0 0xff>;
                        msi-parent = <&its>;