summaryrefslogtreecommitdiff
path: root/board/toradex/apalis_t30/apalis_t30.dts
diff options
context:
space:
mode:
Diffstat (limited to 'board/toradex/apalis_t30/apalis_t30.dts')
-rw-r--r--board/toradex/apalis_t30/apalis_t30.dts152
1 files changed, 152 insertions, 0 deletions
diff --git a/board/toradex/apalis_t30/apalis_t30.dts b/board/toradex/apalis_t30/apalis_t30.dts
new file mode 100644
index 0000000000..4004e494c8
--- /dev/null
+++ b/board/toradex/apalis_t30/apalis_t30.dts
@@ -0,0 +1,152 @@
+/dts-v1/;
+
+/memreserve/ 0x1c000000 0x04000000;
+/include/ "../../nvidia/cardhu/tegra30.dtsi"
+
+/ {
+ model = "Toradex Apalis T30";
+ compatible = "toradex,apalis_t30", "nvidia,tegra30";
+
+ config {
+ machine-arch-id = <4513>;
+ };
+
+ aliases {
+ console = "/serial@70006000";
+ usb0 = "/usb@0x7d000000";
+ usb1 = "/usb@0x7d004000";
+ usb2 = "/usb@0x7d008000";
+
+ sdmmc0 = "/sdhci@78000600";
+ sdmmc1 = "/sdhci@78000400";
+ sdmmc2 = "/sdhci@78000000";
+
+ i2c0 = "/i2c@0x7000d000";
+ i2c1 = "/i2c@0x7000c000";
+ i2c2 = "/i2c@0x7000c400";
+ i2c3 = "/i2c@0x7000c500";
+ i2c4 = "/i2c@0x7000c700";
+ };
+
+ memory {
+ device_type = "memory";
+ reg = <0x80000000 0x80000000>;
+ };
+
+ serial@70006000 {
+ status = "ok";
+ /*
+ * TBD - use CONFIG_SYS_PLLP_BASE_IS_408MHZ somehow here.
+ * Currently I put this back to 216MHz in fdt_decode.c
+ */
+ clock-frequency = <408000000>;
+ };
+
+ /* SD - SDMMC1 */
+ sdhci@78000000 {
+ status = "ok";
+ width = <4>; /* width of SDIO port */
+ removable = <1>;
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpio = <&gpio 229 0>; /* card detect, gpio PCC5, SD1_CD_N */
+ };
+
+ /* MMC - SDMMC3 */
+//8-bit support broken
+ sdhci@78000400 {
+ status = "ok";
+ width = <4>; /* width of SDIO port */
+ removable = <1>;
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpio = <&gpio 171 0>; /* card detect, gpio PV3, MMC1_CD_N */
+ };
+
+ /* Internal eMMC - SDMMC4 */
+//8-bit support broken
+ emmc: sdhci@78000600 {
+ status = "ok";
+ width = <4>; /* width of SDIO port */
+ removable = <0>;
+ };
+
+ lcd {
+ compatible = "nvidia,tegra2-lcd";
+ width = <640>;
+ height = <480>;
+ bits_per_pixel = <16>;
+ pwfm = <&pwfm0>;
+ display = <&display1>;
+ /* frame-buffer location = top of memory - carveout - fb */
+ frame-buffer = <0xbfb00000>;
+
+ pixel_clock = <25175000>;
+
+ /* Timing: ref_to_sync, sync_width, back_porch, front_porch */
+ horiz_timing = <0 96 48 16>;
+ vert_timing = <1 2 31 11>;
+
+ /* 800x480@60 (e.g. EDT ET070080DH6)
+ pixel_clock = <32460000>;
+ width = <800>;
+ height = <480>;
+ horiz_timing = <1 64 128 64>;
+ vert_timing = <1 3 22 20>;
+ */
+
+ /* 1024x768 timings
+ pixel_clock = <72000000>;
+ width = <1024>;
+ height = <768>;
+ horiz_timing = <0 136 160 24>;
+ vert_timing = <1 6 29 3>;
+ */
+
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ backlight-enable = <&gpio 170 1>; /* PV2 - SODIMM 71: BL_ON */
+ backlight-vdd = <&gpio 255 1>;
+ lvds-shutdown = <&gpio 255 1>;
+ panel-vdd = <&gpio 255 1>;
+
+ /*
+ * Panel required timings
+ * Timing 1: delay between panel_vdd-rise and data-rise
+ * Timing 2: delay between data-rise and backlight_vdd-rise
+ * Timing 3: delay between backlight_vdd and pwm-rise
+ * Timing 4: delay between pwm-rise and backlight_en-rise
+ */
+ panel-timings = <0 0 0 0>;
+ };
+
+ /* EHCI instance 0: USB1_DP/N -> USBO1_DP/N */
+//currently broken
+ usb@0x7d000000 {
+ status = "ok";
+ host-mode = <1>;
+ vbus-gpio = <&gpio 157 3>; /* PT5, USBO1_EN */
+ };
+
+ usbphya: usbphy@0 {
+ compatible = "smsc,usb3315";
+ status = "ok";
+ };
+
+ /* EHCI instance 1: USB2_DP/N -> USBH2_DP/N */
+ usb@0x7d004000 {
+ status = "ok";
+ utmi = <&usbphya>;
+ host-mode = <0>;
+ vbus-gpio = <&gpio 233 3>; /* PDD1, USBH_EN */
+ };
+
+ usbphyb: usbphy@0 {
+ compatible = "smsc,usb3315";
+ status = "ok";
+ };
+
+ /* EHCI instance 2: USB3_DP/N -> USBH3_DP/N */
+ usb@0x7d008000 {
+ status = "ok";
+ utmi = <&usbphyb>;
+ host-mode = <0>;
+ };
+};