]>
Commit | Line | Data |
---|---|---|
83d290c5 | 1 | // SPDX-License-Identifier: GPL-2.0+ |
495f3774 AS |
2 | /* |
3 | * Copyright (c) 2017 Intel Corporation | |
495f3774 AS |
4 | */ |
5 | ||
6 | /dts-v1/; | |
7 | ||
8 | #include <dt-bindings/gpio/x86-gpio.h> | |
9 | #include <dt-bindings/interrupt-router/intel-irq.h> | |
10 | ||
11 | /include/ "skeleton.dtsi" | |
12 | /include/ "rtc.dtsi" | |
495f3774 | 13 | |
c79cbb59 | 14 | #include "tsc_timer.dtsi" |
839d66cd SG |
15 | #include "smbios.dtsi" |
16 | ||
495f3774 AS |
17 | / { |
18 | model = "Intel Edison"; | |
35d29a8f | 19 | compatible = "intel,edison", "intel,tangier"; |
495f3774 AS |
20 | |
21 | aliases { | |
d9b59fc9 AS |
22 | serial0 = &serial0; |
23 | serial1 = &serial1; | |
ab83e5c1 | 24 | serial2 = &serial2; |
495f3774 AS |
25 | }; |
26 | ||
2e3b8830 SG |
27 | binman: binman { |
28 | multiple-images; | |
29 | }; | |
30 | ||
495f3774 | 31 | chosen { |
ab83e5c1 | 32 | stdout-path = &serial2; |
495f3774 AS |
33 | }; |
34 | ||
35 | cpus { | |
36 | #address-cells = <1>; | |
37 | #size-cells = <0>; | |
38 | ||
39 | cpu@0 { | |
40 | device_type = "cpu"; | |
41 | compatible = "cpu-x86"; | |
42 | reg = <0>; | |
43 | intel,apic-id = <0>; | |
44 | }; | |
45 | ||
46 | cpu@1 { | |
47 | device_type = "cpu"; | |
48 | compatible = "cpu-x86"; | |
49 | reg = <1>; | |
50 | intel,apic-id = <2>; | |
51 | }; | |
52 | }; | |
53 | ||
54 | pci { | |
55 | compatible = "pci-x86"; | |
56 | #address-cells = <3>; | |
57 | #size-cells = <2>; | |
8c103c33 | 58 | bootph-all; |
495f3774 AS |
59 | ranges = <0x02000000 0x0 0x80000000 0x80000000 0 0x40000000 |
60 | 0x42000000 0x0 0xc0000000 0xc0000000 0 0x20000000 | |
61 | 0x01000000 0x0 0x2000 0x2000 0 0xe000>; | |
62 | }; | |
63 | ||
d9b59fc9 AS |
64 | serial0: serial@ff010080 { |
65 | compatible = "intel,mid-uart"; | |
66 | reg = <0xff010080 0x100>; | |
67 | reg-shift = <0>; | |
68 | clock-frequency = <29491200>; | |
69 | current-speed = <115200>; | |
70 | }; | |
71 | ||
72 | serial1: serial@ff010100 { | |
73 | compatible = "intel,mid-uart"; | |
74 | reg = <0xff010100 0x100>; | |
75 | reg-shift = <0>; | |
76 | clock-frequency = <29491200>; | |
77 | current-speed = <115200>; | |
78 | }; | |
79 | ||
ab83e5c1 | 80 | serial2: serial@ff010180 { |
495f3774 AS |
81 | compatible = "intel,mid-uart"; |
82 | reg = <0xff010180 0x100>; | |
83 | reg-shift = <0>; | |
84 | clock-frequency = <29491200>; | |
85 | current-speed = <115200>; | |
86 | }; | |
87 | ||
88 | emmc: mmc@ff3fc000 { | |
89 | compatible = "intel,sdhci-tangier"; | |
90 | reg = <0xff3fc000 0x1000>; | |
e45066f4 | 91 | non-removable; |
495f3774 AS |
92 | }; |
93 | ||
495f3774 AS |
94 | sdcard: mmc@ff3fa000 { |
95 | compatible = "intel,sdhci-tangier"; | |
96 | reg = <0xff3fa000 0x1000>; | |
144cb060 AS |
97 | /* |
98 | * In the disconnected state of the SD Card Detection pin | |
99 | * the read value is always the same and inverted to what | |
100 | * we are expecting in the code. | |
101 | */ | |
102 | cd-inverted; | |
495f3774 | 103 | }; |
495f3774 AS |
104 | |
105 | pmu: power@ff00b000 { | |
106 | compatible = "intel,pmu-mid"; | |
107 | reg = <0xff00b000 0x1000>; | |
108 | }; | |
109 | ||
110 | scu: ipc@ff009000 { | |
111 | compatible = "intel,scu-ipc"; | |
112 | reg = <0xff009000 0x1000>; | |
113 | }; | |
b37b7b20 | 114 | |
23cdbba8 AS |
115 | usb: usb@f9100000 { |
116 | compatible = "intel,tangier-dwc3"; | |
f89e8acb AS |
117 | #address-cells = <1>; |
118 | #size-cells = <1>; | |
119 | ||
120 | dwc3: dwc3 { | |
121 | reg = <0xf9100000 0x100000>; | |
122 | maximum-speed = "high-speed"; | |
123 | dr_mode = "peripheral"; | |
124 | }; | |
23cdbba8 AS |
125 | }; |
126 | ||
c974a3d1 AS |
127 | watchdog: wdt@0 { |
128 | compatible = "intel,tangier-wdt"; | |
129 | }; | |
130 | ||
b37b7b20 BM |
131 | reset { |
132 | compatible = "intel,reset-tangier"; | |
8c103c33 | 133 | bootph-all; |
b37b7b20 | 134 | }; |
f26b260c GS |
135 | |
136 | pinctrl { | |
137 | compatible = "intel,pinctrl-tangier"; | |
138 | reg = <0xff0c0000 0x8000>; | |
139 | ||
144cb060 AS |
140 | /* |
141 | * Disconnect SD card detection pin, so it won't affect | |
142 | * the reality on two different PCB designs where it's | |
143 | * using the opposite signaling: Edison/Arduino uses | |
144 | * Active Low, while SparkFun went with Active High. | |
145 | */ | |
146 | sd_cd@0 { | |
147 | pad-offset = <37>; | |
148 | mode-func = <3>; | |
149 | }; | |
150 | ||
f26b260c GS |
151 | /* |
152 | * Initial configuration came from the firmware. | |
153 | * Which quite likely has been used in the phones, where I2C #8, | |
154 | * that is not part of Atom peripheral, is in use. | |
155 | * Thus we need to override the leftover. | |
156 | */ | |
157 | i2c6_scl@0 { | |
158 | pad-offset = <111>; | |
159 | mode-func = <1>; | |
160 | protected; | |
161 | }; | |
162 | i2c6_sda@0 { | |
163 | pad-offset = <112>; | |
164 | mode-func = <1>; | |
165 | protected; | |
166 | }; | |
167 | }; | |
495f3774 | 168 | }; |
2e3b8830 SG |
169 | |
170 | &binman { | |
171 | u-boot-edison { | |
172 | filename = "u-boot-edison.img"; | |
173 | ||
174 | /* This is the OSIP */ | |
175 | blob { | |
176 | filename = "edison-osip.dat"; | |
177 | }; | |
178 | ||
179 | u-boot { | |
180 | offset = <0x200>; | |
181 | }; | |
182 | ||
183 | u-boot-env { | |
184 | offset = <0x200200>; | |
185 | filename = "edison-environment.txt"; | |
186 | size = <0x10000>; | |
187 | fill-byte = [ff]; | |
188 | }; | |
189 | ||
190 | u-boot-env2 { | |
191 | type = "u-boot-env"; | |
192 | offset = <0x500200>; | |
193 | filename = "edison-environment.txt"; | |
194 | size = <0x10000>; | |
195 | fill-byte = [ff]; | |
196 | }; | |
197 | }; | |
198 | }; |