xref: /freebsd-src/sys/contrib/device-tree/src/arm/microchip/at91-wb45n.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * at91-wb45n.dtsi - Device Tree file for WB45NBT board
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot *  Copyright (C) 2018 Laird
6*f126890aSEmmanuel Vadot *
7*f126890aSEmmanuel Vadot */
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot#include "at91sam9g25.dtsi"
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/ {
12*f126890aSEmmanuel Vadot	model = "Laird Workgroup Bridge 45N - Atmel AT91SAM (dt)";
13*f126890aSEmmanuel Vadot	compatible = "laird,wb45n", "laird,wbxx", "atmel,at91sam9x5", "atmel,at91sam9";
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot	chosen {
16*f126890aSEmmanuel Vadot		bootargs = "ubi.mtd=6 root=ubi0:rootfs rootfstype=ubifs rw";
17*f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
18*f126890aSEmmanuel Vadot	};
19*f126890aSEmmanuel Vadot
20*f126890aSEmmanuel Vadot	memory@20000000 {
21*f126890aSEmmanuel Vadot		reg = <0x20000000 0x4000000>;
22*f126890aSEmmanuel Vadot	};
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot	atheros {
25*f126890aSEmmanuel Vadot		compatible = "atheros,ath6kl";
26*f126890aSEmmanuel Vadot		atheros,board-id = "SD32";
27*f126890aSEmmanuel Vadot	};
28*f126890aSEmmanuel Vadot};
29*f126890aSEmmanuel Vadot
30*f126890aSEmmanuel Vadot&reset_controller {
31*f126890aSEmmanuel Vadot	compatible = "atmel,sama5d3-rstc";
32*f126890aSEmmanuel Vadot};
33*f126890aSEmmanuel Vadot
34*f126890aSEmmanuel Vadot&shutdown_controller {
35*f126890aSEmmanuel Vadot	atmel,wakeup-mode = "low";
36*f126890aSEmmanuel Vadot};
37*f126890aSEmmanuel Vadot
38*f126890aSEmmanuel Vadot&slow_xtal {
39*f126890aSEmmanuel Vadot	clock-frequency = <32768>;
40*f126890aSEmmanuel Vadot};
41*f126890aSEmmanuel Vadot
42*f126890aSEmmanuel Vadot&main_xtal {
43*f126890aSEmmanuel Vadot	clock-frequency = <12000000>;
44*f126890aSEmmanuel Vadot};
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot&ebi {
47*f126890aSEmmanuel Vadot	status = "okay";
48*f126890aSEmmanuel Vadot	nand_controller: nand-controller {
49*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb &pinctrl_nand_oe_we>;
50*f126890aSEmmanuel Vadot		pinctrl-names = "default";
51*f126890aSEmmanuel Vadot		status = "okay";
52*f126890aSEmmanuel Vadot
53*f126890aSEmmanuel Vadot		nand@3 {
54*f126890aSEmmanuel Vadot			reg = <0x3 0x0 0x800000>;
55*f126890aSEmmanuel Vadot			rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
56*f126890aSEmmanuel Vadot			cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
57*f126890aSEmmanuel Vadot			nand-bus-width = <8>;
58*f126890aSEmmanuel Vadot			nand-ecc-mode = "hw";
59*f126890aSEmmanuel Vadot			nand-ecc-strength = <4>;
60*f126890aSEmmanuel Vadot			nand-ecc-step-size = <512>;
61*f126890aSEmmanuel Vadot			nand-on-flash-bbt;
62*f126890aSEmmanuel Vadot			label = "atmel_nand";
63*f126890aSEmmanuel Vadot
64*f126890aSEmmanuel Vadot			partitions {
65*f126890aSEmmanuel Vadot				compatible = "fixed-partitions";
66*f126890aSEmmanuel Vadot				#address-cells = <1>;
67*f126890aSEmmanuel Vadot				#size-cells = <1>;
68*f126890aSEmmanuel Vadot
69*f126890aSEmmanuel Vadot				at91bootstrap@0 {
70*f126890aSEmmanuel Vadot					label = "at91bs";
71*f126890aSEmmanuel Vadot					reg = <0x0 0x20000>;
72*f126890aSEmmanuel Vadot				};
73*f126890aSEmmanuel Vadot
74*f126890aSEmmanuel Vadot				uboot@20000 {
75*f126890aSEmmanuel Vadot					label = "u-boot";
76*f126890aSEmmanuel Vadot					reg = <0x20000 0x80000>;
77*f126890aSEmmanuel Vadot				};
78*f126890aSEmmanuel Vadot
79*f126890aSEmmanuel Vadot				ubootenv@a0000 {
80*f126890aSEmmanuel Vadot					label = "u-boot-env";
81*f126890aSEmmanuel Vadot					reg = <0xa0000 0x20000>;
82*f126890aSEmmanuel Vadot				};
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot				ubootenv@c0000 {
85*f126890aSEmmanuel Vadot					label = "redund-env";
86*f126890aSEmmanuel Vadot					reg = <0xc0000 0x20000>;
87*f126890aSEmmanuel Vadot				};
88*f126890aSEmmanuel Vadot
89*f126890aSEmmanuel Vadot				kernel-a@e0000 {
90*f126890aSEmmanuel Vadot					label = "kernel-a";
91*f126890aSEmmanuel Vadot					reg = <0xe0000 0x280000>;
92*f126890aSEmmanuel Vadot				};
93*f126890aSEmmanuel Vadot
94*f126890aSEmmanuel Vadot				kernel-b@360000 {
95*f126890aSEmmanuel Vadot					label = "kernel-b";
96*f126890aSEmmanuel Vadot					reg = <0x360000 0x280000>;
97*f126890aSEmmanuel Vadot				};
98*f126890aSEmmanuel Vadot
99*f126890aSEmmanuel Vadot				rootfs-a@5e0000 {
100*f126890aSEmmanuel Vadot					label = "rootfs-a";
101*f126890aSEmmanuel Vadot					reg = <0x5e0000 0x2600000>;
102*f126890aSEmmanuel Vadot				};
103*f126890aSEmmanuel Vadot
104*f126890aSEmmanuel Vadot				rootfs-b@2be0000 {
105*f126890aSEmmanuel Vadot					label = "rootfs-b";
106*f126890aSEmmanuel Vadot					reg = <0x2be0000 0x2600000>;
107*f126890aSEmmanuel Vadot				};
108*f126890aSEmmanuel Vadot
109*f126890aSEmmanuel Vadot				user@51e0000 {
110*f126890aSEmmanuel Vadot					label = "user";
111*f126890aSEmmanuel Vadot					reg = <0x51e0000 0x2dc0000>;
112*f126890aSEmmanuel Vadot				};
113*f126890aSEmmanuel Vadot
114*f126890aSEmmanuel Vadot				logs@7fa0000 {
115*f126890aSEmmanuel Vadot					label = "logs";
116*f126890aSEmmanuel Vadot					reg = <0x7fa0000 0x60000>;
117*f126890aSEmmanuel Vadot				};
118*f126890aSEmmanuel Vadot
119*f126890aSEmmanuel Vadot			};
120*f126890aSEmmanuel Vadot		};
121*f126890aSEmmanuel Vadot	};
122*f126890aSEmmanuel Vadot};
123*f126890aSEmmanuel Vadot
124*f126890aSEmmanuel Vadot&usb0 {
125*f126890aSEmmanuel Vadot	num-ports = <2>;
126*f126890aSEmmanuel Vadot	atmel,vbus-gpio = <
127*f126890aSEmmanuel Vadot		&pioB 12 GPIO_ACTIVE_HIGH
128*f126890aSEmmanuel Vadot		&pioA 31 GPIO_ACTIVE_HIGH
129*f126890aSEmmanuel Vadot		>;
130*f126890aSEmmanuel Vadot	atmel,oc-gpio = <&pioB 13 GPIO_ACTIVE_LOW>;
131*f126890aSEmmanuel Vadot};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot&macb0 {
134*f126890aSEmmanuel Vadot	phy-mode = "rmii";
135*f126890aSEmmanuel Vadot};
136*f126890aSEmmanuel Vadot
137*f126890aSEmmanuel Vadot&spi0 {
138*f126890aSEmmanuel Vadot	cs-gpios = <&pioA 14 0>, <&pioA 7 0>, <0>, <0>;
139*f126890aSEmmanuel Vadot};
140*f126890aSEmmanuel Vadot
141*f126890aSEmmanuel Vadot&usb2 {
142*f126890aSEmmanuel Vadot	pinctrl-names = "default";
143*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_board_usb2>;
144*f126890aSEmmanuel Vadot	atmel,vbus-gpio = <&pioB 11 GPIO_ACTIVE_HIGH>;
145*f126890aSEmmanuel Vadot};
146*f126890aSEmmanuel Vadot
147*f126890aSEmmanuel Vadot&mmc0 {
148*f126890aSEmmanuel Vadot	pinctrl-names = "default";
149*f126890aSEmmanuel Vadot	pinctrl-0 = <
150*f126890aSEmmanuel Vadot		&pinctrl_mmc0_slot0_clk_cmd_dat0
151*f126890aSEmmanuel Vadot		&pinctrl_mmc0_slot0_dat1_3>;
152*f126890aSEmmanuel Vadot	slot@0 {
153*f126890aSEmmanuel Vadot		reg = <0>;
154*f126890aSEmmanuel Vadot		bus-width = <4>;
155*f126890aSEmmanuel Vadot	};
156*f126890aSEmmanuel Vadot};
157*f126890aSEmmanuel Vadot
158*f126890aSEmmanuel Vadot&pinctrl {
159*f126890aSEmmanuel Vadot	usb2 {
160*f126890aSEmmanuel Vadot		pinctrl_board_usb2: usb2-board {
161*f126890aSEmmanuel Vadot			atmel,pins =
162*f126890aSEmmanuel Vadot				<AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;		/* PB11 gpio vbus sense, deglitch */
163*f126890aSEmmanuel Vadot		};
164*f126890aSEmmanuel Vadot	};
165*f126890aSEmmanuel Vadot};
166*f126890aSEmmanuel Vadot
167