summaryrefslogtreecommitdiff
path: root/arch/arm/dts/tegra20-colibri.dts
blob: 2cf24d3ee7711031196609608a449afafb077d37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
/dts-v1/;

#include "tegra20.dtsi"

/ {
	model = "Toradex Colibri T20";
	compatible = "toradex,colibri_t20", "nvidia,tegra20";

	chosen {
		stdout-path = &uarta;
	};

	aliases {
		i2c0 = "/i2c@7000d000";
		i2c1 = "/i2c@7000c000";
		i2c2 = "/i2c@7000c400";
		usb0 = "/usb@c5008000";
		usb1 = "/usb@c5000000";
		usb2 = "/usb@c5004000";
		sdhci0 = "/sdhci@c8000600";
	};

	host1x@50000000 {
		status = "okay";
		dc@54200000 {
			status = "okay";
			rgb {
				status = "okay";
				nvidia,panel = <&lcd_panel>;
			};
		};
	};

	usb@c5000000 {
		statuc = "okay";
		dr_mode = "otg";
	};

	usb@c5004000 {
		statuc = "okay";
		/* VBUS_LAN */
		nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_HIGH>;
		nvidia,vbus-gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
	};

	usb@c5008000 {
		statuc = "okay";
		/* USBH_PEN */
		nvidia,vbus-gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
	};

	nand-controller@70008000 {
		nvidia,wp-gpios = <&gpio TEGRA_GPIO(S, 0) GPIO_ACTIVE_HIGH>;
		nvidia,width = <8>;
		nvidia,timing = <15 100 25 80 25 10 15 10 100>;

		nand@0 {
			reg = <0>;
			compatible = "nand-flash";
		};
	};

	/*
	 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
	 * board)
	 */
	i2c@7000c000 {
		status = "okay";
		clock-frequency = <100000>;
	};

	/* GEN2_I2C: unused */

	/* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
	i2c@7000c400 {
		status = "okay";
		clock-frequency = <100000>;
	};

	/*
	 * PWR_I2C: power I2C to PMIC and temperature sensor
	 */
	i2c@7000d000 {
		status = "okay";
		clock-frequency = <100000>;
	};

	sdhci@c8000600 {
		status = "okay";
		bus-width = <4>;
		cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
	};

	clocks {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <0>;

		clk32k_in: clock@0 {
			compatible = "fixed-clock";
			reg=<0>;
			#clock-cells = <0>;
			clock-frequency = <32768>;
		};
	};

	pwm: pwm@7000a000 {
		status = "okay";
	};

	lcd_panel: panel {
		clock = <25175000>;
		xres = <640>;
		yres = <480>;
		left-margin = <48>;	/* horizontal back porch */
		right-margin = <16>;	/* horizontal front porch */
		hsync-len = <96>;
		lower-margin = <11>;	/* vertical front porch */
		upper-margin = <31>;	/* vertical back porch */
		vsync-len = <2>;
		hsync-active-high;
		vsync-active-high;
		nvidia,bits-per-pixel = <16>;
		nvidia,pwm = <&pwm 0 0>;
		nvidia,backlight-enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
		nvidia,panel-timings = <0 0 0 0>;
	};
};