1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later
2*724ba675SRob Herring/*
3*724ba675SRob Herring * at91sam9x5cm.dtsi - Device Tree Include file for AT91SAM9x5 CPU Module
4*724ba675SRob Herring *
5*724ba675SRob Herring *  Copyright (C) 2012 Atmel,
6*724ba675SRob Herring *                2012 Nicolas Ferre <nicolas.ferre@atmel.com>
7*724ba675SRob Herring */
8*724ba675SRob Herring
9*724ba675SRob Herring/ {
10*724ba675SRob Herring	memory@20000000 {
11*724ba675SRob Herring		reg = <0x20000000 0x8000000>;
12*724ba675SRob Herring	};
13*724ba675SRob Herring
14*724ba675SRob Herring	clocks {
15*724ba675SRob Herring		slow_xtal {
16*724ba675SRob Herring			clock-frequency = <32768>;
17*724ba675SRob Herring		};
18*724ba675SRob Herring
19*724ba675SRob Herring		main_xtal {
20*724ba675SRob Herring			clock-frequency = <12000000>;
21*724ba675SRob Herring		};
22*724ba675SRob Herring	};
23*724ba675SRob Herring
24*724ba675SRob Herring	ahb {
25*724ba675SRob Herring		apb {
26*724ba675SRob Herring			tcb0: timer@f8008000 {
27*724ba675SRob Herring				timer@0 {
28*724ba675SRob Herring					compatible = "atmel,tcb-timer";
29*724ba675SRob Herring					reg = <0>;
30*724ba675SRob Herring				};
31*724ba675SRob Herring
32*724ba675SRob Herring				timer@1 {
33*724ba675SRob Herring					compatible = "atmel,tcb-timer";
34*724ba675SRob Herring					reg = <1>;
35*724ba675SRob Herring				};
36*724ba675SRob Herring			};
37*724ba675SRob Herring
38*724ba675SRob Herring			pinctrl@fffff400 {
39*724ba675SRob Herring				1wire_cm {
40*724ba675SRob Herring					pinctrl_1wire_cm: 1wire_cm-0 {
41*724ba675SRob Herring						atmel,pins = <AT91_PIOB 18 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>; /* PB18 multidrive, conflicts with led */
42*724ba675SRob Herring					};
43*724ba675SRob Herring				};
44*724ba675SRob Herring			};
45*724ba675SRob Herring
46*724ba675SRob Herring			rtc@fffffeb0 {
47*724ba675SRob Herring				status = "okay";
48*724ba675SRob Herring			};
49*724ba675SRob Herring		};
50*724ba675SRob Herring
51*724ba675SRob Herring		ebi: ebi@10000000 {
52*724ba675SRob Herring			pinctrl-0 = <&pinctrl_ebi_addr_nand
53*724ba675SRob Herring				     &pinctrl_ebi_data_0_7>;
54*724ba675SRob Herring			pinctrl-names = "default";
55*724ba675SRob Herring			status = "okay";
56*724ba675SRob Herring
57*724ba675SRob Herring			nand_controller: nand-controller {
58*724ba675SRob Herring				status = "okay";
59*724ba675SRob Herring				pinctrl-0 = <&pinctrl_nand_oe_we
60*724ba675SRob Herring					     &pinctrl_nand_cs
61*724ba675SRob Herring					     &pinctrl_nand_rb>;
62*724ba675SRob Herring				pinctrl-names = "default";
63*724ba675SRob Herring
64*724ba675SRob Herring				nand@3 {
65*724ba675SRob Herring					reg = <0x3 0x0 0x800000>;
66*724ba675SRob Herring					rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
67*724ba675SRob Herring					cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
68*724ba675SRob Herring					nand-bus-width = <8>;
69*724ba675SRob Herring					nand-ecc-mode = "hw";
70*724ba675SRob Herring					nand-ecc-strength = <2>;
71*724ba675SRob Herring					nand-ecc-step-size = <512>;
72*724ba675SRob Herring					nand-on-flash-bbt;
73*724ba675SRob Herring					label = "atmel_nand";
74*724ba675SRob Herring
75*724ba675SRob Herring					partitions {
76*724ba675SRob Herring						compatible = "fixed-partitions";
77*724ba675SRob Herring						#address-cells = <1>;
78*724ba675SRob Herring						#size-cells = <1>;
79*724ba675SRob Herring
80*724ba675SRob Herring						at91bootstrap@0 {
81*724ba675SRob Herring							label = "at91bootstrap";
82*724ba675SRob Herring							reg = <0x0 0x40000>;
83*724ba675SRob Herring						};
84*724ba675SRob Herring
85*724ba675SRob Herring						uboot@40000 {
86*724ba675SRob Herring							label = "u-boot";
87*724ba675SRob Herring							reg = <0x40000 0xc0000>;
88*724ba675SRob Herring						};
89*724ba675SRob Herring
90*724ba675SRob Herring						ubootenvred@100000 {
91*724ba675SRob Herring							label = "U-Boot Env Redundant";
92*724ba675SRob Herring							reg = <0x100000 0x40000>;
93*724ba675SRob Herring						};
94*724ba675SRob Herring
95*724ba675SRob Herring						ubootenv@140000 {
96*724ba675SRob Herring							label = "U-Boot Env";
97*724ba675SRob Herring							reg = <0x140000 0x40000>;
98*724ba675SRob Herring						};
99*724ba675SRob Herring
100*724ba675SRob Herring						dtb@180000 {
101*724ba675SRob Herring							label = "device tree";
102*724ba675SRob Herring							reg = <0x180000 0x80000>;
103*724ba675SRob Herring						};
104*724ba675SRob Herring
105*724ba675SRob Herring						kernel@200000 {
106*724ba675SRob Herring							label = "kernel";
107*724ba675SRob Herring							reg = <0x200000 0x600000>;
108*724ba675SRob Herring						};
109*724ba675SRob Herring
110*724ba675SRob Herring						rootfs@800000 {
111*724ba675SRob Herring							label = "rootfs";
112*724ba675SRob Herring							reg = <0x800000 0x0f800000>;
113*724ba675SRob Herring						};
114*724ba675SRob Herring					};
115*724ba675SRob Herring				};
116*724ba675SRob Herring			};
117*724ba675SRob Herring		};
118*724ba675SRob Herring	};
119*724ba675SRob Herring
120*724ba675SRob Herring	leds {
121*724ba675SRob Herring		compatible = "gpio-leds";
122*724ba675SRob Herring
123*724ba675SRob Herring		pb18 {
124*724ba675SRob Herring			label = "pb18";
125*724ba675SRob Herring			gpios = <&pioB 18 GPIO_ACTIVE_LOW>;
126*724ba675SRob Herring			linux,default-trigger = "heartbeat";
127*724ba675SRob Herring		};
128*724ba675SRob Herring
129*724ba675SRob Herring		pd21 {
130*724ba675SRob Herring			label = "pd21";
131*724ba675SRob Herring			gpios = <&pioD 21 GPIO_ACTIVE_HIGH>;
132*724ba675SRob Herring		};
133*724ba675SRob Herring	};
134*724ba675SRob Herring
135*724ba675SRob Herring	1wire_cm {
136*724ba675SRob Herring		compatible = "w1-gpio";
137*724ba675SRob Herring		gpios = <&pioB 18 GPIO_ACTIVE_HIGH>;
138*724ba675SRob Herring		linux,open-drain;
139*724ba675SRob Herring		pinctrl-names = "default";
140*724ba675SRob Herring		pinctrl-0 = <&pinctrl_1wire_cm>;
141*724ba675SRob Herring		status = "okay";
142*724ba675SRob Herring	};
143*724ba675SRob Herring
144*724ba675SRob Herring};
145