GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / boot / dts / at91-wb50n.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * at91-wb50n.dtsi - Device Tree include file for wb50n cpu module
4  *
5  *  Copyright (C) 2018 Laird
6  *
7  */
8
9 #include "sama5d31.dtsi"
10
11 / {
12         model = "Laird Workgroup Bridge 50N - Atmel SAMA5D";
13         compatible = "laird,wb50n", "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";
14
15         chosen {
16                 bootargs = "ubi.mtd=6 root=ubi0:rootfs rootfstype=ubifs rw";
17                 stdout-path = "serial0:115200n8";
18         };
19
20         memory {
21                 reg = <0x20000000 0x4000000>;
22         };
23 };
24
25 &pinctrl {
26         board {
27                 pinctrl_mmc0_cd: mmc0_cd {
28                         atmel,pins = <AT91_PIOC 26 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PC26 GPIO with pullup deglitch */
29                 };
30
31                 pinctrl_usba_vbus: usba_vbus {
32                         atmel,pins = <AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PB13 GPIO with deglitch */
33                 };
34         };
35 };
36
37 &slow_xtal {
38         clock-frequency = <32768>;
39 };
40
41 &main_xtal {
42         clock-frequency = <12000000>;
43 };
44
45 &slow_osc {
46         atmel,osc-bypass;
47 };
48
49 &usart1_clk {
50         atmel,clk-output-range = <0 132000000>;
51 };
52
53 &mmc0 {
54         pinctrl-names = "default";
55         pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_cd>;
56         cd-gpios = <&pioC 26 GPIO_ACTIVE_LOW>;
57         slot@0 {
58                 reg = <0>;
59                 bus-width = <4>;
60         };
61 };
62
63 &mmc1 {
64         pinctrl-names = "default";
65         pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3>;
66         status = "okay";
67         atheros@0 {
68                 compatible = "atheros,ath6kl";
69                 atheros,board-id = "SD32";
70                 reg = <0>;
71                 bus-width = <4>;
72         };
73 };
74
75 &macb1 {
76         phy-mode = "rmii";
77 };
78
79 &dbgu {
80         dmas = <0>, <0>;        /*  Do not use DMA for dbgu */
81 };
82
83 /* On BB40 this port is labeled UART1 */
84 &usart0 {
85         atmel,use-dma-rx;
86         atmel,use-dma-tx;
87         pinctrl-names = "default";
88         pinctrl-0 = <&pinctrl_usart0 &pinctrl_usart0_rts_cts>;
89 };
90
91 /* On BB40 this port is labeled UART0 */
92 &usart1 {
93         atmel,use-dma-rx;
94         atmel,use-dma-tx;
95         pinctrl-names = "default";
96         pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>;
97         dtr-gpios = <&pioD 13 GPIO_ACTIVE_LOW>;
98         dsr-gpios = <&pioD 11 GPIO_ACTIVE_LOW>;
99         dcd-gpios = <&pioD 7 GPIO_ACTIVE_LOW>;
100         rng-gpios = <&pioD 8 GPIO_ACTIVE_LOW>;
101 };
102
103 /* USART3 is direct-connect to the Bluetooth UART on the radio SIP */
104 &usart3 {
105         atmel,use-dma-rx;
106         atmel,use-dma-tx;
107         pinctrl-names = "default";
108         pinctrl-0 = <&pinctrl_usart3 &pinctrl_usart3_rts_cts>;
109         status = "okay";
110 };
111
112 &spi1 {
113         cs-gpios = <&pioC 25 0>, <0>, <0>, <0>;
114 };
115
116 &ebi {
117         pinctrl-0 = <&pinctrl_ebi_nand_addr>;
118         pinctrl-names = "default";
119         status = "okay";
120 };
121
122 &nand_controller {
123         status = "okay";
124
125         nand: nand@3 {
126                 reg = <0x3 0x0 0x2>;
127                 atmel,rb = <0>;
128                 nand-bus-width = <8>;
129                 nand-ecc-mode = "hw";
130                 nand-ecc-strength = <8>;
131                 nand-ecc-step-size = <512>;
132                 nand-on-flash-bbt;
133                 label = "atmel_nand";
134
135                 partitions {
136                         compatible = "fixed-partitions";
137                         #address-cells = <1>;
138                         #size-cells = <1>;
139
140                         at91bootstrap@0 {
141                                 label = "at91bs";
142                                 reg = <0x0 0x20000>;
143                         };
144
145                         uboot@20000 {
146                                 label = "u-boot";
147                                 reg = <0x20000 0x80000>;
148                         };
149
150                         ubootenv@a0000 {
151                                 label = "u-boot-env";
152                                 reg = <0xa0000 0x20000>;
153                         };
154
155                         ubootenv@c0000 {
156                                 label = "u-boot-env";
157                                 reg = <0xc0000 0x20000>;
158                         };
159
160                         kernel-a@e0000 {
161                                 label = "kernel-a";
162                                 reg = <0xe0000 0x500000>;
163                         };
164
165                         kernel-b@5e0000 {
166                                 label = "kernel-b";
167                                 reg = <0x5e0000 0x500000>;
168                         };
169
170                         rootfs-a@ae0000 {
171                                 label = "rootfs-a";
172                                 reg = <0xae0000 0x3000000>;
173                         };
174
175                         rootfs-b@3ae0000 {
176                                 label = "rootfs-b";
177                                 reg = <0x3ae0000 0x3000000>;
178                         };
179
180                         user@6ae0000 {
181                                 label = "user";
182                                 reg = <0x6ae0000 0x14e0000>;
183                         };
184                 };
185         };
186 };
187
188 &usb0 {
189         atmel,vbus-gpio = <&pioB 13 GPIO_ACTIVE_LOW>;
190         pinctrl-names = "default";
191         pinctrl-0 = <&pinctrl_usba_vbus>;
192 };
193
194 &usb1 {
195         num-ports = <3>;
196         atmel,vbus-gpio = <&pioA 2 GPIO_ACTIVE_LOW>;
197         atmel,oc-gpio = <&pioA 4 GPIO_ACTIVE_LOW>;
198 };