diff options
author | Thierry Reding <treding@nvidia.com> | 2014-09-17 12:02:44 -0400 |
---|---|---|
committer | Stephen Warren <swarren@nvidia.com> | 2014-09-17 12:06:06 -0400 |
commit | ee588e2a30269d0572fc9ebdd7527f9711d6366d (patch) | |
tree | bd5b3d9b08ce151463d20c9078c3ea3d58ef1a27 | |
parent | 6dbaff2bfb2ab0cf5590b193ca6ba52b8990a919 (diff) |
ARM: tegra: add PCIe to Tegra124 DT
Add the PCIe controller device tree node and hook up the PCIe PHY from
the XUSB pad controller.
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
-rw-r--r-- | arch/arm/boot/dts/tegra124.dtsi | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi index 0ba3a0b6685f..478c555ebd96 100644 --- a/arch/arm/boot/dts/tegra124.dtsi +++ b/arch/arm/boot/dts/tegra124.dtsi | |||
@@ -12,6 +12,72 @@ | |||
12 | #address-cells = <2>; | 12 | #address-cells = <2>; |
13 | #size-cells = <2>; | 13 | #size-cells = <2>; |
14 | 14 | ||
15 | pcie-controller@0,01003000 { | ||
16 | compatible = "nvidia,tegra124-pcie"; | ||
17 | device_type = "pci"; | ||
18 | reg = <0x0 0x01003000 0x0 0x00000800 /* PADS registers */ | ||
19 | 0x0 0x01003800 0x0 0x00000800 /* AFI registers */ | ||
20 | 0x0 0x02000000 0x0 0x10000000>; /* configuration space */ | ||
21 | reg-names = "pads", "afi", "cs"; | ||
22 | interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ | ||
23 | <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ | ||
24 | interrupt-names = "intr", "msi"; | ||
25 | |||
26 | #interrupt-cells = <1>; | ||
27 | interrupt-map-mask = <0 0 0 0>; | ||
28 | interrupt-map = <0 0 0 0 &gic GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; | ||
29 | |||
30 | bus-range = <0x00 0xff>; | ||
31 | #address-cells = <3>; | ||
32 | #size-cells = <2>; | ||
33 | |||
34 | ranges = <0x82000000 0 0x01000000 0x0 0x01000000 0 0x00001000 /* port 0 configuration space */ | ||
35 | 0x82000000 0 0x01001000 0x0 0x01001000 0 0x00001000 /* port 1 configuration space */ | ||
36 | 0x81000000 0 0x0 0x0 0x12000000 0 0x00010000 /* downstream I/O (64 KiB) */ | ||
37 | 0x82000000 0 0x13000000 0x0 0x13000000 0 0x0d000000 /* non-prefetchable memory (208 MiB) */ | ||
38 | 0xc2000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */ | ||
39 | |||
40 | clocks = <&tegra_car TEGRA124_CLK_PCIE>, | ||
41 | <&tegra_car TEGRA124_CLK_AFI>, | ||
42 | <&tegra_car TEGRA124_CLK_PLL_E>, | ||
43 | <&tegra_car TEGRA124_CLK_CML0>; | ||
44 | clock-names = "pex", "afi", "pll_e", "cml"; | ||
45 | resets = <&tegra_car 70>, | ||
46 | <&tegra_car 72>, | ||
47 | <&tegra_car 74>; | ||
48 | reset-names = "pex", "afi", "pcie_x"; | ||
49 | status = "disabled"; | ||
50 | |||
51 | phys = <&padctl TEGRA_XUSB_PADCTL_PCIE>; | ||
52 | phy-names = "pcie"; | ||
53 | |||
54 | pci@1,0 { | ||
55 | device_type = "pci"; | ||
56 | assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>; | ||
57 | reg = <0x000800 0 0 0 0>; | ||
58 | status = "disabled"; | ||
59 | |||
60 | #address-cells = <3>; | ||
61 | #size-cells = <2>; | ||
62 | ranges; | ||
63 | |||
64 | nvidia,num-lanes = <2>; | ||
65 | }; | ||
66 | |||
67 | pci@2,0 { | ||
68 | device_type = "pci"; | ||
69 | assigned-addresses = <0x82001000 0 0x01001000 0 0x1000>; | ||
70 | reg = <0x001000 0 0 0 0>; | ||
71 | status = "disabled"; | ||
72 | |||
73 | #address-cells = <3>; | ||
74 | #size-cells = <2>; | ||
75 | ranges; | ||
76 | |||
77 | nvidia,num-lanes = <1>; | ||
78 | }; | ||
79 | }; | ||
80 | |||
15 | host1x@0,50000000 { | 81 | host1x@0,50000000 { |
16 | compatible = "nvidia,tegra124-host1x", "simple-bus"; | 82 | compatible = "nvidia,tegra124-host1x", "simple-bus"; |
17 | reg = <0x0 0x50000000 0x0 0x00034000>; | 83 | reg = <0x0 0x50000000 0x0 0x00034000>; |