Commit | Line | Data |
---|---|---|
896dd272 SH |
1 | /* |
2 | * Device Tree file for Compulab SBC-A510 Single Board Computer | |
3 | * | |
4 | * Copyright (C) 2015, Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> | |
5 | * | |
6 | * This file is dual-licensed: you can use it either under the terms | |
7 | * of the GPL or the X11 license, at your option. Note that this dual | |
8 | * licensing only applies to this file, and not this project as a | |
9 | * whole. | |
10 | * | |
11 | * a) This file is free software; you can redistribute it and/or | |
12 | * modify it under the terms of the GNU General Public License as | |
13 | * published by the Free Software Foundation; version 2 of the | |
14 | * License. | |
15 | * | |
16 | * This file is distributed in the hope that it will be useful | |
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 | * GNU General Public License for more details. | |
20 | * | |
21 | * Or, alternatively | |
22 | * | |
23 | * b) Permission is hereby granted, free of charge, to any person | |
24 | * obtaining a copy of this software and associated documentation | |
25 | * files (the "Software"), to deal in the Software without | |
26 | * restriction, including without limitation the rights to use | |
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | |
28 | * sell copies of the Software, and to permit persons to whom the | |
29 | * Software is furnished to do so, subject to the following | |
30 | * conditions: | |
31 | * | |
32 | * The above copyright notice and this permission notice shall be | |
33 | * included in all copies or substantial portions of the Software. | |
34 | * | |
35 | * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND | |
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | |
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | |
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | |
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY | |
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | |
42 | * OTHER DEALINGS IN THE SOFTWARE. | |
43 | */ | |
44 | ||
45 | /* | |
46 | * SBC-A510 comprises a PCA9555 I2C GPIO expander its GPIO lines connected to | |
47 | * | |
48 | * 0.0 USB0 VBUS_EN (active high) | |
49 | * 0.1 USB0 VBUS_GOOD | |
50 | * 0.2 DVI transmitter TI TFP410 MSEN | |
51 | * 0.3 DVI transmitter TI TFP410 PD# (active low power down) | |
52 | * 0.4 LVDS transmitter DS90C365 PD# (active low power down) | |
53 | * 0.5 LCD nRST (active low reset) | |
54 | * 0.6 PCIe0 nRST (active low reset) | |
55 | * 0.7 mini-PCIe slot W_DISABLE# | |
56 | * | |
57 | * 1.0 MMC WP | |
58 | * 1.1 Camera Input FPC FLASH_STB and P21.5 | |
59 | * 1.2 Camera Input FPC WE and P21.22 | |
60 | * 1.3 MMC VCC_EN (active high) and P21.7 | |
61 | * 1.4 Camera Input FPC AFTR_RST and P21.17 | |
62 | * 1.5 Camera Input FPC OE and P21.19 | |
63 | * 1.6 Camera Input FPC SNPSHT and P21.6 | |
64 | * 1.7 Camera Input FPC SHTR and P21.10 | |
65 | */ | |
66 | ||
67 | /dts-v1/; | |
68 | ||
69 | #include "dove-cm-a510.dtsi" | |
70 | ||
71 | / { | |
72 | model = "Compulab SBC-A510"; | |
73 | compatible = "compulab,sbc-a510", "compulab,cm-a510", "marvell,dove"; | |
74 | ||
75 | chosen { | |
76 | stdout-path = &uart0; | |
77 | }; | |
78 | ||
79 | regulators { | |
80 | usb0_power: regulator@2 { | |
81 | compatible = "regulator-fixed"; | |
82 | regulator-name = "USB Power"; | |
83 | regulator-min-microvolt = <5000000>; | |
84 | regulator-max-microvolt = <5000000>; | |
85 | gpio = <&gpio_ext 0 GPIO_ACTIVE_HIGH>; | |
86 | }; | |
87 | ||
88 | mmc_power: regulator@3 { | |
89 | compatible = "regulator-fixed"; | |
90 | regulator-name = "MMC Power"; | |
91 | regulator-min-microvolt = <3300000>; | |
92 | regulator-max-microvolt = <3300000>; | |
93 | gpio = <&gpio_ext 13 GPIO_ACTIVE_HIGH>; | |
94 | }; | |
95 | }; | |
96 | }; | |
97 | ||
98 | /* Ethernet0 depends on CM-A510 option E1 */ | |
99 | &mdio { status = "disabled"; }; | |
100 | ð { status = "disabled"; }; | |
101 | ðphy { status = "disabled"; }; | |
102 | ||
103 | /* | |
104 | * USB port 0 can be powered and monitored by I2C GPIO expander: | |
105 | * VBUS_ENABLE on GPIO0, VBUS_GOOD on GPIO1 | |
106 | */ | |
107 | &ehci0 { | |
108 | status = "okay"; | |
109 | vbus-supply = <&usb0_power>; | |
110 | }; | |
111 | ||
112 | /* USB port 1 (and ports 2, 3 if CM-A510 has U4 option) */ | |
113 | &ehci1 { status = "okay"; }; | |
114 | ||
115 | /* | |
116 | * I2C bus layout: | |
117 | * i2c0: | |
118 | * - Audio Codec, 0x1a (option from CM-A510) | |
119 | * - DVI transmitter TI TFP410, 0x39 | |
120 | * - HDMI/DVI DDC channel | |
121 | * i2c1: | |
122 | * - GPIO expander, NXP PCA9555, 0x20 | |
123 | * - VGA DDC channel | |
124 | */ | |
125 | &i2c { | |
126 | pinctrl-0 = <&pmx_i2c1>; | |
127 | pinctrl-names = "default"; | |
128 | }; | |
129 | ||
130 | &i2c0 { | |
131 | /* TI TFP410 DVI transmitter */ | |
132 | dvi: video@39 { | |
133 | compatible = "ti,tfp410"; | |
134 | reg = <0x39>; | |
135 | powerdown-gpio = <&gpio_ext 3 GPIO_ACTIVE_LOW>; | |
136 | }; | |
137 | }; | |
138 | ||
139 | &i2c1 { | |
140 | status = "okay"; | |
141 | ||
142 | /* NXP PCA9555 GPIO expander */ | |
143 | gpio_ext: gpio@20 { | |
144 | compatible = "nxp,pca9555"; | |
145 | reg = <0x20>; | |
146 | #gpio-cells = <2>; | |
147 | }; | |
148 | }; | |
149 | ||
150 | &pcie { status = "okay"; }; | |
151 | ||
152 | /* | |
153 | * PCIe0 can be configured by Jumper E1 to be either connected to | |
154 | * a mini-PCIe slot or a Pericom PI7C9X111 PCIe-to-PCI bridge. | |
155 | */ | |
156 | &pcie0 { | |
157 | status = "okay"; | |
158 | pinctrl-0 = <&pmx_pcie0_clkreq>; | |
159 | pinctrl-names = "default"; | |
160 | reset-gpios = <&gpio_ext 6 GPIO_ACTIVE_LOW>; | |
161 | }; | |
162 | ||
163 | /* Ethernet1 depends on CM-A510 option E2 */ | |
164 | &pcie1 { status = "disabled"; }; | |
165 | ||
166 | /* SATA connector */ | |
167 | &sata0 { status = "okay"; }; | |
168 | ||
169 | /* | |
170 | * SDIO0 is connected to a MMC/SD/SDIO socket, I2C GPIO expander has | |
171 | * VCC_MMC_ENABLE on GPIO13, MMC_WP on GPIO10 | |
172 | */ | |
173 | &sdio0 { | |
174 | vmmc-supply = <&mmc_power>; | |
175 | wp-gpios = <&gpio_ext 10 GPIO_ACTIVE_LOW>; | |
176 | status = "okay"; | |
177 | }; | |
178 | ||
179 | /* UART0 on RS232 mini-connector */ | |
180 | &uart0 { status = "okay"; }; | |
181 | /* UART2 on pin headers */ | |
182 | &uart2 { status = "okay"; }; |