Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
[cascardo/linux.git] / arch / arm / boot / dts / uniphier-pro4.dtsi
1 /*
2  * Device Tree Source for UniPhier Pro4 SoC
3  *
4  * Copyright (C) 2015-2016 Socionext Inc.
5  *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
6  *
7  * This file is dual-licensed: you can use it either under the terms
8  * of the GPL or the X11 license, at your option. Note that this dual
9  * licensing only applies to this file, and not this project as a
10  * whole.
11  *
12  *  a) This file is free software; you can redistribute it and/or
13  *     modify it under the terms of the GNU General Public License as
14  *     published by the Free Software Foundation; either version 2 of the
15  *     License, or (at your option) any later version.
16  *
17  *     This file is distributed in the hope that it will be useful,
18  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
19  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20  *     GNU General Public License for more details.
21  *
22  * Or, alternatively,
23  *
24  *  b) Permission is hereby granted, free of charge, to any person
25  *     obtaining a copy of this software and associated documentation
26  *     files (the "Software"), to deal in the Software without
27  *     restriction, including without limitation the rights to use,
28  *     copy, modify, merge, publish, distribute, sublicense, and/or
29  *     sell copies of the Software, and to permit persons to whom the
30  *     Software is furnished to do so, subject to the following
31  *     conditions:
32  *
33  *     The above copyright notice and this permission notice shall be
34  *     included in all copies or substantial portions of the Software.
35  *
36  *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
37  *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
38  *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
39  *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
40  *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
41  *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
42  *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
43  *     OTHER DEALINGS IN THE SOFTWARE.
44  */
45
46 /include/ "uniphier-common32.dtsi"
47
48 / {
49         compatible = "socionext,uniphier-pro4";
50
51         cpus {
52                 #address-cells = <1>;
53                 #size-cells = <0>;
54
55                 cpu@0 {
56                         device_type = "cpu";
57                         compatible = "arm,cortex-a9";
58                         reg = <0>;
59                         enable-method = "psci";
60                         next-level-cache = <&l2>;
61                 };
62
63                 cpu@1 {
64                         device_type = "cpu";
65                         compatible = "arm,cortex-a9";
66                         reg = <1>;
67                         enable-method = "psci";
68                         next-level-cache = <&l2>;
69                 };
70         };
71
72         clocks {
73                 arm_timer_clk: arm_timer_clk {
74                         #clock-cells = <0>;
75                         compatible = "fixed-clock";
76                         clock-frequency = <50000000>;
77                 };
78         };
79 };
80
81 &soc {
82         l2: l2-cache@500c0000 {
83                 compatible = "socionext,uniphier-system-cache";
84                 reg = <0x500c0000 0x2000>, <0x503c0100 0x4>, <0x506c0000 0x400>;
85                 interrupts = <0 174 4>, <0 175 4>;
86                 cache-unified;
87                 cache-size = <(768 * 1024)>;
88                 cache-sets = <256>;
89                 cache-line-size = <128>;
90                 cache-level = <2>;
91         };
92
93         i2c0: i2c@58780000 {
94                 compatible = "socionext,uniphier-fi2c";
95                 status = "disabled";
96                 reg = <0x58780000 0x80>;
97                 #address-cells = <1>;
98                 #size-cells = <0>;
99                 interrupts = <0 41 4>;
100                 pinctrl-names = "default";
101                 pinctrl-0 = <&pinctrl_i2c0>;
102                 clocks = <&peri_clk 4>;
103                 clock-frequency = <100000>;
104         };
105
106         i2c1: i2c@58781000 {
107                 compatible = "socionext,uniphier-fi2c";
108                 status = "disabled";
109                 reg = <0x58781000 0x80>;
110                 #address-cells = <1>;
111                 #size-cells = <0>;
112                 interrupts = <0 42 4>;
113                 pinctrl-names = "default";
114                 pinctrl-0 = <&pinctrl_i2c1>;
115                 clocks = <&peri_clk 5>;
116                 clock-frequency = <100000>;
117         };
118
119         i2c2: i2c@58782000 {
120                 compatible = "socionext,uniphier-fi2c";
121                 status = "disabled";
122                 reg = <0x58782000 0x80>;
123                 #address-cells = <1>;
124                 #size-cells = <0>;
125                 interrupts = <0 43 4>;
126                 pinctrl-names = "default";
127                 pinctrl-0 = <&pinctrl_i2c2>;
128                 clocks = <&peri_clk 6>;
129                 clock-frequency = <100000>;
130         };
131
132         i2c3: i2c@58783000 {
133                 compatible = "socionext,uniphier-fi2c";
134                 status = "disabled";
135                 reg = <0x58783000 0x80>;
136                 #address-cells = <1>;
137                 #size-cells = <0>;
138                 interrupts = <0 44 4>;
139                 pinctrl-names = "default";
140                 pinctrl-0 = <&pinctrl_i2c3>;
141                 clocks = <&peri_clk 7>;
142                 clock-frequency = <100000>;
143         };
144
145         /* i2c4 does not exist */
146
147         /* chip-internal connection for DMD */
148         i2c5: i2c@58785000 {
149                 compatible = "socionext,uniphier-fi2c";
150                 reg = <0x58785000 0x80>;
151                 #address-cells = <1>;
152                 #size-cells = <0>;
153                 interrupts = <0 25 4>;
154                 clocks = <&peri_clk 9>;
155                 clock-frequency = <400000>;
156         };
157
158         /* chip-internal connection for HDMI */
159         i2c6: i2c@58786000 {
160                 compatible = "socionext,uniphier-fi2c";
161                 reg = <0x58786000 0x80>;
162                 #address-cells = <1>;
163                 #size-cells = <0>;
164                 interrupts = <0 26 4>;
165                 clocks = <&peri_clk 10>;
166                 clock-frequency = <400000>;
167         };
168
169         usb2: usb@5a800100 {
170                 compatible = "socionext,uniphier-ehci", "generic-ehci";
171                 status = "disabled";
172                 reg = <0x5a800100 0x100>;
173                 interrupts = <0 80 4>;
174                 pinctrl-names = "default";
175                 pinctrl-0 = <&pinctrl_usb2>;
176                 clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
177                 resets = <&mio_rst 7>, <&mio_rst 8>, <&mio_rst 12>, <&sys_rst 8>;
178         };
179
180         usb3: usb@5a810100 {
181                 compatible = "socionext,uniphier-ehci", "generic-ehci";
182                 status = "disabled";
183                 reg = <0x5a810100 0x100>;
184                 interrupts = <0 81 4>;
185                 pinctrl-names = "default";
186                 pinctrl-0 = <&pinctrl_usb3>;
187                 clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
188                 resets = <&mio_rst 7>, <&mio_rst 9>, <&mio_rst 13>, <&sys_rst 8>;
189         };
190 };
191
192 &refclk {
193         clock-frequency = <25000000>;
194 };
195
196 &mio_clk {
197         compatible = "socionext,uniphier-pro4-mio-clock";
198 };
199
200 &mio_rst {
201         compatible = "socionext,uniphier-pro4-mio-reset";
202         resets = <&sys_rst 7>;
203 };
204
205 &peri_clk {
206         compatible = "socionext,uniphier-pro4-peri-clock";
207 };
208
209 &peri_rst {
210         compatible = "socionext,uniphier-pro4-peri-reset";
211 };
212
213 &pinctrl {
214         compatible = "socionext,uniphier-pro4-pinctrl";
215 };
216
217 &sys_clk {
218         compatible = "socionext,uniphier-pro4-clock";
219 };
220
221 &sys_rst {
222         compatible = "socionext,uniphier-pro4-reset";
223 };