GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / kirkwood-b3.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Device Tree file for Excito Bubba B3
4  *
5  * Copyright (C) 2013, Andrew Lunn <andrew@lunn.ch>
6  *
7  *
8  * Note: This requires a new'ish version of u-boot, which disables the
9  * L2 cache. If your B3 silently fails to boot, u-boot is probably too
10  * old. Either upgrade, or consider the following email:
11  *
12  * http://lists.debian.org/debian-arm/2012/08/msg00128.html
13  */
14
15 /dts-v1/;
16
17 #include "kirkwood.dtsi"
18 #include "kirkwood-6281.dtsi"
19
20 / {
21         model = "Excito B3";
22         compatible = "excito,b3", "marvell,kirkwood-88f6281", "marvell,kirkwood";
23         memory { /* 512 MB */
24                 device_type = "memory";
25                 reg = <0x00000000 0x20000000>;
26         };
27
28         chosen {
29                 bootargs = "console=ttyS0,115200n8 earlyprintk";
30                 stdout-path = &uart0;
31         };
32
33         ocp@f1000000 {
34                 pinctrl: pin-controller@10000 {
35                         pmx_button_power: pmx-button-power {
36                                 marvell,pins = "mpp39";
37                                 marvell,function = "gpio";
38                         };
39                         pmx_led_green: pmx-led-green {
40                                 marvell,pins = "mpp38";
41                                 marvell,function = "gpio";
42                         };
43                         pmx_led_red: pmx-led-red {
44                                 marvell,pins = "mpp41";
45                                 marvell,function = "gpio";
46                         };
47                         pmx_led_blue: pmx-led-blue {
48                                 marvell,pins = "mpp42";
49                                 marvell,function = "gpio";
50                         };
51                         pmx_beeper: pmx-beeper {
52                                 marvell,pins = "mpp40";
53                                 marvell,function = "gpio";
54                         };
55                 };
56
57                 spi@10600 {
58                         status = "okay";
59
60                         m25p16@0 {
61                                 #address-cells = <1>;
62                                 #size-cells = <1>;
63                                 compatible = "st,m25p16", "jedec,spi-nor";
64                                 reg = <0>;
65                                 spi-max-frequency = <40000000>;
66                                 mode = <0>;
67
68                                 partition@0 {
69                                         reg = <0x0 0xc0000>;
70                                         label = "u-boot";
71                                 };
72
73                                 partition@c0000 {
74                                         reg = <0xc0000 0x20000>;
75                                         label = "u-boot env";
76                                 };
77
78                                 partition@e0000 {
79                                         reg = <0xe0000 0x120000>;
80                                         label = "data";
81                                 };
82                         };
83                 };
84
85                 i2c@11000 {
86                         status = "okay";
87                         /*
88                          * There is something on the bus at address 0x64.
89                          * Not yet identified what it is, maybe the eeprom
90                          * for the Atheros WiFi chip?
91                          */
92                 };
93
94
95                 serial@12000 {
96                         /* Internal on test pins, 3.3v TTL
97                          * UART0_RX = Testpoint 65
98                          * UART0_TX = Testpoint 66
99                          * See the Excito Wiki for more details.
100                          */
101                         status = "okay";
102                 };
103
104                 sata@80000 {
105                         /* One internal, the second as eSATA */
106                         status = "okay";
107                         nr-ports = <2>;
108                 };
109         };
110
111         gpio-leds {
112                 /*
113                  * There is one LED "port" on the front and the colours
114                  * mix together giving some interesting combinations.
115                  */
116                 compatible = "gpio-leds";
117                 pinctrl-0 = < &pmx_led_green &pmx_led_red
118                               &pmx_led_blue >;
119                 pinctrl-names = "default";
120
121                 programming_led {
122                         label = "bubba3:green:programming";
123                         gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
124                         default-state = "off";
125                 };
126
127                 error_led {
128                         label = "bubba3:red:error";
129                         gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
130                 };
131
132                 active_led {
133                         label = "bubba3:blue:active";
134                         gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
135                 };
136         };
137
138         gpio-keys {
139                 compatible = "gpio-keys";
140                 pinctrl-0 = <&pmx_button_power>;
141                 pinctrl-names = "default";
142
143                 power-button {
144                         /* On the back */
145                         label = "Power Button";
146                         linux,code = <KEY_POWER>;
147                         gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
148                 };
149         };
150
151         beeper: beeper {
152                 /* 4KHz Piezoelectric buzzer */
153                 compatible = "gpio-beeper";
154                 pinctrl-0 = <&pmx_beeper>;
155                 pinctrl-names = "default";
156                 gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
157         };
158 };
159
160 &mdio {
161         status = "okay";
162
163         ethphy0: ethernet-phy@8 {
164                 device_type = "ethernet-phy";
165                 reg = <8>;
166         };
167
168         ethphy1: ethernet-phy@24 {
169                 device_type = "ethernet-phy";
170                 reg = <24>;
171         };
172 };
173
174 &eth0 {
175         status = "okay";
176         ethernet0-port@0 {
177                 phy-handle = <&ethphy0>;
178         };
179 };
180
181 &eth1 {
182         status = "okay";
183         ethernet1-port@0 {
184                 phy-handle = <&ethphy1>;
185         };
186 };
187
188 /* Wifi model has Atheros chipset on pcie port */
189 &pciec {
190         status = "okay";
191 };
192
193 &pcie0 {
194         status = "okay";
195 };