[U-Boot] [PATCH 3/4] P2571: dts: Add DT files for Tegra210/P2571 board
Tom Warren
tomcwarren3959 at gmail.com
Wed Jun 3 22:35:10 CEST 2015
Based on T124 Venice2. SDMMC1 is SD-card slot.
Using tegra124 compat names for now to get everything
working. May need minor work to match the real board.
Signed-off-by: Tom Warren <twarren at nvidia.com>
---
arch/arm/dts/Makefile | 3 +-
.../{tegra124-venice2.dts => tegra210-p2571.dts} | 40 ++++--
arch/arm/dts/{tegra124.dtsi => tegra210.dtsi} | 153 ++++-----------------
3 files changed, 56 insertions(+), 140 deletions(-)
copy arch/arm/dts/{tegra124-venice2.dts => tegra210-p2571.dts} (65%)
copy arch/arm/dts/{tegra124.dtsi => tegra210.dtsi} (76%)
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index f897e6d..3e09cb5 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -33,7 +33,8 @@ dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \
tegra114-dalmore.dtb \
tegra124-jetson-tk1.dtb \
tegra124-nyan-big.dtb \
- tegra124-venice2.dtb
+ tegra124-venice2.dtb \
+ tegra210-p2571.dtb
dtb-$(CONFIG_ARCH_UNIPHIER) += \
uniphier-ph1-sld3-ref.dtb \
uniphier-ph1-pro4-ref.dtb \
diff --git a/arch/arm/dts/tegra124-venice2.dts b/arch/arm/dts/tegra210-p2571.dts
similarity index 65%
copy from arch/arm/dts/tegra124-venice2.dts
copy to arch/arm/dts/tegra210-p2571.dts
index 9e93cf9..ca41390 100644
--- a/arch/arm/dts/tegra124-venice2.dts
+++ b/arch/arm/dts/tegra210-p2571.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "tegra124.dtsi"
+#include "tegra210.dtsi"
/ {
- model = "NVIDIA Venice2";
- compatible = "nvidia,venice2", "nvidia,tegra124";
+ model = "NVIDIA P2571";
+ compatible = "nvidia,p2571", "nvidia,tegra210";
chosen {
stdout-path = &uarta;
@@ -18,16 +18,15 @@
i2c4 = "/i2c at 7000c700";
i2c5 = "/i2c at 7000d100";
sdhci0 = "/sdhci at 700b0600";
- sdhci1 = "/sdhci at 700b0400";
+ sdhci1 = "/sdhci at 700b0000";
spi0 = "/spi at 7000d400";
spi1 = "/spi at 7000da00";
+ spi2 = "/spi at 70410000";
usb0 = "/usb at 7d000000";
- usb1 = "/usb at 7d008000";
};
memory {
- device_type = "memory";
- reg = <0x80000000 0x80000000>;
+ reg = <0x0 0x80000000 0x0 0xc0000000>;
};
i2c at 7000c000 {
@@ -70,11 +69,15 @@
spi-max-frequency = <25000000>;
};
- sdhci at 700b0400 {
+ spi at 70410000 {
status = "okay";
- cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
- power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
- wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>;
+ spi-max-frequency = <24000000>;
+ };
+
+ sdhci at 700b0000 {
+ status = "okay";
+ cd-gpios = <&gpio TEGRA_GPIO(Z, 1) GPIO_ACTIVE_LOW>;
+ power-gpios = <&gpio TEGRA_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
bus-width = <4>;
};
@@ -86,11 +89,18 @@
usb at 7d000000 {
status = "okay";
dr_mode = "otg";
- nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
};
- usb at 7d008000 {
- status = "okay";
- nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
+ clocks {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ clk32k_in: clock at 0 {
+ compatible = "fixed-clock";
+ reg = <0>;
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ };
};
};
diff --git a/arch/arm/dts/tegra124.dtsi b/arch/arm/dts/tegra210.dtsi
similarity index 76%
copy from arch/arm/dts/tegra124.dtsi
copy to arch/arm/dts/tegra210.dtsi
index 43b7f22..f09a1a7 100644
--- a/arch/arm/dts/tegra124.dtsi
+++ b/arch/arm/dts/tegra210.dtsi
@@ -1,4 +1,4 @@
-#include <dt-bindings/clock/tegra124-car.h>
+#include <dt-bindings/clock/tegra210-car.h>
#include <dt-bindings/gpio/tegra-gpio.h>
#include <dt-bindings/pinctrl/pinctrl-tegra.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
@@ -7,7 +7,7 @@
#include "skeleton.dtsi"
/ {
- compatible = "nvidia,tegra124";
+ compatible = "nvidia,tegra210";
interrupt-parent = <&gic>;
pcie-controller at 01003000 {
@@ -35,10 +35,10 @@
0x82000000 0 0x13000000 0x13000000 0 0x0d000000 /* non-prefetchable memory (208 MiB) */
0xc2000000 0 0x20000000 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */
- clocks = <&tegra_car TEGRA124_CLK_PCIE>,
- <&tegra_car TEGRA124_CLK_AFI>,
- <&tegra_car TEGRA124_CLK_PLL_E>,
- <&tegra_car TEGRA124_CLK_CML0>;
+ clocks = <&tegra_car TEGRA210_CLK_PCIE>,
+ <&tegra_car TEGRA210_CLK_AFI>,
+ <&tegra_car TEGRA210_CLK_PLL_E>,
+ <&tegra_car TEGRA210_CLK_CML0>;
clock-names = "pex", "afi", "pll_e", "cml";
resets = <&tegra_car 70>,
<&tegra_car 72>,
@@ -76,85 +76,6 @@
};
};
- host1x at 50000000 {
- compatible = "nvidia,tegra124-host1x", "simple-bus";
- reg = <0x50000000 0x00034000>;
- interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
- <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
- clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
- resets = <&tegra_car 28>;
- reset-names = "host1x";
-
- #address-cells = <1>;
- #size-cells = <1>;
-
- ranges = <0x54000000 0x54000000 0x01000000>;
-
- dc at 54200000 {
- compatible = "nvidia,tegra124-dc";
- reg = <0x54200000 0x00040000>;
- interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_DISP1>,
- <&tegra_car TEGRA124_CLK_PLL_P>;
- clock-names = "dc", "parent";
- resets = <&tegra_car 27>;
- reset-names = "dc";
-
- nvidia,head = <0>;
- };
-
- dc at 54240000 {
- compatible = "nvidia,tegra124-dc";
- reg = <0x54240000 0x00040000>;
- interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_DISP2>,
- <&tegra_car TEGRA124_CLK_PLL_P>;
- clock-names = "dc", "parent";
- resets = <&tegra_car 26>;
- reset-names = "dc";
-
- nvidia,head = <1>;
- };
-
- hdmi at 54280000 {
- compatible = "nvidia,tegra124-hdmi";
- reg = <0x54280000 0x00040000>;
- interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_HDMI>,
- <&tegra_car TEGRA124_CLK_PLL_D2_OUT0>;
- clock-names = "hdmi", "parent";
- resets = <&tegra_car 51>;
- reset-names = "hdmi";
- status = "disabled";
- };
-
- sor at 54540000 {
- compatible = "nvidia,tegra124-sor";
- reg = <0x54540000 0x00040000>;
- interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_SOR0>,
- <&tegra_car TEGRA124_CLK_PLL_D_OUT0>,
- <&tegra_car TEGRA124_CLK_PLL_DP>,
- <&tegra_car TEGRA124_CLK_CLK_M>;
- clock-names = "sor", "parent", "dp", "safe";
- resets = <&tegra_car 182>;
- reset-names = "sor";
- status = "disabled";
- };
-
- dpaux: dpaux at 545c0000 {
- compatible = "nvidia,tegra124-dpaux";
- reg = <0x545c0000 0x00040000>;
- interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_DPAUX>,
- <&tegra_car TEGRA124_CLK_PLL_DP>;
- clock-names = "dpaux", "parent";
- resets = <&tegra_car 181>;
- reset-names = "dpaux";
- status = "disabled";
- };
- };
-
gic: interrupt-controller at 50041000 {
compatible = "arm,cortex-a15-gic";
#interrupt-cells = <3>;
@@ -292,7 +213,7 @@
reg = <0x70006000 0x40>;
reg-shift = <2>;
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_UARTA>;
+ clocks = <&tegra_car TEGRA210_CLK_UARTA>;
resets = <&tegra_car 6>;
reset-names = "serial";
dmas = <&apbdma 8>, <&apbdma 8>;
@@ -305,7 +226,7 @@
reg = <0x70006040 0x40>;
reg-shift = <2>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_UARTB>;
+ clocks = <&tegra_car TEGRA210_CLK_UARTB>;
resets = <&tegra_car 7>;
reset-names = "serial";
dmas = <&apbdma 9>, <&apbdma 9>;
@@ -318,7 +239,7 @@
reg = <0x70006200 0x40>;
reg-shift = <2>;
interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_UARTC>;
+ clocks = <&tegra_car TEGRA210_CLK_UARTC>;
resets = <&tegra_car 55>;
reset-names = "serial";
dmas = <&apbdma 10>, <&apbdma 10>;
@@ -331,7 +252,7 @@
reg = <0x70006300 0x40>;
reg-shift = <2>;
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_UARTD>;
+ clocks = <&tegra_car TEGRA210_CLK_UARTD>;
resets = <&tegra_car 65>;
reset-names = "serial";
dmas = <&apbdma 19>, <&apbdma 19>;
@@ -339,24 +260,11 @@
status = "disabled";
};
- uarte: serial at 70006400 {
- compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
- reg = <0x70006400 0x40>;
- reg-shift = <2>;
- interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_UARTE>;
- resets = <&tegra_car 66>;
- reset-names = "serial";
- dmas = <&apbdma 20>, <&apbdma 20>;
- dma-names = "rx", "tx";
- status = "disabled";
- };
-
pwm: pwm at 7000a000 {
compatible = "nvidia,tegra124-pwm", "nvidia,tegra20-pwm";
reg = <0x7000a000 0x100>;
#pwm-cells = <2>;
- clocks = <&tegra_car TEGRA124_CLK_PWM>;
+ clocks = <&tegra_car TEGRA210_CLK_PWM>;
resets = <&tegra_car 17>;
reset-names = "pwm";
status = "disabled";
@@ -428,9 +336,15 @@
clocks = <&tegra_car 105>;
};
- pmc at 7000e400 {
- compatible = "nvidia,tegra124-pmc";
- reg = <0x7000e400 0x400>;
+ spi at 70410000 {
+ compatible = "nvidia,tegra210-qspi";
+ reg = <0x70410000 0x200>;
+ interrupts = <0 10 0x04>;
+ nvidia,dma-request-selector = <&apbdma 5>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ clocks = <&tegra_car 211>;
};
padctl: padctl at 7009f000 {
@@ -480,8 +394,8 @@
<0x70300800 0x800>,
<0x70300200 0x600>;
interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&tegra_car TEGRA124_CLK_D_AUDIO>,
- <&tegra_car TEGRA124_CLK_APBIF>;
+ clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>,
+ <&tegra_car TEGRA210_CLK_APBIF>;
clock-names = "d_audio", "apbif";
resets = <&tegra_car 106>, /* d_audio */
<&tegra_car 107>, /* apbif */
@@ -530,7 +444,7 @@
compatible = "nvidia,tegra124-i2s";
reg = <0x70301000 0x100>;
nvidia,ahub-cif-ids = <4 4>;
- clocks = <&tegra_car TEGRA124_CLK_I2S0>;
+ clocks = <&tegra_car TEGRA210_CLK_I2S0>;
resets = <&tegra_car 30>;
reset-names = "i2s";
status = "disabled";
@@ -540,7 +454,7 @@
compatible = "nvidia,tegra124-i2s";
reg = <0x70301100 0x100>;
nvidia,ahub-cif-ids = <5 5>;
- clocks = <&tegra_car TEGRA124_CLK_I2S1>;
+ clocks = <&tegra_car TEGRA210_CLK_I2S1>;
resets = <&tegra_car 11>;
reset-names = "i2s";
status = "disabled";
@@ -550,7 +464,7 @@
compatible = "nvidia,tegra124-i2s";
reg = <0x70301200 0x100>;
nvidia,ahub-cif-ids = <6 6>;
- clocks = <&tegra_car TEGRA124_CLK_I2S2>;
+ clocks = <&tegra_car TEGRA210_CLK_I2S2>;
resets = <&tegra_car 18>;
reset-names = "i2s";
status = "disabled";
@@ -560,7 +474,7 @@
compatible = "nvidia,tegra124-i2s";
reg = <0x70301300 0x100>;
nvidia,ahub-cif-ids = <7 7>;
- clocks = <&tegra_car TEGRA124_CLK_I2S3>;
+ clocks = <&tegra_car TEGRA210_CLK_I2S3>;
resets = <&tegra_car 101>;
reset-names = "i2s";
status = "disabled";
@@ -570,7 +484,7 @@
compatible = "nvidia,tegra124-i2s";
reg = <0x70301400 0x100>;
nvidia,ahub-cif-ids = <8 8>;
- clocks = <&tegra_car TEGRA124_CLK_I2S4>;
+ clocks = <&tegra_car TEGRA210_CLK_I2S4>;
resets = <&tegra_car 102>;
reset-names = "i2s";
status = "disabled";
@@ -578,7 +492,7 @@
};
usb at 7d000000 {
- compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
+ compatible = "nvidia,tegra210-ehci";
reg = <0x7d000000 0x4000>;
interrupts = < 52 >;
phy_type = "utmi";
@@ -587,20 +501,11 @@
};
usb at 7d004000 {
- compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
+ compatible = "nvidia,tegra210-ehci";
reg = <0x7d004000 0x4000>;
interrupts = < 53 >;
phy_type = "hsic";
clocks = <&tegra_car 58>; /* PERIPH_ID_USB2 */
status = "disabled";
};
-
- usb at 7d008000 {
- compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
- reg = <0x7d008000 0x4000>;
- interrupts = < 129 >;
- phy_type = "utmi";
- clocks = <&tegra_car 59>; /* PERIPH_ID_USB3 */
- status = "disabled";
- };
};
--
1.8.2.1.610.g562af5b
More information about the U-Boot
mailing list