xref: /freebsd/sys/contrib/device-tree/src/arm/microchip/at91-q5xr5.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Device Tree file for Exegin Q5xR5 board
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (C) 2014 Owen Kirby <osk@exegin.com>
6*f126890aSEmmanuel Vadot */
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadot/dts-v1/;
9*f126890aSEmmanuel Vadot#include "at91sam9g20.dtsi"
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/ {
12*f126890aSEmmanuel Vadot	model = "Exegin Q5x (rev5)";
13*f126890aSEmmanuel Vadot	compatible = "exegin,q5xr5", "atmel,at91sam9g20", "atmel,at91sam9";
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot	chosen {
16*f126890aSEmmanuel Vadot		bootargs = "console=ttyS0,115200 rootfstype=squashfs,jffs2";
17*f126890aSEmmanuel Vadot	};
18*f126890aSEmmanuel Vadot
19*f126890aSEmmanuel Vadot	memory {
20*f126890aSEmmanuel Vadot		reg = <0x20000000 0x0>;
21*f126890aSEmmanuel Vadot	};
22*f126890aSEmmanuel Vadot
23*f126890aSEmmanuel Vadot	clocks {
24*f126890aSEmmanuel Vadot		#address-cells = <1>;
25*f126890aSEmmanuel Vadot		#size-cells = <1>;
26*f126890aSEmmanuel Vadot		ranges;
27*f126890aSEmmanuel Vadot
28*f126890aSEmmanuel Vadot		main_clock: clock@0 {
29*f126890aSEmmanuel Vadot			compatible = "atmel,osc", "fixed-clock";
30*f126890aSEmmanuel Vadot			clock-frequency = <18432000>;
31*f126890aSEmmanuel Vadot		};
32*f126890aSEmmanuel Vadot
33*f126890aSEmmanuel Vadot		slow_xtal {
34*f126890aSEmmanuel Vadot			clock-frequency = <32768>;
35*f126890aSEmmanuel Vadot		};
36*f126890aSEmmanuel Vadot
37*f126890aSEmmanuel Vadot		main_xtal {
38*f126890aSEmmanuel Vadot			clock-frequency = <18432000>;
39*f126890aSEmmanuel Vadot		};
40*f126890aSEmmanuel Vadot	};
41*f126890aSEmmanuel Vadot};
42*f126890aSEmmanuel Vadot
43*f126890aSEmmanuel Vadot&dbgu {
44*f126890aSEmmanuel Vadot	status = "okay";
45*f126890aSEmmanuel Vadot};
46*f126890aSEmmanuel Vadot
47*f126890aSEmmanuel Vadot&ebi {
48*f126890aSEmmanuel Vadot	status = "okay";
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot	flash: flash@0 {
51*f126890aSEmmanuel Vadot		compatible = "cfi-flash";
52*f126890aSEmmanuel Vadot		#address-cells = <1>;
53*f126890aSEmmanuel Vadot		#size-cells = <1>;
54*f126890aSEmmanuel Vadot		reg = <0x0 0x1000000 0x800000>;
55*f126890aSEmmanuel Vadot		bank-width = <2>;
56*f126890aSEmmanuel Vadot
57*f126890aSEmmanuel Vadot		partitions {
58*f126890aSEmmanuel Vadot			compatible = "fixed-partitions";
59*f126890aSEmmanuel Vadot			#address-cells = <1>;
60*f126890aSEmmanuel Vadot			#size-cells = <1>;
61*f126890aSEmmanuel Vadot
62*f126890aSEmmanuel Vadot			kernel@0 {
63*f126890aSEmmanuel Vadot				label = "kernel";
64*f126890aSEmmanuel Vadot				reg = <0x0 0x200000>;
65*f126890aSEmmanuel Vadot			};
66*f126890aSEmmanuel Vadot
67*f126890aSEmmanuel Vadot			rootfs@200000 {
68*f126890aSEmmanuel Vadot				label = "rootfs";
69*f126890aSEmmanuel Vadot				reg = <0x200000 0x600000>;
70*f126890aSEmmanuel Vadot			};
71*f126890aSEmmanuel Vadot		};
72*f126890aSEmmanuel Vadot	};
73*f126890aSEmmanuel Vadot};
74*f126890aSEmmanuel Vadot
75*f126890aSEmmanuel Vadot&macb0 {
76*f126890aSEmmanuel Vadot	phy-mode = "mii";
77*f126890aSEmmanuel Vadot	status = "okay";
78*f126890aSEmmanuel Vadot};
79*f126890aSEmmanuel Vadot
80*f126890aSEmmanuel Vadot&pinctrl {
81*f126890aSEmmanuel Vadot	board {
82*f126890aSEmmanuel Vadot		pinctrl_pck0_as_mck: pck0_as_mck {
83*f126890aSEmmanuel Vadot			atmel,pins = <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
84*f126890aSEmmanuel Vadot		};
85*f126890aSEmmanuel Vadot	};
86*f126890aSEmmanuel Vadot
87*f126890aSEmmanuel Vadot	spi0 {
88*f126890aSEmmanuel Vadot		pinctrl_spi0: spi0-0 {
89*f126890aSEmmanuel Vadot			atmel,pins =
90*f126890aSEmmanuel Vadot				<AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE
91*f126890aSEmmanuel Vadot				 AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_NONE
92*f126890aSEmmanuel Vadot				 AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;
93*f126890aSEmmanuel Vadot		};
94*f126890aSEmmanuel Vadot
95*f126890aSEmmanuel Vadot		pinctrl_spi0_npcs0: spi0_npcs0 {
96*f126890aSEmmanuel Vadot			atmel,pins = <AT91_PIOA 3 AT91_PERIPH_A AT91_PINCTRL_NONE>;
97*f126890aSEmmanuel Vadot		};
98*f126890aSEmmanuel Vadot
99*f126890aSEmmanuel Vadot		pinctrl_spi0_npcs1: spi0_npcs1 {
100*f126890aSEmmanuel Vadot			atmel,pins = <AT91_PIOC 11 AT91_PERIPH_B AT91_PINCTRL_NONE>;
101*f126890aSEmmanuel Vadot		};
102*f126890aSEmmanuel Vadot	};
103*f126890aSEmmanuel Vadot
104*f126890aSEmmanuel Vadot	spi1 {
105*f126890aSEmmanuel Vadot		pinctrl_spi1: spi1-0 {
106*f126890aSEmmanuel Vadot			atmel,pins =
107*f126890aSEmmanuel Vadot				<AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE
108*f126890aSEmmanuel Vadot				 AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE
109*f126890aSEmmanuel Vadot				 AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;
110*f126890aSEmmanuel Vadot		};
111*f126890aSEmmanuel Vadot
112*f126890aSEmmanuel Vadot		pinctrl_spi1_npcs0: spi1_npcs0 {
113*f126890aSEmmanuel Vadot			atmel,pins = <AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>;
114*f126890aSEmmanuel Vadot		};
115*f126890aSEmmanuel Vadot
116*f126890aSEmmanuel Vadot		pinctrl_spi1_npcs1: spi1_npcs1 {
117*f126890aSEmmanuel Vadot			atmel,pins = <AT91_PIOC 5 AT91_PERIPH_B AT91_PINCTRL_NONE>;
118*f126890aSEmmanuel Vadot		};
119*f126890aSEmmanuel Vadot	};
120*f126890aSEmmanuel Vadot};
121*f126890aSEmmanuel Vadot
122*f126890aSEmmanuel Vadot&spi0 {
123*f126890aSEmmanuel Vadot	pinctrl-names = "default";
124*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_spi0 &pinctrl_spi0_npcs0 &pinctrl_spi0_npcs1>;
125*f126890aSEmmanuel Vadot	cs-gpios = <&pioA 3 GPIO_ACTIVE_HIGH>, <&pioC 11 GPIO_ACTIVE_LOW>, <0>, <0>;
126*f126890aSEmmanuel Vadot	status = "okay";
127*f126890aSEmmanuel Vadot
128*f126890aSEmmanuel Vadot	flash@0 {
129*f126890aSEmmanuel Vadot		compatible = "jedec,spi-nor";
130*f126890aSEmmanuel Vadot		spi-max-frequency = <20000000>;
131*f126890aSEmmanuel Vadot		reg = <0>;
132*f126890aSEmmanuel Vadot		#address-cells = <1>;
133*f126890aSEmmanuel Vadot		#size-cells = <1>;
134*f126890aSEmmanuel Vadot
135*f126890aSEmmanuel Vadot		at91boot@0 {
136*f126890aSEmmanuel Vadot			label = "at91boot";
137*f126890aSEmmanuel Vadot			reg = <0x0 0x4000>;
138*f126890aSEmmanuel Vadot		};
139*f126890aSEmmanuel Vadot
140*f126890aSEmmanuel Vadot		uenv@4000 {
141*f126890aSEmmanuel Vadot			label = "uboot-env";
142*f126890aSEmmanuel Vadot			reg = <0x4000 0x4000>;
143*f126890aSEmmanuel Vadot		};
144*f126890aSEmmanuel Vadot
145*f126890aSEmmanuel Vadot		uboot@8000 {
146*f126890aSEmmanuel Vadot			label = "uboot";
147*f126890aSEmmanuel Vadot			reg = <0x8000 0x3E000>;
148*f126890aSEmmanuel Vadot		};
149*f126890aSEmmanuel Vadot	};
150*f126890aSEmmanuel Vadot};
151*f126890aSEmmanuel Vadot
152*f126890aSEmmanuel Vadot&spi1 {
153*f126890aSEmmanuel Vadot	pinctrl-names = "default";
154*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_spi1 &pinctrl_spi1_npcs0 &pinctrl_spi1_npcs1>;
155*f126890aSEmmanuel Vadot	cs-gpios = <&pioB 3 GPIO_ACTIVE_HIGH>, <&pioC 5 GPIO_ACTIVE_LOW>, <0>, <0>;
156*f126890aSEmmanuel Vadot	status = "okay";
157*f126890aSEmmanuel Vadot};
158*f126890aSEmmanuel Vadot
159*f126890aSEmmanuel Vadot&usart0 {
160*f126890aSEmmanuel Vadot	pinctrl-0 =
161*f126890aSEmmanuel Vadot		<&pinctrl_usart0
162*f126890aSEmmanuel Vadot		 &pinctrl_usart0_rts
163*f126890aSEmmanuel Vadot		 &pinctrl_usart0_cts
164*f126890aSEmmanuel Vadot		 &pinctrl_usart0_dtr_dsr
165*f126890aSEmmanuel Vadot		 &pinctrl_usart0_dcd
166*f126890aSEmmanuel Vadot		 &pinctrl_usart0_ri>;
167*f126890aSEmmanuel Vadot	status = "okay";
168*f126890aSEmmanuel Vadot};
169*f126890aSEmmanuel Vadot
170*f126890aSEmmanuel Vadot&usb0 {
171*f126890aSEmmanuel Vadot	num-ports = <2>;
172*f126890aSEmmanuel Vadot	status = "okay";
173*f126890aSEmmanuel Vadot};
174*f126890aSEmmanuel Vadot
175*f126890aSEmmanuel Vadot&usb1 {
176*f126890aSEmmanuel Vadot	status = "okay";
177*f126890aSEmmanuel Vadot};
178*f126890aSEmmanuel Vadot
179*f126890aSEmmanuel Vadot&watchdog {
180*f126890aSEmmanuel Vadot	status = "okay";
181*f126890aSEmmanuel Vadot};
182